From 8f964ea2cb45396ac93ed898e57f13f7dd8c23e9 Mon Sep 17 00:00:00 2001 From: Laura Coursen Date: Fri, 15 Oct 2021 15:41:33 -0500 Subject: [PATCH] GHEC version (#20947) Co-authored-by: Matt Pollard Co-authored-by: Grace Park Co-authored-by: Steve Guntrip <12534592+stevecat@users.noreply.github.com> Co-authored-by: Robert Sese Co-authored-by: Peter Bengtsson Co-authored-by: Rachael Sewell --- ...repository-invitation-policy-drop-down.png | Bin 0 -> 65885 bytes ...epository-permissions-policy-drop-down.png | Bin 0 -> 253598 bytes .../add-global-webhook-active-checkbox.png | Bin 52229 -> 13469 bytes .../add-global-webhook-disable-ssl-button.png | Bin 32814 -> 59239 bytes .../add-global-webhook-select-events.png | Bin 40719 -> 56855 bytes ...k-select-individual-events-ghes-and-ae.png | Bin 0 -> 190422 bytes ...lobal-webhook-select-individual-events.png | Bin 14403 -> 218562 bytes ...repository-invitation-policy-drop-down.png | Bin 65885 -> 312909 bytes content/account-and-profile/index.md | 4 +- .../index.md | 1 + .../index.md | 1 + .../managing-your-subscriptions.md | 7 +- .../viewing-your-subscriptions.md | 7 +- .../about-notifications.md | 19 +- .../configuring-notifications.md | 63 +++--- .../setting-up-notifications/index.md | 1 + ...orkflow-for-triaging-your-notifications.md | 1 + .../index.md | 1 + .../managing-notifications-from-your-inbox.md | 25 +-- .../triaging-a-single-notification.md | 1 + .../about-your-organizations-profile.md | 5 +- .../about-your-profile.md | 7 +- .../customizing-your-profile/index.md | 1 + .../managing-your-profile-readme.md | 3 +- .../personalizing-your-profile.md | 11 +- .../pinning-items-to-your-profile.md | 1 + .../index.md | 1 + .../index.md | 1 + ...r-private-contributions-on-your-profile.md | 5 +- ...contributions-to-your-githubcom-profile.md | 13 +- ...erview-of-your-activity-on-your-profile.md | 1 + ...roubleshooting-commits-on-your-timeline.md | 1 + .../viewing-contributions-on-your-profile.md | 15 +- ...tributions-not-showing-up-on-my-profile.md | 17 +- .../index.md | 1 + .../index.md | 1 + ...-collaborators-to-a-personal-repository.md | 15 +- ...uity-of-your-user-accounts-repositories.md | 3 +- ...collaborator-from-a-personal-repository.md | 3 +- ...ourself-from-a-collaborators-repository.md | 1 + ...an-email-address-to-your-github-account.md | 3 +- ...that-expose-your-personal-email-address.md | 1 + .../changing-your-primary-email-address.md | 7 +- .../managing-email-preferences/index.md | 3 +- .../managing-marketing-emails-from-github.md | 1 + ...membering-your-github-username-or-email.md | 3 +- .../setting-a-backup-email-address.md | 1 + .../setting-your-commit-email-address.md | 27 +-- .../types-of-emails-github-sends.md | 1 + .../about-your-personal-dashboard.md | 7 +- ...best-practices-for-leaving-your-company.md | 3 +- .../changing-your-github-username.md | 38 +++- .../converting-a-user-into-an-organization.md | 5 +- .../deleting-your-user-account.md | 7 +- .../managing-user-account-settings/index.md | 1 + ...ss-to-your-user-accounts-project-boards.md | 1 + ...analysis-settings-for-your-user-account.md | 3 +- ...fault-branch-name-for-your-repositories.md | 1 + ...ging-your-tab-size-rendering-preference.md | 1 + .../managing-your-theme-settings.md | 11 +- .../merging-multiple-user-accounts.md | 1 + ...on-levels-for-a-user-account-repository.md | 29 +-- ...on-levels-for-user-owned-project-boards.md | 1 + ...does-the-available-for-hire-checkbox-do.md | 1 + .../about-organization-membership.md | 5 +- .../accessing-an-organization.md | 1 + .../index.md | 1 + .../managing-your-scheduled-reminders.md | 1 + ...izing-or-hiding-organization-membership.md | 1 + .../removing-yourself-from-an-organization.md | 3 +- ...ng-organization-approval-for-oauth-apps.md | 1 + ...iewing-peoples-roles-in-an-organization.md | 1 + ...hing-dependencies-to-speed-up-workflows.md | 1 + content/actions/advanced-guides/index.md | 1 + .../storing-workflow-data-as-artifacts.md | 17 +- .../using-github-cli-in-workflows.md | 1 + .../about-continuous-integration.md | 7 +- .../building-and-testing-java-with-ant.md | 1 + .../building-and-testing-java-with-gradle.md | 1 + .../building-and-testing-java-with-maven.md | 1 + .../building-and-testing-net.md | 5 +- .../building-and-testing-nodejs-or-python.md | 1 + .../building-and-testing-nodejs.md | 1 + .../building-and-testing-powershell.md | 3 +- .../building-and-testing-python.md | 1 + .../building-and-testing-ruby.md | 3 +- .../building-and-testing-swift.md | 1 + ...ilding-and-testing-xamarin-applications.md | 1 + .../automating-builds-and-tests/index.md | 1 + .../creating-actions/about-custom-actions.md | 11 +- .../creating-a-composite-action.md | 3 +- .../creating-a-docker-container-action.md | 9 +- .../creating-a-javascript-action.md | 5 +- .../developing-a-third-party-cli-action.md | 1 + .../dockerfile-support-for-github-actions.md | 1 + content/actions/creating-actions/index.md | 1 + .../metadata-syntax-for-github-actions.md | 11 +- ...ublishing-actions-in-github-marketplace.md | 1 + .../setting-exit-codes-for-actions.md | 1 + .../deployment/about-continuous-deployment.md | 9 +- ...ing-to-amazon-elastic-container-service.md | 3 +- .../deploying-to-azure-app-service.md | 3 +- .../deploying-to-google-kubernetes-engine.md | 3 +- .../deploying-with-github-actions.md | 9 +- content/actions/deployment/index.md | 1 + ...-on-macos-runners-for-xcode-development.md | 1 + .../using-environments-for-deployment.md | 13 +- .../deployment/viewing-deployment-history.md | 3 +- content/actions/guides.md | 1 + .../about-self-hosted-runners.md | 7 +- .../adding-self-hosted-runners.md | 11 +- .../autoscaling-with-self-hosted-runners.md | 5 +- ...-hosted-runner-application-as-a-service.md | 1 + .../actions/hosting-your-own-runners/index.md | 1 + ...ess-to-self-hosted-runners-using-groups.md | 15 +- ...and-troubleshooting-self-hosted-runners.md | 3 +- .../removing-self-hosted-runners.md | 7 +- ...a-proxy-server-with-self-hosted-runners.md | 1 + .../using-labels-with-self-hosted-runners.md | 7 +- ...using-self-hosted-runners-in-a-workflow.md | 5 +- content/actions/index.md | 1 + .../actions/learn-github-actions/contexts.md | 1 + .../creating-workflow-templates.md | 5 +- .../environment-variables.md | 3 +- .../essential-features-of-github-actions.md | 1 + .../events-that-trigger-workflows.md | 25 +-- .../learn-github-actions/expressions.md | 1 + .../finding-and-customizing-actions.md | 7 +- content/actions/learn-github-actions/index.md | 1 + .../managing-complex-workflows.md | 7 +- .../learn-github-actions/reusing-workflows.md | 1 + ...rets-and-runners-with-your-organization.md | 1 + .../understanding-github-actions.md | 9 +- ...usage-limits-billing-and-administration.md | 21 +- .../using-workflow-templates.md | 3 +- .../workflow-commands-for-github-actions.md | 13 +- .../workflow-syntax-for-github-actions.md | 23 ++- .../adding-labels-to-issues.md | 3 +- .../closing-inactive-issues.md | 3 +- ...nting-on-an-issue-when-a-label-is-added.md | 3 +- .../index.md | 1 + ...oving-assigned-issues-on-project-boards.md | 1 + ...card-is-added-to-a-project-board-column.md | 3 +- .../scheduling-issue-creation.md | 3 +- ...g-github-actions-for-project-management.md | 1 + ...proving-workflow-runs-from-public-forks.md | 3 +- .../canceling-a-workflow.md | 3 +- .../deleting-a-workflow-run.md | 1 + .../disabling-and-enabling-a-workflow.md | 1 + .../downloading-workflow-artifacts.md | 5 +- .../actions/managing-workflow-runs/index.md | 1 + .../manually-running-a-workflow.md | 1 + .../re-running-workflows-and-jobs.md | 5 +- .../removing-workflow-artifacts.md | 5 +- .../reviewing-deployments.md | 3 +- .../skipping-workflow-runs.md | 1 + .../migrating-to-github-actions/index.md | 1 + ...-from-azure-pipelines-to-github-actions.md | 1 + ...grating-from-circleci-to-github-actions.md | 1 + ...ting-from-gitlab-cicd-to-github-actions.md | 1 + ...igrating-from-jenkins-to-github-actions.md | 1 + ...rating-from-travis-ci-to-github-actions.md | 3 +- .../about-monitoring-and-troubleshooting.md | 5 +- .../adding-a-workflow-status-badge.md | 1 + .../enabling-debug-logging.md | 3 +- .../index.md | 1 + .../notifications-for-workflow-runs.md | 1 + .../using-the-visualization-graph.md | 1 + .../using-workflow-run-logs.md | 17 +- .../viewing-job-execution-time.md | 1 + .../viewing-workflow-run-history.md | 1 + .../about-packaging-with-github-actions.md | 1 + content/actions/publishing-packages/index.md | 1 + .../publishing-docker-images.md | 27 +-- .../publishing-java-packages-with-gradle.md | 9 +- .../publishing-java-packages-with-maven.md | 5 +- .../publishing-nodejs-packages.md | 5 +- content/actions/quickstart.md | 1 + .../automatic-token-authentication.md | 15 +- .../security-guides/encrypted-secrets.md | 21 +- content/actions/security-guides/index.md | 1 + .../security-hardening-for-github-actions.md | 31 +-- .../about-service-containers.md | 1 + .../creating-postgresql-service-containers.md | 1 + .../creating-redis-service-containers.md | 1 + .../using-containerized-services/index.md | 1 + .../about-github-hosted-runners.md | 3 +- .../customizing-github-hosted-runners.md | 1 + .../using-github-hosted-runners/index.md | 1 + ...ing-your-github-advanced-security-usage.md | 3 + content/admin/authentication/index.md | 4 +- ...d-access-management-for-your-enterprise.md | 41 +++- ...sign-on-for-your-enterprise-using-okta.md} | 10 +- ...saml-single-sign-on-for-your-enterprise.md | 65 +++++- .../index.md | 9 +- ...n-for-organizations-in-your-enterprise.md} | 11 +- ...n-organization-to-an-enterprise-account.md | 9 +- .../about-enterprise-managed-users.md | 6 +- .../auditing-activity-in-your-enterprise.md | 4 +- ...le-sign-on-for-enterprise-managed-users.md | 8 +- ...-for-enterprise-managed-users-with-okta.md | 6 +- ...ovisioning-for-enterprise-managed-users.md | 4 +- .../index.md | 4 +- ...mberships-with-identity-provider-groups.md | 7 +- .../configuring-your-enterprise/index.md | 1 + .../initializing-github-ae.md | 2 +- ...-approving-a-domain-for-your-enterprise.md | 67 +++++- content/admin/configuration/index.md | 1 + ...n-your-enterprise-account-and-githubcom.md | 1 + .../index.md | 1 + .../initializing-the-cluster.md | 2 +- ...ting-github-actions-for-your-enterprise.md | 3 + ...g-github-actions-with-amazon-s3-storage.md | 4 + ...-github-actions-with-azure-blob-storage.md | 4 + ...ions-with-minio-gateway-for-nas-storage.md | 4 + ...manually-syncing-actions-from-githubcom.md | 2 + ...-hosted-runners-without-internet-access.md | 4 + ...version-of-the-official-bundled-actions.md | 3 + .../using-actions-in-github-ae.md | 4 + content/admin/guides.md | 45 +++- content/admin/index.md | 16 +- ...talling-github-enterprise-server-on-aws.md | 4 + ...lling-github-enterprise-server-on-azure.md | 4 + ...erprise-server-on-google-cloud-platform.md | 4 + ...ing-github-enterprise-server-on-hyper-v.md | 4 + ...thub-enterprise-server-on-openstack-kvm.md | 4 + ...ling-github-enterprise-server-on-vmware.md | 4 + ...g-github-enterprise-server-on-xenserver.md | 4 + .../overview/about-enterprise-accounts.md | 104 +++++++++- content/admin/overview/index.md | 1 + .../enabling-github-packages-with-aws.md | 4 + ...github-packages-with-azure-blob-storage.md | 3 + .../enabling-github-packages-with-minio.md | 3 + ...ub-actions-policies-for-your-enterprise.md | 60 ------ ...or-advanced-security-in-your-enterprise.md | 16 +- ...-dependency-insights-in-your-enterprise.md | 37 ++++ ...s-for-github-actions-in-your-enterprise.md | 130 ++++++++++++ ...r-security-settings-in-your-enterprise.md} | 66 ++++-- ...ject-board-policies-in-your-enterprise.md} | 24 ++- ...-management-policies-in-your-enterprise.md | 138 +++++++++---- ...orcing-team-policies-in-your-enterprise.md | 39 ++++ .../index.md | 10 +- ...email-notifications-for-your-enterprise.md | 29 ++- content/admin/policies/index.md | 1 + content/admin/user-management/index.md | 1 + ...dding-organizations-to-your-enterprise.md} | 19 +- .../index.md | 8 + ...owned-organizations-in-your-enterprise.md} | 9 +- ...rganizations-in-your-enterprise-account.md | 8 +- ...s-for-organizations-in-your-enterprise.md} | 9 +- .../index.md | 14 +- ...viting-people-to-manage-your-enterprise.md | 32 +-- ...upport-entitlements-for-your-enterprise.md | 5 +- .../roles-in-an-enterprise.md | 22 +- ...-a-users-saml-access-to-your-enterprise.md | 7 +- .../viewing-people-in-your-enterprise.md | 43 ++++ .../index.md | 2 + .../managing-global-webhooks.md | 38 ++-- ...authentication-with-saml-single-sign-on.md | 7 +- ...-token-for-use-with-saml-single-sign-on.md | 1 + ...sh-key-for-use-with-saml-single-sign-on.md | 1 + .../index.md | 1 + ...-and-managing-your-active-saml-sessions.md | 1 + .../about-ssh.md | 7 +- ...ng-a-new-ssh-key-to-your-github-account.md | 9 +- .../checking-for-existing-ssh-keys.md | 1 + ...-ssh-key-and-adding-it-to-the-ssh-agent.md | 5 +- .../connecting-to-github-with-ssh/index.md | 1 + .../testing-your-ssh-connection.md | 5 +- .../working-with-ssh-key-passphrases.md | 1 + content/authentication/index.md | 1 + .../about-anonymized-urls.md | 1 + .../about-authentication-to-github.md | 13 +- .../about-githubs-ip-addresses.md | 1 + .../authorizing-github-apps.md | 1 + .../authorizing-oauth-apps.md | 7 +- ...onnecting-with-third-party-applications.md | 1 + .../creating-a-personal-access-token.md | 19 +- .../creating-a-strong-password.md | 10 +- .../githubs-ssh-key-fingerprints.md | 1 + .../index.md | 3 +- .../preventing-unauthorized-access.md | 3 +- ...moving-sensitive-data-from-a-repository.md | 7 +- ...wing-your-authorized-applications-oauth.md | 3 +- .../reviewing-your-authorized-integrations.md | 3 +- .../reviewing-your-deploy-keys.md | 1 + .../reviewing-your-security-log.md | 37 ++-- .../reviewing-your-ssh-keys.md | 3 +- .../sudo-mode.md | 1 + .../token-expiration-and-revocation.md | 11 +- ...updating-your-github-access-credentials.md | 7 +- .../about-commit-signature-verification.md | 11 +- ...ng-a-new-gpg-key-to-your-github-account.md | 5 +- .../associating-an-email-with-your-gpg-key.md | 5 +- .../checking-for-existing-gpg-keys.md | 1 + ...cation-statuses-for-all-of-your-commits.md | 1 + .../generating-a-new-gpg-key.md | 5 +- .../index.md | 1 + .../signing-commits.md | 1 + .../signing-tags.md | 1 + .../telling-git-about-your-signing-key.md | 7 +- .../about-two-factor-authentication.md | 7 +- ...-github-using-two-factor-authentication.md | 5 +- ...delivery-methods-for-your-mobile-device.md | 1 + ...-factor-authentication-recovery-methods.md | 3 +- .../configuring-two-factor-authentication.md | 19 +- ...s-where-sms-authentication-is-supported.md | 1 + ...uthentication-for-your-personal-account.md | 3 +- .../index.md | 3 +- ...ccount-if-you-lose-your-2fa-credentials.md | 13 +- ...t-and-tag-signature-verification-status.md | 9 +- .../index.md | 1 + .../updating-an-expired-gpg-key.md | 1 + ...-verified-email-address-in-your-gpg-key.md | 3 +- .../deleted-or-missing-ssh-keys.md | 1 + .../error-agent-admitted-failure-to-sign.md | 1 + .../error-bad-file-number.md | 5 +- .../error-key-already-in-use.md | 3 +- .../error-permission-denied-publickey.md | 3 +- ...ission-to-userrepo-denied-to-other-user.md | 1 + ...on-to-userrepo-denied-to-userother-repo.md | 1 + .../error-ssh-add-illegal-option----k.md | 1 + ...e-problem-verify-that-the-ca-cert-is-ok.md | 1 + .../error-unknown-key-type.md | 1 + .../error-were-doing-an-ssh-key-audit.md | 1 + .../troubleshooting-ssh/index.md | 1 + .../recovering-your-ssh-key-passphrase.md | 1 + .../using-ssh-over-the-https-port.md | 1 + content/billing/index.md | 3 +- ...bout-billing-for-git-large-file-storage.md | 1 + .../downgrading-git-large-file-storage.md | 1 + .../index.md | 1 + .../upgrading-git-large-file-storage.md | 1 + ...ewing-your-git-large-file-storage-usage.md | 1 + .../about-billing-for-github-actions.md | 5 +- .../index.md | 1 + ...-your-spending-limit-for-github-actions.md | 5 +- .../viewing-your-github-actions-usage.md | 1 + ...ut-billing-for-github-advanced-security.md | 13 +- .../index.md | 1 + ...ing-your-github-advanced-security-usage.md | 3 +- .../about-billing-for-codespaces.md | 5 +- .../index.md | 1 + ...managing-spending-limits-for-codespaces.md | 5 +- .../viewing-your-codespaces-usage.md | 1 + .../about-billing-for-github-marketplace.md | 1 + .../canceling-a-github-marketplace-app.md | 1 + ...lling-plan-for-a-github-marketplace-app.md | 1 + .../index.md | 1 + ...lling-plan-for-a-github-marketplace-app.md | 1 + .../about-billing-for-github-packages.md | 5 +- .../index.md | 1 + ...your-spending-limit-for-github-packages.md | 5 +- .../viewing-your-github-packages-usage.md | 1 + .../about-billing-for-github-sponsors.md | 1 + .../downgrading-a-sponsorship.md | 1 + .../index.md | 1 + .../upgrading-a-sponsorship.md | 1 + .../about-billing-for-github-accounts.md | 5 +- .../about-billing-for-your-enterprise.md | 21 +- .../about-per-user-pricing.md | 1 + ...n-azure-subscription-to-your-enterprise.md | 3 +- ...unted-subscriptions-for-github-accounts.md | 5 +- .../downgrading-your-github-subscription.md | 3 +- ...-downgrading-affect-the-billing-process.md | 1 + .../index.md | 4 +- .../managing-invoices-for-your-enterprise.md | 2 +- .../upgrading-your-github-subscription.md | 5 +- ...ng-pending-changes-to-your-subscription.md | 1 + ...n-and-usage-for-your-enterprise-account.md | 24 +-- .../about-billing-on-github.md | 3 +- .../adding-information-to-your-receipts.md | 1 + .../adding-or-editing-a-payment-method.md | 1 + ...ging-the-duration-of-your-billing-cycle.md | 1 + .../index.md | 1 + .../redeeming-a-coupon.md | 1 + .../removing-a-payment-method.md | 1 + .../setting-your-billing-email.md | 1 + ...eshooting-a-declined-credit-card-charge.md | 1 + .../unlocking-a-locked-account.md | 1 + ...ewing-your-payment-history-and-receipts.md | 1 + ...ing-your-subscriptions-and-billing-date.md | 3 +- .../about-licenses-for-github-enterprise.md | 18 +- ...ding-your-license-for-github-enterprise.md | 6 +- .../index.md | 6 +- ...dio-subscription-with-github-enterprise.md | 9 +- ...rise-server-and-github-enterprise-cloud.md | 5 +- ...ing-license-usage-for-github-enterprise.md | 10 +- ...organizations-for-procurement-companies.md | 1 + ...r-an-organization-on-behalf-of-a-client.md | 1 + .../index.md | 1 + ...renewing-your-clients-paid-organization.md | 1 + ...ngrading-your-clients-paid-organization.md | 1 + .../about-code-scanning-with-codeql.md | 3 +- .../about-code-scanning.md | 3 +- .../configuring-code-scanning.md | 23 ++- ...-codeql-workflow-for-compiled-languages.md | 1 + .../index.md | 1 + ...ode-scanning-alerts-for-your-repository.md | 27 +-- ...ing-codeql-code-scanning-in-a-container.md | 5 +- ...tting-up-code-scanning-for-a-repository.md | 19 +- ...g-code-scanning-alerts-in-pull-requests.md | 9 +- .../troubleshooting-the-codeql-workflow.md | 11 +- .../viewing-code-scanning-logs.md | 5 +- content/code-security/code-scanning/index.md | 1 + .../about-integration-with-code-scanning.md | 1 + .../integrating-with-code-scanning/index.md | 1 + .../sarif-support-for-code-scanning.md | 11 +- .../uploading-a-sarif-file-to-github.md | 9 +- ...-codeql-code-scanning-in-your-ci-system.md | 3 +- ...onfiguring-codeql-cli-in-your-ci-system.md | 33 +-- ...iguring-codeql-runner-in-your-ci-system.md | 3 +- .../index.md | 1 + ...installing-codeql-cli-in-your-ci-system.md | 3 +- ...ng-from-the-codeql-runner-to-codeql-cli.md | 1 + ...running-codeql-runner-in-your-ci-system.md | 11 +- ...hooting-codeql-runner-in-your-ci-system.md | 1 + ...ng-a-security-policy-to-your-repository.md | 7 +- .../github-security-features.md | 25 +-- .../code-security/getting-started/index.md | 1 + .../securing-your-organization.md | 27 +-- .../securing-your-repository.md | 31 +-- content/code-security/guides.md | 1 + content/code-security/index.md | 4 +- .../secret-scanning/about-secret-scanning.md | 21 +- ...g-secret-scanning-for-your-repositories.md | 13 +- ...ing-custom-patterns-for-secret-scanning.md | 17 +- .../code-security/secret-scanning/index.md | 1 + .../managing-alerts-from-secret-scanning.md | 9 +- ...-disclosure-of-security-vulnerabilities.md | 1 + .../about-github-security-advisories.md | 1 + ...g-a-collaborator-to-a-security-advisory.md | 1 + ...ork-to-resolve-a-security-vulnerability.md | 1 + .../creating-a-security-advisory.md | 1 + .../editing-a-security-advisory.md | 1 + .../security-advisories/index.md | 1 + ...rmission-levels-for-security-advisories.md | 1 + .../publishing-a-security-advisory.md | 1 + ...a-collaborator-from-a-security-advisory.md | 1 + .../withdrawing-a-security-advisory.md | 1 + .../about-the-security-overview.md | 5 +- .../code-security/security-overview/index.md | 1 + .../supply-chain-security/index.md | 1 + .../about-dependabot-version-updates.md | 1 + ...tomating-dependabot-with-github-actions.md | 3 +- ...guration-options-for-dependency-updates.md | 1 + .../customizing-dependency-updates.md | 1 + .../enabling-and-disabling-version-updates.md | 1 + .../index.md | 1 + ...your-actions-up-to-date-with-dependabot.md | 1 + ...ndencies-configured-for-version-updates.md | 1 + ...naging-encrypted-secrets-for-dependabot.md | 1 + ...ng-pull-requests-for-dependency-updates.md | 1 + ...pendabotcom-to-github-native-dependabot.md | 1 + ...bout-alerts-for-vulnerable-dependencies.md | 19 +- .../about-dependabot-security-updates.md | 1 + .../about-managing-vulnerable-dependencies.md | 5 +- ...ilities-in-the-github-advisory-database.md | 1 + ...configuring-dependabot-security-updates.md | 1 + ...tifications-for-vulnerable-dependencies.md | 9 +- .../index.md | 1 + .../troubleshooting-dependabot-errors.md | 1 + ...he-detection-of-vulnerable-dependencies.md | 17 +- ...nerable-dependencies-in-your-repository.md | 13 +- .../about-dependency-review.md | 9 +- .../about-the-dependency-graph.md | 27 +-- ...loring-the-dependencies-of-a-repository.md | 19 +- .../index.md | 1 + ...pace-to-access-a-private-image-registry.md | 3 +- .../disaster-recovery-for-codespaces.md | 3 +- .../codespaces/codespaces-reference/index.md | 1 + .../security-in-codespaces.md | 1 + .../understanding-billing-for-codespaces.md | 1 + ...using-the-command-palette-in-codespaces.md | 1 + ...configuring-codespaces-for-your-project.md | 1 + .../customizing-your-codespace/index.md | 3 +- ...rsonalizing-codespaces-for-your-account.md | 1 + ...prebuilding-codespaces-for-your-project.md | 1 + ...ing-the-machine-type-for-your-codespace.md | 3 +- .../creating-a-codespace.md | 1 + .../deleting-a-codespace.md | 1 + .../developing-in-a-codespace.md | 1 + .../forwarding-ports-in-your-codespace.md | 1 + .../developing-in-codespaces/index.md | 1 + .../using-codespaces-for-pull-requests.md | 1 + .../using-codespaces-in-visual-studio-code.md | 3 +- .../using-source-control-in-your-codespace.md | 1 + .../codespaces/getting-started/deep-dive.md | 3 +- content/codespaces/getting-started/index.md | 1 + .../codespaces/getting-started/quickstart.md | 3 +- content/codespaces/guides.md | 1 + content/codespaces/index.md | 1 + ...abling-codespaces-for-your-organization.md | 1 + .../index.md | 1 + ...ing-for-codespaces-in-your-organization.md | 1 + ...ository-and-organization-for-codespaces.md | 1 + ...ccess-for-your-organizations-codespaces.md | 1 + ...organizations-audit-logs-for-codespaces.md | 1 + .../managing-your-codespaces/index.md | 1 + ...g-encrypted-secrets-for-your-codespaces.md | 1 + ...anaging-gpg-verification-for-codespaces.md | 1 + ...g-repository-access-for-your-codespaces.md | 1 + ...ewing-your-security-logs-for-codespaces.md | 1 + ...ting-your-default-editor-for-codespaces.md | 1 + ...ting-your-default-region-for-codespaces.md | 1 + content/codespaces/overview.md | 3 +- .../index.md | 3 +- ...g-up-your-dotnet-project-for-codespaces.md | 1 + ...ing-up-your-java-project-for-codespaces.md | 1 + ...g-up-your-nodejs-project-for-codespaces.md | 1 + ...g-up-your-python-project-for-codespaces.md | 1 + .../the-githubdev-web-based-editor.md | 1 + .../troubleshooting/codespaces-logs.md | 1 + .../exporting-changes-to-a-branch.md | 1 + content/codespaces/troubleshooting/index.md | 1 + .../troubleshooting-codespaces-clients.md | 1 + ...ing-creation-and-deletion-of-codespaces.md | 3 +- ...troubleshooting-dotfiles-for-codespaces.md | 1 + ...shooting-port-forwarding-for-codespaces.md | 1 + ...eshooting-your-connection-to-codespaces.md | 1 + .../working-with-support-for-codespaces.md | 1 + .../about-wikis.md | 5 +- .../adding-or-editing-wiki-pages.md | 1 + .../changing-access-permissions-for-wikis.md | 3 +- ...ating-a-footer-or-sidebar-for-your-wiki.md | 1 + .../disabling-wikis.md | 1 + .../editing-wiki-content.md | 1 + .../index.md | 1 + .../viewing-a-wikis-history-of-changes.md | 1 + content/communities/index.md | 1 + .../blocking-a-user-from-your-organization.md | 1 + ...cking-a-user-from-your-personal-account.md | 1 + .../index.md | 1 + .../reporting-abuse-or-spam.md | 3 +- ...nblocking-a-user-from-your-organization.md | 1 + ...cking-a-user-from-your-personal-account.md | 1 + ...-who-are-blocked-from-your-organization.md | 1 + ...ouve-blocked-from-your-personal-account.md | 1 + .../index.md | 1 + ...ting-interactions-for-your-user-account.md | 1 + ...iting-interactions-in-your-organization.md | 1 + ...imiting-interactions-in-your-repository.md | 1 + .../locking-conversations.md | 5 +- .../managing-disruptive-comments.md | 9 +- ...-abuse-in-your-organizations-repository.md | 1 + ...ontent-in-your-organizations-repository.md | 1 + .../tracking-changes-in-a-comment.md | 3 +- ...out-community-management-and-moderation.md | 1 + ...munity-profiles-for-public-repositories.md | 1 + .../accessing-a-projects-community-profile.md | 1 + ...dding-a-code-of-conduct-to-your-project.md | 1 + .../adding-a-license-to-a-repository.md | 3 +- ...dding-support-resources-to-your-project.md | 3 +- ...reating-a-default-community-health-file.md | 15 +- ...ntributions-to-your-project-with-labels.md | 1 + .../index.md | 1 + ...-guidelines-for-repository-contributors.md | 9 +- .../about-issue-and-pull-request-templates.md | 15 +- ...ing-issue-templates-for-your-repository.md | 9 +- ...ll-request-template-for-your-repository.md | 5 +- .../index.md | 1 + ...ngle-issue-template-for-your-repository.md | 5 +- .../syntax-for-githubs-form-schema.md | 1 + .../syntax-for-issue-forms.md | 1 + .../authenticating-with-github-apps.md | 1 + ...ting-a-custom-badge-for-your-github-app.md | 9 +- .../creating-a-github-app-from-a-manifest.md | 7 +- ...ating-a-github-app-using-url-parameters.md | 27 +-- .../creating-a-github-app.md | 7 +- ...g-and-authorizing-users-for-github-apps.md | 67 +++--- .../apps/building-github-apps/index.md | 1 + ...g-allowed-ip-addresses-for-a-github-app.md | 3 +- .../rate-limits-for-github-apps.md | 11 +- ...refreshing-user-to-server-access-tokens.md | 7 +- .../setting-permissions-for-github-apps.md | 1 + .../authorizing-oauth-apps.md | 23 ++- ...ating-a-custom-badge-for-your-oauth-app.md | 9 +- .../creating-an-oauth-app.md | 5 +- .../apps/building-oauth-apps/index.md | 1 + .../scopes-for-oauth-apps.md | 9 +- .../getting-started-with-apps/about-apps.md | 19 +- .../activating-optional-features-for-apps.md | 1 + ...nces-between-github-apps-and-oauth-apps.md | 3 +- .../apps/getting-started-with-apps/index.md | 1 + .../migrating-oauth-apps-to-github-apps.md | 7 +- ...ment-environment-to-create-a-github-app.md | 3 +- .../creating-ci-tests-with-the-checks-api.md | 13 +- content/developers/apps/guides/index.md | 3 +- .../apps/guides/using-content-attachments.md | 3 +- .../using-the-github-api-in-your-app.md | 5 +- content/developers/apps/index.md | 1 + .../deleting-a-github-app.md | 1 + .../editing-a-github-apps-permissions.md | 1 + .../apps/managing-github-apps/index.md | 1 + .../installing-github-apps.md | 5 +- .../making-a-github-app-public-or-private.md | 7 +- .../modifying-a-github-app.md | 1 + .../suspending-a-github-app-installation.md | 1 + .../transferring-ownership-of-a-github-app.md | 1 + .../deleting-an-oauth-app.md | 1 + .../apps/managing-oauth-apps/index.md | 1 + .../modifying-an-oauth-app.md | 1 + .../transferring-ownership-of-an-oauth-app.md | 1 + ...leshooting-authorization-request-errors.md | 1 + ...g-oauth-app-access-token-request-errors.md | 1 + ...omer-experience-best-practices-for-apps.md | 1 + .../index.md | 1 + .../requirements-for-listing-an-app.md | 5 +- .../security-best-practices-for-apps.md | 1 + .../viewing-metrics-for-your-listing.md | 1 + .../viewing-transactions-for-your-listing.md | 1 + .../about-github-marketplace.md | 3 +- .../about-marketplace-badges.md | 1 + ...sher-verification-for-your-organization.md | 1 + .../github-marketplace-overview/index.md | 1 + .../developers/github-marketplace/index.md | 1 + ...a-webhook-to-notify-you-of-plan-changes.md | 1 + .../drafting-a-listing-for-your-app.md | 3 +- .../index.md | 1 + .../setting-pricing-plans-for-your-listing.md | 1 + ...submitting-your-listing-for-publication.md | 1 + ...ting-a-listing-description-for-your-app.md | 3 +- .../billing-customers.md | 1 + .../index.md | 1 + ...icing-plans-for-github-marketplace-apps.md | 3 +- .../receiving-payment-for-app-purchases.md | 3 +- .../handling-new-purchases-and-free-trials.md | 1 + .../handling-plan-cancellations.md | 1 + .../handling-plan-changes.md | 1 + .../index.md | 1 + ...ndpoints-for-the-github-marketplace-api.md | 1 + .../testing-your-app.md | 1 + ...k-events-for-the-github-marketplace-api.md | 1 + content/developers/index.md | 1 + .../developers/overview/about-githubs-apis.md | 3 +- .../overview/github-developer-program.md | 1 + content/developers/overview/index.md | 1 + .../overview/managing-deploy-keys.md | 21 +- .../overview/replacing-github-services.md | 1 + .../secret-scanning-partner-program.md | 1 + .../overview/using-ssh-agent-forwarding.md | 1 + .../events/github-event-types.md | 7 +- .../webhooks-and-events/events/index.md | 1 + .../events/issue-event-types.md | 9 +- .../developers/webhooks-and-events/index.md | 1 + .../webhooks/about-webhooks.md | 1 + ...iguring-your-server-to-receive-payloads.md | 1 + .../webhooks/creating-webhooks.md | 1 + .../webhooks-and-events/webhooks/index.md | 1 + .../webhooks/securing-your-webhooks.md | 9 +- .../webhooks/testing-webhooks.md | 3 +- .../webhooks/webhook-events-and-payloads.md | 47 ++--- .../about-discussions.md | 1 + ...ting-with-maintainers-using-discussions.md | 1 + .../index.md | 1 + .../participating-in-a-discussion.md | 1 + ...s-for-community-conversations-on-github.md | 1 + ...iscussions-across-multiple-repositories.md | 1 + ...-higher-permissions-to-top-contributors.md | 1 + content/discussions/guides/index.md | 1 + content/discussions/index.md | 1 + .../index.md | 1 + ...ries-for-discussions-in-your-repository.md | 1 + ...managing-discussions-in-your-repository.md | 1 + .../moderating-discussions.md | 3 +- content/discussions/quickstart.md | 1 + .../about-campus-advisors.md | 2 +- .../about-github-campus-program.md | 2 +- ...-to-contribute-to-open-source-on-github.md | 5 +- .../following-people.md | 7 +- .../exploring-projects-on-github/index.md | 1 + .../saving-repositories-with-stars.md | 5 +- .../about-remote-repositories.md | 9 +- .../associating-text-editors-with-git.md | 1 + .../caching-your-github-credentials-in-git.md | 1 + .../configuring-git-to-handle-line-endings.md | 1 + .../getting-started-with-git/git-workflows.md | 1 + .../ignoring-files.md | 1 + .../getting-started-with-git/index.md | 1 + .../managing-remote-repositories.md | 1 + .../setting-your-username-in-git.md | 1 + ...ing-credentials-from-the-macos-keychain.md | 1 + ...hy-is-git-always-asking-for-my-password.md | 1 + content/get-started/index.md | 1 + .../about-github-advanced-security.md | 21 +- .../access-permissions-on-github.md | 9 +- .../faq-about-changes-to-githubs-plans.md | 3 +- .../github-language-support.md | 1 + .../learning-about-github/githubs-products.md | 9 +- .../learning-about-github/index.md | 1 + .../types-of-github-accounts.md | 17 +- .../getting-started-with-github-ae.md | 4 +- ...ng-started-with-github-enterprise-cloud.md | 39 ++-- ...g-started-with-github-enterprise-server.md | 6 +- .../getting-started-with-github-team.md | 6 +- ...etting-started-with-your-github-account.md | 47 +++-- content/get-started/onboarding/index.md | 1 + content/get-started/quickstart/be-social.md | 5 +- .../quickstart/communicating-on-github.md | 13 +- .../get-started/quickstart/create-a-repo.md | 15 +- content/get-started/quickstart/fork-a-repo.md | 11 +- .../git-and-github-learning-resources.md | 5 +- .../get-started/quickstart/git-cheatsheet.md | 1 + content/get-started/quickstart/github-flow.md | 7 +- .../get-started/quickstart/github-glossary.md | 1 + content/get-started/quickstart/index.md | 1 + content/get-started/quickstart/set-up-git.md | 11 +- .../signing-up-for-github/index.md | 1 + ...g-up-a-trial-of-github-enterprise-cloud.md | 1 + ...-up-a-trial-of-github-enterprise-server.md | 19 +- .../signing-up-for-a-new-github-account.md | 5 +- .../verifying-your-email-address.md | 7 +- .../get-started/using-git/about-git-rebase.md | 1 + .../using-git/about-git-subtree-merges.md | 1 + .../dealing-with-non-fast-forward-errors.md | 1 + ...cial-characters-in-branch-and-tag-names.md | 1 + ...etting-changes-from-a-remote-repository.md | 3 +- content/get-started/using-git/index.md | 1 + .../pushing-commits-to-a-remote-repository.md | 1 + ...ving-merge-conflicts-after-a-git-rebase.md | 1 + ...g-a-subfolder-out-into-a-new-repository.md | 3 +- .../using-git-rebase-on-the-command-line.md | 1 + ...ly-access-releases-with-feature-preview.md | 3 +- .../get-started/using-github/github-cli.md | 1 + .../using-github/github-desktop.md | 1 + .../using-github/github-for-mobile.md | 3 +- content/get-started/using-github/index.md | 1 + .../using-github/keyboard-shortcuts.md | 29 +-- .../using-github/supported-browsers.md | 1 + .../troubleshooting-connectivity-problems.md | 1 + .../github-cli/github-cli/about-github-cli.md | 1 + .../creating-github-cli-extensions.md | 1 + .../github-cli/github-cli-reference.md | 1 + content/github-cli/github-cli/index.md | 1 + content/github-cli/github-cli/quickstart.md | 3 +- .../github-cli/using-github-cli-extensions.md | 1 + content/github-cli/index.md | 1 + .../about-merge-conflicts.md | 1 + .../addressing-merge-conflicts/index.md | 1 + .../resolving-a-merge-conflict-on-github.md | 1 + ...a-merge-conflict-using-the-command-line.md | 1 + .../about-status-checks.md | 1 + .../index.md | 1 + .../about-collaborative-development-models.md | 1 + .../getting-started/index.md | 1 + .../about-pull-request-merges.md | 1 + .../automatically-merging-a-pull-request.md | 3 +- .../closing-a-pull-request.md | 1 + .../index.md | 1 + .../merging-a-pull-request.md | 1 + .../reverting-a-pull-request.md | 1 + .../collaborating-with-pull-requests/index.md | 1 + .../about-branches.md | 5 +- ...out-comparing-branches-in-pull-requests.md | 1 + .../about-pull-requests.md | 5 +- ...nging-the-base-branch-of-a-pull-request.md | 1 + .../changing-the-stage-of-a-pull-request.md | 7 +- ...pull-request-branch-created-from-a-fork.md | 1 + .../creating-a-pull-request-from-a-fork.md | 1 + .../creating-a-pull-request.md | 3 +- ...eleting-branches-within-your-repository.md | 1 + .../index.md | 1 + .../requesting-a-pull-request-review.md | 3 +- ...ery-parameters-to-create-a-pull-request.md | 1 + .../about-pull-request-reviews.md | 5 +- ...ng-a-pull-request-with-required-reviews.md | 1 + .../checking-out-pull-requests-locally.md | 3 +- .../commenting-on-a-pull-request.md | 3 +- .../dismissing-a-pull-request-review.md | 1 + .../filtering-files-in-a-pull-request.md | 1 + ...methods-and-functions-in-a-pull-request.md | 1 + ...rporating-feedback-in-your-pull-request.md | 1 + .../index.md | 1 + ...ng-dependency-changes-in-a-pull-request.md | 1 + ...wing-proposed-changes-in-a-pull-request.md | 5 +- .../viewing-a-pull-request-review.md | 1 + .../working-with-forks/about-forks.md | 9 +- ...pull-request-branch-created-from-a-fork.md | 1 + .../configuring-a-remote-for-a-fork.md | 1 + .../working-with-forks/index.md | 1 + ...g-an-upstream-repository-into-your-fork.md | 1 + .../working-with-forks/syncing-a-fork.md | 3 +- ...sitory-is-deleted-or-changes-visibility.md | 9 +- .../about-commits.md | 3 +- .../changing-a-commit-message.md | 3 +- ...g-a-commit-on-behalf-of-an-organization.md | 1 + ...creating-a-commit-with-multiple-authors.md | 5 +- .../creating-and-editing-commits/index.md | 1 + .../index.md | 1 + ...sts-on-github-but-not-in-my-local-clone.md | 1 + .../troubleshooting-commits/index.md | 1 + ...are-my-commits-linked-to-the-wrong-user.md | 3 +- .../commit-branch-and-tag-labels.md | 1 + .../comparing-commits.md | 5 +- .../differences-between-commit-views.md | 1 + .../viewing-and-comparing-commits/index.md | 1 + .../about-github-marketplace.md | 1 + .../about-integrations.md | 3 +- .../github-extensions-and-integrations.md | 5 +- .../exploring-integrations/index.md | 1 + .../customizing-your-github-workflow/index.md | 1 + .../index.md | 1 + .../installing-an-app-in-your-organization.md | 1 + ...talling-an-app-in-your-personal-account.md | 1 + .../github/extending-github/about-webhooks.md | 3 +- .../getting-started-with-the-api.md | 7 +- .../git-automation-with-oauth-tokens.md | 5 +- content/github/extending-github/index.md | 1 + .../about-github-importer.md | 1 + ...roject-to-github-using-the-command-line.md | 9 +- ...a-git-repository-using-the-command-line.md | 5 +- ...rting-a-repository-with-github-importer.md | 1 + .../importing-source-code-to-github/index.md | 1 + .../source-code-migration-tools.md | 5 +- ...author-attribution-with-github-importer.md | 1 + .../index.md | 1 + .../index.md | 1 + ...bversion-properties-supported-by-github.md | 1 + .../support-for-subversion-clients.md | 1 + ...-differences-between-subversion-and-git.md | 3 +- content/github/index.md | 3 +- ...setting-up-and-managing-your-enterprise.md | 25 +++ ...-management-for-your-enterprise-account.md | 39 ---- ...rganizations-in-your-enterprise-account.md | 58 ------ .../index.md | 17 -- .../index.md | 22 -- ...ation-events-in-your-enterprise-account.md | 31 --- .../index.md | 19 -- .../index.md | 23 --- .../viewing-people-in-your-enterprise.md | 42 ---- .../about-enterprise-accounts.md | 18 -- .../managing-your-enterprise-account/index.md | 18 -- ...ng-a-domain-for-your-enterprise-account.md | 39 ---- ...cts-and-logs-in-your-enterprise-account.md | 25 --- ...ncy-insights-in-your-enterprise-account.md | 24 --- ...ons-policies-in-your-enterprise-account.md | 82 -------- ...ced-security-in-your-enterprise-account.md | 23 --- ...ent-policies-in-your-enterprise-account.md | 99 --------- ...eam-policies-in-your-enterprise-account.md | 27 --- .../index.md | 23 --- ...tifications-for-your-enterprise-account.md | 24 --- .../about-githubs-use-of-your-data.md | 5 +- .../index.md | 1 + ...se-settings-for-your-private-repository.md | 1 + ...hive-program-for-your-public-repository.md | 1 + ...-archive-of-your-personal-accounts-data.md | 1 + ...ium-support-for-github-enterprise-cloud.md | 3 +- .../about-github-support.md | 3 +- .../github-enterprise-cloud-support.md | 1 + .../github-marketplace-support.md | 1 + .../working-with-github-support/index.md | 1 + .../submitting-a-ticket.md | 3 +- .../creating-gists.md | 7 +- .../forking-and-cloning-gists.md | 1 + .../index.md | 1 + .../about-writing-and-formatting-on-github.md | 1 + .../basic-writing-and-formatting-syntax.md | 15 +- .../index.md | 1 + content/github/writing-on-github/index.md | 1 + .../attaching-files.md | 7 +- .../autolinked-references-and-urls.md | 3 +- ...ting-a-permanent-link-to-a-code-snippet.md | 1 + .../creating-and-highlighting-code-blocks.md | 1 + .../working-with-advanced-formatting/index.md | 1 + .../organizing-information-with-tables.md | 1 + ...ng-keywords-in-issues-and-pull-requests.md | 3 +- .../about-saved-replies.md | 1 + .../creating-a-saved-reply.md | 1 + .../deleting-a-saved-reply.md | 1 + .../editing-a-saved-reply.md | 1 + .../working-with-saved-replies/index.md | 1 + .../using-saved-replies.md | 1 + .../guides/forming-calls-with-graphql.md | 2 +- .../guides/managing-enterprise-accounts.md | 2 +- content/graphql/guides/using-the-explorer.md | 2 +- content/graphql/overview/public-schema.md | 2 +- content/index.md | 2 +- content/issues/index.md | 1 + .../index.md | 1 + .../about-automation-for-project-boards.md | 3 +- .../about-project-boards.md | 5 +- .../changing-project-board-visibility.md | 1 + .../closing-a-project-board.md | 1 + ...nfiguring-automation-for-project-boards.md | 1 + .../copying-a-project-board.md | 1 + .../creating-a-project-board.md | 3 +- .../deleting-a-project-board.md | 1 + .../editing-a-project-board.md | 1 + .../managing-project-boards/index.md | 1 + ...linking-a-repository-to-a-project-board.md | 1 + .../reopening-a-closed-project-board.md | 1 + ...es-and-pull-requests-to-a-project-board.md | 1 + .../adding-notes-to-a-project-board.md | 1 + .../archiving-cards-on-a-project-board.md | 1 + .../filtering-cards-on-a-project-board.md | 3 +- .../index.md | 1 + ...tracking-progress-on-your-project-board.md | 1 + .../about-issues.md | 15 +- .../about-task-lists.md | 7 +- ...and-pull-requests-to-other-github-users.md | 1 + .../creating-an-issue.md | 7 +- .../deleting-an-issue.md | 1 + ...-and-searching-issues-and-pull-requests.md | 11 +- .../tracking-your-work-with-issues/index.md | 1 + .../linking-a-pull-request-to-an-issue.md | 7 +- ...-issues-or-pull-requests-as-a-duplicate.md | 1 + .../pinning-an-issue-to-your-repository.md | 1 + ...-tracking-work-for-your-team-or-project.md | 13 +- .../quickstart.md | 9 +- ...sferring-an-issue-to-another-repository.md | 3 +- ...ng-all-of-your-issues-and-pull-requests.md | 3 +- .../about-projects.md | 1 + .../automating-projects.md | 1 + .../best-practices-for-managing-projects.md | 1 + .../creating-a-project.md | 1 + .../customizing-your-project-views.md | 1 + .../index.md | 1 + .../quickstart.md | 1 + .../using-the-api-to-manage-projects.md | 19 +- .../about-milestones.md | 1 + ...ilestones-with-issues-and-pull-requests.md | 1 + ...milestones-for-issues-and-pull-requests.md | 1 + ...g-issues-and-pull-requests-by-milestone.md | 1 + .../index.md | 1 + .../managing-labels.md | 23 ++- .../viewing-your-milestones-progress.md | 1 + .../about-organizations.md | 3 +- .../about-your-organization-dashboard.md | 5 +- .../about-your-organizations-news-feed.md | 5 +- .../accessing-your-organizations-settings.md | 3 +- ...reating-a-new-organization-from-scratch.md | 5 +- .../customizing-your-organizations-profile.md | 1 + .../index.md | 1 + .../viewing-insights-for-your-organization.md | 5 +- .../about-team-discussions.md | 5 +- .../creating-a-team-discussion.md | 1 + .../editing-or-deleting-a-team-discussion.md | 1 + .../collaborating-with-your-team/index.md | 1 + .../pinning-a-team-discussion.md | 1 + ...-authentication-and-saml-single-sign-on.md | 5 +- .../index.md | 1 + ...rvice-accounts-with-saml-single-sign-on.md | 1 + ...embers-saml-access-to-your-organization.md | 7 +- content/organizations/index.md | 1 + .../keeping-your-organization-secure/index.md | 1 + ...owed-ip-addresses-for-your-organization.md | 3 +- ...analysis-settings-for-your-organization.md | 29 +-- ...tor-authentication-in-your-organization.md | 3 +- ...tor-authentication-in-your-organization.md | 21 +- ...ail-notifications-for-your-organization.md | 7 +- ...ing-the-audit-log-for-your-organization.md | 193 +++++++++--------- ...ur-organizations-installed-integrations.md | 1 + ...s-in-your-organization-have-2fa-enabled.md | 3 +- ...ithub-app-managers-in-your-organization.md | 3 +- .../index.md | 1 + ...hub-app-managers-from-your-organization.md | 3 +- ...to-a-project-board-in-your-organization.md | 1 + .../index.md | 1 + ...-project-board-for-organization-members.md | 1 + ...access-to-an-organization-project-board.md | 1 + ...access-to-an-organization-project-board.md | 1 + ...t-board-permissions-for-an-organization.md | 1 + ...ator-from-an-organization-project-board.md | 1 + ...rs-to-repositories-in-your-organization.md | 5 +- ...tside-collaborator-in-your-organization.md | 1 + ...ation-member-to-an-outside-collaborator.md | 3 +- ...-collaborator-to-an-organization-member.md | 13 +- .../index.md | 1 + ...ls-access-to-an-organization-repository.md | 3 +- ...am-access-to-an-organization-repository.md | 1 + ...llaborators-access-to-your-organization.md | 11 +- ...borator-from-an-organization-repository.md | 3 +- ...y-permission-levels-for-an-organization.md | 45 ++-- ...ng-base-permissions-for-an-organization.md | 3 +- ...g-people-with-access-to-your-repository.md | 3 +- .../about-ssh-certificate-authorities.md | 5 +- .../index.md | 1 + ...ganizations-ssh-certificate-authorities.md | 1 + ...-accounts-for-people-in-my-organization.md | 1 + ...an-invitation-to-join-your-organization.md | 3 +- .../index.md | 1 + ...nviting-users-to-join-your-organization.md | 1 + ...ng-a-former-member-of-your-organization.md | 13 +- ...emoving-a-member-from-your-organization.md | 7 +- ...e-to-delete-issues-in-your-organization.md | 1 + ...-your-organizations-dependency-insights.md | 3 +- ...artifacts-and-logs-in-your-organization.md | 1 + .../converting-an-organization-into-a-user.md | 3 +- .../deleting-an-organization-account.md | 5 +- ...ng-github-actions-for-your-organization.md | 11 +- ...ing-project-boards-in-your-organization.md | 1 + .../managing-organization-settings/index.md | 3 +- ...s-for-repositories-in-your-organization.md | 7 +- ...n-for-repositories-in-your-organization.md | 1 + ...heduled-reminders-for-your-organization.md | 1 + ...e-for-repositories-in-your-organization.md | 3 +- ...ay-of-member-names-in-your-organization.md | 1 + ...he-forking-policy-for-your-organization.md | 7 +- ...ithub-pages-sites-for-your-organization.md | 7 +- ...rom-accounts-your-organization-sponsors.md | 1 + .../renaming-an-organization.md | 5 +- ...epository-creation-in-your-organization.md | 5 +- ...visibility-changes-in-your-organization.md | 1 + ...ssions-for-adding-outside-collaborators.md | 1 + ...r-deleting-or-transferring-repositories.md | 1 + ...eation-permissions-in-your-organization.md | 1 + .../transferring-organization-ownership.md | 7 +- ...ading-to-the-corporate-terms-of-service.md | 3 +- ...pproving-a-domain-for-your-organization.md | 11 +- ...-a-billing-manager-to-your-organization.md | 3 + ...r-permissions-to-an-organization-member.md | 1 + .../index.md | 1 + ...ership-continuity-for-your-organization.md | 1 + .../permission-levels-for-an-organization.md | 9 +- ...-billing-manager-from-your-organization.md | 1 + ...ess-management-with-saml-single-sign-on.md | 5 +- .../about-scim.md | 3 +- ...f-your-identity-provider-is-unavailable.md | 1 + ...saml-single-sign-on-and-scim-using-okta.md | 3 +- ...-identity-provider-to-your-organization.md | 1 + ...ions-saml-single-sign-on-recovery-codes.md | 1 + ...ml-single-sign-on-for-your-organization.md | 1 + ...ml-single-sign-on-for-your-organization.md | 3 +- .../index.md | 1 + ...m-synchronization-for-your-organization.md | 3 +- ...aml-single-sign-on-in-your-organization.md | 1 + ...am-to-improved-organization-permissions.md | 1 + ...am-to-improved-organization-permissions.md | 1 + .../index.md | 1 + ...ms-to-improved-organization-permissions.md | 1 + .../about-teams.md | 1 + .../adding-organization-members-to-a-team.md | 5 +- .../changing-team-visibility.md | 1 + .../creating-a-team.md | 5 +- .../deleting-a-team.md | 1 + ...-team-discussions-for-your-organization.md | 1 + .../organizing-members-into-teams/index.md | 1 + ...ng-code-review-assignment-for-your-team.md | 5 +- ...aging-scheduled-reminders-for-your-team.md | 1 + ...-a-team-in-your-organizations-hierarchy.md | 1 + ...moving-organization-members-from-a-team.md | 1 + .../renaming-a-team.md | 1 + .../requesting-to-add-a-child-team.md | 1 + ...questing-to-add-or-change-a-parent-team.md | 1 + .../setting-your-teams-profile-picture.md | 1 + ...-a-team-with-an-identity-provider-group.md | 27 +-- .../about-oauth-app-access-restrictions.md | 1 + ...roving-oauth-apps-for-your-organization.md | 1 + ...pproved-oauth-app-for-your-organization.md | 1 + ...cess-restrictions-for-your-organization.md | 1 + ...cess-restrictions-for-your-organization.md | 1 + .../index.md | 1 + content/packages/index.md | 1 + .../about-permissions-for-github-packages.md | 17 +- ...-packages-access-control-and-visibility.md | 1 + .../connecting-a-repository-to-a-package.md | 1 + .../deleting-and-restoring-a-package.md | 25 +-- .../packages/learn-github-packages/index.md | 1 + .../installing-a-package.md | 5 +- .../introduction-to-github-packages.md | 21 +- .../publishing-a-package.md | 5 +- .../learn-github-packages/viewing-packages.md | 7 +- ...bout-github-packages-and-github-actions.md | 1 + ...mple-workflows-for-publishing-a-package.md | 1 + .../index.md | 1 + ...nstalling-a-package-with-github-actions.md | 29 +-- content/packages/quickstart.md | 3 +- .../index.md | 3 +- ...ainer-registry-from-the-docker-registry.md | 1 + .../working-with-the-apache-maven-registry.md | 7 +- .../working-with-the-container-registry.md | 1 + .../working-with-the-docker-registry.md | 21 +- .../working-with-the-gradle-registry.md | 15 +- .../working-with-the-npm-registry.md | 21 +- .../working-with-the-nuget-registry.md | 21 +- .../working-with-the-rubygems-registry.md | 17 +- .../about-custom-domains-and-github-pages.md | 1 + .../index.md | 1 + ...ustom-domain-for-your-github-pages-site.md | 1 + ...hooting-custom-domains-and-github-pages.md | 1 + .../about-github-pages.md | 35 ++-- ...ithub-pages-site-with-the-theme-chooser.md | 1 + ...he-visibility-of-your-github-pages-site.md | 3 +- ...shing-source-for-your-github-pages-site.md | 5 +- ...tom-404-page-for-your-github-pages-site.md | 1 + .../creating-a-github-pages-site.md | 7 +- .../index.md | 1 + ...uring-your-github-pages-site-with-https.md | 1 + .../unpublishing-a-github-pages-site.md | 3 +- .../using-submodules-with-github-pages.md | 1 + content/pages/index.md | 3 +- .../about-github-pages-and-jekyll.md | 5 +- ...yll-build-errors-for-github-pages-sites.md | 3 +- ...-to-your-github-pages-site-using-jekyll.md | 1 + ...-to-your-github-pages-site-using-jekyll.md | 1 + ...reating-a-github-pages-site-with-jekyll.md | 7 +- .../index.md | 1 + ...for-your-github-pages-site-using-jekyll.md | 1 + ...r-github-pages-site-locally-with-jekyll.md | 1 + ...yll-build-errors-for-github-pages-sites.md | 5 +- ...ut-archiving-content-and-data-on-github.md | 7 +- .../archiving-repositories.md | 5 +- .../backing-up-a-repository.md | 9 +- .../archiving-a-github-repository/index.md | 1 + .../referencing-and-citing-content.md | 3 +- .../about-merge-methods-on-github.md | 3 +- ...uring-commit-rebasing-for-pull-requests.md | 1 + ...ring-commit-squashing-for-pull-requests.md | 1 + .../configuring-pull-request-merges/index.md | 1 + ...ge-for-pull-requests-in-your-repository.md | 3 +- ...ging-the-automatic-deletion-of-branches.md | 1 + .../about-protected-branches.md | 15 +- .../index.md | 1 + .../managing-a-branch-protection-rule.md | 3 +- .../troubleshooting-required-status-checks.md | 3 +- .../index.md | 1 + .../changing-the-default-branch.md | 7 +- ...nd-restoring-branches-in-a-pull-request.md | 1 + .../index.md | 1 + .../renaming-a-branch.md | 1 + .../viewing-branches-in-your-repository.md | 1 + .../about-repositories.md | 13 +- .../cloning-a-repository.md | 5 +- .../creating-a-new-repository.md | 11 +- .../creating-a-repository-from-a-template.md | 7 +- .../creating-a-template-repository.md | 5 +- .../creating-an-issues-only-repository.md | 1 + .../deleting-a-repository.md | 5 +- .../duplicating-a-repository.md | 5 +- .../index.md | 1 + .../renaming-a-repository.md | 3 +- .../restoring-a-deleted-repository.md | 1 + .../transferring-a-repository.md | 9 +- .../troubleshooting-cloning-errors.md | 7 +- content/repositories/index.md | 1 + .../about-citation-files.md | 1 + .../about-code-owners.md | 9 +- .../about-readmes.md | 9 +- .../about-repository-languages.md | 1 + ...classifying-your-repository-with-topics.md | 7 +- ...g-your-repositorys-social-media-preview.md | 1 + ...ing-a-sponsor-button-in-your-repository.md | 1 + .../customizing-your-repository/index.md | 1 + .../licensing-a-repository.md | 7 +- .../disabling-issues.md | 3 +- ...isabling-project-boards-in-a-repository.md | 1 + ...ing-github-discussions-for-a-repository.md | 1 + .../index.md | 1 + ...ithub-actions-settings-for-a-repository.md | 24 ++- ...d-analysis-settings-for-your-repository.md | 19 +- .../index.md | 1 + ...fications-for-pushes-to-your-repository.md | 5 +- ...tolinks-to-reference-external-resources.md | 1 + .../managing-repository-settings/index.md | 1 + ...-objects-in-archives-of-your-repository.md | 1 + ...d-people-with-access-to-your-repository.md | 1 + ...-the-forking-policy-for-your-repository.md | 5 +- .../setting-repository-visibility.md | 21 +- .../about-releases.md | 11 +- .../automatically-generated-release-notes.md | 11 +- ...for-release-forms-with-query-parameters.md | 1 + .../comparing-releases.md | 1 + .../releasing-projects-on-github/index.md | 1 + .../linking-to-releases.md | 1 + .../managing-releases-in-a-repository.md | 17 +- ...wing-your-repositorys-releases-and-tags.md | 3 +- .../about-repository-graphs.md | 7 +- ...lyzing-changes-to-a-repositorys-content.md | 5 +- .../index.md | 1 + ...anding-connections-between-repositories.md | 9 +- .../viewing-a-projects-contributors.md | 7 +- ...iewing-a-summary-of-repository-activity.md | 1 + ...deployment-activity-for-your-repository.md | 1 + .../viewing-traffic-to-a-repository.md | 1 + .../repositories/working-with-files/index.md | 1 + .../adding-a-file-to-a-repository.md | 3 +- .../managing-files/creating-new-files.md | 1 + ...zing-how-changed-files-appear-on-github.md | 1 + .../deleting-files-in-a-repository.md | 15 +- .../managing-files/editing-files.md | 1 + .../managing-files/index.md | 1 + .../moving-a-file-to-a-new-location.md | 1 + .../managing-files/renaming-a-file.md | 1 + .../about-git-large-file-storage.md | 3 +- .../about-large-files-on-github.md | 7 +- .../about-storage-and-bandwidth-usage.md | 3 +- ...llaboration-with-git-large-file-storage.md | 3 +- .../configuring-git-large-file-storage.md | 3 +- .../managing-large-files/index.md | 1 + .../installing-git-large-file-storage.md | 1 + ...ur-repository-to-git-large-file-storage.md | 1 + ...oving-files-from-git-large-file-storage.md | 5 +- ...-git-large-file-storage-upload-failures.md | 1 + .../getting-permanent-links-to-files.md | 1 + .../working-with-files/using-files/index.md | 1 + .../using-files/navigating-code-on-github.md | 1 + .../using-files/tracking-changes-in-a-file.md | 1 + .../working-with-non-code-files.md | 9 +- .../rest/guides/basics-of-authentication.md | 7 +- .../guides/best-practices-for-integrators.md | 11 +- content/rest/guides/building-a-ci-server.md | 3 +- content/rest/guides/delivering-deployments.md | 1 + .../discovering-resources-for-a-user.md | 5 +- .../getting-started-with-the-checks-api.md | 3 +- ...tting-started-with-the-git-database-api.md | 1 + .../getting-started-with-the-rest-api.md | 33 +-- content/rest/guides/index.md | 3 +- .../rest/guides/rendering-data-as-graphs.md | 5 +- .../rest/guides/traversing-with-pagination.md | 3 +- content/rest/guides/working-with-comments.md | 3 +- content/rest/index.md | 1 + content/rest/overview/api-previews.md | 3 +- .../endpoints-available-for-github-apps.md | 1 + content/rest/overview/index.md | 1 + content/rest/overview/libraries.md | 3 +- content/rest/overview/media-types.md | 1 + content/rest/overview/openapi-description.md | 1 + .../overview/other-authentication-methods.md | 17 +- .../overview/resources-in-the-rest-api.md | 29 +-- content/rest/overview/troubleshooting.md | 3 +- content/rest/reference/actions.md | 3 +- content/rest/reference/activity.md | 3 +- content/rest/reference/apps.md | 7 +- content/rest/reference/billing.md | 1 + content/rest/reference/checks.md | 1 + content/rest/reference/code-scanning.md | 5 +- content/rest/reference/codes-of-conduct.md | 1 + content/rest/reference/emojis.md | 1 + content/rest/reference/enterprise-admin.md | 9 +- content/rest/reference/gists.md | 1 + content/rest/reference/git.md | 1 + content/rest/reference/gitignore.md | 3 +- content/rest/reference/index.md | 1 + content/rest/reference/interactions.md | 1 + content/rest/reference/issues.md | 1 + content/rest/reference/licenses.md | 3 +- content/rest/reference/markdown.md | 1 + content/rest/reference/meta.md | 1 + content/rest/reference/migrations.md | 1 + content/rest/reference/orgs.md | 3 +- content/rest/reference/packages.md | 1 + .../permissions-required-for-github-apps.md | 23 ++- content/rest/reference/projects.md | 1 + content/rest/reference/pulls.md | 1 + content/rest/reference/rate-limit.md | 5 +- content/rest/reference/reactions.md | 1 + content/rest/reference/repos.md | 13 +- content/rest/reference/scim.md | 3 +- content/rest/reference/search.md | 1 + content/rest/reference/secret-scanning.md | 3 +- content/rest/reference/teams.md | 5 +- content/rest/reference/users.md | 7 +- .../about-searching-on-github.md | 13 +- ...rom-your-private-enterprise-environment.md | 21 +- .../index.md | 1 + .../sorting-search-results.md | 1 + .../troubleshooting-search-queries.md | 1 + .../understanding-the-search-syntax.md | 3 +- content/search-github/index.md | 1 + .../finding-files-on-github.md | 1 + .../searching-on-github/index.md | 1 + .../searching-on-github/searching-code.md | 9 +- .../searching-on-github/searching-commits.md | 3 +- .../searching-discussions.md | 3 +- .../searching-for-packages.md | 1 + .../searching-for-repositories.md | 9 +- .../searching-github-marketplace.md | 1 + .../searching-on-github/searching-in-forks.md | 1 + .../searching-issues-and-pull-requests.md | 13 +- .../searching-on-github/searching-topics.md | 3 +- .../searching-on-github/searching-users.md | 3 +- .../searching-on-github/searching-wikis.md | 1 + .../about-github-sponsors.md | 5 +- .../index.md | 1 + ...art-for-finding-contributors-to-sponsor.md | 1 + content/sponsors/guides.md | 1 + content/sponsors/index.md | 1 + ...ks-for-events-in-your-sponsored-account.md | 1 + ...g-started-with-the-sponsors-graphql-api.md | 5 +- .../integrating-with-github-sponsors/index.md | 1 + ...b-sponsors-for-open-source-contributors.md | 1 + .../contacting-your-sponsors.md | 1 + .../disabling-your-github-sponsors-account.md | 1 + ...our-profile-details-for-github-sponsors.md | 1 + .../index.md | 1 + ...aging-your-payouts-from-github-sponsors.md | 1 + .../managing-your-sponsorship-goal.md | 1 + .../managing-your-sponsorship-tiers.md | 1 + ...p-github-sponsors-for-your-organization.md | 3 +- ...p-github-sponsors-for-your-user-account.md | 5 +- .../sponsors-for-companies.md | 3 +- .../tax-information-for-github-sponsors.md | 1 + ...publishing-your-github-sponsors-profile.md | 1 + .../viewing-your-sponsors-and-sponsorships.md | 1 + ...uting-sponsorships-to-your-organization.md | 1 + .../index.md | 1 + .../managing-your-sponsorship.md | 1 + .../paying-for-github-sponsors-by-invoice.md | 1 + .../sponsoring-an-open-source-contributor.md | 3 +- contributing/content-model.md | 20 +- data/features/placeholder.yml | 1 + data/learning-tracks/admin.yml | 12 ++ .../code-security/code-examples.yml | 3 + data/reusables/accounts/create-account.md | 4 +- data/reusables/actions/about-secrets.md | 2 +- .../actions-audit-events-for-enterprise.md | 4 +- .../actions/actions-audit-events-workflow.md | 12 +- .../actions/actions-use-policy-settings.md | 2 +- .../actions/allow-specific-actions-intro.md | 4 +- data/reusables/actions/delete-env-key.md | 2 +- data/reusables/actions/message-parameters.md | 6 +- .../actions/reusable-workflow-artifacts.md | 2 +- data/reusables/actions/reusable-workflows.md | 2 +- .../actions/workflow-runs-dependabot-note.md | 2 +- .../actions/workflow-template-overview.md | 2 +- .../about-committer-numbers-ghec-ghes.md | 2 +- .../about-ghas-organization-policy.md | 2 +- .../getting-the-most-from-your-license.md | 2 +- .../ghas-helps-developers.md | 2 +- .../managing-license-usage-ghec-ghes.md | 2 +- .../advanced-security/more-info-ghas.md | 2 +- ...re-information-about-enforcement-policy.md | 2 +- .../note-org-enable-uses-seats.md | 4 +- ...ret-scanning-add-custom-pattern-details.md | 2 +- .../secret-scanning-new-custom-pattern.md | 2 +- .../deprecating_auth_with_query_parameters.md | 4 +- .../apps/general-apps-restrictions.md | 2 +- .../apps/maximum-github-apps-allowed.md | 2 +- .../apps/maximum-oauth-apps-allowed.md | 2 +- .../reusables/apps/oauth-apps-restrictions.md | 2 +- data/reusables/branches/set-default-branch.md | 2 +- data/reusables/cli/about-cli.md | 2 +- .../filter-issues-and-pull-requests-tip.md | 2 +- .../code-scanning/beta-codeql-packs-cli.md | 2 +- .../code-scanning/click-alert-in-list.md | 2 +- .../reusables/code-scanning/licensing-note.md | 2 +- data/reusables/code-scanning/not-available.md | 2 +- .../code-scanning/run-additional-queries.md | 2 +- .../code-scanning/upload-sarif-alert-limit.md | 2 +- .../code-scanning/upload-sarif-ghas.md | 4 +- .../use-codeql-runner-not-cli.md | 2 +- .../code-scanning/what-is-codeql-cli.md | 2 +- .../your-codespaces-procedure-step.md | 2 +- .../command_line/provide-an-access-token.md | 2 +- data/reusables/dependabot/dependabot-tos.md | 2 +- data/reusables/desktop/get-an-account.md | 4 +- .../pull_request_forked_repos_link.md | 2 +- .../dotcom_billing/view-all-subscriptions.md | 2 +- .../about-enterprise-accounts.md | 95 --------- .../enterprise-accounts/access-enterprise.md | 2 +- .../actions-runners-tab.md | 2 +- .../approved-domains-beta-note.md | 2 +- .../domains-about-approval.md | 11 - .../domains-about-verification.md | 11 - .../enterprise-accounts/domains-approving.md | 9 - .../enterprise-accounts/domains-removing.md | 5 - .../enterprise-accounts/domains-verifying.md | 16 -- .../email-restrictions-about.md | 15 -- .../email-restrictions-restricting.md | 7 - .../emu-permission-follow.md | 2 +- .../emu-permission-fork.md | 2 +- .../emu-permission-gist.md | 2 +- .../emu-permission-interact.md | 2 +- .../emu-permission-propose.md | 2 +- .../emu-permission-repo.md | 2 +- .../enterprise-accounts/emu-saml-note.md | 4 +- .../enterprise-accounts/emu-scim-note.md | 4 +- .../enterprise-accounts/emu-short-summary.md | 2 +- .../enterprise-administrators.md | 2 +- .../invite-organization.md | 2 +- .../enterprise-accounts/license-tab.md | 2 +- .../support-entitlements.md | 2 +- .../enterprise-accounts/team-sync-override.md | 4 +- .../you-can-sync-for-a-combined-view.md | 2 +- .../enterprise/about-deployment-methods.md | 2 +- .../submit-support-ticket-first-section.md | 12 +- data/reusables/files/choose-commit-email.md | 4 +- .../files/commit-author-email-options.md | 2 +- data/reusables/gated-features/actions.md | 2 +- data/reusables/gated-features/auto-merge.md | 2 +- data/reusables/gated-features/autolinks.md | 2 +- data/reusables/gated-features/code-owners.md | 2 +- .../reusables/gated-features/code-scanning.md | 2 +- .../gated-features/dependency-review.md | 2 +- data/reusables/gated-features/draft-prs.md | 2 +- data/reusables/gated-features/emus.md | 2 +- .../gated-features/enterprise-accounts.md | 2 +- data/reusables/gated-features/environments.md | 2 +- data/reusables/gated-features/ghas.md | 2 +- .../gated-features/more-info-org-products.md | 2 +- data/reusables/gated-features/more-info.md | 2 +- data/reusables/gated-features/packages.md | 2 +- data/reusables/gated-features/pages.md | 2 +- .../gated-features/protected-branches.md | 2 +- .../gated-features/repository-insights.md | 2 +- .../gated-features/secret-scanning.md | 2 +- .../gated-features/team-synchronization.md | 2 +- data/reusables/gated-features/wikis.md | 2 +- data/reusables/getting-started/api.md | 2 +- .../getting-started/contact-support.md | 2 +- .../customizing-and-automating.md | 2 +- .../enterprise-advanced-security.md | 2 +- .../learning-lab-enterprise.md | 2 +- .../reusables/getting-started/learning-lab.md | 2 +- .../getting-started/open-source-projects.md | 4 +- data/reusables/getting-started/packages.md | 2 +- data/reusables/getting-started/sponsors.md | 2 +- .../artifact-log-retention-statement.md | 2 +- .../github-token-permissions.md | 2 +- .../publish-to-packages-workflow-step.md | 2 +- ...osted-runner-check-installation-success.md | 2 +- ...ed-runner-configure-runner-group-access.md | 2 +- ...-groups-navigate-to-repo-org-enterprise.md | 6 +- .../github-actions/self-hosted-runner-list.md | 2 +- ...-runner-management-permissions-required.md | 4 +- ...-runner-navigate-to-repo-org-enterprise.md | 6 +- .../self-hosted-runner-removing-a-runner.md | 2 +- .../settings-sidebar-actions-runner-groups.md | 2 +- .../settings-sidebar-actions-runners.md | 2 +- .../workflow-permissions-intro.md | 2 +- data/reusables/gpg/private-email.md | 2 +- .../issue-event-common-properties.md | 2 +- .../can-include-lfs-objects-archives.md | 2 +- .../marketplace-double-purchases.md | 2 +- .../email-notification-caveats.md | 2 +- .../email-restrictions-verification.md | 2 +- data/reusables/notifications/shared_state.md | 2 +- ...ification-delivery-method-customization.md | 2 +- ...lnerable-dependency-notification-enable.md | 2 +- ...nerable-dependency-notification-options.md | 4 +- .../organizations/cancel_org_invite.md | 2 +- .../choose-to-restore-privileges.md | 2 +- .../choose-user-role-send-invitation.md | 2 +- .../internal-repos-enterprise.md | 2 +- .../invite_member_from_people_tab.md | 2 +- data/reusables/organizations/invite_to_org.md | 2 +- .../reusables/organizations/invite_to_team.md | 2 +- .../organizations/navigate-to-org.md | 2 +- data/reusables/organizations/new_team.md | 2 +- .../organizations/oauth_app_access.md | 2 +- .../oauth_app_restrictions_default.md | 2 +- data/reusables/organizations/org_settings.md | 2 +- .../organization-wide-project.md | 2 +- .../organizations/organizations_include.md | 2 +- .../outside-collaborators-use-seats.md | 2 +- data/reusables/organizations/owners-team.md | 2 +- data/reusables/organizations/people.md | 2 +- .../organizations/send-invitation.md | 2 +- data/reusables/organizations/specific_team.md | 2 +- .../organizations/team-synchronization.md | 2 +- .../organizations/team_maintainers_can.md | 4 +- data/reusables/organizations/teams.md | 2 +- .../about-packaging-and-actions.md | 2 +- .../package_registry/authenticate-packages.md | 2 +- ...nticate_with_pat_for_container_registry.md | 2 +- .../create-npmrc-owner-step.md | 2 +- .../docker_registry_deprecation_status.md | 2 +- .../package-settings-from-org-level.md | 2 +- .../package-settings-from-user-level.md | 2 +- .../package_registry/packages-billing.md | 2 +- .../packages-from-code-tab.md | 2 +- .../public-or-private-packages.md | 2 +- .../visibility-and-access-permissions.md | 2 +- .../pages/best-with-supported-themes.md | 2 +- .../pages/decide-publishing-source.md | 2 +- data/reusables/pages/new-or-existing-repo.md | 4 +- .../org-owners-can-restrict-pages-creation.md | 2 +- .../pages/private_pages_are_public_warning.md | 2 +- data/reusables/pages/sidebar-pages.md | 2 +- .../pages/update_your_dns_settings.md | 2 +- data/reusables/policies/abuse.md | 2 +- .../github-community-guidelines-and-terms.md | 2 +- data/reusables/profile/access_org.md | 2 +- data/reusables/profile/access_profile.md | 4 +- .../project-management/copy-project-boards.md | 2 +- .../project-board-import-with-api.md | 2 +- data/reusables/projects/project_boards_old.md | 2 +- .../close-issues-using-keywords.md | 2 +- ...ollect-co-author-commit-git-config-info.md | 2 +- .../perms-to-open-pull-request.md | 2 +- .../pull_requests/resolving-conversations.md | 2 +- .../pull_requests/you-can-auto-merge.md | 2 +- .../repositories/blocked-passwords.md | 2 +- data/reusables/repositories/copy-clone-url.md | 4 +- .../repositories/default-issue-templates.md | 2 +- ...forks_from_private_repositories_warning.md | 2 +- .../repositories/dependency-review.md | 2 +- data/reusables/repositories/deploy-keys.md | 2 +- .../repositories/internal-repo-default.md | 2 +- .../navigate-to-job-superlinter.md | 2 +- .../repositories/navigate-to-repo.md | 2 +- .../reusables/repositories/repo-size-limit.md | 2 +- .../security-alert-delivery-options.md | 2 +- .../security-alerts-x-github-severity.md | 2 +- .../repositories/security-guidelines.md | 2 +- .../repositories/select-marketplace-apps.md | 2 +- .../repositories/sidebar-dependabot-alerts.md | 2 +- data/reusables/repositories/sidebar-issues.md | 2 +- data/reusables/repositories/sidebar-pr.md | 2 +- ...quash-and-rebase-linear-commit-hisitory.md | 2 +- .../repositories/start-line-comment.md | 2 +- .../reusables/repositories/suggest-changes.md | 2 +- .../repositories/transfer-repository-steps.md | 2 +- .../view-failed-job-results-superlinter.md | 4 +- .../view-specific-line-superlinter.md | 4 +- .../repositories/workflow-notifications.md | 2 +- data/reusables/repositories/you-can-fork.md | 4 +- .../rest-api/dotcom-only-guide-note.md | 2 +- .../reusables/saml/about-linked-identities.md | 4 +- .../assert-the-administrator-attribute.md | 2 +- data/reusables/saml/saml-supported-idps.md | 9 +- .../you-must-periodically-authenticate.md | 2 +- .../scim/after-you-configure-saml.md | 2 +- .../secret-scanning/about-secret-scanning.md | 2 +- .../link-browsing-advisory-db.md | 2 +- .../security/displayed-information.md | 2 +- ...-and-analysis-features-enable-read-only.md | 2 +- ...nalysis-features-are-enabled-by-default.md | 2 +- data/reusables/sponsors/accept-legal-terms.md | 2 +- .../sponsors/legal-additional-terms.md | 2 +- data/reusables/sponsors/payout-info.md | 2 +- .../sponsors/select-sponsorship-billing.md | 2 +- data/reusables/ssh/key-type-support.md | 2 +- .../support/connect-in-the-forum-bootcamp.md | 2 +- data/reusables/support/ghae-priorities.md | 2 +- data/reusables/support/ghes-priorities.md | 2 +- data/reusables/support/receiving-credits.md | 4 +- data/reusables/supported-languages/C.md | 2 +- data/reusables/supported-languages/Cpp.md | 2 +- data/reusables/supported-languages/Cs.md | 2 +- data/reusables/supported-languages/go.md | 2 +- data/reusables/supported-languages/java.md | 2 +- .../supported-languages/javascript.md | 2 +- data/reusables/supported-languages/php.md | 2 +- .../products-table-header.md | 2 +- data/reusables/supported-languages/python.md | 2 +- data/reusables/supported-languages/ruby.md | 2 +- data/reusables/supported-languages/scala.md | 2 +- .../supported-languages/typescript.md | 2 +- .../two_fa/after-2fa-add-security-key.md | 2 +- ...to-reinstate-user-before-2fa-is-enabled.md | 2 +- .../user-settings/marketplace_apps.md | 2 +- .../about-commit-email-addresses.md | 2 +- .../user_settings/add_and_verify_email.md | 2 +- data/reusables/user_settings/export-data.md | 2 +- .../no-verification-disposable-emails.md | 2 +- .../user_settings/personal_dashboard.md | 2 +- .../removes-personal-access-tokens.md | 2 +- .../set_your_email_address_in_git.md | 2 +- .../webhooks/check_run_properties.md | 4 +- .../webhooks/check_suite_properties.md | 2 +- .../code_scanning_alert_event_short_desc.md | 2 +- data/reusables/webhooks/create_properties.md | 2 +- data/reusables/webhooks/discussion_desc.md | 2 +- .../webhooks/installation_properties.md | 2 +- data/reusables/webhooks/org_desc_graphql.md | 2 +- .../pull_request_webhook_properties.md | 2 +- data/reusables/webhooks/repo_desc_graphql.md | 2 +- data/reusables/webhooks/secret.md | 2 +- .../secret_scanning_alert_event_short_desc.md | 2 +- .../webhooks/webhooks-rest-api-links.md | 4 +- data/variables/command_line.yml | 6 +- data/variables/contact.yml | 10 +- data/variables/explore.yml | 6 +- data/variables/gists.yml | 6 +- data/variables/migrations.yml | 2 +- data/variables/notifications.yml | 4 +- data/variables/product.yml | 25 ++- data/variables/search.yml | 4 +- includes/tool-switcher.html | 2 +- lib/all-versions.js | 11 +- lib/page.js | 7 +- lib/redirects/exception-redirects.js | 28 +++ lib/redirects/permalinks.js | 13 +- lib/redirects/precompile.js | 17 ++ lib/redirects/static/redirect-exceptions.txt | 66 ++++++ lib/rest/index.js | 9 +- .../github-docs-ghec-en-records.json.br | 3 + .../indexes/github-docs-ghec-en.json.br | 3 + pages/index.tsx | 2 +- tests/browser/browser.js | 29 ++- tests/content/featured-links.js | 1 - tests/content/graphql.js | 122 ++++++----- tests/content/webhooks.js | 12 +- .../remove-liquid-statements/whitespace.md | 4 +- tests/rendering/breadcrumbs.js | 9 + tests/rendering/footer.js | 5 + tests/rendering/header.js | 13 +- tests/rendering/server.js | 127 ++++++------ tests/unit/liquid.js | 37 +++- tests/unit/page.js | 2 +- tests/unit/permalink.js | 6 +- 1592 files changed, 4988 insertions(+), 3498 deletions(-) create mode 100644 assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png create mode 100644 assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png create mode 100644 assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events-ghes-and-ae.png rename content/{github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta.md => admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-using-okta.md} (87%) rename content/{github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/managing-team-synchronization-for-organizations-in-your-enterprise-account.md => admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise.md} (86%) rename content/{github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account => admin/authentication/managing-identity-and-access-for-your-enterprise}/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md (91%) rename content/{github/setting-up-and-managing-your-enterprise => admin/authentication}/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users.md (97%) rename content/{github/setting-up-and-managing-your-enterprise => admin/authentication}/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise.md (90%) rename content/{github/setting-up-and-managing-your-enterprise => admin/authentication}/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users.md (97%) rename content/{github/setting-up-and-managing-your-enterprise => admin/authentication}/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md (96%) rename content/{github/setting-up-and-managing-your-enterprise => admin/authentication}/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users.md (96%) rename content/{github/setting-up-and-managing-your-enterprise => admin/authentication}/managing-your-enterprise-users-with-your-identity-provider/index.md (83%) rename content/{github/setting-up-and-managing-your-enterprise => admin/authentication}/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups.md (96%) delete mode 100644 content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise.md create mode 100644 content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-dependency-insights-in-your-enterprise.md create mode 100644 content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md rename content/{github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account.md => admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md} (59%) rename content/{github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-project-board-policies-in-your-enterprise-account.md => admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise.md} (57%) create mode 100644 content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-team-policies-in-your-enterprise.md rename content/{github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/adding-organizations-to-your-enterprise-account.md => admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md} (79%) rename content/{github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/managing-unowned-organizations-in-your-enterprise-account.md => admin/user-management/managing-organizations-in-your-enterprise/managing-unowned-organizations-in-your-enterprise.md} (80%) rename content/{github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account => admin/user-management/managing-organizations-in-your-enterprise}/streaming-the-audit-logs-for-organizations-in-your-enterprise-account.md (96%) rename content/{github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/viewing-the-audit-logs-for-organizations-in-your-enterprise-account.md => admin/user-management/managing-organizations-in-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise.md} (86%) rename content/{github/setting-up-and-managing-your-enterprise => admin/user-management}/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md (65%) rename content/{github/setting-up-and-managing-your-enterprise => admin/user-management}/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise.md (93%) rename content/{github/setting-up-and-managing-your-enterprise => admin/user-management}/managing-users-in-your-enterprise/roles-in-an-enterprise.md (80%) rename content/{github/setting-up-and-managing-your-enterprise => admin/user-management}/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise.md (86%) create mode 100644 content/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md rename content/admin/user-management/{managing-users-in-your-enterprise => monitoring-activity-in-your-enterprise}/managing-global-webhooks.md (58%) rename content/{github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account => billing/managing-billing-for-your-github-account}/connecting-an-azure-subscription-to-your-enterprise.md (95%) rename content/{github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account => billing/managing-your-license-for-github-enterprise}/managing-licenses-for-visual-studio-subscription-with-github-enterprise.md (92%) create mode 100644 content/github/setting-up-and-managing-your-enterprise.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/about-identity-and-access-management-for-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/index.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/index.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/index.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/index.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/index.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/verifying-or-approving-a-domain-for-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-policies-for-advanced-security-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-repository-management-policies-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-team-policies-in-your-enterprise-account.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/index.md delete mode 100644 content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/restricting-email-notifications-for-your-enterprise-account.md delete mode 100644 data/reusables/enterprise-accounts/about-enterprise-accounts.md delete mode 100644 data/reusables/enterprise-accounts/domains-about-approval.md delete mode 100644 data/reusables/enterprise-accounts/domains-about-verification.md delete mode 100644 data/reusables/enterprise-accounts/domains-approving.md delete mode 100644 data/reusables/enterprise-accounts/domains-removing.md delete mode 100644 data/reusables/enterprise-accounts/domains-verifying.md delete mode 100644 data/reusables/enterprise-accounts/email-restrictions-about.md delete mode 100644 data/reusables/enterprise-accounts/email-restrictions-restricting.md create mode 100644 lib/redirects/exception-redirects.js create mode 100644 lib/redirects/static/redirect-exceptions.txt create mode 100644 lib/search/indexes/github-docs-ghec-en-records.json.br create mode 100644 lib/search/indexes/github-docs-ghec-en.json.br diff --git a/assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png b/assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png new file mode 100644 index 0000000000000000000000000000000000000000..b0beaf09742c8a4cf2e554579e0427f486ce712e GIT binary patch literal 65885 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 literal 0 HcmV?d00001 diff --git a/assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png b/assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png new file mode 100644 index 0000000000000000000000000000000000000000..b05ee5620fc4843a99680b11ea5c24453c75dde4 GIT binary patch literal 253598 zcmeEuXIK=?wl0c_fPe~!WCY2QB@aoEAUT61$r48x(lE@RA|Oc42nyV zaBhNdaBd9Uz6F#-=W+hP!MWyRCo8L=BrD6H;R?2~bF{|6VT-hU^@>C330t?h`Kwpm z1DxyxuAW*SKZa<%YHs^B@U4xZ{Z$78GQrsR*TcKN+TN1-)OUWnozAoNzW>GU8FVTJnkn9v|raFy}xwFN*QP3y3*aMTOU)1&5hoU_fQ70OIP7_ zbAP1%_I9}KdCT-St+B|r^-8yDMYDLtrN4AUf2N?iuLEs^;0sn7) zk+@8~n73qN7z&*S*4ef(Y$DfXg>+j)rK-~^9#<+Vvt$=3I%gf8g-t4&eAU&W&qSI5&Z#Yrt3X8ufo2%U@%|!TqcJIu1^t9nOt^)=>lY zSDy&rdv(n}_P9|2IC#K+_kpih+Vy|cz6nah{nzo0A>bU2jJB+j60p~{bhWm2hP(#5 z*)avb0t)coC>la=a2_yUeXl8LJ>CM^AGgyna5GR<5wiq4ahqF#Ev&h{oZbMnad1Fh zV!)x3wVOGEmy@G2M9fQq@vj0(EvX z_u_JfF#V&Ef3+iL4Y72!d*fyYc4oM0*W3c^?k2&=c-7H=eg1Ku)?Rl1-IFuqpN|DR zAkWnq9zJefp8skaxD<3%DyCuQW$kDnXXgZr8PJC$pTJXI&|eq)k5m8MFa;HMUdQHf9`K9 z$@bjl-3`UJf3r!GrnN?s|Az_;b9d8P1?I?@1)lwVU()`pYdH83f450DJ(BjfZDN06 z^Wkr9PP42xvQ zVs5DFaz9M+(J%PnghDX6xK=O)4>$7*viKdeTEt?wIJbFC^1;^mp;Y%?V);_O`QeDX`g7}VvLqa}%1ad@Uxr{uku5s|%L8Iz=Z913xAxYUU>lYCxgwMzklT*u z2S$mKmT~Lj+esDn(62G#UmTZj$A5SXHMw|PrpWV0(NMbEE#i-f_|kU6S7v%8CxwH{ z=xKZa5qF#)iKK`kS!6(>IJjxA?owu=2@b3BqL7f%?`3CpGIgaGbz)fiS?noix;yb= zLV+E*vLpG<_wrod{$~+SQq#ptTbs-C!}#iW?#MP`iKpsT+{JyVtPI+Ue~|KSrW-r4 zt;4)hdl9lrr3!R$gghd1)4khFHc6v;1g$Cc9?)!6{~Xo_v;EB1u{>sv3X5LTMxV&S z=_2}!Dnn}Hzfu6tsDge``v=iw;JM#TN`QhN&IkuM>FLFpQqe(%-AfN=VSNL_?jyb; zD7(W~a|nL(h0Fvi3?%)3fyeH>uDM2F_ZzTc03%0XY5yw^%;Si7atFQ zF)^xLJlGs`Hw7u_%|lNNG2J}PXL;pb-H)E5{j6akOC3HGWQnPtLC=v7CAByuj7+`1 zPDAv=L9zP{+`h>7s^&`nQ*Rjj@RtnzbCTHO!bqqkU&x10(eB{6)5x)V03lNyBV+VRK5&6bozab+kcwj#Tz@J zt-~>Gt z6Bx`cPqVwY*?FvQk3{N>SM=9gTrFaH_qQr~UYp~kvKL2->euoc4<(kx2En;L$%Z*i0?(!^i8^ZZIg#eE;nM>(I4uToMrPS6*|_BeRkW=u)IY0Fsu< z+W70zN^$c=6t?+NhFD_nF1vBf8x9%LlMe13sk5UDnv%8r;SnXu&d{4uZhro1>_B)~*h2Pfxl$(kK4#?W}m~osk^$E{|THy3~0ly)4vY z>7GLOl?IO)!()?SYP#YE{h~1i^za6)Iiu~CKt5DnGU78N)cSz5D?Ij@zXiFb6nKgy zLq0s#bIyo`TG;u%F}3ITm%!fR(ZOhWBA&=eiqWUl<+S&*&qIarg*@KpyPmAL9;Q^= z?qZsLRL@Bt|7x4zXF^%Z6Hz#dSk-$GpoD}g;y0!|Ut_m-Om}`~Sa)0ct-oGGW*8UM zWrv=fAI?phg%a{a45m1bV2T^+f<^_4_sSPy)zRGTO`_lZs8KJqtgM)-wL38+2bHeDZ= z>u{VW<&23J8Z+hEUmLCL&=+#5?zIe;dc>*c!?q^u_(te}L$jeKPnc*=-cY0Iw02Ws zGlqy-XtnEfqdHY3WiPXM=V5OPr9f(AxL#3=ZoXu!pu^be-d$pWJWjoWG$$<5;LCe6 z*TM7Lg%{5ekHb8d_JwC-*oU)wy6B6eu)aqv?9?OYW!8O)`48glJ+@;y5okQ|s^M%@ zge?-zoec_R&w5kq%Bncb61p^Gqe@GRVAb5-{*-$7C(UfW*BwuwPIf=WT-fdRQVfOT z{ieg8Yp&zwfue`~J(E1mQN*<3eRcb516*@VWXQHa;_c+D(beFeI~O|=FZAXVNBqe9 zX2Ueu!gPWM=U+SuNDL05iK!01v(97Mn-6Z9crxnn(FXPh`>90oz;;^_G z9+RCi8u*?j-|QkgNL{irczv?6D@0mFdM(|mCj%X-Z&tS1F6CdA)7q0GhUB)>Fxy;% zhVRv^(HZVct_{MAqtl;%>L!(?8xFQ8#vC-}uD&&zWeKGwh-qLmsumznFXpXwYf}1L z-7r0|F-!Yk>?7>^TZFefI+I=7`deFg?_i2}W5X(pmF?#2h!W|3fi;i%cJJ81<;>xn za?W7&N25}w(-zT~+JPj&$l1gFofK<8^LlzoCWM?PAJc+Y8B^gGH@O$ZDk#G_nc(&rNoY0nwLP>RIRU3 zvmrea%1@g)L2Eyo6cIY*;P~RBZ_%Glmzz#EIsNFN22{qzsPpdHurlJBShEC^+WjeT zO2s;`vv1@CVCd1#8Ijm9DZ6iC8C!q%}78(-bKJYce{VbPlWEs!3bJWxDF z)c=xB%EqcnL36h!4hQ@Pr%hUt`Dy^ziq(WY$sH}Mrc)%Gwfnq_h2y;sjAuSk+oL}~ zv{PcZwB=FD@6QJX9hzgRXAwq-Gnd2ro{Lz8OEyqA@d8jZQB3E?4criN~PUOHkL&1WPDYZxE}VhWX)8aItM_QnV`jRO1wv z_e2S4saOw}KkIt-rj`)P`~sS`T#LtH;@PS4a;j0{60u(jc5SpU!?xQAc%}CHB4nx( z>q@$g7TzDbj%YGZw=fmsZZCDXVu#fV3*x82r_U349$tJf<)`DhV>8hjb8Yo8Sz0b$ z$^2`Yh4$3M34H2Q4AMwfEzc|c<-$c_f1y%kwNXi~L~^0<`C`_>QA z^;J$4J%JV+8v{wzxy%dd`B@94LJoMK5rvmkuQxxmDaE)vYO-4D;@>@qfBKWYJsn!6$91qG;IWsyTO7SIS{` zfvv6hn1%|mUb!^2P|bL4AnEvtAN(6;x&KqG)I!jsmlF>lyUm2KVMa%_-Ig)~bP)b< zmV@WJ^bwJ9kdJ-qxMN>f_4&@H>G2gCD0t$uGaqSwaxla^D5&PDJa0!B={UQ=i@dr@aO!S9Hbl^wkhIFUD)x(&XFcek;dIc^!{|}C*+aH~ z)BO!vCVt0yQ@DxI#NPfG-=WJj|B2jr*-FM4&<9oh5$b*mL1KbmBr!@i*%lq+70r)2 zR!3c3+9ZTn&DGtOD|)n=d_={m;G2lUw2J4ALfpMID#<}hfz5#b#I!8YDeenK)i15) z7xmi|lVPdi8mFqEK2G6O`M?H6FBnqgbW&`1cm?Y;Z{0 zrHPk+%h37!i!a3f$y4TfTY^r`A8SKZD@%Ir+8Ec-Iu8GI_&z>ygpV?VyL>Sv0H3O6 z@){Qi?Y~bS6dAt@cl<65p@e)`I0pRNy&{Yk4)dBq-<-S0n{a;a=r@eVrMTi&`~t=I zHZNey8la%aY2GtIUK$z%83S%3Mm zmKb@dRZ8@!@yTwUd&Uvi)YY2s6R1CNfV*vJNVJj6hl?)%uIZ&XvYRgOFF0A!PPRWh zo1W0pn?7Cj)6ZXZ_77>`qZ?928x%N3MNSC*oeYHe-2 zIAT?kMI^UgnI($Y1w#m_ZHZ{lav>YKh=fFHlpAi$jx8H?TSBc9jm|Bou0LsSRhdY=yg*`hJfjo6dx_DX1sw*mYRKmX z{VvsAV#z<3Xx5ID50;5Xjp#@9LOecNak;KOyr!$-L;cw=@cfx5Qu$n!MnuTLCGi!s z-eng9%6BSWxKdrQ|Dd|E0mP(dlw&7(oSD^=c9cb?e)8V3jJpL>T*Asl~+v>sZ>yPhk5?v6Kuquc#Rmr7eY z_V?t?3|?X@3nW?I)_vsXCiP@I{!-x2_@idNw_p0)+kGGldoP=0P_o#&9|9A~u0JCd z`_0hkGuKD+j#jB_u(~_FgGa1-c@W8*;7$-vEUESk^at$aozGuVgeJHcGDxG{Ji6p$wB20$t zZo{KTJO*O^4I?S@pSGF?P0ky7c#|+VVY2JyZq+ z4z~*+sPKsm#1F#V%xQe<%4!C5;M)}N3JcGZ5*r620(DUMXOe}?KgD0~rLWY-VWfz4 zd~{O8QlF%^-IZLOuUeM&i?l!E=!T>9OOQVXi0`-$CAZQ*;xM&-8;;GRvm(OJt;3DA zpXe#3@us3Vu%+5TXtaamRO1H`6L*G>JDiFM(^_8d*8smwv3hE=TWFXRHN6?ak)xbC zdx&o{=3UFS7@V`^7B6gLR&=qq_~Af2w4aLy%+;q~z#H$a;J#i!Op$qZmpihR6p_B< zcl7%Yct;w;-R^3@2%ZLLb$b{LI+F2_tBaZdu`LOPPbgOD$DJ?4Ff=+|2?#%uz50~^ zZFiK!O-eo}(<7x*c%sSe-Tg?b;`Kdt*EjdzKEUh!3Xc$-CHUMbK$(B`i78x zD1;LUsQi1j=Jy|ZRQ*}Kp1nJoTmyHni$bh>9Kh`(N^Mg#d~1;I43blB`f!dSF9P*$ zt(6f0D?n@HpFm+N_t{Mg5+JnLrT3rRm)5{dE)C;C+I}(gj4$Np@qIP7WsLuXBx~Hg zy=3H%@q?fCdFRO3OXa+8oRT9E22H zae%|?eijQjwx-54wos@T5WtvvHbOp>s=fc<60ff|zEvR?ChGreGg@6L`Y?_w+H=-~ zWqhgYA^``*%epnxN|9{RZOK@|-P#_Ti}+cfE!BCkc~qKlgW8bUwImg`N~wEOJf9kG z_;xp`am0>njU%?qK}r0q#^j;oW{sEXACT?iSm`DmFAL1#gLo54OWUouB=G$+%0LWf zOry#o9p$(g5C%AM%hE?{p455{N;XeI`DNJ6c|ZL?)y4`1*?6@MGOQDILdG9|b&V~z z@Ukvz-Tfj-(v2>B+1VF`Se~sQsE@KNr&|PGeE*o)$No9p2?Hsp1ukrU$KkFRZv%Bn@)Q%`I2sN zZFuZb?c{Rvc2>MyI!6h-e`k-eWJsy=y=Y^^s32cGpQX~qC;P>RFx=P+Ts*t15cXFv zJWmK}?aJpXb6@iu%-9_)D~&vdQd6h@97G)5^)e2vI@cp zss_&$*=A5m;n8`e`J8OiP5CW1!9U!;-ODfq3_^LQKSlQuACr?yd5R?q4cTW61U06r z`g54rUAbfO$12WjpgHKF#4$SF%wtjKfPNJS>e0rW6RQdq`nc{uuJmE5^;^EHyb1Q${Zx_WY? z*T+!r67z7Ei~y-efLqQV&!^y|pu=_Ax#KHx@J6akZN(KTzAeFGw?w-2R=l)sVhlxw8rDOZEx}Ug874x|zb?Y$isV z9v;TAYo`ju5AubymTz_tS=x+Sw0#DEG?xW6bbF!nQ}Zv1DIk{y9f{K?kUmlG33-Xq zXE&kdvyNTiqCs^4$~B-)fD+%_WEZfNaQKcdN&M{wuH=InTCz=5ZYT0x1QEh2?WuEx z(fmU|$Tk2WJA&{yNa;8c2zl(?wiY;iN*W4j4-8$Kton4!cI{Hx)U-hOt^l21jA(0T z(tIMZq`WEJA2BAL%BERIZz)m>JMqu%ZEv@P zE4JN&d0eZeXUW(~KH0mo0>z$t@V2;4gwakaO_W(Lono8ft?iYz`idJkz>Vi>AySa} ztgU2zr@Fm5?6t+`^j~soH9J00hW!f6>Kr$=ISwYVI7|G*OMn6%G=6N(z&<_7LV=E5 zl}dO7D!%t!HhS_+_YDuu=zchj`3oF@4ela+{VRvZL~nOliU+bh5MHW4aC4{ME;{Q) z?C{2~6A%!I#tBQYgJuLQu9YkVk!NCNJbRVMIaduE67JQyj&iK*e#bespAif61oAOU zmGNe7HYf6w@k)S>VF2t69o0EtX(QdnVoRF!(aB2*S9HBZcE3Ce+{7H6qXMzvNO~Fo z5>ljM_pKt-TE0!Mel;0Y{UFvqx$Y`g=>eH}OWgFPMl8j6NeHH-wAWHLpmTTOc>QFp z=tnReDsa{2D$a=nPcnKuNH+7S38&1Z7|nYGS>Bwmn^vC3KaEWR*XlmtLhzZo4GQ$f zeP|^J=2&cH0|kaYWDW-jwabx1o|x3dG@LB7Ccw72r+YIOI)d$p4UowN4!&*suD0P* zK8*^7S9;9q&x&)fA*|7<>NOP2Y~x*LYtY8Ds^8qynDuQN0m??)zND=8{t*-vEU5614wUC}2{?_X-mmeMzY)?)jWi=TDy z&misPACpl8(b(h>{T|aVIRhb;<>!O85>h5NJJtA->b*K(00`P+>36HUi&MWR!;jvx z!HXTVeK$C#YD0Y0FgeUNoRlqNa|0S*U{r021Y)g4rjS+$W-!GYk_Gr~EkUT{54wQk zBI0_aaRol@3P>- zo0dTf9oD}i6nvb9c0QaV5sd6k!xq8Z~D~#4TvfL!YWMy{afo&Uebs*q+iU6<5 zdDa(_AH&1`kZ&fq{w_q@D~v`^{+8s9!LtL65pqtCOzAIL#^<_hW@?`W?P$tLVXcZ! zNY=){5k1;DJphUW1Rk3cY3*Ju>%E@^xnt;N>Xmw;6q2Tzy7ET3?`CZIZS;H2`OJ** ztovC+rwEUh?E|?Y4x44e`Dgx1T7m+bKZ{KETz~zr>>~7_5OxLvC@oX;Oy9Mzl?Xu8d-XvjgWZ9I&m{Tz+n!n- zq}CV75*|Dod;QP|Ue#E*3S0C17I(qfE5qrD{woLDG~HSMpgU~N-)OJx3qh zEpMY1u9GWjtgAGw151^ofERJ=ocAg1&U7+VP3IFbl@m=ST>U9HT-?+&`VU|*f;qy4 z05yG!2;H&FWmM6+8A$It(wAfIcfU&R%aU@npM`7Iq!V4AlQJE=LhsiJJ9%{MP3rCf z-C&(@&^acx`R0qR#TW5m`3%ZJn{pQs;o#vq6u1+}XOZDQgoOVx)QZ$V zo#BAEdw&p*f8Eaiw)4N^^Jf{pcK?6n=YRF<4|wD$l2^Nap zD3Tk9lNHtp&$;u=*FP9*ktr%s%wy&nIQJDv-!+^dt*xzlvQ^ELziM@52i?gS2*0tT z1xG2DEqB$mg8s`MACdkN=}1*olk5SgML_H9zUTY#tbXu=2?b&hFNQqS_iQ^bghoQo z29?M;=TmN&wpXBA9uPt+IITUH+yGTgq6QKPlJP^U3L63f*=Vbwo7{zV!?xXUl08j; z$z$D};g_kl@v^p)A=;`(@HS=g){yXARM8CVHU8;AlltmtVRXxo)>EnL(0z$hfOU|i zIs9M;t#8&tshigwVi#>y+<36lXM?N@Z}>tIz^RiPvEFz%3w?2+@<51Z^swQv14}%V zqpZ|S+5ab9^LFRTHgY5AovrirrDc|=#4!nMquB#)gwnx;Ef{LM;&5z3vyh#F@3hz% znv@C6=d5^5J6Rd);WSm#vE)un`q3g;OJnwn8-;2oJE(r`q z8w%t_$lh*4a6N4BTHNzOz0cC)eHLjn%Z3@Oc8jKXuzulGcd)B_e1L1sQW5I#6TuEd z{X^u7%SmD{s*Rinsbe40D^qreWTiF8t`yy(%-L!$$gSNyBS$(ju%_y021rPXIQ1Pg z88p7+b{^MZ{bapPv^p05$$m7#@<9+wPx#p4~cD?gOAP!6lh zatA?U4!xfso!w*`v`QcMU8jDFv1RoGK=U!4^*$$`061*8knWhb2InrlE4J+A{Jwc4 zsU2w5*y1yOh#=`h);w&`s)^e2qsRhLc4ZkQ&gzp&m6b!kI7owwcZ03WFz4<0ZZ2?) ztBmH)CB3QFW7h$|o2n-@r`$K_ACj=7{3HPtqUU7_+t=M`zC1_uOaP>$_(G%VURd93 zJhtg_ww44IY$;D1Up@$GtECvlk14jXvtP?EiU6n%!5piK3rZs^sXDd6ukc@8kpuu( zkx{8UO@0S(t9z%g4f*jEmNqWVb$~puie7PJZh_7|s<|E%thm~vwf|-)_!|J`0s0)x zxz|;6McL!^Qz59aA7ve?fhu!pB{>wwnI2BZDlMR)hWAGgt$;C*QGD#6)}t9Q)KiGy z(mpv)v!(?n(_sz2?-4u`aqXkdGS-L@tQ{4atOSU(N%A|Gm36c9hdE?1o@~eW36}*j z$dSsXFPB6iqzCm6*pnEpoc&iUgfup=Ckavt#G;w6dGAYpkq@WkImaU&QvbsHVSzW= zI9*LD8j)soU${3)7(cVz@`b-*`XLADEvc_dfr#A)@8tG*z-Shz-9OV`(s&8Sdsa@V zPmjOvQN~Hj6ndK1qT{z}M~kgrG}BkmEQSs*N)UcFmAS3p49$ok3@&4-o|LbDpfPVZ ztat$$K8=6BL(FVu(c-hLCtq3fi>aESamftdE>Q5;rU4tcrU6Z zBaGvbb(oat0RWpjB0M*z*#UtH5Ak(P2VJyp4g|d_C#{m5CkAcdpqSrJRfFS0?QML*sf4~jCDEm@l>*8QaE%}OjMrMiIkw090p6b4N>`j^rL4D<5LV6i@ zU0eKtN9z_LslJB=CO$4j-1DooA7e?XJJ z{8Wed6q54mX&l41s%&!Rvty{?N^BFgUezq<%^4@$`_nxR*%Z0aZ>(I>i zv?<)5kYY#x+_<13cxmeL3poJ#0YeKPwKzJA)5{s7`(m{P#z_v9xt9?Uhb%1bZ&19( z{w$nJo8pRb=*b8_I2*T0-_B=x_@>aP*))vD*8j;HWrkc-1F1AzJJ4$&h?5^ z%PDx-=SR%3ZiI>65O4&PKuXc#gm(}8Y88{tacY%Vhn8-Na^k_()aUdk?-#_dX+E3v z*+9p{m7k9K%eg<;zwdqmNJYFXiG*A;MMoHDD1`_!ncv(BYd+{JUJ9f~Xl!8a)t!gv zv#42JrhKq#)0%e}jmz2S_cUQ4awIKzY6)v<@8zJeJu6?og;sINx##&$X z5&KfHrOEoux09l+VRK?iiOY;7WLaN}nA&S}HaSADNWe4YRNpc78pAFVhuM*PbOHPG>xK zdRSBKwYjbPXy|wAJ3j1--LhkCm{lsS>Qy6ws#GW>dm-)Y|&| zWup1nvr=u-^DQj&Fy(qy#zxv}@eF%G_*xz(PdpyBc?_|hECnS0YtO^#_xEdlFlE|= z5~kRirbr4Iw8|?Zh>4g&6j&EK)f3p@Cq&;(=X^HE0W|az=zC78p3lU5De0SH*k(xm zJGngTR}00)XvZw$@kdwWY#UXoKBjP@ND`@&@%b|Vj(J(T9_PM!hOu7AWPcfCx$u5q zOa}K<$$tm!-ZqK(a`8T_SES@?+WIqM+MQfF$HY^S!GzHn@NW9} zeOl`Q=wPJ9^qbCM#ZREBETH2Us_zAm^cIHONdfx}YijS5@OgxtTcZJX^<%-?llONY zzCaxa8}sDu_T0(7TLYlvm8}dcjBD3BYt1vKJY;skUFNAdJEpaGQr3NOk$9&E`n`j( zFO|Rx9Wa3sUwV|c`PmIPSmns8E4A8bSYRA8;472VRC508>&!~$0g{?~!hH!KCk|mL z`+Xm3GsRcivy<#YzXcH|!RJk2hmF>Q63M?522!d$DIBlkO@+MqC#zr$vP9zB7V#>VhuJkczcu{O%8e zi!N~K@9i-?)R`g{DuvC$12+}cPerOv^G{*>G50d$|4P%G-0;z<&)$!9br|DrlIp&z zpCI()wpsBB(!SAe`i+cr^>N1V4-@@(Ydgs+~nd)~X8N$DRJQ~cC zIBFT+$>S`Fn5y^eunvI;Jf}Y0+e;UlZPsamx$i&4hfb%Tz+$ZqC&Gj!pPY`0Ksn%NYCfHtd!H9u_&Rjour!>a6IQI5F@^E;MO=_f3UPa;Tx< z=;rzMOn0*?yAPh^SuQ~2Lmf-|+2*RV>Vh=Ew>|_3RqfhS4?yZ?j1CU8=7NYRMhch` zBHUkOz2L`8P_ooOi~$nQ-sY70nnZHa>W#(U^_w*&mtk*HoJ5*cKWU-AGM!@0>Q;Hv zNyJQVw+W42Fe_d}Q|8D4w#TV$eP;lRftt<-U9UUKbEq&;PnP0a;w$WLsdc$ZG$+-$ zL7J8mP7i*ZGf@jrUQs7qp;M`%&8xwEOD%Yt!|_M==BnUb31O{A0t!#_G%5t^GT+r^ zi601{CJLXHFG4_Pp8RVQ6GMxGu)Wc7&9*GP0je+x&zx|)+#{1Z56`n2^)#!Kolol1 z)e^;gzp+!`G=$KvFOsgF#iumSGsM4{2hy@YQd3q$rvwx!6OO*zZW&WNdt+9+N-BZ- z1Jw3|4di54?^*wxQ{KsUnZ{Ku<*CeM#YWo3bmHm3y>dv7deY;pk#&_tUIssl`_8T7 zKV0W;!pM*s4Ra$|`6v7*`9J`5yQ3fA)>)8!m1*mUzKPFcP-DQ^I1oSR*qTfIyXI=G z!7lU9qf*gXIA&uA{EcDG6VIhz)7lv|-u{GmywM~r=5pJZL+EIA1k7fJ*pCIfX++G^ z3URAksM2g&a$sWt0sMxm?85hb%QZps7~p)qr^Gl@EH}Dzp_@8Yl75a=MUqIKb)T~> zQ*G$&W~*9k0=5E(ozQ4~(@>~0Cum!+E@;wFd=@WLJZ5Nk+{T?`L?ck#WApy5IU`Hy zCHJ7@nhK?ag+a*m**F13lLHuP*5D-D7zP*T;R9hMB#-XdjsLR17)D4k#hwIy7|b`- zt_J6%yfj3n99KjOsR2#`gGwYK!h?igzsNOi)7M5dmE(vnI=Fo8S-RM#M2NmAJmsQf zIsVqk$BA;}&vI2KsqE(W{J-mg6q)dx_Y{H#GF#+CeJ;zqyzEP1K3T%x6Iq}SSFfCX zgyb!wMg*O}cnl+}Tx6yO-S*5P*i``EAVB%MxAoX%nx$yH8O-XHFUHc~Q(w^tr!xcQ z6Cq}evR|Z{b|+j2pS~k)%NJWXHkwC!nTWZagn!=DBO4(!^c8 zTTFiCGs42WEtv_ctY*5=EWfmLy>5N=JrbG7gmT)Z<4JxngOA3_KZdtsE%zMWNYr^o zQ;V-t_L-NxSaX=-K%WtuPp{DyvHF*Iw+}E zY-m*6*%r`!#N{OZn~6#o{Dp-$>(i!!zY(IL~{b=nC^;|`sNDh7Q@nK&<%>=snVwuX6p`P&2l`6ow)5Y z6-rDpvf)|3Aj^aL0@2xa{`cY{eUC20!(49@M7Xhmwnyy?UuqF~CTiW1m47nYbl6Np zcc4eJ#Uw&$OOnTXde0AVB=R7dT#a%x)QS?tV#ETFDj>UQ^>fdTuiViu?p-9xt$&%S z{PEgI5%X`d@3mjrI^Xuhkt4!EJGX1+PlW28@G`B5>ORnD`ZmAD-}H1*VHX`=IZ`eb ziFc3>s3={?*B^{bEOr z;axPa5CJ1W$BT0-C3IsMp43MY^c(*?Titvl7w@(02~6r*T>#I(n}qW~!?#t0r?cZO zwWuE~Zol2i8+KOjpZ^936l>nDVNrmgY>pP5_0i^CBfa?UY++L?kuhPS@GA$=DCW9M zY1<+)E_CEA8EP;kVzN89eyLL%imU%HXP zusBnTKwFv95S>-}p>1t1d6R>${QizIlM;81PWRS${E44Deht}D%UXykEdRZ@_0H|b z0)_kDZ*e1bi0DyGxhWSD%y|<8JrB(~p*#`qXDC%|Pq^sai&tPHWeBAnadnK!}-hIAmpr{w|#rGe`s3vnHO+1t_%$4e;XKI zQiZ%L6H`u()J{b{0w6Mai`5DB*KISz``4pMf4!`1&^bATf8Su9a%b5)z02`B$%)^J z6BE}!bNWbRR)BPN?R7jWQbA%iG>`Uane6sNji#(bSkmDcA+VkV{Cke{q4+Cymet26 z&LK)JBv``!_;2$k8RXcG{-LMSDrc|#ehgYv-mbe9Qj6(_nX1RVr7zZ%HlM_Ax0_W; zZac2jm6=+cDfPZ2F=Cx5v%G0Rsw+v(srS9S3do3~L#9eN2+J9^>nB9m_@-vOqPb=F zIw;19^KIW-_{p(Z{OB@Yl$***-@2oH`Q2H1B`91!7g)iWfbmH%25!$4UQb#{f6ykr*$6yOtdEXCTbx^hEbiA=@OUdhRn`9aIW{wgEzd8z>`~;F`)&+hgmeO zmIZG~O2$9jCnj~FVy_(($q2qs{Uq5Jg095dM@fVcw~@MJXAm>ZmMr@7I%=<&y#Z-{EjN=s1?MCe zrB>Tb%}&2q5%D;?!Ri#FJhoYFOW5o*#bapC(X^-zw{t&})4Ua{CO#ZwBzR(IUzJ1J z47cdZi*vC0+S!jt&T>4pO7ZTTP&1CNs$*QMP7${}V>602wB}4MIA`FRl8~^>CiMVl zh9coH3!SyTyIj>`hXX+`!%}qto{u4`eo>Szx&V?Q_TVYa!hZB~_btO-mG?|2V3ljg z!@+HU-7=VGno+f=0KeykoNr(Dvd9`P8;LJWz|t{(#*@Z2US9#$<0YOfIWlHW5 zM}>jwpe;n!!u`f@%_S*H=>10hPi8(7=5G(>xw-})6n@^1&@EbEpQN9p6J&5XliQvZ ziG(KSl1PO4V07wvl?UYdmL2+Qw!`QJMFuA;9pV?eikMzYQE(%EKy6Y(9*Rx|$#TK^ zpUpt(B}s_hoV|^G8Ai64)n#({`+yu9_F0f-_YOsG9OS{#BgZ6av35{3`i@ro`D}TD zoH4~~?NzfOxjtN>O$3uls(I84oy%X?>0O7{l%FeW`fm((vGqyb9_HOJRgu?fXu1fa z{MT;*l&n2#5EHlC(aDh%0z;uy7q_t4FMrG*X-eI(d|Z0UIij2u6Alggw5=|Q{-9tu ziPakydU9t@ZeK#Pk&sh-eEe)-{}53Y;3Pgg>g#XUHEsNUgtPtvkFrnZ7T|4o9MDV; zsTDf9bpCj_<|PWFDIjAsHTA)wJ(}sO2Ev5Z!Vmi?K6<~3w-xKG*R1l(J#`-Q{l$<& zBnQ_ikC`?t6Z2^5*v=qh;zJP$f9Oa!A00CVZin#9ltcUCF)d!$LkJ~BRf;sIr$X0! z(vm5EjL$Kp!djo;+mni!Ds57hvaS02KHE7gZX)5at?J=D{Q`oT?NA%FZ&dq3M=kf} zqukBc=00j#CRc!ee^+AtR7%(9%}KKbbfvPPm1Y!$`sNekNFdwqB|Y`*YWRi1E0cwB(_P*d3JH=sa5|p+}Qn z$<2DXbLE7y(@^bnufX)zZ4sC67q+aqGK}x~vr_2|<9tnYQbUYTNMbIWBsN_)>(#vv zq21dUy(nhyd($pZlYB}SwX>rymd2*qUO$UGmHJ5pqDg2*Lkw8M$10sLpy2d7>tU2H zl%;G*aOizl z(3ARkf+j<*+~2U)HFgnoj@z-ED}-O_CyIIfTD5k>>3er=I4LhLe=d5657lb=*qc71 z+n1l8uHx688(zOu?s)u6^qFs3I3G$t>DhoLdS}=?imSe zxnFzo)N#4g!8lSQ{-v=;Y;+hb&E|ApTwj^P-OJ~DNeY*3MBVx!a>A|#Rqs|m(9<`P zlT%O6>b@~%oA3=l>d%hZK^ac~54x=a#&RhW=3(+t-*%%eH|_+=lC_>HCY1>Wh`%B9 z!`usvEnP39Y!9D%h*MS(5w;0y!qs)Kt-Zv0Ld{<1jj09ZfPZ{ohH!70K6LoMgcf*z zd1b4dh-}OPYb)Eiy5_r55`Er=FCKJBbZI9?13>@c#{}}?0ij;e;voEOWQQ_}8|4<_ znPHFjCFH}i>5VjL0ZYQeheJoY9!j)Q8uAl^Z)9ow=x80Kf<>#Pat9N|QP2l~(8~Qo zXcflavTm{eg zLv_C^e!op)b3obLd{JjBZ4c2|rt!(BsWI24r89fxl+&*)vW+xqw0Y1}!C0(WBZsvl zJ64w;l#@E!XbCSrDHR& zj_u?QDU0U0pA?V3?T9t~2fG9h)RI*9k0L^Z`vaf;JHBlG3!-}pxsU`du=udqJZ;-L zLMkWDK@1yrzR2lF{U89GeuB)M^^c`3xYI26@A7x;aIwFZPO2eXctO;Kil#3kiEqp=}PayudN8sGj)-j-8B#`OH{!fDNMlON|r%X^#= zZ$WbP17@_Nb3|shV3X6H@t+ozQqt&RrM{Le3LE;{lI@eYI!;%xuPte#zOPs^XCJ57 zsQ2>iFscf0-%65eo>LKlgp3IV==PdFxjt)PM~*Uop2|*9pF-3pVB#(ky#36e>Q`c} zFMhOdv&#!ItOl8rLBmPR91=}PjVy8a0W4FVyd(2zd0?cdt9}D&;YT^H{?>1!1pwI# zP&1bv>qi5n>>p{Tup7|o#pm#OSE1nq35PmhZ6p~c5q@2EeRssUh*R=NQHW#8ZMqTQEOwmCY;8n?l-W$y{p%IXQ~t)~OvEBmH!mL=jDmXN}c24s520 z4|qo7Nu5ru(Rh8yUE7W>-`)s^kW3M~q(W`TMRV+RoictnDD0)p1H#R{GfqzIJQTfH zp=xNva%v2x`FH~EpfOL~RIz65>}#Q;STANsePx&YIhKitN+@)q@}7{Z zn$7{(9FNRH#XP5He1LC0N|fav=GXPHcd;W(l7z%d5lgm8UcCC+`d8Xam3S)5CZMX4 z&=*hy)0KI;^>GV4u*mv-soj;Hlj*h8lQQ=4i0j1EMMO}?2+8WTk8||_Dcqw^>^A7p z63_)N_~t&gaxDHu67}Sog7cJYr<5ZPmoD|U0xjzJ79`W;7_hd#eVv2Sp3;2+&zxZ5 zeHH9B^$4@JtvTe*bV!>#1Ti=}vgK!u?S2$UHfpNsdsE!V83y+-=F~47^5}d+B9wZ% z*JLIYmQF<2`wvT=9x=0}JTiCMLshk*VteU-op>nhQS$u#3e$;wscr*e{_*qA;>20~ z5s>_`yW?5hW=+XYlBMuuD*Qs>c{d?}c_xn8ic#ngBn1N&Fx~_Ge>s;~uER))k zmajc1W2?s{r=@_L_6-QCvnjwe|7GbUE-LXG|K0GX-KXt6^1{2M9w=^1Uvw}Z4kx4= z>8FE~w;jl!D5s#vdttM5jw&!oYAa&6*%b#<()(D1x6=R;TFICO0xKb~m%){Sz;dlSA%@1V(5!7CR>T zZ`N^+29d-Xg=C)ot76tKe{$p#EpJ#hN+hy#KygSfsK;)*qvky1ph!}9+!>qeL>Whk zZN8sIZpgn67y#Ya-x+(KDX_UOgLR*6$gE9H*G}48BdSf`GwHW=ji*|?CM9a!Lwoyt z%!l;B4d`2hQ$QT6K#Mb1JxO9r_bMbtM2Ewyl03qidwe(~!bhZS#Uw=g)Cv9HMO!K~ z!{7&b_s-9nLp4?diJWM#Zh|!x2h0Rp^4I=-6!&>KWFLA_I~}=H$8IzNuQ@TW3v)W~ zwBEDdI{_Lb_v6tL^}%+@$e^*B_E1`7iO=`4GeF})Sd#1%&^OHIxz93=`m|Z#T!|95 zVEV<`kYj%z+P&w$+(1Vo@n;hQ6Mmzv8~EAuQbX%+9h7}`S*nNAh|3ThQdA{z?J0YN z$t>Ai&u>(5-#>wz8l{dnZZ?H(b089wJi+)X^nq!7)~TzNONcBG&r9sC|I36e2A9?K z4sH(W*vSy;$&Q%o=Kq^F2)X8DD&?{qs&a(vu$4$v7zqahRXkzYRFDZ}{lEayIQ4NU!#S+SVj-DS%*qcK3CtV^>R@r%TN``WQKMrFFP_ zqTk2}EX~=y#6|xlwOn#SVm4npHhqOi3{mZpG8xo2DA;;XO~JeA_(S7kMsXNmWhns- zu0vV{m@gxyLF_NidFF;w=|_wr&l{czWS4cH^CuUQUm^6cx~Jl8vhR8>F=GF<;YSa# zq#XNGTxfvTN?((n^k6ESbxR*MU}K#Xt|)Agwb)pFYk$Zq19jTR^{}QKnfTyYPQI88 z3iijW%JQnO$gCg4@9e7;{G2B4c<;1SCYCiPj>QoIeV7V282FBty_mc(h`M|^3m6_} zCLS09J~ZxF1Svd-+1e+HyzeLrlkRymX=6(dS!i3w@To~sf^^pLn5-zfQ+_WmR< zl#_ni9AkJ619%b%XL?p?Xs_Zv@ccG#h0&ygz#~W8eU%L^?Y$+CeqBRRJ=@ zUkV&A!ZVXaCj!{0-wGbgFNn|S=da*YUkn|@U-Id<>*?~Y_*WgbcjGwC%?RO~O&{vE z5M_9Ro{Ygu9?Df+gawv-{rIKj_-8Q^BU-&~L3INo0o&|=BL4rhU`T@sR1lZBk2Qtw z+lc>%^j083&5ix&LcpvddBcfN1=`97Ny-lv_a_-&p5j_4Qy~h^RMjO9Z(O%e=%5uU zS2TZ{V(|WzgBI4zA+$?A4z0RJACD9v@1{0ut=jd9t|T>*oGAA=zasD@(*16tZV7P* z6Ov(9C$pyVswP1Zo-q$EUl{y$jX^d^sR4^gOIwAP7ib2}#h<=-FKN zyt^`0Byri101B7-e}ucmM&*;8##o~G-t6iZ?^oh;K+R|PQo{E<*##z*jEID6xxu3C z>^t0+52%^ZW0aH?q8bXWjtmd0$U;E@NL~h-0H9pTO(Xs^hs|z08ARlP!DzoB)a*u` zwNJa~(o)Ads~N1}5}?ZCcx^#xv~X@HkZ#se#&!47SYIW~9N1r-GvyX@esw$E#Q(Dl z*60=QzuvASTihXf=@nZ(Db^S`E*>Kq8Ct?^i-zI;1_n8^YFN%w6kfM0Ybg3W5O(NY zFzii8oahfPhz^^%z{C=?HxC5u%UD5ceopgi`e0F90J`O9bueZHg|k=9O1PVgdA_gi zYoHr=ox&0$Ig-)&{EWc*_u)m}vyofU@LI!HnIP~p{k@lsqQE)C#j@{nfxJP|zB6_+ zBIVi?`U5cERXGm7K}HaSsS+y$#;DG~{MT6HVrWNY3;x;>QC>}IDOT#PE}_nT%_Y~IADnFX31kfBov z*D-096RdZ#UIDIAx0j9EfZWJ|&0=4-f)#;PeB+J()>EE- zKh1GU?=hhmzrmtZyTEn7(E+VRRD^K3;Xf9Y>1FVnk(dXE}#U-Th%U-K)vrfPK#2Ex@y%64lv#~EN*nFWt))u;P0oW-! zaJp(|m_ze@EqGM%sK%IW(_p9Kopp<=f6c9Dd7yDv1MV3M9Jcv#eaSlQWe-1|7|BLb z`K>d>+zwzxbOPL#Gs(vBmRqOugKsNRi4I_g*N)uR8+OxWx|+clUhM!6E*vN(_!9NK z#%h=QzDF>2ClVewXwPTnjYykq#5I4a>da-nIL30_aIr7K_UxOUOw|jY)>F~hWBb+c zY)s4?Q9pF;sWcVmyE?l9wcj6zVADhn`<~6p1P?mf4O|Y=CpVng=Z}z^j~n?Nl;2;j zm@H!L?U^laYGPAyIiaNh3-0Nwg*d5B2Z3B{- z+PUQ15FD@e3x>sIaOAMU3Q>=nVF64?y*eU|twTOU58Jq?t(fl)r~=@FwW}O{>shT{ zP?8LO&w_BQo8U}XMtY_`GBB?oqT4u)b+nu}SnC~o*M70|xIn(^l!zun^bF^&1uvr^ zQ`z`%Qs_0}{XTgYibMaD=8d0h3k8q}ieyDf6ow9;0y*7twhvI89W*Wt4hPfq0o7qx z1<0AO%@Yy&g86UCYmD{w<=>Q-`QMZm2yDqLvineI4_|-nmyUChFXoJGTHqJeY{JX$ z$c4RQ+q{GWHA#iLh^>U!h8B~Zx<%!vIA2G+i^hRYymH(D%9s2GtCIPp=;P$6_AQb5 z@;?P7&+2JcWyBqu1?z7BmFpD02LS}@3Nf6FnAZVQtjVgapj~xM3A^2f9=-9z{mR?C zZHFR!_cS)d=G@t7c;1C|1cH1VT8G)r@Ic?n~VN5wj5<>wnhCP;oA%U(}qDL)5UB z@UdJVbM6{JU*KcK5n29x;ceTw?|3kee}eR9fpC_^SIc(;JHwb;6kzpb>|d3Xw~`w! zjjK6#RU=^IGE&@Dw{i01F(~!!`QsuE9N5|=^QQ$vHcrgaqHm@tsj@<9+Q z!s~>eI1llu$%K%)`9-76TP9&jTwW-d-L`;IPs9lL?O_O8{&=jhp3J3#w1f8>#O`t$ zGZ=QwbjOF0Syf6sLU?*f`P>n4{sfVIYED%9iVhm5oWUU))LF>V&P&oRwq|TE5&vH&gSbi z<8Pl7gaxeJa-}k?R;s&|jrt*}P_Ezpl`Z;jT49^eQ}3`j21!C#v%4mJd#Amt&akii zU-1xyO)ejhSLi?e=By8C_F>~Vn-_ExbMJ4OKe*_woBi9{+ygWGR|>WkaJ4q^=n508 zkYwBD#*<8^9g3Z`{PK3k7JqYES*m}9GC&SNj!zF<;lM^T3krxYh5NG|LF^pw>z=x; zjqZQpK3*G8CB1{2#`{^d>rET%QuO}F-)D8?XC)bd;E8%@H15PD=kDXoRNU;;5|3mg z%=|PorFCzq8{G)TNnbYQzYXjq9P8U9SDta{v^sGVNOa#4q2IcWqIG1JH?M;jQ*8m{hhnpB zW}YMV-6!a~G`4;7)^9AULDeAV)$5;kIAO#M%PNQHi&c$r^D#3jc3|40_1t@)w z-QJd_n7b zz(N7odbke(shSL~vHG#^&g2BYU3NT!!>@B9u6s4xwt|O~?z#J(@Vgb!tpf6TP4>IYJ18~s#rE4uV>LFEyt@!~QN(*iSX7iKQ8_`atgJA& ztbGPC%`>i_vJ0^8Bp2pt^NNWHvam!+0@Ir&z18cRfevom8OJ(ZplJ(p$r*vZCX>Gy z5JP58=ozxN+7rhq3r#7z1B$37cAdOB#b*O$_sxdSr5u=&EZg(dRCo=^a|2kf`DOIS z9h>Fmib(DLIumg9IMJb|fH=TJHEbbK<=?s>moV>ErXM?P$UYb2oOG^l>OF6=Fx7Wm zS3T3-bMo-eFLzs;D=7~ZAZ^0ZqUP~h)X-tg{) ztvbEgE0|-}B*{R<&A%(vZx>-UACtX503T)~y%J&(3&k7FUgkb~w_r8CS%HJDoqluJ z-rm;Ro^i3r0+fG$mgDg6y)V+QkF4u2!#m~ECnU*f>y#rE7Dv?0fhf52putDkN;RQM zpSQm|(=vmmRM7F6b3H$m$8QoaMMsc0MNzMG)~$qm%XQL)o@bk!t|+mW6|C`Hq*WXH zp%*|lwwKi04qNNV)jOixNXY_CfzGQnOnyDo!B=clJNjK~|0$5(65u6`qK_D%KNkM@ zpuvXwEsXqpvoq5eHvZiCsvGAZrki}Eu2S)BK!H{rqXk;Mm1WCnPb<*<8BZG+H4(Ld zuHfIky0dGPpw#Bd%khP5Zs9eh_&(S3^x`gM58da4&+5qV+VwqG(lhpPHqWzmde6E0 zwklyByosMlgnpjz0G-c`IitM?eu*M%WYyYJ_Lz@goH{^1dn|xX+LGtf-neh}p&0Ha zr(pVgPDsF^BcS=bUW@$aZr=76IoIgOR1G9r+r`b>Lb4C7O#r0JJ(sKq{GBu5 z`&$xj>K?43U3-A-=ctY_IBdj^c{E~;r^3BM9^)@vc-Egj* zZIspj$c}v=f3_aXR@(%hyzYO$56`ic^1HsCzpdt;5z`J{dei&H{U$P9>>U|* zeHGcotSLp~%`kbBE;|lxZA7w;x74%G0-IwviYn@D0gJCZ{&KDMWRpLv^lg@Iv!2+P1P6ckw~1)N#aL-N-hF$d^M{S+EWFym6)0H} zuw4Ios4Dm6@$oCP*9lTES;K85QLa8U)ur<8YSMb1`3-yKj#T=*n(5$aA3_;?JK4dW z+K-GY68$~INMt^Enu)P?-RH$2&~=p>uE%+AR{`Do%;ICi0Vl5>pX7c84aC7hRhxi=LSR|rAOtQpxl7DVZ!}?(2*%#=87npX!+8=_|JU)ECZA_X@ zHu7uZrg3kf96(EbVUQ9YGfk=}U$-F7pJB8cO!iF1&0vJ^kRb8wOUh_h4~qp0kX5i5 zb7JZ7L8%?LPP{hQVoLB2-@-X)Xf}N%%aI)6_r-G2v43D&9jMo{PrU1)0~m!p?CI6RQ&pl#NVdi_G_zTD&@oQrK~Di=n`!#zU|Y$b$MhEI6A4~ zj3KmArwTy~kvEVkEIRS@AURI>HMswfO#GK-M}Vup#?+vgJi2=ddTZ;`C=#6^b!RW-}ty>A+%nxjrgSC+TJxbis$COdA)o zP(cI z2+{%Cq{YI8XDt1150=(0_x-Q)@j6-WY+_`gg+hcT21`$>&FLCC_OKv!2IFr}+)4q` zU{y~Pi5b#E;aArAw~s4MO8m?DO4CE*96X!c0bGM{840pF7}u3V21Gx5sf5NI&k`3= zh8cTr^fxOb0)5|I{+g8C3h*GckmRrTXWUC$DFn3f?1jNXCUyiJ~A;z_~Fs7(FItG;2~=3KLwY^B0KKAwwT4{kif)FSe~%yxKM zY`YdI<((cECwtp4kLfe27R9B! zWlh$eCH)XsS7WY!i~j(t7_2s zm;>72{z((YxasRdgI#^AB#)*!0Mv_|Sl0a%)r87`x}Oys9}W$48A=l&H@JHwvl_)$ z>~H1ADnq47kdGxpuw=BWOE??19@nRz{5OFe?Z{-=Dh<{cj^cODwDZIQoj)EFCm7Cz zZE~*Pr2IJy0#z#y+dq3MSxW|a7c&V)7Zj&cTKfXJHUW|qGFtKP_eHBha!UkGJOt#;PD{+;(c*-+_DFpw`YZ|@J$>sz4GB&V5cs^s#$q$KWgT!U=0u}+F{T~_pbl$|#MKK4@)A)fW8P*EBKNW4DTCqR5K<;e9$ z7r^S(EWBlrYIZz)W4F0qN89Aw>D~#Z<9pc`_Ou00*@cxNp0^s+zf_%45PFfyoQ6lC!ZBN7G2DP~xJ00{jHF1aCIGH)jb$s_r4Z zfgeAi2xoJp6dyp|gQw?zc1!d**H#kD0~9lAnWUDqqS>E1RMF8NG4ihWwui8EaGzpoLgRa@lWlr$lUk zdO+(q1O}GOi&GfzYs~5cI1`OxkIt(87%@-FNPzg4 zy4jx+z9KD z7r>yDx6$E&|2=%; zfyeXu;(_RKWBdW_;kW zfGJWw={NhIE*yB>HWT=)M*U~;|HHj`_}ABOfrl#oG6V|e6%7qjY1)=(-2$@9V?Z%4 z_46ajMk1;#cf?Z-@HlFcBCu4~w1H315^Fvks?Ys)L4Ga2w0I%a+T@T{FkRCqB81qp zqc6pi9f2fo%;UJlmN|D1^uT#PJ@QM6AmIjLUQZezbD$)hD4@llUQG3%tpXJ9P~~7? z4udW+C+N+Cq9RQ(FBFo@C3QacjYXloMH7w+a6UgBxMf8tIUg{7A}6B)C~*V0&o#wfw?sMl2NBH8khmmc-nG;75NQV<7T6%?a@ws)6v}OmA$G6!{`*FJ^EL?gch~KOaCJhqK z+A2i@Yy?fdCEJn~pcw!yPB3R+8%W1|p?6%1iPUFOFLPWG^DVyyvNa7YXV;7m&_AGe z4EX*66ZZy0{GPsne@@Ey*RHvyO`b-(ViEU0oI~bZHl^>|a7^Mt&iF`T1?(vGmQqaF zL_`G9@N!v0X&)_~Qb$XH9BKMjF_^G${t?}S!~crz)hYPC^|4aR0J10Af;VE~MDZW8 zJ=yBPk|AptKdb{OeS9VVJ}HNXClx$BQ&6&+?!O=QPs0pS6h45e1aY<2!%QG!DM z-wUJ}((WHnEwPU!%vzi{5-+m7HXqRWNI%6(GQB>92;}sSHd*=)81W0-AiX90{=DQK8C@H#EJgYne=EuokG#1PJg{v_nO zf1aF@I+g|fS-9U*bo9rO>1-vrMev#dNY@$8z@-^9?--(x6aV-gs){H$Ez8RP4zLobuNrm`{MO1&NMU zdiwWki4d`pqOHC10hn7dUdH5T*c301L}HlP(WrK4?cBoSCEFmm(nXT5+0nl5#cQs| z9-)uO>3hA?_d-N0I>2*7X$N8?$YVG}`~w~zE_vR_J|UBM4)_!Y3>tal*c zd`}dIJ;=i2+wZPriZk`)9u(|^R>@-Lz`P;(S(U=i^3rs@df0;+_jkM2ME7f=F1H~I z;u8kig~#;Grp~XJb?8#lrEy1q$qmK}*H}MHSGof7)_7BJwO9yoJjkLXK1uss)-fk1>o99p?s(T4 zes@PNL8kg~fYi&quF2>)euuSSr*~sW+o-!Yq6v#Zd4oq+7?XcSAK-*AwNe(}kg;A# zt?P;qw)0`GbDKP)0H(;~TBfl1UUUxr{N;5c?56(YV)73H#p_T;vgaF%c392m+g#O> z>|D!PC26U!c+?OoG)3K^`j_2nhD>(z zBD(?e(9ASjTV2+T&K8?iFnM#>16gI7f~(BotxKHw5~cOnNmnj-$~0B@O4R*)b~D@k z%1{s%c-+<66GQ=03X)YRSL3wz$QEe$I`5O|fjFzrRw+W@D{w66C7at&OgO^V&vutS z!?qfv@lPUXPZu^6gz$lr^$UrCT3oxN-qv<^=p35P;$ns3sCM1n3tKFqF|9yN6Vk;O z6XF6G+TcIEQCy(d-I*j?1fOJlf>6`NQhTnH^xjQ_dv(^8SktpPBfOeJN?ylGy{~dU zVlGY3Ye8H0KwJI^2&-*J9|m!)sJp%1^_rw485yu|OJ2V@1lf_XQEXs5as2inFqoJv zk7Y-re)I>Ge&|3oY(OJrElgS_e>VsVT==cZi_~b0#!K&74piGenJ-|SBb=_2h9@r- z$!+2FXL4#dcZXIF=G6`#|L6hR)D_t^QeulO-A{q%y}rH$bszHV+I{A&Gi5%Z9KX=- ztFmo8YPrAOX1nQ&FN$GiU^!1BQWyHbn^Hz#vM?L(0&)FL;V&0!TcD|*#+m}UwyaXt zLCEKWYL5Kv-It8-Qaob6UGSE`b*fHz^GJc2c{l>eBIaX-B1kUDgRe`Tw|pOcdE`C+ z5_5^m#C!E9TC~ow3Q7i(K%U*5mrEKjz|r^uAiHYjz!q!$aDi`Ps_Tysx=>;C6^>-F8-I z1!gSK|2&{QfnmbC-oO2|>o*vgu#O0uCo9}+E;odbZ%w?EN6h_14YY=~mO7N1apUPx z_DWrUvirpH21mHCeCmXNNd@|4NRrOYRd064t`M)sugt({zR0t!;cJSs`>~48JK-hw zn^M;eb+*V%9w}LO_bP9tK}_e6-KjI%(e17i%GRt@m+k{r=EK&*#|cki&mCr-yyB$8 zc%GHzKjza_g!O}t8XiJB@mygjO+0FHa&N>3QT_s{tXZ$+{F*P1D%(GZ)Hb*QG4&=J zAlIJKElnC@Gix+R3cOB$e)(nMJu*7T+$edvfrek&yT-c@ zm7>0Utyq6R!Ubr)^L1r2J){timB zXg;Wq2N)pzC9d}B=(d;Ip(9;>%=bQPN~p;_oW8KIIaQPxg@u>dT$vag zh1o~28^_}hz6yg%gyThXLMmIQ_1r@45UydvNqX7B70K%+b6mf`1)O}k_==?#s;n2= zDJC`UQ1e|g4|sSHv8mcfio%9lR0%YjFyw90nZ{*(cHH# zPMGicLi}vvVqMon1(|H{KX?n$T#~I2XBgVh>`- zjBYDu_L<7z_U<8&rhnl=ZmI$LQHJWb6qoUx>#V1zaD&j?ZpbJn+0#BFZjS+FgpzZY zZLRga&(|20&p`peb7#`mD#MY9RU}PTJ8VO!l55Bgr3fwwQgTrD=Up)W1 znvD}*LXtupmJ`qjFZXG{DqqnlRc6iSnNKzfZw_=sJnb---kW(hz=jpom^ueHgaii- zL(q)z<9ShWDM)CEx%!ly+ZwK^ZMN6d3pW+-7KE>@d{{-_U}v&}`4bHF3|KFZP!6{w z3}AD4hl(OEPd?)AG_&6P@@f~_$%$bJxz=p5H$Pfi3(2-iIEF z+~s?~U7n|~Nso_{45kw+XjDHfO|pSbt+ZeyI50D4H@X+mx&3}|wG+@qo(S8LX$aOl z8Ix}H>o9IxE9rCoGJM7#goDdH&mrnX$`xCr4Y_cM6-Lo?Yx+ar@GG^(B#dR&*-?jx z(Msr%RSvQZ^KMXxVH)Rbo?Mn7-IsZw6=8`Y_tuDg?U$u%b5I+35LI1-J1NwE*nj?TqZq#_q60TA8aNlZ#b~mgFNU`HBo+$WrfVZEZOt28~ABvKTST z?%D3N@{~=mn;JuE-xz#CSw3;VTcYNB_{Xl~R^IPFiwYhM2IRlfE&+u(KVwXF1dZT* z?)&=fY~BSUS8RMioClHO~ZI7{r;Dd;F~C2?UTEfrcCf7p88)^O+(RBOx-FS1a+l^yDS z?}zgnyRqlIh}W*ChR7w6`1x-J^?_Q8x%9L80LWabV+VKpON3uJ$fz?AbK@!4I@f$QJEc&!B=K_E2Sr+}qjSeQ%Xp;x`GTuX z0M(8d`l|*`3l-cY_mfhMlbw>|0H7Hfop1F`1(m}bHJ*7yYVDYDH`WK1A|tcOszz6X zPacXNlfN7uDrmf_7p#sb)M<>ZGV(BkP+GY0@Ay#fp2!fmZukt6{yra-PqJ6rM>+>6 z`XN7XKVOz7sO7`*keTbEUq7Y)rRu+~FA{-;db_FX9Mg;Xst2T1|MK&i;kO$MmS0M~ zVNx`BV)z!wDBSPc)l?GD6Uc;8_N=P;~SM$KUL?*8OcipI)4o#v7NMQx3_t(J{&7_o{=aefV zzD>7DT$P>pnqf9w-(Z%hH|Z^EmLe^$jPyBpGp&A+LleWoX5hbXi5w`#P5kqj%?g@m z`eH|&;iI{K6lw+bhev^%j(e}O;CCubx6USu?v*<|lMH3YHVMBW=E?$PPi{d$k6aVi z(3S^JGIa~5)Fym*!$9m6T*&vmd?BWUBh@Ctr32u@`lFfBr-6ods z4T@E1J83c6_>DW^nMcS1HEP+382;BQ(_se)?gVnZ@Q}Q9wvKxAFR5md_jjfv$s4mV zYtn$vwi*lFpc+d0oF8EdPN-bnz{u%wK)_+i+duZkXlfYgI>bh;$M_a#)Pd3^{T$-d zFymQ&j}$CE;^>t>vfxQQ`}TG9Pq?hKI2)8ai6v#1hu#QHd-^P80IjJBf|GQyM1`L* z!JIn3@|L2Zj9@m_rEsXO#4BA|>%g8YZZ>~}g}-O?u%QOn54I>tmYh<&>e@#7H;>n8 zOnu$aWc$k#i*guM)V#)CI0??*qOqjDPsTNPGcxCbTzu$hF>aU_R-RhU>pD$?ONQ(HAYB7{v&=DREk) z=iaQR*|A7IwqyVDuAA8V=&6t;fN{#0aDh4r2vbD$3dA;J+7n+Xc0&%#`Frz)zm!sY zdY9a0?nQ|hw`9Bs^n+-~Z9S8Qv<5~30^6(kAN9Yq!b`dJG1>q_WzID}!451!8Z9lM-m8cUGp z^`J2e<#K!w)QKZ(;({)D7$Wo%44L2%xjAmGVl~Nu!dVCAK!uNZyBt zBe)lAOESjC(!CS#`XZLGOfwcb<9c;y5r@f=TW|m6cP&q;D}~&=;fP>YE!R#_Eecfz}#y zi>G6=aG6xFy5;`#*;RM`aRs^c|pAn}?*L z2<(zRu+%s=UIfwk65%;dMBOD>RJQ=6*B$%(@J{R1fZFvu7ODE`~cm)w^23-bsG`fZFLjwtUiZ;2CO0AvwecQ+e;)_vOYecMj~AN4akiK3NeMEu<5h*HS- z2t>g;{36W})}Wi65jdwOtNxJTq;$GapP~&<3VF7%bouhlVzA|*@ z9{=95?emYU65i?5I!{`MDFpiT-A|ZMiZU`iuW!~zdiNAx zVa>||!;@PEN?V$Q+SjoXFkD~1hWegn77PNhLbH7p)tp@1;(2xnql_KWpa|-@nM}aI zo?aELMz6`vXnPyqbsQ(`xO^Q@Nr#XsqzsGDnH9-4 z%Bdx7w~MrY=G!I#Q;=OYzXm_^NH6!WZT+CN_0t^fM^P8MWm&QzA#DDYR;_u#_g^k! zMHy5n3<5_l0-;Q5bEAS7w1Dj-TYy!&Y0 zicZ|QYtAk5vc+$XurAUE+x;!Dq!F5T}vZef{p>_Wkq%&mlsJL7;mLJ8oEZ zsYGY`AET;~|Bq39sKPbM;khQ8<`Q4I$znga{j`{kXFCv7aBEwP@R!Tr(7U<|+d+9$ z@Di5w)ZgAEk4yWi^V6KMOvWS%uKyLw8+}Y3$*$9t5Vq&v(J$RyY!9xv7hh(|2z!0c zz8@bE?jIlV0z{1V`vzE%A@WmVRZAK`Ni1XIB2r>Hl7q2qHbxx$-v<9>o46B z8vM=13>J^CU0yG+cQr1wGL}TBDz4zCMt8d?x5d)P@yDfT!nM^#9``^#+%LA+)aHtm zjY7XQfAs~=Pd8v?lj8aII=u9VYSP&ddtSQ1UOi&zF5zi_uS8T@^|Sqt_1$-=&9Z?Y zDtCmXvtemy?}|}JfbYJM#_!Z1jh0Hsh#9Z@SO${Xgixie)3lxZW3@3`jk^bJXYKEIahhm}knb|oOZ!gVki^S-{`u@qR*(y; zvG)od=eoob$n&H;I`r}?SVQi^!jnAjByM$GKY4Oj@gg>vMMdJzWZJH$u+!Zs55%?y zgK-k3uCJBnZbl>W_vHPsl3 zfd(IJ6z8^;ytv$*U+y>bCd5QfTe^|9`LjVB=9wr%&WP5bALp+`zC9XW`>plT9^`>a6^pEY}1pYX}xY=Bsndm({^>)~tcpUA_CF@o=|9y15WPr}t z@DHIbAlt-CIRDEKC}G#GUiQmN!iSU6RTaMl19R`^rM?g^-Gpp)Opt!0nF- z#I<+}SPJ*hD6^OQ`Q@Yp`cu^LPc4=GNqj2K6?I54MsS2KKPN@Jt221~N=YTDQ5SNX zU1_y&UGY{4&Kvs9E-PVxt-K=E7hlT2pLYZz(~0t8lzq90M8K#|>|>7sMy#;twt@zy z;_Sw`ik(0sM1+BV0Urv^@du6p%VeT<bAL z#@DP|yS~&p?jlnC-IEZepBFTUlw&zOo#flMH3n>KvgfQPUG;CipK3cd)nKis9=Hcf zbmpOeOfLrCNkIszb?@Bl%7PjfMA}G#FemLy7OuHf6s7)^{Fz((+29`X9qr#<9C`HX zYC5QKtd0h$qyh9c4KywLP5=bU%KC0gX3a$k7l6WA3pJd3S7bUybii^L3U(gs(*qT5 z_t)Xa-5=Ag494&`TZN@C6z=(q>Lzp9m9IL|k_?=0V6s;@HB|3TlJ~0@3bYG!*5q-O zy`Z3Wgdtn%>0{j3^w>X#GjnTRR&}iC!nti>?Durmij5ob0h`OIR-*;ZFnbk^Suv~) z^=2s;*hT)}JjrG>FA1Xvt{9cXqD%GtC6Dj^?yFTv<->Y-ywIzsOyb5tlqrR7N@T_{ zs^`I!@eXqRvDA}A$F?Pfp*YoWe=!^;m~YqlJ~TieUP^35#kS_fn-Ir>n}MGUvG;2t zc&ld)yOSeIH-{_=E|z8T)Ph;EL<>^}-4b*%Jv^^6Hm1qb9^Fhp%vBuP7`Gk?qVj;8 zPZuaBJtkO)8IJVt;R!eh)NhTP*UE6ZDOn^I@x*BAe_VObLqs$$9y|-3RGW$@m zeX!-jUB&af5m`O5=`LJDHi+w3?hAzG*TdGy9D5Kqt79#EZ?rX)@Q-kmb;{|VR+Yj~ z0EDX|+zIQ{j$0<%o|8Nq$NyF*kS23{tB!xD-|Uz^Q)vhEvH;Btp+~UZttA6)W_R56 zS2XRY-w0MMtD=N6hq}h|K!p#o$LGgABC1Z^S&y@K*V8Al$@+9rFCvNQ=Q1Y67hsv@ zFL0gOwz{5JK^lc@fA431x)GRr5?c(+wZ(n3a>iLAMnum@{jc54q8c7Nm{izmP=%To z!f0sxgC+P?T)nY&SxsrbKT=srT|b1xJ~JK|{GdT@9D%KdZ-vUj{aZ|+FgSI*K@Q8qHYb6W0>QCk>Tx-g(5+Pvl8c$#_C5Ix`V{mu zHh3YYf<_F!OOp-%N^tc$hf<3L4}4 zY?sU6FJAKb6bxR?g*x$%!&tRD3?8eDq~{!r_Q#qzHI|Wb6akYgb2UHIq z6pr;&!u=qr+jCsSuyA%@g2Z^_v$;G!p#oM> z^Ekjesy%qe{Cjv-O~u}$%pO;{H^3P)(jiVQ)mUGrO>`gF>F6TviPd|hlUN>(nNf5+ z*%5V|vrC>QPEA}X=6(lpRd6P{G##+^^Jk|_(!z}s4{W*ZT7z*gg>r2M<8VM$H7fdU z{5g+1TEzQloAEC8kh57NrDwuj8$r7_mbKOh=x)070L%UnY zh+I2m1>OuQE|Vxxj_-(%!h#Yhb$)aZv9WTU z_a{N`ls2Xckw=)v>}f|2?BmE2Qf6kbxnex)PCsVKuh1j3wz-nI$B0EQaO9UU&_DZ2 zGwP-f3rx@sJeBaIvpkXrGP&Hn+B+F>xN@GAek-{v;_;ESSEdPfKp)WH%K3TydWLo` zY8ZdV0ghD#=LdkPYV^)zHo$4k?oYes*GLhsm z%gZa4Ux?xF7mnuElHjD<8<#fRA}(5$ffemwUkf`9*2+$DE^yEWQun*+n&zx-R-?_c zWbVwBuQ>Itt9xO*W-j-UJTGoQ9^rl$Gk4YC^=ESi(6mD?lTJ?cb+?0WiLrKmft|6K zFR$Yz3;38tu8Z1MXnhkqC&UDxh=B4(-DhGf@PapwmCokBs}2>g>Zn!yk|s-&{hyU5 z;TB;&OsNm}HNMzR)&!a`2zN5XSyVb?fv#Lv2F{h?;i$c3#dV@<^Vl<{1@@!i13FNF zKw^IhB;O3nC!hDw%ICp2^y&~0-z0wiiRi;m6wrN`#E|w$sSR`Kr#h>p;t7g>0?YgC zPeF1J$!|3JuoqQ^T^M=fMSVN1e+|xBFj$sJ&#@qOz2tc@USos-_5EFy;re8(P|?ocYTKbVA+*2}_R-;G_rB@(J_O5~r|R8hdMszc;bla-<2n;VfE>-qFjMXwg{-q3NHyw!l{ccJcd;rM|NE^MitqVQ{Vk23L*(x=eK+|T7f=V* z*F;O|UD3xU^dC2}`!wT;UO4-S^v4o2A4ko#EDZROkZ>a0<=N1nU@O}_Fr zu#NF)Wzy7Vt~Y~8;_uQ1<0E8lHBffo!Bpyg$sx7g*fb21H*5uO>-2J?-I>99@Ndj< zixKxUj)RO#bBJTr7Eq#4^hJn-`FP92ak#*{LWtRLBf2v$t6O>|$6T!}4HpAN(Fp_M z%fg0-t9bV(&qvt?9t^$01+&e+NvBovxL?^Qmy9e%*CqCk>^`?E{mDC@^R5DL!Gv7v zpLevH%tZLH9$YiUow)?mxk^9?I-+2AX zqKW(xtY}r}Tjs%F>Ia1Nub*q`v-tkt8OC2c*I3;mdqdwvr@)6vGau!y?`BvwPux~z zdTgRZMfa;+Vm+;C)moL`ZRG%+vsX#tY2(;W;#|&E_Ax1?zSWIin*`ilif(O0PEbb= z{2?#Lw@XXpwe_Pzp|0Sx^l0Mya}DdBeHZm#c;htf!}c=$O4~%Qfm|*&^8y zUvZs?Q?)H4|0z{H0G!73Jo+A0+)p?C>k{tB_v-rIWxr3mCFOUqHvOhzOm{+n>yBg+ z@HR_A$#O0VhJva4?UDj)ZD(n`Kj>w9864Fu*o?PXSdIw|cLbmdNLbC@L~7Kyg$TWc zO&tzbPRxYFf!hmZ=i}>tPfRIoEDN-U4)>vN zJu__Qvdvm;gnSiQyGJbI>3a7kigj-Z>Egam)hpCgYXqCipagr0hOwJo)dvZ0gJ3 z%OeVnCVErE&ehzXh}TS;_O}v>oJ(aO@795P$YOm)iPiT}#;1$jvp40H?FncbfUIN_ z1bJ&3>-}(RCBUaUZ!&F|?iRTdjik<`Pggm76R_`fnqd0Gxx>R>q4+B~M!Ek7zeo$^ zW2eY;oZ2*9lS^6h`kz0saWbM1T}arwX~hJ|lA+*)mwC*YPNe=jG=(`Fcjl5DIkIr2 zj;gr^X)7o&*UK$C(!c$Wb4#EhMqY-_UN9=9ZnpU?(J|ak>XO`n?kC&#$6Vh`L5!Fg zzUkEZe#0`}ZcTj>CJRV8GPf~}ktqc=Ieb7V%?$aals0p{vPOP{sl=MwHxKOFqEScc zeXiqDQq#T7s}H6i4~fW)E-bi)J_M%yz>-0>z4Wp5wJLX0fSz*zS~E@r67zNXE4noSzkjq#v00dH;Jl9&8^pxCswSs znruAEua{fCJFbb^a`iS!(OF>akCMk-G*@_nJ_d z_$K!?80xdd52<&?j>4VK#u6sv}L&3_-p4FN{B9k|yn$lO#D#%D%%yvhwm z+M~YtR8QaZ&F}HvJ$s^dN%e$%MvgG?Wc7m)9PKp!*FNyg7dF%Bi}uFj&cAwA^z`jI zP-dJO;O9Tr&rC*Nd^me#AiGRn_V;q+c%hL$WcZUN9T zQ?!qZ?&tiHl^n0^0Smqpg86nD3j`@mj}CXJ(CfPJ z1F~RIQvv6wy8?pOU=~^fIU@4xN7wP9%c(WoSv@dyyQWK&o;RNWf01{?CrcEsKOL_; z6bff5L$dJ~)*nfwd_OI4P6fkc`uh(M#-Z}S35u#9=n7vGxh`+bkrAu7&i({aF_kuK zE#;Grutq;dnE>0jFR!?S}mxJ*Ai);n#s(1z4pscdRsGtx;;-D=&@A{6a4FTMs)O> zI|lChS)`LS`+m317yV5sRf}EDENeT^7mimO3^v~exKP4?BLnpx8sX}wqy(>@owX5y z-PS3ZXqy>W7Bf?imym*tq%ps1`yFWmLtp+2TP*Fz@c|2lvBh>Auh-lXCFzyfaSX{3 zw=(g#u=>awbAQhcoo277?EhwJUJJ=G&b{BczH>1o`cML$o$wOb=^o?Wr*KnNp<$*y zS;o0gDGDyachn0KRfoQh>N;92MtR5E$oWN^jxBLN_n8O_qVqYI;zo(*PRMBS65qW` zWbwVc@o(>EF(0d$pk~&y*Rm}w#`|@&C$1Cme$T&Huo_{Ud*acfXN>v7=+6z75Qy#Y z6U`-pBT5z}FS=jM6j7fGC@y&I=kWr;m_g;|QT>0mEakM^l9NAKS@+_)KzKz6)r+#L z(O5USj;bD42do$3#6CgB^STX#iTCEzuzzsb5Z1AJUq4=3pd5D~5MkHjks@TwKKv>8 z1n{1!+Vxk9jw5}>IHJvC;7r@=C08tQBKO>RJ>n#xq&NEC^T2|&L}fBb<9-X{3dD6E zrF?&^-yhebBnBF3yB0lOkK`6hnET$GidSjcxH3@oBFzU>co@FA06>}N?q$zooF5F< zsh`n44g4q@Cu;W;VQO0cMvj)CR^5w~P!(G@j*8VV*m1Z}Uvhij3-%2?>m??y3=}L< zP%!HHcnsL7Xy^^QSJ-bnwvtI`%Jy}T=zdmaG@iY89}NcNuL7Dz{XZIxg_ZZMm8ZSa z&JGn&_25+kh?|<>*u&}eP=8MkFbZU=SCkfgRL3N5St2)urPhNF1;3qb4TQx|Ugyy4 zSORM);Vqn>riQh&L+flQ)#gB9w3J3wfm6IfxlUvFZ>5+EjOj*~A(h``cN^O|55hB@ zdVQm5=@K`pA~joHM2gw`*rlVb@hd z8D80oNrtYv5T(3M61&hadT^!^P~yi*LQu<7wU|`m#j9LEX>N6R|JhN7YR(4qC?{Mq zX8c4MqC9TA)zZlZfp>HdhazuB{7PDBcB-@$i)*e`XO{294wnaG(L zM7U^(1dU+vUVZ$6K|_o7Jz z2KkW~h{9iR(n(kCuz??P;DOlQ=q3%Z#MSpa?RoMWa~ZTE&_lVUVF!Is+z87W;9?2K)6`-I~D}94KH1c=23}8d?p(jiR zv2%_Zd}KYY1WQrxdvEU5qYfUv$-;_(fz=MQ`PCy9I{ zfqkXs7WAb{5qM6OmgJSz3+n5K5d=NGXF?^wZHR9uuV_h&RmvG&9Os1e=!X7V)Cj<1 z0fz47S^dvHp)kEZ#u>rrRgh%E2~{`+hH^(vGA7(@me{{F*%2mgP5&Hw(C%gYmO zL~#}1O8Y;5$$!7)?<*P`#LCW}4VN_a!T;Cy%?4r^1nw{`-Yz=*@3Hy+e8a09s=apCYg7h~fIF&{5V|&C&J8(`)Zq_fcvg6QLqNhjK(# z+Y`PMH8_#|paeMfrPG`&9wz~^GRg3$Q`+a$SQmTgkT*Re>RTmH?IIU&v%i!s7BHxF z`!oKnk$bK@NJtTndM*(x)|e3{l7VCFm2~BXxVb)mz@wg?DnPE9 zsKY|@jpL-Oo-3C}cl^Dx$YE0`Ga+CR+#9N2X1Xv`(7CG|^$Qnj2e3J1S?wCN$Cb4f zxxiwSKa^TzLJ2=5JMBYWCpErHcVpvd0XBJcSqH=~X9KQ^q`Xsir9W|&07P~~ z+)+cPwHpJxx`m3jb_{v%NWQ)Px%n-$m|^N?BOmN7A0}jPwYXE``3=(OFw39&I_48~ zzx2d`{ss8xiP1Vef%P~EE(+>6E}kAhGSf@+$6le+fyM{1;jD1|i-dg#$%5tTJ=iN# z@XH(hcITz0%Rm9tP-!qOPc#Oio6VfV$X%u31}}z#F|{PqSWFr&u1t|3chFE-WrKef zpB5vq90tWwtJZ#-`0E*QW|k&`@ceJipJOvX^;Sgb^Tn0mECk>t4P8dv_c*!?H9;MWY331g zl`l4Vq8!8o``@bSu=HKMMGUj0!C6RiEVrzuNEiG&^dVT?aPOddVEz7%uk_FeM0pl?9ualR4(X(#1O2wt3Lq$vz}-a zi5m=dNu0H=U$PS0-5KZ8wtCuBKHW;t4~0SF7K#(R!mB!Ny)SlyEJ!fu)QB$Gdidtd zdS5R&x60VK9L$mey4KH@Dqoc}a8c35crKbc>4r+Xe1ndSH-L$PdQ&Y)!=qx_3b`^i4rV^kkRximvl8&2Qn6F5> zBCTAgGAihn{`Povf8V_v#p%t^J6^DE7GezCdR&Bm7pm+tc8ymePUzFX{czItPC!+W z_*3THl74-;=rR|7_bZ-N1(DQ4yKs!x z*n7(K4UV3u(D*Oj*bk10?+{#@q*r=sXEY94pTLB#RkS^+#nIKa@!Xzf`aaT!qY@>U z-&>vUt~@`d?AAP)yweVA-z%d|M4&I|g!He-q&EUVpt1Ej?)r3FK90|R)ej*Qc`Isa z1GK+5oYvOg(!3Rm5wmICPBzgR!8RPgQeWGZ!Aa*WdA7pcAZi`e=KZvi)F&fx4_xbR z7;h{yH?J>0dt7LlUWWSfb+j|v_juhilcw?;NEE%R;jnLwd2C#5Tim-VVI?^x`YV8v zZMzv=p;{>fAYZ9z{;kcXPlEy1C0?EfRn4=2NH_V5KI#lB#@rX-6lxT_vow@T8OuRu zj;hleIfwS_jcI8>b&*FPUFYgAGout^WW9xf)(!aD>=nTIIZLSsDy@eWu?d+uUs|Eo z`W&_<@8j<<*7PSYzl9%5EDcSJBIBdhvl$0+6@66 zP_Yrw1^Cn$bXr7dc@YcwuVz2c3G{~%*y2%C+TDM+Os1waY&HtM`eg8I+5Kg|98~eE zRnD0tkAE}zL-%1l8b$;GM=pS5phpo==TVteSTwflyz81-@gkQ4y!{?3|G_b9nlk8mzb}#%9QE?KWtfe%B%MUX8g2CkF4%xc z8v{rH+dAx@*x?z@{1-Fg-_*N3Ec z#@)sVIust4E#qEt|*l!u1pWnbzU$c|ym6#72D{3Hcn_ML52SS;o^R&hL)b%vhT zdpQ>v)-&Z@!3uUiIz1(5f$E4CSM0FAU)X%bbZjGvpv$J26VnOh+#F7nz2qYM>Gfb- zD|NvLHgJh$SOmr81K_BE`z-af!4d*ohS$AWBwze)y0v=VVskXpp6&85b4Y+1Z0!{-$_kPZp_#j$kM#pNWt>?Fc8mV6;;dh&Z&!Ge?q zFBZ90rK?D4d)BCMEY~Iec>obEcknW{ zkFMd=CDo6{cwk27$=ZS!85B!!`7UGni!x9_&6W%GEe%jNvu|Y&!(~<#L2XT)gO1Ce zC=kGyi-Fmi{c1Tmk)v))`DSjf>pXUE5_jV_-=-pJV(e;i>n}LHMFT@z?99@%)6LI{ zIUeb%xk>OpXhFL3nk}c>+S?mm*LYY!ugjt9)ZcK4)qIk2Y@SjQ$RiC#6`BK_}~uyN`aMUVer#I>_&sxd$UW zr2|?iY1(p0gQs`|w)Kd`h9p8D0k$oo0&bc2mKYDeW$HnH=J?4Sug;cPtye$KxLHY^xSX%%~1aBQrs%zGr zLs;iaWvidq{%d)#4M|J8{{|qLDY=!qo9ERn>a=_=YAALUG+vX0JgT>44}rlKyhV)> zQ6P|>SJE96h6;LmN0aaH0pu3@;9J;&fFtqJf6(3VcKICvetM%YGn%f2bVr*)=rsWJ zZ8cy=gzcwAR=oXz66MlCs@%FWKQpJ3qRW!|RINMIh#B0rMhPqR=4(h)1lDT; zH=OjFFV~}q;#O1i(py;arCEaCZj5o&mxDre?>P6k>p4#<5PuT+1e)sH>D<~bdW_{( zUgdU?l@ES(-UMz~uE$;Z*Yl;ZG4!p$k~n^ijJ|nO?9qM(2h_N~r9RzP+f<>|iv;tG z0}me^Yv>%$Bvb_FK7dP-|@6>dOnJW;r5!+hBE8`H@hC*pK~^3`4^e}U94L2&0UEz$KZw67&Ab=TUg9CQ za3xy$1Px8I6So|wzo52E-@n?Lyo=~j2O7!96)NiT0as`ZzfC~@Jro>jT|>fjLf_oI}dO3P-;IxjbwJW ztoN5}UUdq_cjl`OZ1-bgOW`wYS2A^Pat1tab%dX<b2aA41zdJcvqYVLd(hJiI3Em+<#5jJ3d3(O3pGl_cKBkJov|f4VFP=rC8ee%<5fe$$B} z3nTVtt+SXDQ4uJQiKh0Wqr{VWFLX+K^773Cg)+n_8`uL z$)+a9dS0eO9$!ff`DUGWb%XQahuB-_H=|3{Vr+`dYK*7MjS;8OAJA|)&K%kJkI+=LBmu^fLN|NP%$K`EP#FjRQxDPp)qhs z*b9IrsURt95`uuY07{)voQ(GlKP1I7)%aEw2$cm0ustw2$BNe%BRJ}Gy)JpT!l!lw zcEfXrlRE8q$&~TGDr>}qG8hu?l3x{D4BCfReSH144_!774x8po$j@u~ z(I*KIMzTK5v_@157^N1VOro_75QFY?ZYrdInU$3BL+si;u+&Zby&h5?Xl!GRE7SOP z;g;oN2a1HQXmPwTN!944RPkK-Eq!oG2V5=CU zNj4kcQ!?nm!N* zpMZPlu=aVbvhw(|No%PCeVd%4@kog?-@HN z_~J$+ivkq;nSsF z=u_wW-+X6&RaEybwRLug=t@zbPn5bCO@q zJHOhm$k%3jz<}@MS~Ing-@QLJ`RIyhWQ2=ZII8Aq#(WcjUe?d@e$d@XX9`P6>3!}% zehNOD>3-8zFN_BvgvaE7J59Zb5|NO(D`=%?BJ+9hy`NO}31hC~+L+{ObmXz$$Anf+ zcNDw+-!Btz9)$bgNU8k9>AlUsFQ=z*n_Z6V2*sDWEif(Yd*e0m1N-x9selrF6ZPOlok6; znCeF{;EoHzUw|F=HZ$JmNh$gl%L-{&z_5%+Q$}UPEMB zr3*zBJe8P!Q`Khm4=Go558|(BQ0Pg>mUBs_t|#p#SB9K&=3HBplPmSlQ1XvAr+|qn zfAfduQshe)7Rik!rbNe{D*X>x<1~+ zjElPdqHHZB2fPi59bWze+xI3?4k0(2=iUse*t7#JlMrn=)y(VzxkwIkpiZp6yZ-Os;om*L|xKANp^B##L zcMiAGTHia~KO6JVa3=lua=2KEWV&Zp=T!cUBPmK1x>K>;Ai_#%IcWx=g#GgtHgv zcMIbx4Ad0qV+rK5Bv8@*xj6bD^jJ~q&cPC2BRX{fhXnFVdh)>ItQ%D3%8O!_XI04F zAjjCXn69pkjGZP)#-;gWy#~M;&OGL?4W)k^H_n;b@3;h?^FW#&53`Z;R?@I(M=M&2 zx%lN8>qb(=$7KVUW?DK>pij|g8rhJxH7F@-1O@xKSP_-onobxeEjRv&)~zXUTLsD| z>#J+oQCor_Ve=u=ZJm&=6)R-<*cBm31C;U54yC?&-2)zs-3z646M_IO=@R&Bacy+>6m>z1(DD^noIiwb6i{ zhh|te^A}__E|#MjYQA(twbTCMpY`I{*LoiKpdsL4kC2uhn9LY;>jlu<&S^KFFmOkG zEH;2+^Ux;HnYgl{vdMr0B`EUFz|R!k5mU$BSe}h;%K~1FGL2!fGxdE3va5I2tf!NaZ7vkLuir1m?gFTz4 zo9Q-z2jN1bTmVF#K8|TYwt`A&{J;XyR^hL-7b zK{7AtN9KaFZV0`rFlT_3uqCU&k>QMR{xK5g!31p)unLyxc@R&pNPOTU8Ez(+!f=Ur zm#)idN5pG*LH+Mqh&_$g9axqpCb>pCqJ(H|@heDn(n|m`dB>xRxeq-QPvbzE7f48e zy*X_*Y*s)&QRnjs_z`=S zkMl_1)^>Gi+YmD_H5SH(g5U2EZ~c5N_|VFx3cZnmEn0i7-zLaFp0wk#P*?Hw^Orq* zIlB}N?@(%iCG=Ea_WHh|l7Cy_bvk#}$Bf*MK(wB~=&r`gjed@VgB$Fir_m@?>T`=z zrAT}SQ*gB#1ymHHcDkKXZ?4vwZOI#v^Ysx@VS@w0tc10a|0tWBv%KPLM-28^?PmGv zl-R))@nBInzRptem&HAe`VIGxm2C@Ha;k#g*<&&h2|+){J;5Z#?0%TY=sSQYiwz}H z!*h!J++vy5m{Z%mBZ9jzeJ^*16PO`#`Ctq|-3h`_ z-e&XV?LOW)_Z+&9KF00^*NvU`?vtl;?KXGg{_t8qSAHbBP3|Zii#$fUyG6dhD^?_( z2n%RibD#F(qhcI)0qOuuDMN+Z!ERdnZ?i)G=>-7cW?VwG@BN{o@J)G-OG!XRcBOzO zWj@kJ=hvCL{kMy%pf4ZfR`1bY3DEva{lduSO&I(`{od|h7MwqG-ZM-uaz1oqTM_;? zK-ngJYg?*I{vvQY0x1OSN@lI)6l$rS)+TM6%*jT}Q7s?X!Vf7Tn43sL>sK+gp(O@p z;*+|y0AJ1tV;oMfIJMsgo>tR40_e1)E9bfylTo0LS5VxH3&)NW;giYv8ZDgp>CI+Q z@q8s~IPAFbR{^|1=AR8GoHMO()=8x!61G6%J`w!Cri=Ch#9ir~a?^X+%e>~_n&&z% z5}aAseiMYub*)l`P|66tl(*J$2Ag`Oti&rJmf4L>Htv3-WJaahBM1Jn2Ntrh0@iWI zjt3RAeNS)`n)NXEbj@k%Dp&mdlODd@h&udr0Adkr6e$*%f^-{KYr*tLxU? zBc@{p9b1=2KRCwtP2j|Z;uaXiP(M;;-XKrvA_X^Ha@ArQ%gHtc z{8V#t3jOvGH@)0w;NrRgz;BDSG;GFPT%Kn+SxE=Sb!9U;o?LEyQ@pp2<$dR!9C?X! zP5A0g$r|dI_xSvo%_pO*?-gNg*v1x1f&YftnSCc^fBeg$ z%y#0`F}ebNTG`e)^~L9!n7>IG>ik)+gM}pSF5$1K((1WBCvlvhspFPnx#B-sxbN8d z@s=32mK^C$K{o$^E5svUe#6qCHN)f=9@vmn#zcy%psPQxp}{h};5B}KKa;y~{eF}G zJDp9Y15TC^{LI@3`p*mv`ri>=XD5e?@RabW6T^L4zv4Rkxb~{fm1|QTlpSuWjv9l< zTlc?{Ra{Dx5f+f;Ztn}_yMNwvX;j2jYAdaf$*BYf)CFb3?G{Ucr zlSILrVr;OQs!CojS*ZRSMyh4|nJ$XYn*jOCV67gr9|NdB{KDMp?s&eaVIP)tklq`w z(Rzm?YEVnr#lbfmNjk@Ey_QP~Qk4hb+CV~Xk-J{yQ%;nTN@g&y+B#^Ly17{`&rAWx z?iMd(K}E9OYC_EmU~2ZhuV{73m@aP&6fBl!5wD3_rG}?TMnAm`^g31493OK9*xnK> zt?zEP<6_X%Ddb-@QD@gT4JlrrT-B$)P%f-(xm*tK3zSRU6%?f~O>PJPuxA0a8H^Gp z^i=ZRN@9W>j>$Za^AC4lW7kd>afQgu#JHu?MY!&czVnzjRp?0U@?0r=Y^vy!yvVw( zr5)_Vx=@H-$Wytu^IuI?pFu8)&Z2QXBW~4twNfbDFl4fZWXYltNXqxnZdS{gvXyjw zNx-FAjg|hNd?S;(|1R7KBBH<>lZk$5((fBv$W_P>VUdt}iRX#2wd(E0J|LFIsAimd zx+%*S1Ftita;4Ej#v3OmMCdIgHCKbZLTpyn!9b$*8hvLN>FSvH2I$^Ai zZ4~Fh#(d46qBmzx>uCWQgZ6Gbf)daziUX++anIYN3--I5YVPf?pENECKDwY6B3i-Q?-WSCV2iKtQBVhD0-!HR@5AuO+E_E`m_1_udQ& zpnL8_o|Q+Nr^pZjxTg-%Y?metA))w*Eft1Q?sjtX7k3on}C081)yHCvEUYNh9J9cNF;VA1HAvb z0f)#|JHjmB8xa?CFE>qFQp|&4GGVEGG7P38L1%cS2x6J9B0r9EHV|!HIZ>q_%)pRq zrPO+CRn7Loa3u0H`|vkH4JRvPGkbAQjH@?peZge@6}?HYsfltL8!Cc?qX8@Vfg}%= zF%=7xBaG5xNZS{b{iP#>)bjcaO?(i(0t_4?WoU$n&XK6^L^pxrY;1;a4DC!&ydB!x(O zbBy(96OY)vofGl@td%c{yk3efYmLj1KE^+ZD{gxJv)=P8t9fUKem9EUOKRtdb+{JSP@jjxdKAfxv=ql{QZrv2S$Q3#~VEg?hoi}^FfvS5T` zt@cLj&4LCNdGqTGoV5%uZr)dpIJl13F@J-km|0h==*yHFwe^}L`%Q)YtwEEQ@Q)D5 z(qPHHJ|EOwfCpCOS>S-U+D~GAB~K47!!We(OQ9z%Kw~6(g)RfVVD0b!=S{4NTQUrS zb_1)TKXjdTfWX~(8z1aemg)GJ(oPDmtpNX(jv}+1d9S1ms6W7~(95w(JT*c+9V`E&RPQ_&+qx%@2NHTXy!pGG&;0G_nPrv@ zy4(gD!0IN?GI{zmQfu<$M|Dp=H5j2ACo&_AyP^=gi(q==1>QoV(-fSFBM7-8eis~M z+;;muz&=_>Ph<5>_zvASOP~=bMos#$wNF=sfBd!09hUP(0(!>ju;3Jf-F2`<7+Jo5 z|6QFz?+sGyh0crKKgDSo_ugRiH5Jm{vXdDR(9uU&ng+$Ut}3R&?za8lXM^K{N|TXg zJ);l}jQ1?ANJp)=;x@)!XvqnCy~!M`QEId~G1Z2;me`uMiD37?TF@);gw|m|hz)(w zfdxDAcTy=Y4hqp zay;19+WI!MD$4jpqYjh54t^dsH@7w`>Ay=g>rD(JABa8p@{shh!Rk%})f*H9(wIS$ z`%2s44azfe2P(ff6`&~_>fm;Nj?O(VGCIo^-vp7SL4X(f&?zBB3V9O4n~C)4z2)S>H>zXaZOg^ArR>K=P1vN7~OD`t`N( zwa(ocyOf>&%W_oAqC0Oz!}s?nR9JRFECo+`vFOate$O`;p)=a-Z<$i~+Hi(qrAIO9 zwYa0r{nl({1Is)L4-?Sm%DemzZx6o6@c#bvR@W!MmZrrT#11q#Vr8+eOPPZpHpj`Gm ztj_P?0@{1V;&E2*H=Drz`FoRA-a^ZkKma<5k2FLeywl5YET9#Nn459l_7Nd_5N;kq4`I$dc6ir2TjfhF)&$`{B;@QO)BRwTD0fk4|gft%Pz zpcrzl8VKUG_({9iRL9)U2hA!hA|pTsL%iCBH5S3y*^k?AjC>5N)5$55J~|sTe7f#V znB2J=o@PI#^-VpkU3#MLCV}HbsJ;UG`Rq-K>{>`mg40p)&KtMMf()PhuKab@SNHfZQ{;1N0KpT@bZKX{NemiuADh$D#R8 zziw~bpT*qE;Ssp_o_oh|fc;*xUmqnp1wRDA&ygL!i0%W~FWLdl zEq{J-xZf2_P2~MWdj&CG(B6@^oZPa%GxFtpJpsHLcK042zv;@we&(-}LS_c|0(l34 zyV>OE+`501X{#n>{siiW(A28F7h_a@Pch6#$*nBlbigYWY@z;_`HZRCn<@@@O~6H$ ztcWYp=wRHlSYSfClBrUd`er@()l5j^Ic}jicVLs|#Kcz7A$1>CpD%VhO2I2KBDtJ& zGWp8u44w4hC?sSTB2StwKKn+|5X|hd3(EOSAAZH#h7Fa4=-;*IId@p!5sX6MP(WEy z?(aM)$0|mqvX%0XEe<4%!=sry*May^JLPU9_D+!`0jI?wI5VUQ2KyA#dj)b@k7)@m z0M6%J!4Zyi@bgWuPf$wXli;SbMkcy^+*&AoKO#!q?b--=V24*h4K-_BA@TX9IA52J z4$%4etU$_q_wFhvV%_$D*u(T=N36A&#{QWv zpH*sJVFK9c4woPAP#Sfmr(FLxMXOYabJos5S{4+z2%o!7J)+n5G%-sIyVC#Agtp*wfJY_FCNCvi7(LiI8d_(EeApC z-gEZfl@fp)j4Xrcy-nhiPV{FytPfcsNKN9u%HJttX9Np7PyD2q=KHJo54RhB08B<$Z^(l|Q)!;YNUk&| zY5Y%Qq?UwKM;G2I*N|U5+P2njMwqlH1fIRZKGG_K(;?e_OtTI~{nBx{A1^KT(rT>c z$SERhOI)>5Is6rx)ntM0;*xthFjB`&OrlBjD(X!&`B4KD-fn--_gTLp}8nvm4%DXD(Ctm4D;_ZD7Ho5-o{>2&oauFAqIhVlTJSP&uu&5D{v?Cf3LJ zt!_`Owpev*HTo|>o6YqkLTgx^EC7}?2MqKP_eb%l# z%PoHXcEhC*zu=P0va?A`()!Pdntay^2Lca3ulGikpt}!1(sEG_q%0BxN-tn;IvoDU z{nZhr$Ms%_Hjd663*C7jrl!`4g)zsJwO$r%bGEc8>&d(&U#LA>#38ZNHPAaRJ6=)U zWxu%pw7}NM17&IFO*u7RGMDR+(>8Yq;H9qCvCDgBrM~cRQh=`HM)fjd2H7CYVLr%h zF*4#0&M;Ph+naGy-OM-cDdIifRn|SsPP*JC(D{AP*v4pB$H^R2W#hfvVb*FfDL;5< zqwa(ObN{?#BL%7lros2HPAv9yJ7#WNbY$wOBF1upQGE#z9o_s&g5nMCyMKbe{~9=I zrC0)?FYIk8!1h<7;;s3%*B+b~x#JuI2DnD?yHJ?cAanw{A55NlWnRfSAIvbeNj4u-gOO{5gy@-@?3K3*Npr!KY0{`^?ha#;I9yUtTtapaci za_>^nvlGFi#}32d}JR$T-VVgX4-agFvh>62$Sp#QUTk_x9+`Q4*SvauLG zNaFb2RiS_tr2QtZ3^wz$6@fV0%sXNs7>kNOYk`?@)yZ9$t6c`U@gLMy2z~J#6kEeL zJ0!f4Nrc^%Od%r}2o*moC5>c1AvLG3ZXZn`iY{>50V)GMQ@LLtK6=-7@OPQ!mMEr$4k>9+QUo?q(%miHY`VL9)0^g7czfOVb@|@!`~3TUJ;$*R758GTx#k>m#5u<~ z22fv9e9m@58(c7M+*s^h2GQDJKgaF}<}!Ip;lkh|G|7%Jh?fNjGJ3cz5gaauSThKI zVMHyySlaxaKNA|ymlbk#&>HE`bY4|1x~BQ+6+@&9Vqmrhq@t*-hP|`>&0O`Hdx2&* zKO1oi`{}JN_n=5r_iW$UGIxY3S&`T6RJ?f%sV4ZNuFW?XkUSAvh0bex#U5=d;|Q-k zQbEDsX{>E~4rE`ARCH$0Zq5rEGkb1XP8Ks|pO-_T)PCczT1k%Z7XT>M#dy%5n$>MXuL)12~QUi6BLP<`Qh!2o2Y%p=J`sbo-Ixk(weP| zy2~Y7!yBZ#{VV7gj+6y0W7mVwY{n`}%mq(a1Hg^quef;}7cc(ABOnfCuD#MyH`wp? zl(AwDUspT*$=5qSk=Ld{!1rUFqwm zSywK{#uZ~{Kp!=98(lOuG-IIbv-Wp>6rgpiyxHANx^ZOEfaC5`Xw*q;MkPV~YejCG zUZ$Ye*?iYaouuu?HI}(CMAVx+BVz)Fav^dpzAbDhl!XSgGRa+!orxyLFaM&=p3ONg zR0{{Jhw@aFI1)2(9gN`@(nfGDAB1&$5U5}*Kg1Vd&^`1mZ4;?Xe4$fN@Lid}*O=L)K;P=hUAYT>QU0ARDUgiT1HjV-xV-wl5h zH`-|*XCvGGLhPe|8U9E8NAJZCThB<}T^y~A@rdCyCbWq!H0pN_B&V%RxnQPJb*5G$Wk><^=90u452iUb>a&^vox}4oT z`Ey-N^bP*+FWVnKtVtFxkGb_ojcFmr0-6(PlDt>Z)g1l#=)xzkGw9jT8$|zB6dt8~ zuO*<)gNv2054nxwg850R?!gz3Ls$5txHnjU%SJLo@tb2`6wQ9RHUFzDocx$k|T7b)0d zftPitp2fa1TT;PYZCoB2BK8Qgvz))S4-h72&hBG&;2Zi^=(3Rp|Y6 zSc3j2FD%EHpKnQCzM|)_jsR{}N923g3*ebAW*ntB|23qyg%ltC*yrb~vGLFw!K}deV9hW7|uP4ze>)TYDWrUmI7^KiX-7f6(wvmy3s&5%V~Oq(^Wo5b0iU zvJFVYGbDRtYQ6Z+d;Xf~&nx$H+sPBu{hL|+f1$zR`E1@_$gPqT^_L9(U#_$xx|bK1 zr%eB1b^m)ke@oAQ{z4-LE)?kuQDpvW$^Y}+y%7HO)7uCNU`B|bWG^HChexN~U%07e zEAiJn|BZb7cYMBFT6C{S59 zE%Xteuun%C&!Z61wHzf0i>XrO7+TfJLBe>+ax88(hew zflwvah1|2_h+fCa0{z|Mm@=n+48=Bv5w_u%hWrE=UNi$169OLfu4UOkKd`S{mZkTM zy;6;=f&;Czb`b*x5Tt_$wY9PM!iwSj0PCOQ0%SuD?S2zTzDk+eCpsLcgXRp&S`Vv% zxX)7Q#;}SeH{$4V@5{X;-1j6(n%mEJfp70qMmsP6Fr)Jt)Ei4rtK;G&-VtM*D584F zY=vghMf0c^tV>>dS}ifbWIbSUuLdri1?E>V=;5dKrFMG$8qbe&8@K-=Ss^r!>hfFc zJMyQNn*%#@y$J8R@Z^DWoOf3?=RtLC2AD5%nXT(@xourHBr)mv^NU|u(gNK&eSdZ; zr+&30(B48Kd`zTzfbibjq2W_j=-n->DNQPYd3jB_x1Im?Fw&R$-S}5v$q*l))As*0 zmUn8L`2S_ugh_m~RhBNg(pTD(o#zU;ZGcMRX+UTi?6eM~H@wzSKhB*V)`4Yk2gfBB z{vQL8Nq$GFMgXSp4PaKX9zI$4FG>fvft}3K zMK5F1eUD+q-HHkRQzto)CJ?GD!xp@8Pi6C{fubU^sFZgAMA1f_;ziSVd#Nd(J9@kA zzk2UQ$r4)C2I>&;jZ|oebuvNXEkXK;1In5n*)_*_U%(7X$3c1Ip;i zDV=)T#f}+5_8z`-A*Fmd0V12X_|ndk$jK7*r$~#(iJT{cLTyZpoqP_Vq{64?_=f0>CXkdSvcfy$nAeIg4cLyj`3wwf z*C392`>kS}GZn2;Kp{vG(Fme1QW9~m1hz)9SWu>zNa8oR3Xh8kY56$-qHcV>v5~|= zMo}^W*}~JAN+{a=gtOvMn((UU-fGz9Y>mCc#SymaLS27+Ja3s0y%*zwr&{s*hY|_Q zncKsMc=2va5dpoH3nhy4O&$wJb<{EOt~?Qa-8(#C)Ls`yM%>Q(^)7elMgvLeWs4i3 zMUMm1ghRxPkJ{E-tvr&9Z=Boq@i$DiPPSM|m2ay$_PCGg_FDo%OD#IW@K4wr^r0v7 z6$y{pPr2SyqHpnZPl`}Nu?%jiXY)GTg8UvJeEj?8Eh|D>(xUp|IL%S$Jj-cH8Z~K= zX!-(?=-rijIM$*|OB0>0gzNF@7yAuHrB;!!AB?yj^up{EXgUhhRnDk1o+Hv7hPlT! z+OONbVjxo|bC;((S!!%y-3o$kqSaYldzAE3`|#AB0|oJMkarhUL(6Eq2eOW{O;Ws$ zPSR1S6;9ou^6G|31~7)?9L-3blO3pc5aR`(PYlv}Z+zsWyIVg2Y|Ab6g>6FOX{a-B zEN^;)?FMQv%a=d+wHIeIkC2fbK=IEKSgaR)k_ zo}BDRt}LX8k$P|n?;GWGbm>DS8Cf$1h-VVpmANtV?yI~b`dHKX zqy%nl;d7m@%#H*=ogZDQZi-NFzpkZ3I02u@m5?aqsbKipc`)Yk4Od8`MzLIw6Ry;X zo=>e~?|Q^QUl>vP1$W8JX4i^x9 zuT&+s7BTZ-`P?}ZEv=_SZa5EOe&o=T5$vFQ`f)L5T@CgnFf-^9_N^jUW6<`RXJxaQ z8x<~dhN{iTs)KQ!?qJ|6*9_%0-i%3JQTqbjXO+YbhY0VhxfehH9etf<*{`_K7hOXj z#Cb189cR1CA_666H*5jQ&`zgzLyhQoU94qsM#aV%yc)95LuiEef>NhTOPV|oV3m_C zzjP5{=G&)LxYbgf3)JDtb5g74a@c%Rpmu@8VNLk0Vc6g8bQ32Ack8$hIp?-DA&};( zs}*(FNsqqTtF_~MiOnN^%w3zHq7p^ZscYr!`HHgFSNrbf7|;b5$;^G>7!yUQ|UZam_xbxg(S*ZE>}(Yh7Nx{<@U zLbPEsk*vIR*txARRhpT(h8t>H&l>Ys)9a?#H1+lcJti^VGBd{tuC-M}{3hSRB7Uw$ zMTizd&+!T)1TYw}4ZN3KLMLaFOh3S`uBPen-^3*OD$OjW&#AWZ1LA#dU(%`YW5sD? z$zIWs7PN?Kolnj^UUF$t@y#M|$Wh=J9+BlEFCu3YzEM&$_PiK-l+eGT`^FpG{bJHG zO!rydGD@;%3-Lt3)n=1hiYEgy9=%kZJ=62wyj+A0P}nTsp? zo!DnuRhe8>n0(0%T&MuGX@U#RREV6qd?S|`9IsAM;kU|s%&lXh3D@kB+yV9Td}=VS z7xe*~=Gh3u4&)&{r4g~w205K`o_ifnd(5*mQj^lXt+fv2_s)F2HIlbZB-{b@Rucqj zkbGHF1MSSzQ7Z#AAQ0Q~RElsQ)0)#S;^0AE3${V!BomGpbCYHb!aGhUD^ZzRVIkPG z64yEnilD2fs3d7As`;NMLVFL1_>(y24O0gk^NG?=QC2F$eY0w_Txg@8?iUGjgzUZW zy4iES)KH714Yl*?ge3Ehl%LFU^JTfuY~kM-juUNPO+O$(Io+LC)>!DlZ0#&fiBpVL zP3(=qC1i_6q)o)cmTINT*(GLIMXop5MX3`kQ zGyR(7ik_+k*S&F`{o0pwWxhSTb9GRSnvhr{9%&s*y`B`d4aK?JVI%&;qcD4m>HIY| zJ$!>6T>aUKE3>ho)4L1jhS&U~;+*!H<>yc5_>OUU&-}h&;^-imDGbmfjU>Ck%GQ)#E{WTP>VX1TwuSaI?wpO1Ena3pcvoi17F z^b2v`o0p8ozq@_uKk zHtb)9vPuYcYEI3FpPPXXYH{ zU(5@pod%8k&y9PUcEAM8(C$lQsjcL?(?Li7fST8lvi<=T^;zeQ%NwczVmr2;StUWF zFHY3<^PLvh^kVaBM?@R5#@y9{0)OnZ2LLwf1|^ZzHDo`rbFf5`gO>rD%XWFSVw;V0 zaIK^9G@>U;bme?@|5=uamYU_Z^TdiQuYs9n^1)3y-ZNUySh~nx`U%39Vx7CP#ue1T z1Nd5iZZdo1gZa;;e~1?J=wYRPNY4A~G`E96@|lt`>p?N^A*?I2={WSO5p7yqMK1M1 zqr@`-qZV{{Kbk4Zpv=h9NQo+CrZsNQFYAIGTp>4GQm3QAlUMQ(`CXozs8;SzEP&R4 zZV)uAPFnSj@11bA%{$f39%0iua)*AB(Hs1nTANh-cC5W+ZN&j~^OM#K5rM;a949;KE9UEfBq_BR;GMGPo%l*%rEjuaDiD^3!+YB(IIWW zQYna_bHhoNlXqoSEb)xk@oL=Ltt^JR$O#~2+x$tc*`=rxo-Iyc z`ghX29pHwmsW|i*woPWb0ervcK{lI%o!S9y*m!-%cv}lscuB4$XxMG`>zvxxs!Q^& zONwyE2l~CJyz9+HO?o{lL@O)A##o?s9qvS(+83+2hd!$IIYiyx83#&%L{WCP zKn5MpoyNBM63X1H1Y z;5cO)g7kBJS;egW&+RVWlQY(J%F55UL+EkK4d}CYK@|8Ys<$9HM^d-7{OQ*U)oSOaKqSlJM0#J zKGa8DCYtQM$SV8MTRry_y3sY@&Ivl(q+s3em#_W0j7JK6vqAzM_hdMIaE)H#_>5k? zRtj98bBMV%kSy6Tb}l%FDFfl;XmS5K?`Vx&6UlUU_47_9d$3HFUmq3f(GbUY<#V*w zpI5p%6v1nPw@}wn<9g#v|Cbo#J|mI&!~K3sh6opxv{>_D#Mmv{s(4~ijti8*Xw)Dz^ zrzDOoCP51}?d;_;h|1*?#_}?aOKI5)C$tv5F9$l_2HhCURxmv*!z4I}SjWBUV$(=c z=Gm<_?&wt9ebdEyTk^3%!~Q)rt0J}c+aVXQ@|_hVdRNKApN3G^mm0=c>Hj^oRrGW5 z(FjV?X!Utl3+%JNjUN%5um(iNf#t|ciZhOY!#Kkh;YYQ+e_hcfFRRh;yJXT33f!=h z`<-Os%^bd8eZxLi#5QdGlkD4JH(dhA`Hb4Zd`;63lyqn-Pz6KVD64WIK@Cia_h4*j zE<R1Bqj!%yhX)n5K?IChE?eU9Tw>QD8b|-36H}2Mv zv9N#PI(d^W^-15pPmZ~AGY|Lg&lV*z*JJ_6;XQ-c( zf8PLzJ996-Q#4(j6LzI2t8eOYv?%$A6R^@=wRHPxp z)mE1v#JRF!X9Xp{cfBcs3z#@18r+@IRTJ4$Q{s!rN^~=&-0epZ-0F3-@j1LEOEx^H zn@4t<%!gd4g;$c(@Y+swlu!SggBG-Yd2U*sd8XrDa!6a*e`7M)dR&=1X3^^(jc1n9 z3t#}-H#07z9qFQx)9jkiZWF^A1@zseEmqNe(>2CChdY(dSCx;MC_jB8#C4pO92g7> zJJRtpYmxxAp+QGu=EzEI=PQogN@tyH_n+J%S@soy)b91pNJc#iFE%jtNx&U9S6}@U z-*>8qB+rn5zl1@6i3b2O!10c7iuj0?GG)JRM&fb9^=`#g<))5T*6ev|58{$|WXau6 z^4xD*=K!R(&Aha~^ug?>T}y-?*p*>1C_H)1A5(CwY(_K+7OU(|#uA#RTEy+d1|TVJ z;PD1lA=_0E3eP}%*g^R|u^BNPG_VIo3>m{~!6%J(c1O)Q1Khl4Q%`x^mw&p~*`>^O z*4S?-GmQW$0oTS2>gI_82yI9QPdi+*4aT+(8zVDx| zh#*s|pRBQ;VAIpXRqA+!7{a^gdlarKRWM(ttXHzC&GR5wxp~CO3goqN9X7x+Iy*Wf zexOxygiHUa+Lgv6>#Ya!`CXX_B-dCw0FYnAxvxT$jc~F!P3i}Wch)rx+ZEb%&NC6; z4dSh8iQ*mYG_Zmfw_^EGIq$UtNR-+Z9Ke>2y8$qkJ{aqyn2a^e@CZ5L?mKxqhs3xqc>mXvpeca#^20YW zMQCvn_)_x|X33_opBBi3wUkYA3sUtO0AlL9ga9U$xfQctgiRJW&r(6^PIoQ0M_iWM z=Jy(Q{^d6I^0eC9g{u4!efbh=mZ4?%0ilq`GY4Y(^s!*Vxnn%_7mHFgHwM*89h&)GP@`7^lI6wj%fqv_ixh01DC zv<3*iev#L@Sn8yz4N4qDD^yD*v=3^FU+kW17+qE7b>27Wj7WCFq8r33$izxFMFaz0 z%KP+o^@`Tx`W&rx^OmV_8#%73=5o=q6DJnYO=8hMs)0rSd`6p!E4WDtQkQsKG_el7Q>ubo;`lowo&b8Lw3s z_82wF5qRaHOk1;p9$cACw=j!%^={e`_>dQsX1(!Px6ntjG@15-= zj$_aQ5u@Ii)EB~ty$*WX@9JQ?Uu@?|fvRcSVx2D%IjmD5jbCN&3Kz(Z&ne>04xXD> z$+&lKJ-eW2!5ANxaHz2TI=FH z?`CeKuHxz63LC) zR?#l1Cy?9Fe9Xo3RpV^s#l`%Jy}6A(^lbk0@;@;*wkGaiOwI^pM@s_KQZ<$<5$T1G(njg8> zXipz8QM-ijqGx7~c#c6+Uq`>Jm04@+j%Ib55f)=;gyS>`k4|42ztu(R$hLn==|_n@kd5hikqNYkhk^qI}923 z)%fyL^SfmW{PlsWq_+7KW~=haWq+IX^BJhOoZlzLo=d-{XIUZ;j?afS{DS>^om7&U z4_fz1U`A&x7Px%pHi!*O9vOX?N5?fvx9fHS?TvSO&l-;BT`c=^5V2l;PTA%=dc&kx ziN*4y$Ro^>t9^&}^mzeh+>iDU>`YSJi~OD4p12|h!ekzA@P3hU^yH-+d=*nJv&TYz z!WDkWQ@av6MKuoN)M3Df`vhV84xH-9C!Qr|WYWf00h+cms{`$scOl_`XZEEH4?%mT zb4Ps83ZJQTY(IrI(D;HoW6hR z@ONM`5YFb6n? zSt;Lii0mO_k{3q06sLXYcy$CRKSR8ASuANN8c=63L}f(0l94D{_wymQ({6RW2s{$bcMJ8hTIJvgP~Kur+(;P}+ui4AZe^O1Ju&neN5Og& z$}fbGMH^%cP)bH+w_^p178#0R1wh$Odls=9`h`9w*5Sr$5${ar^-~{1376=9m2Oj^`0p4 z){ijzOa!=X7QfHx2xK15e_xp=a-8E{0!~;8StEwX9yGHshX8JS2Xe(9 zp=P1%BQ#JEWG6(O>Vc1RBD>-QxFOSkGHYK0v6E4o$1!LGTq+-uubaQ53;h#I^1-75h9ScE z{8KC|LUC*Sy@OymUm8$}NX@!2`E^$FuUY^D$?-Z%Kwg9pM?9_MRGEn^0cP_nfd_Df zNRM2owQ=LoqyKKRZ8HSb!0V1-ig%k$&r*QsfKtCyf zXOTQi7gV+8*g-2YC`|4z@}MEHND=YEU*@8v9zXKSz z+;sT|3|FO1l0Q{s6uZw?9FY1Z$Ym2DnbVf}gJQ=fU?1+6l}zfP%8nrt+hBJVV3vQT$730$V9bz!NSXfZzD7xIbqg0NF_a z3_A5<@eJA+osteqEv|P>?i_N>k1k$`Mp%fO@!`?^sh!&%`FzC!p+3tSc>EMqk`JFb z16TLlPA(UK>3wiJ{xSoHB8xy*CWqZgru&SdT?*a#*%(nZ_ZR=!oqugve_0?GL$-2v zw#>OHNnjv}>y`a_-xA~r)$dncy zyZ3_Ka-Jss*a!la=CtnmW*H#alg{)2KSJCq9k~DEE(oFp;WyjgT=t)&sMV@g+vowQ zW5Pjt6okLuKkBIut!m-${#@N_$6O_)N{gITrVo7>zrX#rc?bQv&0g)PU1X_#dx+at zl-%Dg`p;9*_ke`jMeZQ3_3C&>w}$=umwx|)tOrhCs+DMX(BmhZ*z2XM01*K&W2{I9#aqJLaWs4wI&M*4M! z&v4J)9!UA(A`3nFr;{PZ3iytg$h_RY|KH~T;qAfmNKA=8cijWbkBh-qf33ZK(gQdM zUejAVl7DWUw^G1!@fG7A`~4Oabq1?~@A3Zd zxWs*dCsEoayb=3#rO&DqFadUrmtT4Qc(NAohGDc!F|ws_5ky>qO}A%+v2^ND5(^HB zQHi1oq~1}F!F^BbouPb}PD9QPlI;=>GnQ2^?FoYUJrTgc-pFqr{ln#Y;FEFh;1Ly$ z0r2SNa(ig42(bTy?ohGaPPU~*BS~W0zcm~oDi>%7tJ?OC1fU&CE$&X)k2aW~+TJj9 zS87z4e#v;3l)>i(!F}`Yu?ZwOn#u|-1whRZ0lyLCcX^Y~{waxGsWFyMp$GySKWGTCX(M)&Le@Im$M9Tqh~(B%I7-wJj!_ z>7*R&8;dB)Hy#sqKxt}csZ&tPf-|nn;OTI(WWZ9fGy(@oNq|%~!eNX^;MLj;BEf%ZY7!ul(bFkoGUyy?y1S*7EIXZ)<-e2KZ3}AsczcsA*DMGe zK`#Akt=3|k-f;>~H@I^UW4Z_Yz>?gv4_d2l55>*uOJLzqPQAH89URM3HS+R#bdfm{ z2SABK9ny&zj;hVR@P73Px`4$7a*JOc*XZARTm%t=@9|tt=uaQN(gvj*1qA>XHk#dE zS#0(z-5oLzeJ%ZswKUvUpHzUFTCTqBY_(glGzTy!^5gkH=4*1^feRNuX{0d1V3IX1 z3K8h7D#O)!BDJg)moY=9Js*IrYh%xp1J{S#mQAm>8|l#1-T+zQ<>yz>tw7TFt}{ej zhIf`46;ZbH%;bS;-~!)~bLB?vBge^7$2^A^$Fp7ho+v8XwSipZT+6WHqce}A@kk`8Al`j^G^(gk{%S0PBLxMJPfr3xW z5Cz^%)+nY=r3bSm_SCj@MCbUjJ2rdg7Z>jR1c!W6vRUo+YTF%zIa*Vtm5`-}hqK2G z9ps+1CrUuhG=A098|LLJ4s)CZ7Hd^@t_*<#DHK(F`#<(*5YGMTe_qXO185Lwd8!`z zQ-kC}o2`*Q2FK|&jrN}IfXL{&w|Od8?*)L1-L&gH6snjdopri1Vg69XC`&3q!R19$ zxQ<&Ydda!Lb2`IvAPbzj;qVge8)H5D-EAkS!v%jzm+ekLY>s1ZT~tJzb4f$}{dKV+z^GgG-Vj<{9kQ&tVAU zzq<^bC**G)jhGRS<*~|I@Bfw%@{YL(XoWBYoHt4BsmZ>Se$J_3N6=J)!jq_ezQ^Iv z!-zt7e6-pvbeiH7VpX6u^_6aAXt5W$MC`0N12s56*Ze*CH(pQvqk~p~iBG*&3nfDH z9CT@&Q~>%k`-HL6IPjecIj>f;eMesctGb#KDX$ZqsTkcOCyRxM{UU4|FD#|5mp#fsgzj_2hd$ATAiuQB?g^(ZJVW>Z%F(nqu& zQn&I#nf-|@4&Iwl#Y+&E2w-SB^CGzZKvUjH0BR9$6(A}~+4CjSO5$LT>tC;31(JGa zB$OHVvN}aD3vx2rm7dvQvdtX{B8SswehSBXO-F@VjYF?l`P|WBB0}MZL}sr#ylf?< zW}Q>=z($b#!ECJ~VK@X_;WDhaHtGyQrX zx=<1~#9F0UPzat>2%}d@76kH3o^q+%Vmxm^1b-Qzo%Y>8m5dt%oX4ckT@E<$(-j|t z)_N0RhG9<@l=Dt?omBPRx?9_jl`9XA^y8_x@>hU%Y)srA0Abhd5afj zBR^QhIms24VqZ#UYtMYFhHNb%fUiAJNx2l*4BQRLV_}E|PR?(CmeZSxl_P>dl|W|V zgj@?z|0}Q`zHeS~W^O!_8#X9QCQ-y1vDdlkr%LMMOBl5mht2!m^D|;4pfZjBz-Rll3k+2fONaML51qkPa4U*)_>e%7Zn-o$0Up3zC-sYI6v5q3Y@O9u?m z4wqfZjqVOL(2Mt+@5|lvM<1eCpZJDI>}9v=-h~3+jVfJ6G=8|S@0q<`QG17Wwv{n# z8kL_g0C%Cpd7<$ewKcM>$ylykXyDz=4gcjHjDHowVgF-FLNI2BV!+Xw5l})a-#3dU zMesBw)_E1+=FTw^Mqw>z; z*44DR{_Aq6$X}!6Yv8xOt@Los<13p`a=%P8z?& z_t`yak@ZGD7bgO@J)ag#OzqTHH`yfPaE0H^)*O%4XsTMOcc*Qc-&`tG=1-kCsL|=6 ze=g#AI*<9Kib<}SR#zwD7SMo(_H?qvt9M= z>4rcZzJ3EjZbO?v&+HB}-sxvxx^2FZMXu!rORiN&O3L~GI1^roqxl%vJPzK;Pb=Q` zU1bm8xceMcE4?=#?I@~G>(mn4b*@|Ny`Y&nHKleb{WuVpw*B;()py;yhbLpc@U;ah z^qO6y^qk}b24PAEpx0+61@z|!w`D|0=k=4-CAR`WuuRLdZQ4@MLSUIOzYW6?FMs?; zyg+pCFxtj$c)mP~xIWWV51}V@hwbK=)2Y|S7<(`)g3Eq#7>|l+=CR(pw6e~Im|H`6 zRSpuZ>X{O;X;#|YPq{d_yl+9sc$Dv6Hf^@{j`IX%E)(VZngHLoDQt{0LoN?539Sdu z_IM2K?t>A@ESZ;jpI8PEhRnWiN~&7{`d^)^Ezox7BVEhuA-q;Q{X8-bDYc|^fI2_A zJXN-ltr*XsVYrmp?>w)r91m!B$A^;s@WePKPW!V|_J9_kD;R3204ep?^oRDkV1rci zwZs+qzU9`Y4-oSp?hKS(Y6-h|L)6PWXWrOoEX+6Ls4=AokrsJO%_q5xdquKrzX#Ysc z<*`(V4_Wztw9`Cg6-Ujt4ldA z<0}+S02`VdYP?Nj>JWp6K$^bFJ`QjJT*}gus(G(KK1_G0-7D={R$DHVo!g5*9hWU5 z{EbN2AF|Oh5lW9VBab3UiI|PM-tvcd@`cAu=W0=QioJuVq4BsDqJb!Cmb3p{vbvK!D8G;mftlWW1F}5LFs*=}bwmU6~kODPzS8?q0U7q z$C+2r>4fF+sR1>Ivr2(rJ+vU%fIxfFpiTT>)i`|I|Hxxgu7paMc!C!+l@?E*%~gzW zaXd`LY<2T~N50ZQDYdS+)bf1RetY!L6dR9gfIUGkTzD z7?VPCbk+G{Es@Kez7q&*;-K2*ZHAYa%W3S7;bqN=W+?kSMMA5A;57-z=3|)X4h2J+ zNq$f=$Qc1VRQq@k%ej&nThqMBRdU-_=Al zuT@`1wtN_%_R8V{Oezn7Mx#ELfXFnTYnAN z(*Y78PZ^*BlZ}=$WTN~Xw-m{^RZGeT9-1zBcURD+H5-X}wJ5i#-Qetw=~P9NWvW%8 zNzF?|fJd_;(#)dJh{^vo1Ew7le#t-iA`XURBr0xUYp!KxO^5qoR{Eg+)fv5K;}DYm zom@&RCDPZFkj%ZU0O2#wiv0;~8Elyd8s*$qkc2OnUp|g-LSE0Rmf;*?SfDr!eA(Rw zGy~3w+GH70Xwx0|oH(`R$Vf66mKENCM}ZBR+Ct+YUAF1ms~UL;AUz#t>EX4DL z@*6~O5v#cj0QF?`0SN~TJ6J9$a!%asOH-GpInG5NIk%KLfqddt3Z7n@!Y1Q>0=FD- z#W}3dip(}t%pp934BxC0Yn*=9rm^ZLxAJLL4L`xHx}JwMvyXfNjB)I_irG%ntZ|-L zj-gL9CiT<>gG*jI9TAbaaBGWa{1G~QeESB7B%7rS5kn~e>|`WP1f|_KD!kWU`Nv-> z2uRvWefaqC3!$q@%WQq&6vuBByH%k$Lx5#BWafFd#|QbH3m#T8SbGtA5#ocnL#pQ%Ln;+kgGpMg4FWe^R~FW1&`wb3)&Jm2qv|x z*p9l+ZGURi;z>G{OL}*Ph70K)VA*@1W1m?=~bK4^9@6@V^!VE@d6D3iAm7{UutNkhAyXV zDH4EZiFsZ&yevDf(Y`pAZG)(=cHreKPARLQ9eWiM^(=U>NZ)Z5d*@3%KTfwDQEg+# z;p<(MA)X%TWo)24BO-aH+jpl>xmY>M-^U<`Q-;ZFAiujB448aZF8RN3+<&9etiY-e z1aKVz*+GL>EqO(VRr4BC@+Z@kmUT|!iur0xOV5AA=e~@zO8cP+&OvYOPGB*~HrQa` z4rs@q4&_?mi=ktVKnJgJ`O~`CO@SNS%&jL-`A^V*Kr%Xs2uma!Ux<+1B4$ga*}i;| zN6FRJ1WC<_+tBe{ORph6m|c5Z_IdMhNU~`cj8R(`!^zYTH2!fZbsIoK&FfMl%0`@7Cx7QVD|X&4@;VRAgm+3V5b^ zSd@wp!4SUVFq==~t(DViw)C-YG_~qA`BFGk<3fLFpzy0SV>FonmFx1pI8^9eFBBhz zZoJg7h^a3bhL4Qyo@=*Q@c2iN(LOAcS3Y*7EP>^R;uNz{nDR1}6&A07GO!Rr2VwEO zks^P#%`Baf@F@%)Ok{B6sI&=b@Q57%Q`r6<2!v9T&1g7}vkkoc6# zvn^~&vQp1hxYDN=tJ)>H3%Ym5>K;^|7P&k-o@>_B0C7h_08U`HF#`nwBsT(tmkanUeAHoeVytT1o!%UN=t%RgrMIN>pFzf`3Tg zboqaR@fl^wT1Z2DUqQkb0*OLGd3E_yu5xlbJix`9;uArWN1Q5;;UH=a%y_teSaUic z)#QV{@}zGRJZeRt!Of-Yh>)O#4Ps|x%J+RiBE?>(9lpz;$*ecU{K@yaZDW))i!eU- zm<#%FvRvH2Qn+1)U!;jkMGby$(E^{l+**_lWD^7|8uqB&YM($P=%iR}KqF!R;VCCj z4L!36*DJlCrrHy*3|K5v!wz4IclAx!X%2?9=aCcx{Bc0>MQW+^TQ1N0{oiOQBebRZ zPPp1$(dqOjv1vMw6`14R*Af8S;UpkGe6SX_O9j`-Qfj(AniD+pUQ~eQnx+!#tLdb| zPqW}%<%6W#Zt6Bcyr(#pPfxt1xhLdrj`0E`iE?=DCmNe@cqhL5^!xw_{z41%8d4ud zGBdMMJecXua_y>pspG4-A1YYl!OQAI0o}wS?-?FOP8zl;GMDeuyqq`>6Rn%l0sJX@ z+o8+_$2f@ByY(3WB<#d6cw#ot=5x6&NT5&)FVtITKWj@eK6ykM&LjeCe}hzRRKAR4 zwnO{Afk6OiO9*`Zn9+436H4Q-Gn_zh0Si_B;K9n!Z}KHcSO*0tOYrh+J_7ANY3k=A zrhlI6JVZkf29k}C$c=e&5C zeldtfWLKh&Cz?NpI-PHqt8X;Bt3OR-`P}}t-o&s>P|FcTpqVaQEkM(cb4c@KZ! zW-4BfXVMio_0geWDKY9wPhrsH(9Z{F*yESI2cWMRFQc2=ngkjo*B?x@NEMd)#loXU zOFQCgo*~eXT0M`;flqED{=4vN??THTyAbTq`I`81x3bNjDWwZ5K9$)x!j3JrYyPxk z<(v_KiWs163x%M-Zhz%FGo1+%koi2c$3=Uj;t&{Z*?)a*L|f5%3-{&_r=z#r|@Z>E8gB(d8a+I8LP>`QoM0 zwuQ4!d2YUYxUt|0s1G?U%%lmAL@&&SH&qxIQk(16M z{4pWV$>prs%Cgr7kz}@0uZ(RfSNm-Cu8H4-)eOEEC{AJ`fmh^*!Tie8oe)GnvH zi%oTs^eL)|Bf-{AY+?gg%9Te3ioU8cvu@m;S>6whtrvJKV`;hK<`zcU^Q0K6o#$n? zEK{pZkTCwBQax-w?gz-$;FeC)Phu2hH>b@9Q)puKJ}&lpL9e9phc6yQAuC%uZ}m28tHq25VfLvWsDL&LHu6r%$sJ;Q#*z@9_WthJoyMJr+dWWmF~;A1YeX!8Zb=wuh9qQmxwV5( zfG3@Ft!x7YzPrClZ4c^L10Tl%y4)ck^7z*vB2{&Y=s+lT>%G!#9rOIhyW;spT(ER9 z4!gc}ikJezYnJ^RNLKEh#mrQ%M#N1`M^`ogl`fDD>`iwC+=r|o(f{ylQVKz7)@C|a zjC|K8@O*=uuYyuPNpfHPbS+Y$$$}M(eT1 zQmyy+o=q8-Z#l*m-Of!bZFh3%jkz<9L%M>H2KUS8dAYTNia&E-Bif+?&5*A|l~>8R zn2ev6T^Gs9H1`GHsu8tcgKa{~8JD_J*)57r=_>c`vaXVp!TfLb%hj3`!()Gx2QZ(U zD?coI6p5X0-wLp7xAX$gWIQUhl*IvaSHwNgmMbkiyEG|O{DB<=Uj7yvWd}eNihvQX zp^v9k+wHo;5~oDTvi3(cWZihPXV}>}?d9@$V&#(V(_L0EBkz5QS~i~(wujgDVA^cF z2|pf}Yn2%gr;^bph3?M%HQH=Xs{WzD=m^FPKygtXC{9tE>=_q3!=rWtq5D+ z8|$nR0-Ka7-4kwx3Vq$fqf=Z6bN$&=4ug^%J!2dsj#7Dhc+ixuP7jL|DDlFAYC=
2%^13#G{u zV~%rfbiKti8!X3-QrWyyN|wAD1tb7EYKH_#6B0m?BFxPfe4t1=KF@5mOd0Si*T5Zm z66OJ)#da0O0=yCO*U#VUpEJPoi;fK7?_C7?FEQT;*ej2<#mL#Zu8fJl&O%+_oGRv< z_&~yqE_vh+DVZ(}BeYeA=Cv`OEJ z?#;zYh1o<)&0~`w{`^Ta1gdX?tRgfQdRTM;vV&Q^s4l$6{FG7cB1sZKN})i%su=q?(`x8EmaYA-!p;fg3` zlWSif%8YHggY=gF93T}aW+qqR)jA!P|A>Mpo>y}m7(3dq&6pHx-Gl;J;ng2sZ`GX? z4HGy*rS3nfgFJz3UKGSY&&42Qi}*LWXb2vlEJ5M?sH3h$B0hB-UZ>`Se#!PZx#&-Z z3P3@kC;?6+%ZpX|tPd_XH5UtmneFKRtiI3+ttM#z1uK{;R(w_z`NF`Ek?7$Fk$Q{! zqJ8@3p8+qvV)?<~@9Dfg~55!S(=7X{Xq(1cM{b!g++MWp`nJ7ej zqQH#i0TiAdRZi2{AYXMxN18Y1>f0$o*I#asf?xirs}PkW>4X8*j^X`~eHhCoca*=+ zVm1&TNT4$boRqpZ?_`y^XV!=Ldo-nzI>yN*cD`JHc>m1(<8`UXS+cYL*HZ35n z2^gT371mQm6Tl4S`WIV6k_+mT)-_d3E;GKC!1Z*Ua^bsK+M+>;UMEz%H2soH*(#rO z2zqamzX-47fB9O_euJuvlYp>gi)fZJfmX_FvVdcgEcFBiiY&XZjbT_#j-Q>dabP=> z)bnQ~k@TOiOAn);D>~n>u*tRgYQ>VrZcmt!y_5$)qF9gA7z_2sAlv1kjTD_=-urv^ zY8Aqu5c0_W$m7>+pjZAb@3-%m_{&Vg*pJzCJJ?c$tw`+xbEx&h^%nvCx_?b@6-*AJ zD_qaWcO+lSttPW`6|-Mo`8_xWQrSzX@e9zCW!LXf7mkxpd7(4 zA^@&uK}hbE;KmU7N{SB(K)!gf#+r$itNurp^K&If!|r4yaTb@5H+&`j3WX>!ZX|}Z z^*Ses+!O>_ii>)KH&2C+MDkzp0<*+3F;sYmPaHC$8)Gn-M2$;;P5Jv1;*PgF1&0(5 z(<2#2>usE+eGc0fp+PkM+(4}1KO-jv{7aC(iO|kwwYaLGq0A`2a~<3|yq9nWq=Q@b zZER)}@~L%ZG)Cd^a6;pU;Ia2P|JmJWHZZ_05(c=s&+@#m4a#Pqlz&=jeOsjG_oD~g zLPDVc^|D-EuEQQbNJ?GfB1=OtcMO$t%>p~eB;Ga$?_Up1jTXCVhQs6bWgL^hNruc` z!Skh|1pu7MiNgk3gBMZ_g6qFcHbLOh@x}j^Hwdwi$1rHB48-x`^3_m>?Gt7Hc=O3_ zf+e`9p`6jbQUN|Q{8iMSaj063WW>Kv{oqUHSfSN}I~YCysKijbdnh@E==b;iDn~9%j4Pc1Y1%X`f)jhbp10B)siIN&V$&Sxo{eRO${4s7-z0D zo4Q$PB%p@Wd%8ILMs$?xvxwcFa|1(;mbi+C#^a{7{7GQmzZh>aY-7`jhL9Pj{v#XC z`(8pBUgPAFjX#7b=?Gj!aVWn=4*LmY80^fY5EQa%AK1xCEUcDiabQ4nxc`!e_8|Jj z_?xix%9T^XNocwCuQx|k7g^<0`+j+qfG7=L@>w!eNneCt^q+k671!^*k)#aspc%Yj z@Wf*gDW#lKccsa!0CpExt-MtIkGO4z}SmYAPjdm&fGGg>RCzTOS}C+t&rLB0IQRMyl}{oQmj zJ6Ld@be082ga(~GU3~x#^pM}hXj5hpdAH!dW47h*@aIJIkfBuqZb3mZ3>wiQ@Mi?zDi6nZT01irIsopoc8y&9^S<6(Ow7NNXyi{jA#;Z_cyk{sEze8LSKzoo>8* zQ`j{#!1d3m`FjOIU?R@tg;n?h#Z3fw^BRaYj<_2An^+3(-Hl#r!-#pc3SA&W1^nq2 z|A^c7^q31UqN$)59TEP@`G4)8FbNW)0jzi` zCv)kz;3trnSue9uI2H#qOMg147^vciiC9HF?Z|NAHB9GZ*z1XZW)z737+-xOR`KZh zf?40I%cxGHgG*lOC)5TE))cv|PvP-6{QhC(Me)xB`3l)n$IuwK4d~SSRyz z$L9CCBz1?=h0Xg{=%n`}0YbGf98yenFqOrQIS+<1L%O}mi1xRQKG66l=5KF%bVufE zjS2vZHHAH8nk_f^T*?25(fkaBR#UIRJMDw2JBx0ojT2#$JrJ5}oBRXycS^yI955Iv z7l8omhY<6xZ1fFA*58CaG=n}klgBGcE}f6z!zPx`4-<41q+r2mOe{2>|Lp)jHA<2v zYm8F;sBq#iZo|RUlp5oa)%T0G3|!p|CbN;1jKGrS`1h812c>cH1-ttE{wBildIy2~ z$^XV-u(cQi5$^VXG*G`hN#84;m6oR}0{5fz`FCEobtr;3ue^nwaVbgNse12T82q=I zcwWON=)fKax|KgnAddkOyCt@Y%I|#`Nu3KiouK|W?Z5|g^vWa!?zjai!c&XioNvc_ zxWjFJG=L6P1~v#DQrLIFzWOiu;R3Jg_880d5JUf*4qu@ucvlR*?)iu~34Ao=trWA9 zn%6!oOnp2aM|@jogL7`@UjJHwCkR!weFp2t#b59yFl~?w$LOu_5hTWt3%`7vWcj6v z>tBdTocCv}?ZNeXTT!D*f>(F(MnzWvllNgsr_Da-Hz5}pAqF^7 zq5FP%l7qQ=T^<(N7$#gmvN91OW*Y4cT%t=u@PRd*CDHhD_w~9Bua`gkzc614ct4;y zv?QwFKr}9;A8UJdp+1nnN@w&dp7{e+wA}w{)KzzK+r1%m9{YSfz@ z$?P95Edt;71$_P|Z2&I>pnjMe&t?WpoEj`I&Wq)ID7e^7DlV<3gKja3Ib{qe=@x z+~kacfjzIQR)G%0H;U=7(z^Mp?$#nf359P7|22i8NkVh}g$n7){`q$A{5-Rgi_b1nC^6n0(;;*! zp?Ck`(fR}ZJwO4C*Udl4 z^X6<{sO0}#4liK3D1d6hj9LR9jA}#E0$O4-O@E}S_yv1(ke>k!0}{j`_}|JV5r&dJ zF=RUQE*_u#dMx@Yg^VF)H5$+TVitJ>USV`BkOq+sgo%>=XAtOl>vsY(s+XXM+AoFt znp2zob*B=!*dO144;|?EEXL?IU)1m7zK7;9CLxW%De6ra-fc6E4=eP_q&48XmF^mt z?1%aHf+ImwJaNQeoYsT7k#4>?J}Cw{^*~A_vu^2mjd;ndM!nTsX$$_4&HLg4ade0& zu`Ufprk&4BdLwgj@=#1#m++3SaJ+k9G7R}&Nh(Kz1jWBlh1ThqMT~l1GN$Sm_Q3%D zBrp$uj<_#16jf)OCJREk^Ll}HD!zYZO?#m91@Y1uz1S8F42YNZU$H!t@uh0#H7;|_-CvGsn7~m&E%;btOl?$%E;k5CmAE@UPWZ2H<&!3&$FcC+`QcQ zD{=oFM9?wd;WL{=k>G9=MIXNARvLMY6h7J)u<0`AC*H~wi9U_1b_$FtDrW*CABFhe zQ`=vFQI151_Q_Oge$-CpAz$sFVsjA_h8%v!kcptkz`Q&CttVV3Ychi3KhF)k$dT$$I6;O_5Lla-D^|*6*Pdk) zg);iy>st?5hW^#pbq;X+9WUk-q_Y_Lw+54vtgCd%jYWwrui3NJvf6DwG^7b%WC5j1 z(N%0Z{ylJyf$2;-$gDf~0U0Y6E9URqz>UhMvYBCcBJZI6 zl_^L#;7vPOv#L%mB4U9<+&93?{8`Hw00Sa&5*obt1fO2Y-IV9>u!>lcvjv1gD44=9 z*;Rm|5HHO4cDJY2FXlZ=6cMi+w}T-ld1MUfub3iKLxGmEYKHb6o4qvV*X|74c~c^< zQ77PpqP_^Ovco(b$G=8>(&BbdKsiOV_C$(SDv--PJqG0gjmHRoBE1nfVU2C+_{(h$N%sQ4=aEXsk_9PM zQzSih#_!f0KoT5H62Qe)g9YyQ&^p9oJ`b&l=F6&)JPl?Qlj#3dmziSN;_%gT6p`1g z_?qr!Rye$l71Fk*)m!>ya!TWx$?uU!tK1gQVuuXihXv*?OH!j#KB+|RCw@f{Sq_4C z=|CS8bIRv4LT3BJ<12R4>l^}5fozKDa8`TjPv?sr=7lDQLfOGo2D$`#g|7H$Ojf^f zo2XouzIGL8DocRSH2C8``^6B*%7!*13Ibg3-RvG$N16wIc9$y7W~wx z^f35(g-pC|xrd)_dAT=}@C8Jo`II#^9go01F^sxxvP}+KdB}JZcZJw!?^nEh5E*XF zg3uVOb1MinEFu)n@1eJbcjZh@4YqzIx`&_;XHOL?DF71I3?3KRl@=R8K(S&39K4hK zf-1Qh!DSzD-OhgRWGm;{e&}UgFG@1S?*(5kU}Rx_7t9AaW4 zVbe=8vAJhTFR6V6@M_f@dVUm2SMQ5cM|?KJq8@v|A=(TuE&LLS)`&Jo-9}PxJ?r<} zLS;y6moC?&y04r*_BkPK<OhyJO+k z%ToO@fUlr2@BSo{>HJy3#f}K7{89+9q~zib(%%sU54{ST4|+ZCL+phJLK!0JChUL% zY5P_I6YVI&xDcKXrk26V%N3U6>yruV`V+%gW}8et`#f-vP`&e#V2_M{WcC1I<0SQ@ zK=?wJ##SU?ccb?|2Bb;PobC$r zlfxqUxPd>12_F6~#wbvs>@fJCyNrbn3}t67I+~bfJ+14HE)en%Xk16q1rkbB5a{g$ zT^{)!&IW1s7R#wK1iUnKZ`xYj*bCKljSco{a$lJ;3ABEKIXn*iG{l=;x!Gx10m7(_Y;i z$T|1N=ow^`={N&|5bfD^P=X^|j_&E4TPpn0qR>j!57L2v-BV&vuhuPf~ z2TP|@F!=O4_$`npMGHsMBU2}F9vdGvipRwx4ev#>OvdG6|g&{lb~T<6_ao!I-|N=6M~4k=SHdozcJ zY(LBg^WlR8@@Hz3n~AN$Cy^we2)KE9>afxoSbGA9ZOm0leI6optQWpqM`NOh^#ni4 zv|k;%a%6{o2!nKMK!hBa8nODA_eYa~I6 zsdX$A?#DJ*VoK^Hoy`sLH6h2uTp-PIxr~JQbeC7t?|UX(`NE1NqgFu3A_A?uFXMHG znuks2Gj3HKqUKyODREMB2fghBFfJaUL*VzpPR%G!cIpk5c<#5qsCTw--|jj_sog!B z+wTdQhR%g3TS74jgJ&3u9r}KM*y3?Al_2DCNf0ihe~fGC8!w>kj?cB}bo=>H zl~%^P*rVZ5X+nDTI)AlAETZ@m7^Q{)sX&lkqiEkY(Cxf_uEDE?CL^c|l35PY=5;~F zP~6aftTlti03oK~-A2zfa6MsBai!0rHpr&^oalk-h?TO<;U&)gacd#|<<1PHsRu0G ztPX#(;+>qf+4(j@v(@A0-VK|xvxr+Al@z;-fRYgMzXFgi=X24WrevP+!_uYyq`F4I z`Fq@_d;al!RUew>(`ZG4iSTyL3B=eik#?etJOlEmc24H15R*9EtlZ+yquoB7mKaZo z=`mfPuywIw^*G#}pBTNOX4#)_A2&)^%Cs)uKHT2v_KfJyv9d;}Z4D-%`_#tghU`xv z-ty{ASNe>35POQIuo~sLtPm8Wj!WQtNUh(MRqZ7%Xl-%&#m=`ND zmGF^VSdE8su}i(N?_71i&TbUEm4R>IRBDyj3ndQs667hpC13VTnt5pP!xy;ATikG5 z#zoqBI>>VImR@wZB4^s3%$azU89n-DCND@tOgUN>Wy}# zKdNsDTZy=s?neYF18I0d_ zqGo9lyT4CUE>)I;JsU8{8X4|0&M*MrBJOrxbUK5|hsizm>eYJe8jn$d8<_{SsL?vq z(mOchEX7J0AB4vT!Nn?dFAhO6U2iYhyVaqRHah;;eP$ZzK_*hMM#)XWIZpq;8SAP`qM9Qq)9*RTH{h7R$3s{oQ=`7SC zKIV7g{37Xi%xPQfNFCE<5zf=Ty5#K36EEl4!-XI@SA)Fuo&*#tN9e3myyRfiZUOF# z*KOMQ+#!+bI?cUf2Digc!al=rK20^v9P8zpX{;MQPO~Zbu==Q?h;TiBYM4ntAR^|F zriZFlVu+B!Z&0F%C6@*KB5(%3e!sZ>x|ctM^StXk-*9geK|lpbN9Q_WN!0)9_f>e= znpS{|EK%GGgqRlyff5~buHH`%QoHPW$wZb5f#?e%CX+K6TVD~~A#qbCY@R%CvvWQP zzM;{>?>rAnk2WJkY>{7#wvWv?&D}Jm%rh1Xw2(Quw|y{9;dY6&hF$AQ8%SgQ(jHmp9G=V1?R@K(>9jL z<<5+&i_Sz53J4)-HK2m7346F7D0zhITO*}{%aO+%4Z<`RqZ<==?=&BaZuPPZardn~2Ue0viBA3RcID`@}Kc^RC zyX~MB_LKh(b~BYU-oBx;$`aoHCOU57)Z1TH!T-h+S|r+ar2YEW_` z7gMuRwY5$5iHuuA-LmA%P)7S$eUIl&ehtqz=Q#D+H@=>?^N?GDkX)73cN6lB3M|VY3Q|C z{Gq<=@g$;+^5|eJ_iTE)XW#<~+)3xXnsoPY8z&RH;Bg19AuRyh`y#OCcjpX&cB1!Z zFa3N55^2gA#5ir1wkz~+FLsTtAjB;n0}wK|=ssbqsgfnU(~*T`vv12Q*KAiX9?dw8 zI$Z{rZdFS->}=TH!eH>(>H6>PPDWKBMI_-4#*c%q^qpD`a}SRQ%vCC>0PjKj=+++6b_)K$(?=HYj{7y6ppXu{1 zq9Zi)DNkh9+Z}8gz{8#|THVz=968{=GXKjq(qb(P@nFn!VHMkI8ur6ME=VBBEh5ou zkW-BoWoKy`n@M3cU19&QxUU|j?Em;Q3 zLxrc#>=9{ND<&`fkuW13Fta4*5BU4AZ*mzZ2K6#<7nM)lQ* zzbzc@hbp$q20u!&GCDhuSE=)v(1rh}_lipk(|PVj5C`6G3U)85@;$~6epM6^jPPt^sb?h+nat1tmKNiYO@4>}NSnGWKvKnT!2im6j_B8f65zr9ykSF8g!ENUWQQBN$An3T`zlGX*b{P)2T{DFOR&^#hSAqkUZ&` zu`6qp0ykR51EwY^A}P!kQ8meY`O&3C<+o^q-MaxVp%5|$b#-Z4Z!cycz8y$DWeuj0 z7G3qE+1^i?85NbPOsWPnrEg0^1Rmh}C$=j0MMB4b+c~Cn<-1zpSQ)dV{wh1x#Yu`* ziyOjL0Q>QA z(1!jm^v4SxF+%-=wxdf>bW-3IVwgz3?w&!Om4 zYpI)QwKweIoVbnRzQPhTkr-L^Ub<{>Z8Vz9# zC1({0-Fw%6_vp=YS@{ZsZ$%k-t?lJO$Jouwj+AM@n9eX`VL4J+p}ck;jyP+dVB{ua z{>F#RB3k1(8u?u}Di--q*_jmyThw(OQU5nQrq^m2A^V6n%1&y?BA$H~&20;rI-kPg zsd`mT*zQR(KWD5_by3_G`Q6$?c@_E?3h_^zFvr!czJBRB*P&C;q{OK)UA#Z=Fon6- zm&_>O#7FWH1Nf1Ig#m;f@OLW!9T#`){!W!&;^7X^%#)}4JQbNhR#x`ZZxj@t9%r7W zn0(QF9*iCzu(Q1xqU6DBWKR!x+1{j4*Bhvil?1`ZP31P1>>Cu8;IZ#8qBH zn1rFnHS^VqN!BsEdlVlmVvAKDD7_4vDd6yv!Gp}jd$@yFGUGOKkz)X3yl{a?NnP%C zs@JjVx<3Etd*zhH&ZO22ywiUCrveZm3gBe5KSP(5Y~6Z>xtF-%{=@9CtJk{qDt)o-ge40&G=K}P&y5z{J=&y^9S1*(-vm0|wVr(DRw7vAhs+cEIPM>O zSvsnww%@;-sj!*KYvT1jZhJT^fv^84u--|)y>ts$$24CK@JulG zeb=0=lB$KT>a(DeM=V7BNqc86cEtyrIV*U74A&{m9$7d2dRO>_{@bh0;>ucSs~dZ^ zLe#tw1+RW4y_jTJ}0hGxGkl(zouzK_YseUV_? zL$N^8nuEqhA|V;=tU1^I+`Kl9e?*Z9J$R}&8?Tu^ksNl%vu$U>a5NLr~~($ z?bsV-ZzqCN@EmY<-M5@O7*UdSPk(AQd$lkEKJW^RrjGm-VmES5;0ru1;Ut%R);Zv_ z23VA58;{T)&V}D|tc^g%)^d;d5`n-TnT6$M-}%-Tx#4*mY*ku9XmxG-aHKdVq~?5cIvSh)7_i)Np9P=i!=T{J-DKl zJDA#Vw3+C}Dk2^=Yb73)wyqR(g|Zkx{*z~=P&VI8&}o}bDX(2KWj5?~t&5?NbpZPl z%#1=9*!r}P*Ll}rl^_0+O1sIv*K5h@VFy!b$mDsSkoYN!k~9YuHZ<4CGLeg|BsWy# zrYub_R~$_hYq+TC?t=(21op3Sh8~5s`&oakVA3Nb6hTnlyfa0|cV(DF+kDmOJ!3OR z!JyIT)aQGd#rcqTFTOr2k%u#!xQ%Veo?*YPz>F&MhIt-jXwI5VeTZh9&ol zM9yWca#ZxtLZ`tZE4_C;UWPMJGlgzbiEep9IGIJ=UIBM~a-keg7fK-MY=781=kip6 zM8vh<2!?AniZ=s1EPOwMRury@FAG?hRBfTrNl#QZ#9upNrp-bRFoCx(qhwxAKIJTQ zT_`V`3}sttT=^Le-}(xmK$@5Ql1cxHMxmH54c1a`%I-XM5 zkmJAIXHjz@tBU1(c(`g;to3HK!V9*Vo%4>2C!pu+i+uBDc$9S8x?%5g3q!*a*}P`l zIb@iDQ$j;?Z=nBG*{I7()``VO(?-@C{aoq+2=CR-&a^G%DwEaC4yN{^XcI}%i9KEh zr;0aI0!@AZrrTYo;PzsW45dM^hvD|-xWIHLJzsZ5w3T0z<=PihUWfNDTZZ2_G4Yo{ z!MS02%FdWAYT&vY--*LJgO%qU!wMT6) zpyd^BA}MIL&a^#6g`?bj<9jqDnq}}cdwYNS^^GQ$$%8pzQDN~+lt$VV4HH_hK$?1L0c4T$_1Gm%qyLzQ9txn8G z)RsCMqmM&oud?OTIrh%xrB8k+A!LFDZ)9PKQi}%@htjsKiyL@K57>DYZn?MGTQs)p z6)T;cv@-}`K%(buPi^#VNx4zM64u%Eu%prOCoJL!OxXp!4u#j2TbHwyP9a40v=b{$ z?d~ne-mghvNb$z$#%A0w?`azR|1L4MkW88xoeplmR*6GdRPZqyOsx||3AYNjHEq$h zf~51$OGffU)JN1di~X2gL8T@K`Llc;rgz!s`30s1Tks%UUZ5IeE?pNy)*qnmVJX!& zL9+^t>usaTkWreJTpwhLa=NJNf4nF)3E3&(OdR@j6!{2(7?8Uz+^-6EIQy*~ zr#s_8;dUmKww5nhI{CDTD!A2unsVW7AwK_mENRk&0B)*yjqHi6HMul7l0wuc19mw=Nd zF5`Vcub^5I8L6ba)RqWc2qJRaQ3H6hcGLy&{yiBiCZ8(3HvP@{*7V_!NXW>NsFlr3 zNR@I>FYVU_d`5O%JAr#)TX4Hc2qP!zsnJ^4D%`7tODa#1h27jkVwr%S!;a|m?Bj4F zqgEE8*K)&g)Qw9F8bqC;Cxce9UFo}Tlv)DO_=cO>Rc9E#M|XGw-JFX2l44>(<9Ow= zRZk&Kqv~Bu$&)hqrc?qxM>SNlyF7MChr@2oRy-)rpt;CrWtoQr7v=Lhw(QANKyk>N zR={ree=^8-bX(X_kE5|$%AC3@qBnST{c5fyN*%(Jm8)Tsyza(o{*c+ewgl^e6{3ki zg@7%;yW?rMyAMtBU-2(fcbAy0G)qV*C?j^wfj#H4UIWW|z{nF#9Ad#~T6|6=-C`E6 zCcp>G8rge=Bpv8WEO4V4&M?c^5aHV5>b*(QKGXG^f4pAA;zOVdMT-rWe<6`5|9#ng>5;-q_bF%d z4|;@{YXogn`UnUs*$CAm)!gl7Z+GU)yxz-vRJ-aLxLT%9F)VS<62fQmOh;+{B&k09 zTYjeYaiS)n)aYh_oo5x@A36o=Z6~W15-1(1&7b#*;G3@C$&!b`0-IuG7-ojoj&J7I z{ZonI_-om}gHbB{8$oH;N8G16)X{e<87ISr_iSP}R*K%d24^d~w@3GbeJ+IqaS&gF1@fA30w_Mqe3Od~mnQm;l^8g5P zIO?b=v?$K1Q+`8}#3tQ!8Lv)~H9s`_>=yGS!e+M;EROx?srlW`W0JR$cN>vATN2p# z824_`t)~a6657FM?FMYq?r?WI*yH&6@wV#AGuA6f@*8FdLhJdn%cPuK!iqT4L_2Hm zr1EIL`@GWBn=cZ;4%cc0ky1xPbm?@{e}+J!A>K1tlxuIX1Vj{2veJJ;KE|nnztWjm{mVjv(2zKt+~vorNTOellAiu#S+|Ad&cMe?%F-N$V)E28N6!X zlHg0>K>Hh`EO7|f@u2vQmTn6kJ3||?=7M$1Df@TuDvlE}#mQW-R}wU3n7bOIiKdNc zb)trA)xgP=_8p(G0Si8g#=}EyR{@3hXfkcSbfS<7HKq6f$Q+EVcwP{hFVR?J>N61A zpDd{}k!Vwbgf*h1Zz zA+jtLVjIq6NDFsvQ?xQ^k-7@3*JpS7c+wYkaVBGAbQWmG({4DAxLZm#L%x*n%^s2^ z%e(N9SPnLvh&O8{8V5s0Q}WM$bH`02{w@bM40ee{ToN2N?=#{tTUNC+yz{IVp;mZV z;n+GaO(aK*jMm@fu=UnP`bx*^f?JQ9#pO3Ljm`zP*O!onLtaEJS`vLE%rdLUtlZ@9 za5X2$SNInc*MDVL3N#Za0h~;8Hp;OkoJ^%Y)TE2Xm7{bKb-M-yaPFrnR6kt_QFRqD z+F}XF(<)A83FSSgS#zPVgyE3(D+dOdHyx>xrb`sTqUuCm(}$$ASJCh$oIHIUJ&7(*=U;bBP{+Kygh)335>3!$*fQL5ztJbJhclIq^yDdFmKsADkK(?CR zf)$I=5XniFdCtg2&Xg(_A*JVvpU7=3?GdHt@`swcpEF(O-Ir-~r6HDkwcLx`a|k$@ zPHA=HVuu=>k&dwF?ayGqA-DUv@u9+Uj+EDfdm~s6+=jtd4_boT^ZF)jSm%TtFB|+N z{ac!|XMNDBcg>{gKy!^rJ82Hoym-Xp^YeT`kTF#o=*owhnO~j(u6%y)_{B5(Goj(H zbg6=mw)FDDS}LuVne-ZG&A_i`(U&#NmCH$-%vIPwE}DD~=r40VNV)4N*9-nTzKEfp zVDo8zoE%nb<9tZ)6SMVGnw4;J(vTnmxA9>roeX`Yti65V8KKh;Sk(*w9JgEs^K$%Y zqq!JAfh}6|?_cmY;2nzIoeP_}RrJ@MfrF50th>c;KCgH$JLO(#X4*X#|m=a5CUIO%jcoQ$pIkd?GtqG8M6Fi{C+@)ick!#7j) zik~QtH|9&7zZ2A+uQ5*eEEXZT3z6Bix-^#c8Eud>-aG!jfkIOT#YkhJdHK>XM2JMZ zD=AIv9P-^jSiVB5wIH46GN2;l&UXNtu82wI%0mD4l2fJ0Ywf&7q@|%b!)qju!d1A4 zQKP1gE>A?LQoFW!A=oEZPxI-Z>3pfV7ioK-HVDbgj<><<1!>GGf^O=x`HvibD$hdo zPFSIFNM_vKQLC!JO0^Q;=vy>+>gy{GZ)vC~s|Ae!)TE8v)c-}#Y_-0y?N8b(umO5^_W9*zclOP(X2=wh|m@fHsp)NN@7AlaDfC?&1Iw~Pb_myn( zr|y}uFpNNSG`zpne`{4gu(g$apk9A0g>9wzN}}@}&CfHmGO;~6`czDiqUR3=SQVe#LSkfqe)HM@fY3%bV)u^)(V}*!XMGhNLM?U z45%rOHeEMKRk6Y%R>Ryx?my7pT7GcLH^%mJeWkA`7K0P|9nH~PwUWNRL^a&5**q!U z@t9SO1Z5-S2tdqajtcE}i5b_FuouxqU-=&o(d25c&4%g#*j^`qUT4X}NVUA~;CnD+ z>@EJvcXkqBFYKk`32Akz@t#x}E-S&`eDaUlczKJT_Ch~(s+3GioC)o z-JZ~PHe-M=So*qbw)Gf|P#MWelhdXMI(f0f^aR0HfUv+Q-Yb`_CjOl~dL6d5SrA%1Hp!jrrg zePRvU=~mJe^?h|eab=#S!sGiz@JT8l7#Z`r5jkFul+#epr&wX>YPJVxd-k*sOq(~w z*0mZ4rjmzfLa_Ow=}N=*>i6Nvet2L$&fzjD%OhD7MMSQK?VRN6dU7v(&){uH;waZ} z1#LN4Mi`>euk~Sm2*0QF5uhX;`c(Nz)mveF7dk&ZT98U6ft{|$h~h3?O6sI%QLh?t za9Xd}wK``Z=Z!@$&~_E_r~awLh?kdI0~g$D`%O7tQ4EjYK6&(2JCGiL22qr41?kwL zn%rMS9U3nbGeTzQMAXiqB%MlmEc-DRP8`?I6|(ErfVogAWfA}cIomNItMxoERLZhcl_98ImRUkpBpR)K9oWC za1YL}=lkg9AUS_a18X7j?GM*^X?ByoD{g%M-Zzx%Bm%+ z=&#~A;2YaX?k*E)sC;{7hSw2gi;X4hD6w2tg0&Z1(<9GhVY@b3@xxFGas8WUZr5J- z_}*Eb5D)L6PF)s@r>ffz(0-{W-B3EjzxUCvc=K(-62S)G}4VU(#@G|yzu=v=lt217e0GGGqcvLS#hs>I{ZSCrkTI8YfHdc z{Q%5SOIgVHho^nX1?3bI`aR+NCSy57`Iy+QcNm~l+fhf!HS2PHyFmdq?Rs)@CV@~(w%M9VUEGu-1Zc)rF z*;BN^t+zW()|je4o-k*v?%#d-P-k-WcL7*>Rs3rjyl(oGctfKrsGY0gu;`REv~NBN z9UoOHeZ}k%UC*WV8z)Wc>>`T90sF^YZ*bC$xmTL*-)3`S>!N zIV`u4xBmQFGoyedZ0j=&5=ZJ;Z|C!U1O13V0WkKNCVw#$A+^0=iPW^ugeyKJhFDA66mKV)5}k>(LRoW%`z zRy3DWkjEn-WXS#QaCc%){;Uq}u{R`Q`G?mjwD>ugAuCCTb%rPc)1-T~pl`jf^ytje z0+cPOi1MPCt>YXHuyC+s4*OGmlR*K!E0W^hA&72|Pf=nVOg42jBVI6?|og2i;hYimUH@5k+fp#!P#?^N%l|mbenC% zvj7%zvaMQ!=q}IgzECyO7eaaTsqfL`Wbw=EPY+6Kv65f(5@nBmBi;k#`e*&T9=RJ% zBEs=u#s%{S@GRtzNm<^DkGxg0*=i5<6x_qLFeAgM8VZSsR=bL!<0d3S*+ob>ODwws z4=TYd}mtRt}<^7!a!+)LK4Kcyw_TN{R!HTY=6z`JawTYMBbwV1A`)PO{#B^xo)@CST z*4{RHI(~-p&~}^Aus@ri;d(%Id2x}^_~X7$7kR^qE@DcX7`jd-<5goMKfLxQmDc+; z8S!1ezCGLiHXDQ5TEEU{Mi?=}`NlQhrV37PHOAk#r+ClvjIU1erwjR~s<&!?Y7F1uTWB3$ zy^nmATn5|oQ(t9}snrB)eSF>Wn0X;n_UWgJvedECzAL^1&2GU)yo%Qd5Rmf})wcL> z?>BDZ4t&~u7-_Fev=_m6*~}f3{NDyxKIn3Wtwf}gquU`lTDUFUeg6TOGT`-_FGj5y z6KtQ`z09qqfx&<%MPyTJ;+|Y`&U%qe9dSe zs3KCISkV8-wW5a@W6#N`DZg@IiC{}`{W+bNXn1|aK+t^EUW*(P^<85t=m<8sj(n6& zIrr%-;q}V^ff_l;Q^2v{P%V49Ubo-JDX<=ehr2a(>5C9>ln#2MiK}KkG-H>ZoA*Wh ziQ-V9T|!-AjDwql99E#5(lDCb;FW2ajQT3MG+X$P7giFHqx4Tw1o{c?{?%w2is33( zGDb|W$EPR@+p0?lrnb3ag?*E1q@RT>-+@$~Y$s;$SIWNu03w8No*%t3u}Ht*A3V25 zA;u7rKYyR7vO65}hGwYWct>vB2_XfS{x2@$ck-$a;tD*ljMvXemc>)+bQ9Kw$4@Dx zhol*%8zL~J+nwL?5@*S7&+ehy*?*oh9@0wrJ)6I8+lHXM-epqw5U(@GMg8+2iRB2x6<#4Z6rkO>6dXO{%oc!W@1>S(Q}?;6Wk~jLN*t>;FaAy==V*( znL8iMJX%1^+?tYJqU>q$Pa$wL-A84YzgPKig7X0e*F(j>r!w>vd{b~OxpRTpY>63B zO<%&oMVrtA;{Q~4|9nOwd*;$Qax74g_Lr{qnNt5C==fm!^DX(!>%x)XA2%_2zaK0p z7tI%al@m?0YBg`4nzd-;MWOPFrbhMDvoEK&BVX=;qQ_ep(h&(+%v~l zDmu7PuiYL40zeZL^SqqLbX>_6>jS5$;7%y42=yBYeI=ih-1TwHW){sCe3cW$zyEl^ zVs(ctC)kTZ>G|JH^2b4hg$bQo%L+5$v3S+r3&CYru3=dx3Yastbg0~aEc$TnqA=x9 z%Nb9_k=%FE)8-GH0E#GphkS-lsiI65F*#)riWowDPUV>4bM86zCnxm#GdqOu0wE>T zJ^S$lab{QTG6t9I_^2?*}nAW48^$veD5c){n0kZyJ9zjBRoY9plBMZ_zA&KU6LEj_+s@6A+5p7 zP!H41k^I^vQ1QPRg$uy}!)+2cn2Vn5>kN<8k9fGyk!N!~`E~UeZ@i zLe@9Tzv$?jV0ZXUvs=H|HG z@Lc=G=oh2IeDf|J5yBZ*NxK%!Hjjhch8ieCw4yVqZZ?s81~2c1cW+#6~5mY`=zxsi&jD zef`6y@6Q?7Lr7E;1rG7Drc6Fh#AlDE_xuSF{^|{16$FiMw=ADqe&)sM@cw@BZrU8q zc49HX&7>e?DDUUiXxw$!R6iUneaT6-cRY}0-8wQdllf>Z8)k@*!t!wC#%R2QEW9Bs znp;DNdDB+h!bDN_QX=|CbA~#${Psa*`(E#mf2MZ#pDNd%I{p(VhtmiKo;0J(58E>F z==DzN-QY>wV%D1>fb$Pk#M;ZSS)E##{J*W@IsB6Fn|h_`2!l)sQoMt&MB`@zJ6ieXS>1L=}Hne z|4)SWaSn%=l7-~fP(&gil#Ur4`pYl>Gp1<-!V8SCrCm5C7J1FriR@-90EG{pGaUap{>Nwe zZLT88!AwML)Y)imzD(%ZLIehA#kNm-Gn#NC@QdWQCMf~8*9IPlDFK4*D@**JoII;g zz?89_H~-+m|Jc6pDR{6p+cX`gH{0o*{~cJ#M=1D_f8594pJ~)kd5&1`>-;BAnR{S_ z+1fEqAvc5JgYkqemyqA`&ELXbLtl}B*lv9DiaYQvh)@U9E5iF`9ry;Jvs=r9HN0h8 zNW)K{^W(8exwSZG(O~@{t=&!k4F=ekNH*w-xq7m3->g^w9r#-@S=-UgaDemz!MCH! z66>&T9+Uzv*<-oUO(3aWsH9d#R?GhzcA5xu5td5!KHnUe?;rwDr4f=cdv&97oxb1= zOC>TNC~heOp8#0@1Qa=T@|!=Zy#&8lNbH)DcuRP5Ip`nfoJQi_q2G+h^Mnk%#ofu8 z>1ND?o=Y!*-r$XG03c)3i$w~+<7O#7%~76i*S%te7cqUaI)oNrGHoFQF8|F1EIX+s zc==+HI|`@E;TC;ip<23dHE^l*Rx>9TpA*;Kh#%0NfGx=>82U$N{%VdZ_#=|dR-F!o zpYc>t!@=4JNe}7|IyD&3Z$Wf@d0e=C<#B!N5eY8+b;#0mKYh8NN9W zzn{0}m))2;1t8@LDgH9OifcEMWKs8`jfbkZDar|<12Bspq=P%fgf%pe5?vD99w0@M ziO1Ep@6^|;;JYySyZpu8gBVf>D%pjcy~O{KEOgD~WFofE1U6f~Kg4B?3ajwQ>$e8C zl6IY27DfP6@ynEv>miy$+%ACj{2qhC`DlA`t5F+)-VNY9PeDTKP=2L1N?74p7#df1 zot#F)+1ZmgzS$Y>bZKwr?H7!H)iN9nxPi6>eqf$OP=v%Np*|+l@Osfbi$9rV+vd%}wyaj*Gjs8Awq` zfFNHGiz#)#v2phBqJY`0E7r;8Iu&|0)U%r4mFZ0qKeu)-_`$!$5QCa)GQ{5Q+ur1^ zIN=CChaj1wYOr?`H%*lOsOmj%v)VxNjlrrZU|T_N?+yhk0imi23_gwke^es6!| zZqS^(4C>BksHj9Zj0Vx|1TJ#cfCoQ8ATI^%nW_(5c4Ei;A2S4CQwL5#TBIw5Tk~hl zMq#5yiD5VS%M?1&@i+LgUIcyS1a7nxZ&EOX6dNy(CdtHOdt}N)P(|amE8al?JOJMt z4rupk-1b+yX;`P;db^kz9&KIfK38 zi&OM!Yj{@x5!fv~+i84*;q=_I7KZ%q78ik<8}!I$?KdYOFiYzYndCX;G9hEdtRSiq zXPv<0Dp8OT$;#Epe;)OC*qk5Di->ta7Mcxuj!!fCQrRrSSmVu-TpUVp0Fc`>|y} zmN<}@CK~lBM?Rah-q|+piDfW;Jx}}`yX%q>HwEL*vq!Tr4@wPL{m)JpC3#{zz5Tn! zX7To^SRY989;Urc;^Gf#$;gvWvM;f}yl+E!d3F%#ceqj0PJXYc+%cPBMGEoj69CJ^ zXZ+`w!}9~vCLpyOf7^0*`ts$VbNM3?Q0=eK+m2C$|4fM2p&(zx`Yb^a}E-|{oJ091=qIH(I{}9IjIsG!%{D8Oe-Jetv zkl`JuVDC`--&SxD7N}rx-iPCeC7oz!7lJDu)=51vKZ#amic{<~*0xbJJ3enhpX}A7 zRTM3fm?DKsI^A0tnCy1gp4cMsX@0+FPA1a4z!<%R$t6K>^3+Wr&}%lEZfCVWm9_N@ zM`ylEzYxApAB~m<`XBw)i%$h&^swyTloo^lk9I#yoriCH@%m5pEb`qTInK4$Rn03Lzy zV){qog*=z~ryDfW^Yauozr3moW(TyqGAnn0L8Zu5eCBW|tx;nunlqL|bA7%i?r;&O zK}#Y_9_kS0t$zWZf=Lq{)pYNyldf{=GmgjZJcsdYc2JlRn@NjQId^>tK5hd;DxHGZ zIR^9U`ebb;lZjM6Ue^=Lf>;Y~=i2s;Jh$to1llZWO{F%K_$AK0liTAcE{e}I*UuI% zPFFS4w4)4ow(rcyAr-ei&2}l|DcK8QoxakbQ48pGLcp;1)rV`aY{V%~u@L_6d`p3z zpN1dtLT{b&gvzKQFYU<11`@VB z;d7_`yw@V00{xwZ*w2327j3Ftwjp%J>{}UzcL*!7#TLp*6y@VlnNO6JY?N+U4@t1T ztbn@!nqb4V7r@bO&FwdBdePF!08n3*Sytc91~U~Oxp6sM!QgPXMyo2W_zp6-bqN8T ztvTGJv&>U5M_wLb$xqWgSDapa3+V^{VIr z_Wqh-syOIqu*H9bVomfjvCMwj*?6R)o_+Z8d+NVX1T7J0f)9DmuN$uf_-qWGax{)Q z(ied#M>=GF`kCyhyiMqK0rxf1UzvLb1p3e|7BToZ;)v|}ge%vWu}|Ya3TO)z*}013 zzP}C{5oyypwltd1J;QK^bJ4dj06KyKHkEEA_M4a;0FR$lsr&csZJ+mHSz+{iV0kIV zt2tNBkzY6AXRALmYZKkv+n%G`v&7W0@I34!J0(qbf^!@|F8H0d31*ume45xjAq zfT#5YCR=5TbsfV_K+ z1EM>T@2XDh)T(gO?vwi3lEYz}!fEBlXNzB7*sVLxcZ8H({YV_0aYhQ11^tlm=Tb<9 zgIN*kP=iT`i4Q(_oUIvhV~oE;MgQxjlHLb13gk~%z41nY3Cn@V)Pu`se!Wi#q_fvS z28_%-k0N@A1`{Bj$gv-;ApL;6Ni=BGTtc?EQoGhSA|Ws;6X7ZW+;Q+cTctXZ9qD8f zaIFN!JiZefU6jSN*5O(2jObMTUVdpe;!B1S^7bSh>$Kw+7c+*cD`9*OnL_lg?cPYx zx~O59^Q~m}fML%f%Hcs6k@x8$$7{fF?rRG=uaCBP31f0cm|7Y1zTa_5S9o|F|DVnM zzZ|BNj;{((gv!kc%*TYs8QiwY$H>hLdvDoUDV8Yh?4YQ_UIc)(c8nU`cadD z>3-sF$WA&?O`*76b+UNc(ft3U0%E0zm|yQb0tUAw0-R?+?b))Jr=qef6}UR@V=1>P zx?`Dh&D4$?fQv#cS3v&Y(aU7S2A=tS#tdLCIPHumz|}0lqYv-KiPi5$s%rf1F8@|c zxiwKAm#0$SmY>9CQ5H>qTmmHXgw;IOfNnBgaBCI)ibn!Lc$dp+FAam{)C)%d#dgix z;mgW`LRQb!y$8#)9@ir;kEh%!^*SSe6vP@c8g#~6p-(Zu)f5$R11IH~HwqGe{C~D0 z2-u1i;@f+`sFPz)i086iF&DUpmfqcUJWJq^^wpoj)oH@`TU+m7 zoqTk7z(>wh^I7VEb$r=9gp{?x>5R+wIWm&)epO8%e_%&$C*;26mfC8+$ zyUQ?*&R_wp&TDlkdkA(iN22C*B}sqkXT+XbM6+}46-5_;QD)!t(ikH4YjoqmtWV&Q z)n0DoSb$YBLhSzjESW>3$q=EVa@LJrJdQ4otXts(N!QX1#9y=NZwDf+e=WSMd?@q- zxv*lODM-tg-R|tQliME;)1MI)RBOF9NA$Aa} z!nta@Ar5xu192Q?gAcAYoAECAYT_@;CF;djkt1IS-mjcW`f)U1p8&cKT^mTwn3vqo zsElXw0;9nJRhh)&&N0ilH)+{daRPI?-wA*+Q}$olLgR2u)S@oTMcZQ!sfG+XRCnqY zL%olnu{~EjcTzO1v>Jzl8GX_7hp~xFmSiZF5?-1^Pg7kbv5(4@-?<9)T; z;elufFdJzV#PCc6X4;hv_zFj8Djz2~o$;?sdv7nIVR@NaMUv_Co77`^A2T3&_>@$Pk!RwL`o zgXJ#t4r)pj7QhrwdCa<5;QW^iP=cxp+Q=#udbl7N@2<-;3BzXsQP3}^JJ%4v~647+F_ z@tk~|N_nQvkieZO`a2~Q9tqusow?nnw-e6+&`e%DT=A{yXe18sRyxg^*wk+e!4aCt z(Xg_9e)GqwGqB7Wm&|iWw?mTxeDHO}Fz)_a8DMy*$@bD({&;&WI(@*a^-82Z+{)(p zh=B*Q(#HSC%_oBj4oxv;Oz2;3D?A4}myz!NpqqTYryMlJozn;l_b+l1Axwv=)1X51 z*uR(<`hJur;1tvq3^KoQqX}`KiA5x=K-vF^C!a%uOeDGoH`xQvTp;$#T|8Y(q zLeJGUj<;Ah^8?oufPCQ-G35US4PFfjwqV?TL2XnwsUtq^*_<4LBMpwSNWZf-4x{{UTM@ySwtB}tWqdB&nI=@)lv+n(JhmVo_xpm@>!I3*W z7zyeH%ElVEQ^fCh!D?PgSHIV%0Jk&++&xFe8^ltY$xf@?Qpn!5R?b#g)2{|+THOfM zisL}!nEr_B&f13Y;2fr1uRhx4gqHT%Vs&cS*AIYNE_MIIGY&aChj9a`yVqazTV2cR~W%!=%-y~RuC*-Nc@cY==id5Z*gr`L7Cjh9jV`UgJ7 z+e#<%Y5GI=_gn)%TPW-3dri}y6t9AxjBwd*5O1tNGkw!}%Jrh2Ai~&MV|sV>O%tQ5 z{pO!t`!`d30o5A;Q@Gr=d0q0(okq>kQm^p)-EB<97U8MxS1&_T*_Qjjl~8qq>24bs zrdxsZKT%#5Emzo_D_9GkO-`Fi=JnKssOqivoSseX8@>s)pID|D>loci?daAQ7q7+^ z|1F*-NZxP@Q9}VU5u_imigaV2Kk7<$m?27@s0jZMwpwMvn+U1Z#4R_XZ~SmAKLOyZ z^wHG#nj*3nY)vy^9ZaqCjkAbpb8Fa$h&P+-9Yh8mm;_P1PxNXh5)-!TRN(H8LB<^E zaxc03lae%vq|xO0u~}D|#mt__s7&|o`tmd}QD=p64jT!9noy|kFPDlXZk6YEX`D2F zj3l@Tz@_v~+7GDy(58EsyOx^())QlO!9%};=_-NTAC=0H++ThH@Ad%D-UCzPL;R%M zisDT&T~dX`SbbOYGot(?<^#@VK-H6O(|>mY;h<)tAWBr%ucKa>;oRI5p-}Bq@Y&^6 zEpmYk2x<~_j!)}KGHN8uW7-{yMNte%hCM2$olVVZ)+!p+>nK^(JnF+fKH1=J-n=vG zyXsL-xE7;1tTl$0>P7K*wxAC?^oiGa$r)ftfWUC{VQ-!Zv^vaJ22I4R)3MIt6^Rqx zMT~U@KPaB(wFu3Uc$roKKNcpXU-Ko~WwW-g7B9B@xx|B^5|8j*)=a6co=ZoUnn|@c zpFnvgLEKD;o-s3CgXEK1Y9ov1Hg;J^FV|(r7M-`9E1>jknY}z8)AZM*ek)AiJysr?&+8DIZLfsqt?oMKpfFx!r_c6134jz}QoJO{^a!?>a z-ZZ5qRksw}W7+mFsfDb?pgnL)X4K)6N`y9nJLqt_?D+0d>r_F~Cj}pv+(Py0RxNOt z%ThU67>HRnCR(sJ0_-q1|30(H^Umd8>E}R<YuoWmZTocM7?|~Leb_T6yYG-OY6XF_S+jLU|y-&uX{6}0b(o@-YPxm%-Cs<8J z&v&9Ithvd_g0SHqmr+l-&lh>UtL`jT?H&C-p{YUqN z`r2)ISPD_6`MGU(IE8jef{zak))fofg=d^RlDRTw#+>bq4d0j7A{6$Iu{?D#`ZX}i z_26)gT$!M%e`|+cx6vIC?xme-Bl5aWQOca)xaDUMxT~pL9-S8?p;YxaGK?*PDgl3I z(mB;ok6Xp8VyeQ;2>)bzN{_h@lcntotsDj$_OY&xka7JNQDdoFDj@5d;d zgxKP-Gn+)#JsU14+&Ekq#WT%$CP=bK(H~uJlDw;eFx+M-jMWD9ErSEb|MMBZKmOEU zAXvvk{SKW0#ZiZ^QMR5)H|mPzPdE%MkmPY@h7xSE>~I>TVM!4_=a=#f(2hjqB9gLQ zW0z8OOXS!`ia>(F7vi=2iUEiEwDx#tA=%iH_uF8pM`53e9^*v+;eoxW@ z(6B-=z%=c88>}Jb7KzT2WyoTNz$^Ki(d~J_;yhrdP zT{1JnY^bpSmz)h9({=ZBklkOm4nX)_HHgW%Y$8snx?fEkz32yB>v@E=PYlE9uIJsI!LXE_dfx|9RB z?%ZdizQZ3sY&qBJtaG0`#^$Bv+hpp*;^I|n6wT;Ax}In;&2*?l_8O~B?m4H{s6?p? z*+8v*n8ziIwEd;kt(FT|KaU;ZPYe$oLjA-)HnPGsu$s>3&>?(##6at}yXNdD)WL3KtMTDOD5?u3l&PzN=~IFqBldW3A$YanU2 zR7JJdX~+qvW^&SPrt=3^5Gf}FD0A{@xd}WDP|bVe*=1jy$|^_LZ!t?DvKGC~yB2$R zxO`=-Z|)efIa8~N@^o5>*||0Lu3&q|jN5~<_|XD+baT|h$_eK>ab*rVIV{PzLbZX> z$Z3uWt4tFiIN5h|JoJ>F&lkCmI|k?*BdHiy)oGCKItH_f2aqesWU@0gv|(DJQ$t9Fq>59-XB zpJzJf0me)*JN;=BnX0^o%k3)LpQDP8?#&iH-gjn}RB{$j@?xg1n0}VX&HjoXd7v2h zkNNpNL|1h(rSGw337er9)w)l#M}&jZZez&|rd^N6#75wh;vuy4i8M_(v3byJCzehV z>STMW%xE~ueF?Ac1CoIUP+)&UoVNA{%|MCA_l_q%lhMGco>?^vbWM!I&CVYo`eUwy zyyGqU;Af{NP9`TvdU0OZsGn5wuC+dl0Bcte*1afzs)+-`i(%X9ZT^>SZ^ON1Y175$ z8fCWW6-R*cW=xCC#&h>FHBmFyetHCJ6A{L$L@sdkfXPzs!@L1eMIow92w-Yoa9ico z55zS~S*g29sV^j`8%Fh4|pI>b!IB|B8pc&vSU}j)5@r zb~Rw5wEE=S#d{j&VT|vK?MW<&bx`w75oTqbuYbFlhI8hoH*@f7dt=i4>+27|+Yd(P zvA>CPKze!w8bf=+e&D`lrmN$>P&%D3qw{KE$_M-)bbu#huotU0VZq{*MU#)n0I*F; z;Y(?*Y?Z0QGkuA99xz<-a?wb&lUI5)<4bfr!rgY73cmQ(iu3m9cZuiOYDYy3HrvEb zn&zqgY*lZMNGtoWh|FljhVH<$e4JlAn2*=KgjE%c07?Fu!TxWF4m{r{v&v&)O76Qp zS5>GSi4z<5p>#<`i`L?YYzRjcE!T){yir*)`%&gOV`8zcvp2scsl_+@Oiaq}UF3^z z++r7xe=Y{0c_I7gD)I1hsWup8&?xwKBVgGUrPZ!wJkejfSlf1t@BTxtMI9<9tzK*O z@FU^{*VopjuiCn{A!F-Uz9|0wVOFD+lE=uAyp|Tzqgdc5+rl?D-2vP!%Uj2zCNGSA zYYd_Yv6{H=MUGKp>yK|gEJmGLr=ih;>{-k$a!pjR`cS2rb>4qMh@HfzzG~ zvxAE@3)*fwG!<{P)^|&^oH;6fE!ET+URT&u)k79f(Ee7F1gH-#T+@p2#EDCVCU0vh z4eiqjmSZQnkCJ0E-jFc_@g*o_S>2dG$4**a*Zi|Pre5VQI_nA-#?J*|yEX~fH<=}R z&Y8ZSqpn~F8&}!1RQ)z~M&8GWb(W6#u6EN#@|o_0P@*q}j}F)vFIu69gI{n_g8$*s zfDcH@35|2VMkeH^74aqJ=BWvYCRI{P>*bKV?}=v;W6-yCHB6-ccp~sqOoO+uiFBTNZbrdjB0i;$KfVbkGc8g*u`nCxJCiaUvHV0=J5gy2{2a_c zmV4(D!SYnNzTNAWXcF+ToGtKJFg4NdSVX4kD!p}EPlR?WKS>9FGaK|^W8i)Eb-{AsC(+EB zF{0eb+)Lb?i=E~iRwXY>xgG+AT$>DboyN*~)Rn(7`?<{Bc+B?Qlr$Rw8WWGkZXMZ; z7fPI<`@&|i&fEF8kSg{G>l_4Bz$da%A52I zp{JfOaBk3)7|haz2=QHs)QXK_(?rqrJs%r67iNFtfP?dbjW7egJ2kP*U6phxD?^7t+Kn~wfor`_UY02VvQ&v067aW>&{o( ze~aaiLKA`sfEB5rG&%>M{n2|c=C(fcLd%*=O13Vx{BJY9QNL>ojN`Fx3_iOAb zY+%pmCm`_3tk=h#TrV|r`I?v?)mrfjaF!T*jvoCmK};#uhNT&)NOrEidSofzWP{>J zwz|k(Rtpor^oiW;c)Hr9uwu#w)-bCRF6DHeXNz?=pgsj9m@t_5;S+9Yp4n<)gr)9$ zH;OY(0@?(k10pH3ih=fYunBwcB($D**i7vWP}DpwWUo8&N+%*|H$A>n6#B5mabgn| z04!FFcsW}1pEZG~YIeNgRbTKa^=GDnc4ZN%y|UBlY)wER0TP6@n%6ue8OT`=<&Fy zvi#fX^NY3S5O{Y;G2PBU7}Yj3X_QPP{6B@lhToRBT(C?_=<=mkYO}Ch*+D!SajI?- zO9fg(v0lOClB`(sBF0qaP2|)LN9s7S zY)^o$L{i~Janam_i@6U|I!{fB;A-ZK-te|RzEp(8Y$oI7E6aNJBL+lp2Mx&~nS1aV zT3DHxCz|?20CkpWPQ?JpTM5u4F6XncPPtdS8~l*w;AQwn<$aAI)cLJ)&w!NGHHzr# zx-*sMLX%pZQv`5)_cX&kk&`&yM;j#abNIP_f>RDFY15$P1@D^uCXq*2684y5`}FO( zcKA35kq~@gT`>fP;bT?GcM4!alLz?SVP0tDt1;0^MQqpqF^T}0{Cjgsq z8bFWKVNT759qFX`@Teis=wMeq=$Pj`oi;9RvwZd_y(v}E(M|6b-BhYkBiRPNvEViMI`RmjGb9gOQ z)gm&Rab@Ex&kX$*Xm!`j{z#z?XeCz@nGB4W2y(LSh?_08+f2rGg_(5f)VNjU*{*gx zP^#OOZgNMaii4oENH75!3cnE?FF06ntMc98{5kmR{PAs#p9!vmU-om|Gb_xNO_Up~ zLo_rYEc^(Sscv3U%1!N*7kD~JHiuoyTST9i0g(V8{pqx#N6lv_`3kvijx{mMKZ@%a zH92Pvu(wJOf8NA6H5P!%bx*khcQ#++I%I{rZT1q)Eagfmp(I{|_igK)>l%@_tf)PE zIJ_8K5&JJ#DdT{s46=<24xzk1>nEsZT!Buvge0q3clb_ADtYAm^N&$?K=HF}ebD4RV#2C`Y)=X?9uEX)rxi>|_KqDFnr6eC-+zmG$#e9hZX zN%Bp~wi5G?W`oznkTX!nw3zywcO?h07D5vqwhTb`j6~H(L4o&-sOwZxb#5&42bIoR z=iam4@_3vM`srheH)6GY^@mL4!T7X4@T)Xezv(a6mj$lA`gK>jjY3W-%qC z*kIm9tt&F3&kH=&(#nO2=M?epeD`5XcGb?#Oq4&Zz(u@06Ka2u=ip8fBNC>i5|A@p znoEM>H`&iw!H(S4WtLs(OFKmW!4SeG@bL>sJavRwsI8#A7C|~@9?Z~{1cXHoFt_Tw zkXII$wbhJBVVlqgI_5R8cPc9ywRS#SK216v(JDlQjGgIR^HTw4hPA1N7<}>?XL!hGu?njnvmw|4_(!w#Z)NWiMN?gYlu@up2Hq`kGHhc~#F*JNohn;}IUm=PwG2;+%Ph8QEV2$=@PPv>w3P?lgE)i=7y8 z>t&<$!+TwfcPdeR>cQfYz_5)bLE!vcoa93{9IzQu9D$~?d$BUPlO~)>#PK{_ahKVq zB-NDJhzJUu)fbP8R_MhYm*-GIg()F)YAh?9t&&&G7m#Z`8dZ&cnUxF!kCa?%Vs9N6ehzqeY?EU@`vEZaJm`YfF9g z!3}<3@5M{AHawT?Ia;OtXJW%nZvr_*fR*3HM#z;RolN(9CiSQ&e(Q%Npc<(7qU%3N zkEcNX6JZ5nb(u|Jow&AUD0J+nitya?(S(`u)4P+I5q3p?v&A(nNAo6$Um397d0wPk z;tIJzWe5mzm~~o=JoruBua@h|*2V=Jk90^JaW@XNCci$UIcJX^do)GO=i2^=6z;Qu zhKm8-NzBE{xPx_432vdvFMZj~hQiNxwuv;TWxMhP@9%V@IQ#-U!5qwKVtTVJb&~h$ z3AEjt;{7;j0e6yjV^@_j(-9L~Xcb|uAC70<>w!>%-o5}h)K0xh%^U3w@%a3rb#ll`y ziLA#_9M`Q^g3c~4AUv*Cm91C-car7a5|RcO*qJI0sS2QeHEP&nJ^|6Q-BWxtncbFh zU3|8}#;u}l(!5}Jv?vw{+_j-EUqWY)nj8T!uiir04-PHVL{MDjEMapsS9o?E8MbUr z=&8Lw8m8Yotn7Thf2sdV{w#i1io9yCdyz#{-FcIaHle|Si+s^*69|uP(Uz~wxATc<3ZKwb4!GY(;z^z6U??l!D8Yp%3=Pge`VLL4> zNJX{0GPqdlh4lGQixg0YfZ-{1_&zuc@6$?)8L8Q@BD~g9&?ipGn{9sfR`t1x@+$FL zRGBJ}-i0l$b4hK2=~lbw`2NYy>02Wu%mN=uD!aZdleU`VxHI2JTC*K) zKz3@=+l!ksCnIS*M}9Ol z^U%r+B3b40?t4i2b{b5=vg6XHaN0Y9PM43n-@ZnOjV~O|BTis2KnWOCm7k-6gnNHi zt991TmamUY;lu|il)b)<&neF8OCuW(;z*%PD7tezPcx@Xr!dzvNPw;2+Yyepd7c5> zokiSdGska+ozNk>fP`yZ=ef@#10}omC75PTKfy-9G?0>2pd(aZ6fGNUV$ki~) z_ZCt(+HsEHta=n8i9L5B)@7hNBcEdtj_ye}B^8-hip(39^$V$*dBS}!KPIH}N#Fq} z_K{}vP-t4^>D{NNJ{Vka1&*>sTe$F(goVfGX>fKZdcVl<;HAF`hbDclELnKWZ+Uf2 zFF@eE!+kuJ4$Ha|XCFWa*gvR2LWQ5ztpP;(R+aJ(&>x!-bsWG7MtyyZ6?vr4Ck1%| zkcN*k`^74Gyw!-f>fd*Tiflm%czvxu4AB%MI-R(***VCXnzuOgpkDV}K6rsP`njzJ zUDpRNaO}{p&$OMQw7|o!mMHUQ;WK>9JgUukBE;h}M6afRqFzgV9mYn11~a7QFkSAI zzbk?g{hK)CE1DRG`$Dt^BV4=)i|$e?UA$(6M-55hTwuj~A6Y!qC4vxRjUw9!G*30b z@KO>sMWT&{6{B*QdwhO;Z{e|;v|j(w9prl%QX0HJ&8A@DJuMV?0z$q9Gn}0IYU)in zkS83=SGBSoZ5^MT)g4o>ZcPM|U>v)FSr0 zc_$36im(>Z%#HnVLJmaQ5NOSHI|Nx0f`%Zf`Qlw+t50%gBMy@)I@4!8!dPnCN9@0v z#Au9qI((MTfmvjvC-+2D^?CG^JtrS8>}rRm`tr#3Ea)tVK031e35%&XkLqqqHR1Ma z#Zkj?1ydi~02s`!mQBz>UhFA%G zo^{v_uVq2eBGekoQ;|-gle^O^@CJobd#gfsOd}3^l%uvp&ipg&DZUJU>L%nme|J$u zC^<8?gyAq_Cyb^sT^+A69ns(oMnH+ZS4ZQ@^rL0K1tGS}o12RwM;?dP1LcB%Wvs35 z^oMFn(JqwS2quU}=`jgEmj|T_i}7ey0aw;|3;CAf7y>q05gId}~na|9o4v_N}WWpA=Ih{Kv4 zhUekdtnAo4(fFm;Sl34G%;@nD6e7u^>-Q*t+_BdCrGbFcWjv2%W2M6Eq;TVfSgkl8 z`?e_DXnBr&@XZ#|bJFVQ~MvmvZTgF3)X5plmO)tZo?I?yWhz6&pcuQ8hq(&0|X zyq;>~`Q#@pP#=aClR~ zDEZ%(VcwnjfbB&Dd0{wt&aKkHXeWA!6RW1>-2SvO_bX1NAD6mPp1O=1Y6QN3jv3ln z3gCmNAT7^t(_ws-WnRou)i6u18SBDmXkYoke`0nLc~ad21ilp$-I45HD(3bp0(W$k z9tyBAPL2sa<*m3}XkG`mZ*_I;5YUMnIEXXY-aRACFu{aq^dAF3(URro|mZcglA`AzD56LYnrz1Gft)8B_H(93hPh z9MiHhiTCS?&DvW=h0_#GF#Uez!5n7<}nOU{7vG(81}Z{>4IIi z{dC#L4%l(gu@X;w7?I9fpzI1tUv*?}Z)pr@R^h$s;2bt2m&J_E?~pRjtjPDNYOVHZ zsp$^Sk5Y$5HMz-kZFy#AC0?iJs-tuFN@Ag+l!3OF&C@?uWBsZQ12d^@c;~9(tAwD= zrUIPDDAgAV&{9?$T8D7^UAs^mLYQjFwy)O9MRExTH!^4XmFpjzh-|s~5{o0GOCFq_9-Q`K%E}60vcGe7*Nf2WqZcvZ^fqfh?dsd@X`AgCHI|gq zYM1_ml|{!m=C zr%QjGy>O-25vc*9#5HDWgWF({0BBcGTeIk)fe2ge_KNU>zzWO4TC z?sy{g=edUJ_+TLp?)Zz|25A&SdnlE7Tk#10MXP*jP&`mUFI)TV4n-|cxE&Jn9=rK2 z3L?`fX;nE zVt#VF{VKo@tjViyqS|pc03kvY@Zh~q?Iky(;e&Yr?dOi?@!sV9HxtlA1)wc!_kAjF zKW7E4=SUYri*mwYQ;(C>UTc z-d+(gH_O0x0G-@f53I}W7D|*u=uEh6DsH`n2>Od@j>_!+#sXCwCa7PND2Y;gt0A}n zn65RN7b`bdCD3~;0acfbA4^I%OT!0d+^PQu@$u&qB@P-@b(dbhYjfYefOXmn#E_mj zD>ofmo_BmC?$wSTv{&&Zr>WLqM@&g6o@=jzM0!Lo*kqMIzy2|7U^3`e3&4cF=e_X~ z;mv#AK`ubHa7gkk?FxY>5eY>{1HrL)H3Pj^9CH3;ZcCU9C;>+T>T*#oGRIK-QOy#) zuAjnm1C<>s`JBu3AxTSxjr|Bh{h{Ww(eIbLg=Ud+Q+id)Ufa7JrDM>@h#a#HC%Z|R z(hn~p=wGhVU(h6j5~xJ*6Lyh7o=Z8(B;9EsQhsQ@GT^!Lt^W0JzF?^Kwn-@WZ0&|T zVNK&Nwci7%XVK3>@cOL_KcrdW)4LVBYmRvbx5|yq{N!BnWunWUuKV#^?>)icb;|hB z^CgUj7{H2R5SGP~tR5}EV3m8MUJ8FtwKYx+{qCF1xY}KjoGKcqWH28m5SZZf}~^?t7yHR@Mk%-Uys0o{adI1>BXag?j6jb$2Rwit$STcHumY4 z%eyesyJ#@K?-_P>4_PLb*=P-ACCQf+Mz z=a279Io$h7eh0qAJK^#IG){8d*90^9$XNqLj{|GgQ^%t*i2 z=sv2Cd8&|Gq!IFrs0Kb|z*qeB`U9}3m{d1u;H#h-*yZi;KYIy^5I5qQ9Y+h^e;h?F zv0z7UIbA~rJm14^s_(q3ed1n_Fww}Cz^9YnM&~#kw#6bzQTM+pBllg1|8lf;I+^!> zy0J?>ztAc^fy-#MAT*wwGjUmcgr!v{`+w| zW~t+^1@@Kw=wf(chC)Ud*CpJs{D#$A~Xg^QB?*CfqG)on&(|z0G^MCky>#(T0 zwryM#Bn1Qo=@yg{knR?cZjcfIap-QOQA!#V1|_71?gl9tVx)#{Vdx%WsNbIFdGA}_ z-}fEgaom4!+^*Ss&t7ZRx~}Uyuk)NcA`nmuM(oUZj`^;A41l+oD1P%1#9E~m2RH7@AWT^Fq@T&ZKRxdqqm*f$tY&^!B~rNx6p*H7 zZx^K+eY05lW#JO>Es@^oxoYn(=9g!dozZo@FHmmxVRSVoy+#rSFx<^kcR#prCuLS~ zhRn{~sigP<@lw>oCu}A2cFanN%<(&-lBv2|^Ajl@Z`pT7ZFB85$XAimm;`6(|D7Hp^~`t7?t&192PX^UKNkPgPPdR%ddn6n3Ug4imkO8UJI|l52|{$2470- zrUN#krJ=jcB9ynsx6e3Vj*XCjQOa&T%K1LkDlrU8M?9mwA`Q%*mh%J zCuw1M_`@$;!{T|os$pTr2vPRn!GhX5mG5P3b2*8C%wtXoO-!?IQq6CGTT~qnTm*Sw!Fe84sS`3jJ-Kv;+4Va?W16pT`DKwtX%g8nt!|2WxRfo9FdOFH z0N~ag@1`!vVis7ZpHgPTn#yf9jI>YzS&nlXL|R;I=No%IWgpKJDbYPr;2QdnA(yYY zlK)e%Xui7Wn$~2xkI#^Ii?dtQGtl;<%^+n97k_a}(H4@wEpZW-y+&GjQvCQxlM~*q zRZ>o}+HSWHcVV@0$RBLKS*RuPWF^@Pgp;>Ru=IYzie*_MS)_)gCU@%twnt~%3k4lteEYVz3S^F$0`U_*ZW&;7bs>s8&#Ef?FyXUeXlT(*T54I_43p*Km!pgiyLKpb&Ef&m@;;ys?oHL_{JE^a zyd%LPGvibFg#xqP6;~rBg@7$q4kpK^Dhu|a5{ZCISnKytVRx1KNR0@Q% zVfQa`(HK#6ciHY3P6&7H+=XUS+@@{rw-i_K7<*si_Y6!L*o%;`acnkKdCGgDC;E>T z0GrBY+qDEcmE^Tf>*bnnqI}9riagc+$3A`w?EQ9~(|m;@MX#rRq+3e>QeZFkZ)N#G zeJ+p90{h`KO;%BrFBA)MUQcy}3~h()0tI}geesAkI|qJ&%zMyxiz zLntfwYkiWTht`RA8mAVlG}EOxnBO5f<|1>_~y6qcQ9rY0^n zDB7RX2>4_>44GueGjqIRC|%0vd<-?JIuQq{vdh}R_GVl2N;}W6DgYrDC6vdHf{xqw zsW8Y~R8q>|y$_n3*004FcLvOCk`0>gq-vSqChpGcx(5$(tJ`>;tPAQyEvV-yaVGW< zxC^H~u%zU53BIhq`ASBp&y{IedS~lQtmOWe-84<&mX?E&*xQ|VPxO9Rt5tDuk#TtI z8;i;knB<|XF{x>uxs74^i~4Ce`n!e1hr`@I9%ywx3g&*a@&X65sV2h9GE;UjL&&G# zjaJ~ZeU?Y7A;^p~QHiaL2GR0HALQrf+KTjxKXIv}cpQ6}Q<2E)h^%$VPv*0(-($!j zK*qfI!4nob9KvEUePMigz#*d%Q65|FH~exGPgG~`yM~x-WH(94>^ zm^|A6PK^(_*n9)>&51xx!0mQdog8t5%fX#wwxDvnNXsN3fxla_v}5b~24Q3Njt4J0 z={~So^l*y2Q&Bef=CL)a$7{9EA#(nCVcHCR8rQZoy=#$hb)AoPS{hw1KCnGLm#=Ye znP_3cf)GRyu0J^+pGpFjK%qm9o(LYocDdjd<^a|jCI;gHD4Bhob4TO{%uFpf-`&4? z{9AGow>GZ~z8=>oYs`ouHhrSI9~k~36p!=%JkX0aLOukxdqNRl`!L4h;9bU@MxQzC z=^u|kR?xHi_n{q(a|R5VvyE^jf1ooLH-(^gvVA{mVme?|1%T2mdoO}U3Y;U z-LjLzh2Zbt`5GNib2reZxZZy{<{jptX5=*VrcTo-t%l)uy>S!+jSZ{E`m~}=CZBz9C60>KgVC%>HKJl3 zA+5B!WV%=DK{W+TD!{Jq*e+0fve z?+v4!ocJXKsY6-2uQ_eThQAsb2a($u)c;T>!5B&t@z~0*+ghPDj$G1tsz0>7nK6EO z+eW+fE}&M|C^1hf`m)lx@4>fsUNfZ=^~ts7-6xKAcNEKGVWX5EG`_L?Fz%>w>bL~x zLHa6v`zl)*(!~56(J{h&)UNVu1&s8yOa`3c_c~x#mj>!vuk=a!xYbv$ywxsg%-*;P z1RTCRe`SBpt#4$H)YqGX-zqx>D#62=YJl!|K;-ofKrn2X!iA1> zPl;Xtzz->?tm7^J=0ohK0^&-6eOMJ4x&`G9xbBY2F>5=R#@bYZ1?+$oK|CyJ6elS|2o?FDMyyJ&Rr0Dz+Hpr%E~+`PerG5I43^9m^d*oVTA6|XBuYV9$dtA{K71%)qQ!Y$v+ zYl)jFvWC`|QtN_Q*J?cLoT6TW+=bd|Rbcx^Y9+z>JT~xVwTUvlqOV>8@IEyVY*fUv zXo7ODuvrrJp=~9~Zs_(yG3T+nL+~1WMuUuj(hyp9;q<+%pxRJks_%*kI_Xj*#K9NmGCc<#YRDWB%F~ojmu4-paM7SgFH< zh)2uEADDKO>4E$$@~=lzN8#G0A)z{G~&5r(Geffjo))I=_>(9?*IxSKSZDU4w9nACDc;qMjVGi< z8MZE5lj@)kQcBC!UL-r zk9KsNSw=4zaE$Fe4)I3^a}ogwQg-MjP=Ue6y?+;d7TJMwwv_~5I-po%xWPnabhNhS z2~J=Oc6gS)5D03p!%1P|xlEuQsT+>-j&sG$-kuxCym$S>HE_S-#ilxyvW7~jcRT?C zs`K5=dzJ5Ye2pG_;kU}LAGc&x8>KCcddS7*@9P2gZnk)ozG!Q|4P?%hTF5(uhQ!g9 z_z>@m(o9TsJD{el1Zt6JEOymYN#&sZ_HjY&iVG;IOdKTk5|MlDDePPOiR46>eIpTz zVY)k#?`tGFdiV<~H8+jX3nkk6bB#lzqbgvIa^$OnD*5;Np!GBBrhO({K<_&*Lw$7w zffsQ&_uw1pQ^rp=KT9Qg;-y}qOIY7w^cU)XRn&-afOiq}3t!8ySmWSW+qPQJe(S{2 z&Nn>YX-C!A8)8~GH1~X{x+}%Z?kWuVI0MlYMGni;ZyK*XwQK`_0(#b`eICUT0;u|; z#Kj?KZm+1U)y~IT;4ZICht}%0&6f>>pA(k_y-NF+4loG{9)Vel*bBI8Qb_Wf1!*SC zWs4kC4G<;2i#$;#t|k?eoT@b8y7bk=kLv#TV9cGOjmxZ+F~-R4SKU5}aBpuOleL4? zstHNU(HomZEObU8`1;eyFZ&YLXcE^p)SB;(5bhS#KoZWsVH;zx<b1R=acgl1_KAKgGiflTJLKsI;GW67tZj+09VEZ@*%(p<}AhkT)W# zo=1NF*wZh5(C}-pjSG@6J$EQrwU8sT1fy4caS|KT5+qV8i*z_VrD$|P76rs=i-D=< zEa`&`(EW;#tk;Bp)mvY*-vQn;?V_A+f^LD-m;JLjDMM}XeCpE-)QbAl*>HZP)dkmF z=JdE(;^TW;=_VoOm`ga{j-$GN$4r25<+LLun#R)8oMnZ`pn0=rS)fs&>K%N(Pav4qz|kcPgUW0uJ}OqqJ6&KaLc6GjTpbCD0*(olDSR z_E$=k)Aj?&06*J>#&j3PBz<%>N5t}|d;r`gXPhdtO(FTN+~Za5MPBWUXhUpxF(}=75V^_tUD1=&#duT3S)72rf*X|@T>?N2- zKlPR|PA$xO5CY?zJKpe^BWH#~P#>RzUM)bTX82!|l{b|881|-D@fWwg8)C1#VE6hV zthR^Ii3KnGK=OEu(985^sxhti@B99-%$Pz#gF)>gHYhLcw>8GT>k;|xvBy7y^AE29 zUx5FaC|03G0@(K$)6`eOU~O18)>P5F3P`|iEOP&P<62MDKgJBG8l4{zEKNoN71DK2 z0&0P8WdzK`Gw6cs4&T7R-@I5aVD}g$&16%q!h6`@@@B$DWSak8gaFX~AXp+ABi2J^ zup$8z$fg_OowJ@;`cMeEd}8+6=Ap5&hbcj1d(82L3r3aPc;yIwdmj%gCQY0^hjyOx z3j^XZ+10vJzc5;W($9Ur!98ZL?9wBst54Z=XY~s0Y^M)=^Cix#0>K9R6u2+=4NbGf zTUM`YZxlCRfS%@UYJ<0$Oaq>VWtmqfC4~PuqXeNoD8Q+cu7lM6obSJT4{4y&dxN-JD(06#KX44I z-T;K`yK?39gxyVjSvGHnMcL6MWjD{vj5idPORTtEWaxOS|E0_S>YKg>0)Y*p8v4`< zyodV=F|O3W1|YjT+mK@%T(6=0L91lJj)RzQ=Lb+iNpWmjUMgQaMox28>2R+4OGGm@(WnevA^ zBF|dh%B;&83nk1MHF@=JlC9!w~uPQPs-}dj0)Cv+*h||oB&B0*J zU*#GBhRM_Xm)KZvKb$nn$cD0sQZ8;X?&T4^H-bWv_YrJHnS>3g9r3q-LYh7yjl@$y zhxxG`D_?th$8h?|2Ok&^SgHtzzQT;01gJ8p0-Tii8TM0Q8qHt){KK6foj~u>>PgAW zG+vEHke`Q%6*X=bS}4=n<)LGM;{|S|=bHj1TPhL+G^X82MBVqzBJ}Wk>%5=(fh)_{QH64dB_h>rB7z+0fuw*jyG z-Kv4sOByz(0XC+)iS1nf6X;2CphFrm)yEP4E2QB=UzZ6#03$=%TTA$D(49{<$*fMr zb=!+|J(T~_DPM~M!z%p4g(dzVeDoOT^wTH1^Dq6($RKoivt7wD_1}*IRj^>Rkn1mv z%D?o+BWZzw3US`%+~_LVKmXAZ0Jk9u7d8GP#~kzt0Kq7Dt08HBhP|M_i_Qb?JpN$v z7vgG$MnuENj{Zizy9CfnXC~T3?BAv1j0Q=C+AwkcxhZh><>$bCoqbTkUjKZ(|7SI? z+wb42F%!$818N4+Zim0`8;X`P_+)PNmlXW|A~4X;X?u$IpP2^W!S)a!wmRy7Vfg-q z@=2p{!~!8hioXU*5ujH^xay;(zku9$^sAv@`2Gjg1VmubD#4aV+b(whKBIF2`Wp-H zP(T0cg6-nKxP}M+zWNvRDd?;9KThiWuZi-1Gpv0;4njT4iHGmcN96*6Pv+cES48}K z2jGuy=;w2@GyH3y7#i87!|@RKTRE6m75%;*lXf`#NkF8^f&WK9rUd_c#S@dFPu34r zJ^#qz0I%ykTA*3H-Gb!L(*WYe=8f0F<-m@gk+W-8Vh^(s*RYp8wSQ_fcPCp?~DBDTQ(VJZHT+ zy-qOVbIsP9u7U~@Zd0*zA&2N@o!0FZh0IXZ{Id)HFg8lO4%hCYabB-=92PGLM(xL{ zpFTc>8dJsaPqfiWaw!H1KMuS+$e(TYmIZq)<0=6bVZR3xdsUNSy=7aSSHg8lG!domA&UDIhrdB1ldg!ro$}YqK-lBPYi;rIakZ%mUgE~nO{36&gF_CuVe7b8wA?ySB z9ARa8kJGW)-KsCS=5D@B#rruS5SZn3P+!1AEs+CeKShKpB z+Ek}tF!*4|q| zmH^Ml|C3n~q=5^zxVd6o@VjW4eoU+W@d4Kx3cvdD^fIaY9Rk03^OT{@!hE`@5K^%l zZU3vyEyv@OlWciBV-#f-x9=$xJqTVZh#h~`fXFo*RY+i0BveXc`*wMCYB<#Zs)HER zD3rcx$Ud?#zNuuvpIaM%FfK-Ac;l~oa~n4%ab!rcE}|e0GtRfT?Yr@K_`6p&UmDTf z!BPj#M=px8N?3ZGR8MSH!I6VOlk(x};EJxWHNb6&yv989Q@jyAtc^eeJ^#O>Ayj!^ z=P(cNG$0~ymWhPRPJy-K$h7zMcyH-kmda5|$smvSbhiJ=w&Vyzp4}a@111uP7PcGh zIR#KnjrL4onMqUWXachm2a)7uxp`F0 zef?$~!v_D0+Ib0af9RW?Xg1U42o~q%u2{aK3%bC!5u*BKrpeE3M_#PGq+n4>V2(YH z-`kzLVU`Z=9oQL+oN3y_p7SV7;D!Q}i=qp6$L7WFAPOV2Y^MO4oC#Q0mKF; zEK(Q531>=|Zr$Y=0aREwM)JnhGG~vlR$4Fn%YJ?!ZQCfCw}Z<8I&mu%(<-T4DytJk zxDe+1KBwDUPP3Nx08k6A_`ty1Xw*4I*u%y)hW%A@uC-aSfo6+8t(Dkd6Zb%=Nz-G` z-P!S@_-7Wkb?m8zGK86WAAb4rj`0!~lXMncc_pjVwQ*+uKA`Ng{;wPT%>NsCXPjdJbXK#B!N7vl)(y z1iK2DWu{SF;aOj`UQz|q5PMzU2gJjdD{gw4C`6x@o6d%m?Xd?=B>Fb(p0+~p11}c0 z3`+c?KO$yQ`OSBz%4E?ciFJx9tbcYKV8LtM4qv3$`_`1eYX$WcNH4 z<+c0$_WYpt22h6{mKI_P*3do3I~@7uZ_Ft{NtVf0A8_T%>-6(krsI4Dh1O;_N##bO zdLAgwR77o@*dpUh#^-nbjeMkH16s;3K1We^>SC3?pc$pivN2j5G5JB&d%V`$@4V1B zKV=MJs`|K9Ts}a5D{<+S_)&=*H_eYwNo9q&LM)tRDr^N?UXFn&)78^o5>`!{RcNX=rZf zQEQ8@a>_tDle-aS(A$Cf4~Idov4&?T%aa47+UA3E?p)scA~~1c&C@vzFTh^*nHtHf zaoS;C3uv~j3Q!A>aOqz6?UUQACExjI<;HdUxcMZHs@7a0#VSqg+0yNPG@u#zu?;H;w(S} z0N-P3sul0XDh@EaxmQ7}^txGP2lYYHA?c~UH0$bMqVc?O-SoiP-UW05`9@&fX$jW2 zUqf^q`_Lq|2r)CkzxY0Jm;s#@$(b8+{)s8Y*nlNIC2M#*24eU+MC+zd|TGL)hJ=(aUHlSez@ zEXk}$)PM)hvYThjZ1NyCFr_!ZQqSRNeNpzR^?7iO4VWAc#4d|D#xhVR03z|LZ}i$KGUi37zI6v&Z-k@ew2C z9b3G9>*g~e6Gh&81!r-ID`#Hbl?ezg1rEljF?C`PsPNu*_nv-eO0Yv)o{% zrQzBQ=$KkK;B+mSN$yMLix|k{mo+9g9z9URh=lgIzE+PmESO{Km6}nt1A>u* z!k!|l{44mGL$!|ojxLjOpb-|#h`+cWQ1vt!DG^L&Z{gtk-fDlL7$nuRvvYy*a>jj| zWAXQsMab&`)yg+ZdW8?!_2Vr833CI?J^W_D=vzVMnxku#dl7UoY%}Wn5Z#VVrYbf^%e%acRn%AE%Wu4PtZo4!gZ#`!CRG~0_v;(7z#N$~s zVG?vyeMa3jsW+ES7ju4fMz-S{Y}5I8aCILh399&Jnkk}{uXj(Ww08e`uN}iMhl6Qp z8+(~m?gxc7YXniR^nSD3`A2F|4}!a255tSd^&Wb=AV|Cv6uk`mDZ&k`Fby`IYnz?X zcS%3+-ARUO6^%vt_$~t)sAU}3g6U*BEFZ}e<)OHQm}E?k%yeRW4fb^*8m2DA0-CI? z^qq%46Bj@1?3uskwm++k-B~LCEh|bKLeAFz)Q(loiJY<4VTPe(#{HKq#Yp}H+~NFi zb$BSa^?HrU%2{N*I_=8*igJ!SQ@Gu%WZL5yRve%KsWRGgucfrYC3(|D&QOMNKwE~t zi!@XUaCBO2yF834MIggfkDEJ5Y=4QzPl)UVJ#!@yV{nr#xC~IQCr$)pGz*PZb)OiN zzpurS|1#sbJ$A(x(0~s<(;^tAB1^+r4{T|4uO6q2CG^@0iK)D(g1H;TBC7f~ANGsU z!oKnu1?Z(oZ2Od(u*zLsx-+J4xJZJ9)tREnrn?uOuqG4PAGy6)qb~qyV2If214gp zuC)q-VaCnL(6-eo?$%#=SwACAi8-zzDeHR9IL)8(UGhF^y=WQLe$s!H4_0QvGX2RN zBxY7H@njv5qfOqT7LN_z(jDVF$@byC@iXu%H{cu@je;{DLW_NXC zdKOsDq!@_XAD{mo<;}2NQYwzT$zQseI=*QtyonGEyq1{+jf28gxecB}UL1^wnA}Ka zp#mk5SdtvZv0@f5i7ZyTi=jEx&HaO$52zc8@f($=DnH6?DiL_TRaReoZ_Em>>9nuf zzM~Ga1C!_}zH{JpR!XF5-@Hs0knL_FJiZLWx5$I);q)hPMqF#cy}2k{ig_q(mG`w) z8aERhW+AUydIsuTCu|g|cU^}`^4zDZUG8Nb&|H3i;$Z$At5^ zHtIEdxzoIVwJ9a$H~#jvnQF3bBzeRLVS(6N?Yv#nWQKe7#m#t#x&rQJf5jisma|FecB#t(quB?9D)o%(0T8BU!LLesXs#>7T@$2 zu6;7F@W_d@;nUW1(fBoaLIf}g)YPjM*z6s!y`{r=Jmqd5YQ9k+s>R^(_FfxI;isTu zhfEbM%a6j-9e2LC%0s@QBLd6NXAcyextYxWP)c(`VKjp79+vS**o*FyAicJ zqUn7>=rE>rs;Fdy!QqSh%I%vJV8gSgyWIGs;`2r@Xe`b~^i!ZLkX^n#@$DTlx!;I4 z)Kd=uasN6^uG@Md6EVwp+mL+zgyC03IO?3x?Or{@syz-a4i=1f#A^Ic?P~uPPCY(Y z7X;`3&oMgxKy1NooGW;-5JEdB`DR5W?;LxV9tTWJd#^&<(BPfsn8`k7>D2{Mn%UXY z7QMl+ugIt(m+<8T>lSAcvE<}*L(e!<{}TCEr4ccYtk$&kOsqdo$G+_;wlA{wE8sTe z(4MzD9m!LX;LjHu`fOEl+eHT#{GW|@+{4H9rJ3J(GA9vap@{$8m-AUHm`Iu6^U*Pi z*jo33BXZTCQu~OZTJLSfWUB&0&pFgR6FFDVb;(R^#CYk1)QyyZLc8m099l26ee63; ziyOiRiu=`|PH{E+KK_eZrvt6jH^qyEvF1)nRrAr0_~DS1DlH8{E;B{TI%Lr2OZ75 z(oMVHI40FYO-Le_pw==7(#J^szQ}K~`#&4^Yl(tl$4mNa>w?4sNgNjmQ@d?9rpJZphE)h)7WF=AvUuJ7F`%>$ z(b(V@e{9h0jaMG~d~Nut*N@i(dXX<=O~AL|l!qOMlQZvY9IElzCCq|rIKZUp9UH>9 zVT&ISx-{qJvHguHzZ8Kf%CHmmpdy3b{W5IX`{g{C2b~yO=Ma(;_kXFuxmmdjnVyq< z6U+)vwdi}tnr5^WvfA8XdG>SIIzgBEka->J&@Vlv!NlN#=(}2WlQB=3Ba^X8kJxK} zQ7nUI%Gney8VswqvV$d<2obx6E!8u^oFmC! z^^j%~tI{;FccE-?>qkkhR5TRe+$to^vlnoPNm-fmJk`*;9C+Wut@<24mS%Ag!(wYK zjv17~ftnWby=T+?jWB=FEu58_g5e&6bTH=T%O1H}-B%4R<6=>yv@_WE*7J{^6l;0c zDBlZ0STVITogZxyND2uB$pYJ%a|Z#`=p{if&0cGjLDrph`zuHH9R}su@u}Wu>e8V? zNJ-fp;m*-%kD+F)3EXJ?Zu5Ib9onta-3v`MuoznLH9;kn8yAfGOi(7y!K6CEd1YRxlN3Qnd+8h( z<>|^qB%!&0A9k=EwHD07h-rz=Pu)T`Cx%R#R*wJ;yE{+}$~B6WX2=jrkM96Z9AL^q zecm^I@VS!fK@Gp5%~ZKZ^6&mHy+2DOVL<(dMLBh10t^3v#@>Pz*9M#_1FHZs==OkG zTGiV(xV0ASS+AG5XC#$*^p5@cw2lTf4KH?O@evz?6 zJr~d!WGK|vkPf|&w&oE(FM~Ek^ z40J^&oo|+!g{OmJN9f!q_ph;)kNp$_Zmx(jV_(Q#hMH@t3P-Mww`}=yZxoq-4bC5z z9!OD_NZ^2eh)7(ty^_J$n+;!KT8S!Z3(lVoc(M=KR4LG@2p;&%GtLprod+n$lUm7> zcc_T*c6{iGv1<_@ zFWzA@kS6WnFb6rh`=9l2eU8Ye-ub2Up;6Lno0a71zF5f?dnNz7hhB?p4nXGIs6HPl ztAM!jZ;d|O&EmSMi!9$g7n{SbOleNTvWiD_jGcpBl&q!2eQU&2`DE&)L*c-Z@!omYZ0Hfv5gpALzxdd8i8CxQ#i_WL&0 z#qy8AJfFee=T|)A^a8f{yKyXkS2qL=gEwQruuj<}~z0p_>9^ve~Gw?L| zN5jpc^y-FBTzk&(e2Zk740ac61nP?#u+`pOC3>~LE$I|#Yl6GCm8aZVuvuHTZ#Q?{@(lf-6v2^KN=t`;#4iA3VNym9Z;x;L=Mf6l;GDNC*l89BDobFwy8Eb4sJG61Vs;7rONsJBCcZt5w@Mz`a zDPnM>x8Zyqu)aT1(BLWFMUp>Igmv>Z8w+1hLaJ}ao`vnCPFlf;?YjEiv zu*_(I*Bj#V4ekEeAW+X(S>J1L^w=?2Sxmzud>4%pb=!TdO1O^twbW_dvcFhTi{-1k zP&5u2bP=K&qD&Hc{oUQC_zQpE>h$KD9y;zFuH=R}xt;;wQdTuZ7qQ6q?!OzX zE;^LF#MQN?v1EP8n~07E=82#(lXi6AN#~RjlV?MQ#|Q#-p(CE5$QZjAE?>{QsjT>% zJ=Z#5gSLU0HgPFXl20A2>R_O5wvQUz+rY5Qh2f19?Q^M#1i_<%YkF&!5QLMN3_TKi zYvB`+s(-$U=;X4>1A#A!uIpEMGiFlwBCh<+uq?%~8o8P`WWQR*d_;&EfZDARyh%xJ zyBR$ofk2Y}puDuy7_$2Vd0q68sWn?I7CyE&h|92Y$uV+vzlPv_+lOL~v#v&CH8zgg z`?J;FQLtc}m}z8n-F%bh4SpxxL}%FG&5zczLy-1`3eT3GFxl513T*I4UT~IwM zwwqanOMMRQaobIMM?4%Wp2{pX=Aej);1$$d>@KW`f2%&%(2>BgwxBn0(Xd6&1jOS{ z!^Q_7PbCiGgU&mX4eT;ak?quaJ|&-lK-i0M?x~tD$$C$z&nYhjxKZL>z0f8uSJ_AT7-lX2==Zj?N^H|IG4R` zU;JiGqsKi4MB)`-@hj;rsDfc}qo?{pF=xg1vj^#m8`alI$?3vsI7S{Au!zbL{v!+V zM;%noY`+lw02OLnR|PzaG`}v44<4kujDg5aYoyI8R~Eg z=oG*QyZpBJ2rg%IB^Mjl`&G`!qMUyFRx7<>h@e?${DRVcsMi~$-97HDT@0CWUC1*z z3HM#2M?K-(dHbJZ{dO@@48q$d^B1I2-{9m~_Nd~7801qEH{^P|T3!Xm37C6tFo$P~ zxj%)x>V{gI(O(9&`Ig6y4t=!i_|a`m^LEtSqNJBt*J5~WS6V{D8dylpyi^%xY&sm< zV|#7JO}S;h$D5!vX;aS**QvvY)*@o%fP>K#j(a;^f4SQcGhP#UD6wv>3`^BD*dNtk zgBwy{T`qew=A9!#v{ntI3D$<9p#Gm=(yi2MB-Om9?F?}aG%0Y3W&SCnY`Hs;sK*Xr ze{$XXDQ@*()}Eu`-mH54`zIX{bm^-d<06j0{0r_ytn{j<`InO_9K5Qt8=W7pWc6yT z+BV_yKP%w5-}507s6M0v27g=*?5_)Rp6((vmnT$_imXgtOoUh{KMMOP|JQSmUPs#g9`h^ufUuJ;y1hv{=lkx|vH#aS zc1L)keWycw5Cq@xg7~LF&hk0o8l_Wb{|r6pA_bU1=<$2qKOB+v5N7j?CBqU0_n=dK zuQj-7=Qu?ytJC`sb!yF$)0Z1E2lEo%}|wN zaiWIJpRk`9WaGsPzmA!~ikTOBRSNw6*Je|^d8*XdgxAbak{6;J(#%7+oVt~{xys2} zfU%OI=Iuler;z7DK50Dml~KK}jzgxhh5)h{f6{h^ohzO5I2&S&Y)Ba|YJHriO9udq zoEOP;YpPjxaPLnObF$7rt$wvLPLM%Kv}^;V$Jz%L{{l3c*ORgo_2sFgx{EabTp3Vg zVk;KhVZ%EWB6seEtH0{8{(W>T{C3?*)9mgbhZE}dUY9T!#wBEVe@G>%I~@|Z=ilJI zl`@3wc+8%{`C(Cs@+(cC?`xHQlR=l9G>1P|?ZU5cGdTKY6w?RtNm zZ@F-tYV?oT!0_L1zaFV}mdz2lqFAqQ@t0()&`+8yn(5+0DX*p?o2kW7Q2`!{+fW=2 z8?Rk0OWXO%nxOT$mTx6 z?KMFfD3k>sF(;a8_`FjJ4xEE$Ux6=RaOYeQb2X;?rX8cuv>5DMEZG}F@x=YzxZ8(L zRrD`oLOV3vo)JJF{!>^|=tc)C<{_z?{}&|&IcxwB6E{>YyA*4!-o~N3MH#XpW2A~2B#tA|b%-6rbj%~+4gHH`0T`p-`IRNH^0qO#o zysL@4jwdgTD@en};C{AWG1u=Xuh-xc6UfO=ttbAc(!9HnpK2 z$iP&uMxwdzvLCRBH+OEMo&gr8K_R%9K$o{OG+T|5-=4wuBwVyyI>Yx?2)xATMcJ;& zTq0vjL^-aaRQQ>lK0QG9d6%i0SZ$l-p>+N7YU!K&mdBdwa)Q@h&;P`{Qoh8EnKHd6 z_ExBYDUm7QpeV=JBv@|K-v8~z{>j<*BH;bcxfXr8Uhj^oEG9*dbFWcrW9}UTLFhXp zwWrQ=l#On?Y?-39f;mYnX(S3WX+N6N%^TWLpN0KDHbc5JK>K>sc)!mpYi&I5@l?4t z#iHWaJT@Xj5{m%%N$Kc&%peC)k#t-;kOq9x3fgYM(?0E*=m5;&#W*H(^Y<^pX!`7# zu>V3-O&)VAe?e6L6VY~{>3&`uhJTq)$>9TwBz>{ME8&&l)sqrlu~||vXLR)hTAg0? zd$Pi8ko)Qv4MQW)Po+a|&8!y9ZE~ty9Ctc@A%$X(qWf+9%rm9gAltyJ zN6?W<%LtF@N_eE81Vcbawub#h%89*kKcHK2eK%4DIQlio^vZj5NtemmOHJpdN16>u z?XT8Twq1O8XT3FTf;Ss9jNc4aZ^Oh{@1T(IYNAHmH|LQ+z++=yf9?Q)A>_)1E2p`grQvw!Wq^{w@e^0VScB->Kk=zE#`}o@-Rb zMGla2Xvrw%EC6nm&nqJ}9i5Ta2CZ)K9D$yB5Yr~p01>yJ)wf?JFn@TirMGG__6iU> zSm4+SSlUDHgkQzI6zN3#a;dM+Bc~)IJ!?SYpMYerf56aHo+k4vV(r(p|E|dcNDI~` zh2P#)%vz%}xtJynC=gg3n-qp+@;)H>^6fBPq{?c)VGgoJ#8uz?VQhK8pmJXpcUf!g z#p>RXm42%4Y|YjL5@k~JE~fHj%S}K#WvD@%B=ZAyqpp^;+UOHcPH(=r1^+fh(?F(I zZ)hak%Aecq`-Dme$zv9y0jP=-5K!^r^|+Ly(arJEy^2r(HD1)T?XjD|6MesUoL)ol z%`O)A42Bm9d|E>)?rxv)atWcc`3NS^A6{(GTUj8RAIS_tVI>`SMD+F=fA(&-(a5ot7cHN-*zVyfyUSINyHd*Y^jaexm&U-?7pGbI z>Y!nM`H#IUJEQ8LsHdlX-P z9**vncUNbRfZiyMGsbP(d4H=lRdO^buCCIOK!}ST;Qq}&aP7NOL1cVBexBxY;S89o zGiIu%;xRU0=-XMe0c=e$9Vs7+^k5YLJ;xf35J*iTA>Q_d_YLRBGhC(5&p*ry zT(9TE`IzYHL{l9FU5j7t%c3Z1FPI|o30Km4=y>Q4B@g8Au5453^qip-Ng0xX(#G=3 z!ZjB;u_lIQ%Q6Rk-~4lKyb!r+$;ys%y=g7D9Y!ki)kyk7%tOb>wyS$cpq3VZ1w{Dv zO#cDSujt|L>n@jFBmjb>_ldB_KfrmAfl@np2kEUJZB^myDfi_Eea+r>CdM1{xn6;( zz+T+>YD71y4;=flH(g8mKlgzC`P_e8ANK(fD)oi*3d}#u5IGP~rprMdm%IK!U8HU^ zpoI>*-W!VlHIN_RYHF%x?EKvpB*%Jt`GwNity|dgN^;UVz?DYr%DMksi5L^OddRJK z-9OZ5fY5D#CMj=^Rjm9OXb#Y_^2Nz}{)Dc;IJD>7N{^Up(!b-JBhkd~=Tp>A|2)_y zDfCU4=q>*GR$X@JTbx{0oc{Y!;Ey0QAN*0<*JN5=m*#Dtk))Ix=vm^my2MdRK2(ZB zp3;dJ5mJjmj?k@3hRC5;ap&oODAOYFEu+>)2vulD6u zfc~h|cv%!wmPq{fWNJW&Vjo)B<@oGirT??l5%m#o&_CHY{VtmI@45Dw=?`=Q@X^q+ z8*-0{n0rk2hbDy)%K0B^`?K1MGQq`vA(-%>`xr{hs|DCo#5)55F#QYfU zPsQD1!Tl&`FwX6HQO&ebFK^tz{DbURHq`wUFWVp^A1BWW=3tNeqUMm;>q`GeG<{%mv&(ilH_urF0ndFR=voBmc}JSO=o=1-{M;e# z6$xMzcf4RUUIoPRdF8{qwqh!A+rKwy5!j(^Lh8-`p;$`>w3S%2t0NGbZ31Yoq;s7Z z$U|imOBO%_62&Y(g!IE6hanbV24Gv8Dp8}sq#BMXX;(ExJi&j< zLznS^m2EyYu=?vb`AmxfTktkP-nos<>?eiY^$B)`b5nzJ6ox2D!ewoc%+cLyp|$bP zN-n#tA;NgO1J2R`OQ6Q^1A}fi z3qvqlIQZ}0x!U)qH7}6Gghxc8|6V2{7!gKLVDRq&;6qswa5O%$wjKDI0v(fprhNG( zhf!3L3`#NIf*9Aujwk@4e77wkC=8G$=EO*`*_$Hk$p>j{AhtypS_5hxWdJ@6y<;=L zE*uMzPo~SRUccL4r>z6noyax3tF0HbfR?Wo-O13cB!`{F;cQ}cR?`@QnbhdH8teWP zPyW7Zl!x!vK>aS$0(aH%ujIvn0hHgX1>=kXm%WMlSMY&K6_PNR?8{QkY9D!cpJODj zm_~ZkgL7v(8td%)N`0DSSVp3kw{&60as=Aa4S0CW!-8H=rZVt zfawqQs<)V2+A%6~r8pU6trr_9*Cuc-4=?uE`T^br#l@YGzQ$B8=Sa)N`mx564`oS} z7Bk}nPllfC1Kq6vqEj=rVSt8a-Ia2H^|z9`0{9+b4g=+11D>pQSjg9RlL72W5dt2dZop|eg0#@%hc4qq`C&_}{eik4srrCoQm zfT3i*HY^^;tQ*JWW&Le_he})eiNX&6-2LsFL)ZU*LJB+CJQusj+cVzZa8PZnv6+F& zYor9i`U^oP!qU$km=!u-i{9+W=UHFL zy0&j~jG>aa-!OlONI=eR^`2AcTGQNu=SJTjI6S?}Uc6s5y?(36D?pd!hPQtEA1*Q# zm>!nR8IwE`xtwfzhy+5$vwLRsmGb>_hJinTa=CH!B>r6&HPd2s4td=}eiw3g#X;6T~Hjd~W1?jI-88&+WE?p(R<@^D2;f3YRb!>W|{P;~yj%sOEOM43O5+%Z5M?d?VY^AsHE7?RC%cxgGF zw$sGJi@v;LrLPc0VX&z6K{fV*gjSh}A4KaE@I;4~I=PaN4t%MrGjk=A`vxqufK<-` z^v#L*MZ(4QTcDFuZErct??q?@>gVJU-+cX3y8&o@O!#}$M~@yJdgCzP{Y$R1myD2x z)kWOn4Tm9>ClU0;w}{37(P??98=g`$D@(J!p@AX>qpSh#gXMEHv^^4d(fSSkB`%YM zxf=Jf!$o)J%jV2^@X&yliSyE;v$yT^{lh&E38Dx#)CXDn<-3aX;3L`jhCEk`Tj4n( z4I&Mk*6Z>)e`7(J=>h>x$4+T%oYxqmnw{iAzLcWW^+&kN>#K`@&f;S54k5klBMHjdwYXkRkEkp zbHJp2v9P#yJmE5tM(YZx?y6nNtFSKVUv)zA%qP`LJF|wyaZiCPkdP`cVc#=n!a#Xk z{MW`*Qn;=~&Ps~2?HZ6r;(MM8R=Gc^3s|j^4P2nY(eszgk?vxcpwY=y zdA|6^!s6~67APrb#H2#s6*p^tvRZXMV#B{!DDdRGKHkzzGVVaUh_a)OpEymx22B+` zNCPAjyW=lNv3==K{VOCf2I$QB zQmb%SPRdOdYaUuo)vF8F)t_t(fvEUySLwIeY-%eYYGoO$;C7@R(bVBOaq4ZSpMX@> zQN8}!QhhV|Gwdh@;oH8lu5jDg&Q2i6v)=TXxX=3mnj257n^T#jy0TXae)qd14eg&2 z$cojtzps&P81-$`S2Kw37EpDNCE8G|Z$S03jnQQ&`5|NA`)!iF!{=w%F>&FX5mMOn zG?$g2ll}4yR?Bghnfm>RkUQ;~C9?4Gf`h$i^)^iG!EfyHn=MCQl(vGY37C1gt0Gqs zMTZv}E_+8J*EXVuTO6v*ex?=AdvsI{fvA7O)>dJ@IG@h^_kTASc3(6B_Lof5@mJ*| z5ogthqv){FI`0Rs+)JxA%*iNd;MXX5e%)0|zhIB+ll+K$#Lh+Betm_RDnkpdyCaWp z6O`z_Tg{%gS*9(dCxbsXax|bXR@ii#8&BpAy#vlSYJX-sJRfOvJq-X43$Ls1gUFx#s8ZFYMdf|3`~{1ap!y|SbPgY5N#lKWg~!Qsy5j2e z>QH0C$C1iVh-Qo6aEik!GOJy0`oNwEtQmdZK;5bFXdto0<8g)_P6Ia`+nFxK%vn#x zGyyMn?A+gFv2d{a@zHDNKTajER`|eLjhWDp6C-I&Pd!vA+|N`>TDzPnbY&R@W9T#O zMOsJ<%<{Tl_UU?qBSO6&G8v`%Q(PKJ643vgpHLfT^{!QR`g$U5h#6)AOt38f@oa*`+63Dn}Hej9PK7b zf95OzCkZ=nKVKm8{PlVXF!{H?tL6MxCSV%F9Hud5*Lwb;Zw3ZnV=(3>Hj)*%e+3rs z@_e*leDqAOEs1{nNCF1{*E5^*SGMrKm!>rlxP+{kwEn7Pr3F}XO#5CE^2q)DCXawW z!TcW|PJk6ytpu6Ow&uT=#)uP;(V7485Cw2xlkWN-M>0Y{5jHs9(J}OUPa*{FU_w9q z)&1`WW}yNP+-8ddVf=Z&5#W0#B7a<$#~8hXz|iLA=vLWpeV#=L{LqXG0{Wj`VXt6^ z86AuBFHF=27!$Ix*ca&E2fX(g@WK_obi02BeE_P4Ha5hS3bQ{mA@L!Ac~U)rp9qi0 zOAUMEenfMI0~MdG*3ksI_m}*MSywFLTQ2<5z}^1&(eRWSjV(Tg1S;_CF+&1ZtiNTT z4Un|w-HiR0H}-=X>dgkRcU88TdkYn+UkH_DfHuyQxJlkA1YR!94A%U)_-Z!`&$ef* z^VXGpObukq`eVAzV(Lj<#f2l;mIY;a3ae^ zYAqlh)u5{a?rSsQ+IhVw_e)u zvcHs18)x9#_16LKV`a~G=jQxbVRcf~#IG4-9%f4wPzHM9xtJhO?FJ{wbMDafmWTUj z@-P~Tiri3C&EW(H^{2A@rK~EekK+-|iWi-070shqVA7x0+;)3Lu9r~M^)LNQaTi5I z&S4|gbrpgbGDhOWV=JKk=eYxW_=mI@+bQ_g+VeX8zSP72b4KQ2iBpVFKFI6a7eusk zHHRZj|1=wiLpbU02D+9nc|DA6?;FQ!(SW~m%4u52tJSUsIyHM-XE~mV*$s?}bM>TX zV_G-eHh)ccqg=!5*dFwJa46x@m*LK)Y~HC~*6#Mfs;@K!r94i68%aT3ng+Jw6Y?V` znnXGlLqo=YPjd!+ADE_Rou@mn&d}$}$G_z`Lf`-vh>`5}KHX&enWZc~Q}38~F#6;PzNSWeT7OmJQ$#ERM~mvmRoE*w z$wkep^aI)0#Nz1g^Iew<%l-QEpY?{$V1)0S);f4xwKYjL9(cpx!S-Yx=O5MkbB=b& zAlH*`T|<{t*eGRrcCq4~$5=rXh~wU(Ay~ntoK5?2MVgckD}jN?^|q=QHi6LF%l;g1 z&i+w4Ci5&qx%F`CH+)i6xD?L?Gt}FfT$h@minT|Pct~Vl;S6wmL#OJZ^bxD{hEsUU z9W{U5ooEo7;mvXvs3{CrFE4(Hc&q~zN%j&N2dtnE-qqWNL9v`+?x%5#+=6k?C{o3x z!TOI=xH=}Siq}Aq`I`ociJH{3jT%tO(BWc}c(TPU93fBfm^U_$n)7X_A=%BVeV3>W z(CMxz!=*mITrDaN-G?^@2Jc!t7oa}|JX^=H*HaP`+zZV(wOeRia&~)9YX4j$pWqE( zY6eG2y>YO3p&{F(si(@uVG}P`a_NAO{F$wEvrYlV&GS(fzQYo?!0|k<)Ughqj_%&_ z4f>6A!~$~`7~Va0qK_48wGC(+8vE|`7t!mr;g;UHLnf^8s{4``^-XMYJfh}wAqq&c z00nN`PfBT|sJ3b2!P#@x!@BtOwc%zoBwm_cMK7uA=xnRO9XeYXT6g;er;>Z&?DuVO ztWH;t5^lx`7O1o)6{OJkq}x9?o|!12c66^Wcnnm^{`a6<7Ay zHX7}R;~o|~JfB9Qu3`DdF66k+@)3tI>S)0%OOKWtaZkP&#Wl@b6ZX2*pCOel@AkLr zPOjs1cTdqWmbP=_;>FG_ZmFL53Ow9NmvE)ykjNyfu2=$=wK2>S(bp~uf3e1;(3P)! zGEws##oyZhW8QPcX_Y9 zCQ!>w4|RT|^0#OyUE6ueC7x14;Mo1%qqA)d#E0`;%a9BSKI*Yebv^*XKt-IUXqw;@ zy>(~LbZhycZ;bTHx+J}6dUuh_&!!+;sb|kp!(krJ18L^^oAaf-bkBAjhUGi(&+<&K zNZW>I`HwW=z{0zBSp=Q)b z)w&Sjs%clZgI2}zVn)npp)=!dZGSoRMhiMc+E!2q758(iTAyC+@n_$j=z08Q#`z0j zcbWZdoc>&5f_^4duj&$0NNwm02lWu!SoM-~y?&ZfP$JT{Q zy2?Gajx}b77CkQPb6xhtZ*FT_44byTLsy$>zC-QiI1z^DIaWbBe_fuBVb({Y*h^XO zyKP*JX@S$;ix&zM8fN2-$;;x*5T2gryIYov*;|jUoo4J91@6yIOZ0=ofqvceqp&vX zWt}s}%kYpJlI0b|kK2lrMgW!S5LM|1i<#y^ocyHElkg0@4ZNcoa=h6|6+oHTVYXpS zvxY|j#9!2~Ysb>Y2F`bdx9{^3))^r%vz-l)VrehR0KXZb{8y&@0NvK@9-DkT3SBa_Jbl?rA;@KEL8F&**OK(v3L#Jg zOYAS;EZEf4;MjYF@mOVepXXAMluT%~!M(+Ph+7zFOrKlCHVA;);98c>5h5#UFs}8_ zzrdl?YfFJRJ$a7(*Rs7!*|hQ=Qf?UGGqTyk@$U1-Rlgs=Ign}_xIM{cDujlrP-e?!`VMtA|Pj1*Sj zvhI19r* z4YF*+yS%t_h;=pJo&Mi~#(#T9-7P z(;=H$FpYGT%M3(;7d%*_T36^*wvL}r40+M(_*ZSpwkb{+!X4k%~3 z-I@tjx4Y=sKBSD1@niDJcm7}~yu4b$>Z``S%8+O_<-Jt|&H9i)s3>XS`@LBSF4~jRa zMA-;TY7UD<@Uay!8wboSP$ui<(`JU7Bf}=|Q1i<^XkYzAOd4e1UT5jz`Vl>o+7H5# zAwPLOT{5<dotuJI{O80cV3@t*<_*Uk_7xhyHwz@ zSssHr^9O_7MP7H~(N+2L>*qcg%*00+?O2JqQ|AaMqs@L|y}4hQZ^m*&$+@!Uf81=e z--h7u2)QM{MwOc2v1XsR@p4vC87f8VcJ#A-gOI`B>5cVu;Y>1%W?Hw-3ZeLgJ(hw4?H9(O8PtWArM+XtHHmZe}su1PQtXVD#X`3rdM_GPAso z9jvM?U$xBYe%NCh9+~2X@Y*J4d}w&E0te@rjt8m|udHh43fePbaptKiSryr3&S-hB z-QWY+sOnNLyZO>mFMqI$O*amxjD}~3t;Fk_vEV^RKy?1v&|JaCUDMKg4fXo=48piN zi5SjWYfhioB3cvOnq|CoKD`|W?;f||7jD*$HSwC8v@V-*k(&Tb(jN!X1(sS7rA&-( z`;Nx{i!^S)-A(bS^xKjH5ZePKqniH0*B_aLWgSR}Xl#LJyQI{#qlfA(reM@Nwm6rCP|*`SUqB_sqp>9 zQD&WKOS&5lf2F*VRUVC(Z?4Yv@o{^9iG{OkP$V=K0Z)WVNrhG)GsAMx!?lVXS1Vc8 zr@^+VyQs2v=4f2>S-+vx|Bz?a!?|XZa z#Uh-1iih9Ei!Vgi=da-RR#j$B2n%xm^b!Tv+~%dQOMrwgtNo5zPXR_cf!o;&b>_>R zS)Gtew@g1`8^pjXR2JLGaa#?fcDjzS!yBQ*33K)l<`*_!->EbR9O;yFPDjf#(W}xI z&V58sDI8PgCxKft4x%mn{#3~y{gc28dTllF3_Z&?Vx^UyZhfz)y>kAmf;l~Hyw^S> z3xU&WMeP{;Hn>Dgw4PMOh;l}iCm7fhvgA2`TMhuv=GAtUO8L_)0P(Pj#N6fJSm@L6 zab{M%?75mA%%Kan1(GVcWXxE)6#508DrC(q_Grwl1XcclazF{Q#pQMMlM!w`AEIqU zsulih=TbS;k;A3iEqL%mE}IW?^q@}gu!wIk8)^W!-Ta*(fxj+#A0)ts5c?FZUHG+u zeLf(UCL~j>&-XL&k0Tb$^PDyDm*ZtOZw&pP1S#+~R1Uw#?!*kDDOG%(J1^Yy1zl<0 zH+QPq1P{KkxasN64A&U-ySVSwBNLhSnm*Fm+9Y-hx|z*7u`5s-_ZrnrwGSrzq zTe{@2hJ@MVFNM05`ocY`3_0ibOtqy_6$spWSo=LS@t@$+(R^_s3*R~OnWuD>xP)&n z%J2#mEwN&h1D-+T??0df9 z)$dc1y7LmJOR~>7+n!V?sSY2+sUB<&pfq4_51nV)jS-kmGt+F!OT{P|QX#|n!YEQ_ zIJ5I&yr=#gf4rGg0mW*6E5$xe$5`i8D;zdlVnZtix~-$aP2RWq(s5B15VV-t(hpk7 zzhgB4Nl(gJ?R?6}|8SF7`EgDZr9_^eOAMvDG^;pWYk~CT6vV5=Yep~Rrx=AONDs3G zb05Fks;xgr-wK7VWy7lnPI_M5K6T92l{yp|IrRW6ON_=jRSnOnwcyEdE9?<~^rGJq z=`!c)9NpK1pVAUwRb7}xrxNIqR+%!jVCPURd{r_kC6{D6db3`$c*tk@ZY6s*X?v|I zwz(l}C6l_(SClwdlY--Rc1wH&b}L_cWVshFm^5ChIP=sQ1D>T7o*5DKA8i!z2^R>_ z=zJ)5#e+=gbp;S_*_+CY3yD=S0gK(Zr8}9}1~;gN{(7YqENZ&rM-xokbrG&wG30?C zqQu{Z3HK;U?5=9XI(GSEprz^qht-`p$xzxAa!NI2ff>ru#O~Yi;HZe_NbN7aFm}(d zfX=0MpICikRAvzFtg>%l)J)u#td%E6A2{@eL^AeaphFj%Jp;=LZY66{k$}9iZj8W0 zaflVF)%iw$^7=slNyya`_FW5~$*>vo5Z~j{zL8H=BtNe|O~=Y=IE`qMtI&7PF>N-A zkdcwQ%=S1Re~w+3*nrz*vRQc8m|Ch*rWleeO9>*_4owLK~ zk9huEGGa&>?v0wSI0#{~q*O#qYh0SCAd3-Kzb(i}skGBQOF=pr-t49`q7^a3Oihm5 z@>BA!A3>q&lrFDxev#koD5HrzHekarktHB3FYR&)*ez1F8qvp{zimF-Nn|y?VE`|n z(CaEScD{r7y;IpL+thG@i3E>RZ;|Lu}5(jhkzAsQ7Y7 zGd}SQIvcLWl>D-kv3{DjduD6NvIET*OJCD2ALlBj221$n{v#Nvn?Jo+5QZy>4Twno z5{&<#Ia+@dEB88tKA)ip0z21ZNMv9eodzUwXj!Btb9K$kBOzKH4_S`XiXsXII5^7) zR1ht73k@*3wC~#%>})-wd@Uq#LJwRyP4kPF`qnk*ICqXPBKY3>_UTdPr3t+KR#t)5AE(EpaBiE>Q z7i^c>p(vEERinqB>XR9ugA}MSa7le4!DSz{7TR9i8PHZQCunb}XL%vip(e6)OMe;K zZ|eHk$@-KS%b!xv1p}+1#M2AD3H8@Aau1REtyyrlyLIS@kw!_za>8Uszu%v*DG<;U z0^(;_0yAZ^PQsQSTEgb-#vBzAJ+t&tk{Jmn4SO@dQg2t%9wHP@%D#-@(Rw9c`@qs@ zFB0jeW|tnWlr+WL*r9i)LkcquA@rPcUm zzRRxEAD_QDQt&osx1?<~1`ULsh-G{Bep%%iiew9%AS%;(5GCF|s28%ly`>Z0%=@86 zfkrMbmIkSe3f&&V>e41K{DV{+O}dak%+ExThUPuDH_iQV-posky0lAqSF!Xhy8Dpo zBC+Jpe3)XtSZ1boIn9a|u0uB}%4mwxqvW*HRu#$I-ABnpKUgj)=x3O#prmw{W6i8b zDlZlesE{2cxiTXaD^omYrF=a_;!7Q6TBR~YHY8kIg-fT_YHM24f%T2=%5%=w)G682 z%M;m+nB&r+1?}a>VSx4G2iE*zD2eq&6~ZuZq*~Tk`^k}05&#G2#{U25X|IVxB+;Iz z4yQxi-{EyP)%!yxdx^qUhb{p$QqXDr1$vRrI5N3=oatNTyrEW z2vNYIcp)ew(Lh3ek!MRPJ+_AiTJqFY{}P%E>3ZAg@wNX`vPv+b*X zs1)pAeWo^uCKIC_Qs>z$(7iQrtu*Wh_GxGlJS*D!q}C&I86^1iJ=U7Wei(ATs@PRf zCtJIf8+QBKdtclt}OXV?K3wc!V-YCO5>A|j2uM>ZEh6N3*uK&21e8EQO7?+ zm`9LPBGB@IXs-UbdveKitMtg1N)SZR!eo+dxPRVMcVzXb7CqgidD5JhO8{tjYEaqF z)cl^i8oUV!>t+vH4(_vM?vVc8LzJH{vfMs;zX=cj zJM)PFT$Pc(jMlgfvp-Ym^UmxCPihRvrCBFO~-8k&-b`z9}9m$W*RiU3Fg zu*On?u%4j)@QhgRVG4>ylqSZ~JbJ4>0tBa>J3(45k;ktcGmWa2ku3&ZCcE!;3RtzN zI=7ztT!ja%d~A4|C>sGmk_>r2@4E#HGO87|3!xX!e2x{((*}G?mHh^@5Ct`*7kdlr z!ZIp`#vxZerCGj6J_i2uGIP&atfk~oQhp&u{UXt!7crs8V1;seiX?Rsd*6tDq3hR- z4(6FHGgdkBk3D>k&4wM^vIlo*R;!Tt>e5XnF^l6{_2>5knIv-{A=%}5F)ekZuQa2@ z%t5`x4EG||A(m4I_9g&!fG&Nk0Uh)9SF$!S6*d$UcNduT7Gd-nikr$)5S_X$cC`|)x$0=LKe5-A?c$9)-uV49Frx z%YILi_R3_@jU(f;&(>TSWb>@e^u`!kMWhH+ho9v=2>d z-ikmhmNzs!4U+T>L`9a2D#!pD^)D;#ddq+uNw5W^+AAe$-***@l#?TUo;WO_D-9A3 zcCrK@6r8F~*d1*ax2ri;T%!hmf1n_l$ zzciXuBn5)+2GDMZV1*S!{!D+YB{4gtoaQr9a9Iz^=l0LSLR=UoFJ7@~+%Gh889dh> zUt{Wa`^gZ9u&7Rl(m?AM5E_Z9OvZw>)(&n#YP0)qk_K3rXRK*8s?4aZs0LnZJv+bL zrSCgX?tF1nNd?%r<(eZsD=A)M1vlQ=#3dwN9S)VuIwJoK5?4-|RZX=t) zZJ2Y$J+7NmsW3GVm$RsWx=_M4-tm)|6qiaiIsZ`pRgF(m!#gvp^*t|}lM#e)1`*Jpp_BefGs<4( zvN*7Zg}Lhqk$3{#DQMfJkjl~CDDXi&f}aB+vXJ-R#4}<5O}@}sA>=}pqi^{uvD=a>Qw4K&{7s0 zj<7hFy@0%Tcd(+aoit#iSB0h_Xjr16<4hL(N~NtXtk^%Wnp~UvH+b$?pW9ZRTrW>T ziu>iZvFCcE!M&%{NNSqt^;DWK^-h3jLm40c>6w!8CycYz|JYFpx(~jKfrDx~9xK-{ z2ua^f3&$_2`Kf2^B+DD0vij_t${uiZS*YAqM%3KNI>F7T#&rnJhYAg1L{w+zB@uE?(0}_^wwIIar6d zd|WD0qb;=)VU5j<(e(ISF&qP=Nc{R9H3_KSfe1}jf}y1Fp^0y08=iCsy+nZPPOedn zw4l=^g*hz!n?v77(1aB%<89sRbX<=z#hR#Q%_qWKk>ky3WiqCj&Ya*f{2JW7CRCUb zFKMP^l}KDjEZ9Vh$w6c*N}kwrhuGMd*y>eH-}GDZ>J=TinzcmQ%GjGvo_#&kBZh!oQJ8b>Q<$NS*n9h5Z%~ws$%s&~KTFgT}rUpp@7)_OLe2oZZ+bg7oxO_=ZJd_5PZFVr<^Ep}Sc*6+dHpZ+>= zd_MJI@<+s8HA#VL;llgyMDPq!8^&Y|4O?y)wwgC-Ft)!IRuC9h+opM_R0jaLxFy^^ z!AW6mxru8wA+bys$O2V)aOLaP1du31XpWqVV8SV82DbgHw6e3&>St%= zUz{(ycvFGEO9SeKN5pOE3Vd7jPI67(bnw_XO2MIH9_siD3q3W%HJwc+6Wz;e{pye{ zKD~?JGr)kbxCpsiG{5KvF98xZ7j)|Kw}ipq@Zi^yZ(q>MsI9gtn)eJPbK~FGW=or( zWtV64Q-y79OQ8`M8Gqsg3%>E+_3YhmG75MVX3}7E7l2LnjmUmLfjim};_2VD%u&V6 z`ct^}Yp&iB{}f~_E~|T$B?TJoshL#R@=zz%K+|BTvMI7edJmo{m(^4xN{3_`GVV@V zzmH45t#oe&^WyE^>&%f-t!hx-v^l<06mu`}9Mi|s>RS=BYA7+iv`yGsLo3gfCD`_- z?zQB%y8-p@dA_=&3>vdB>_PDvNI4B|M(wm4mc4YhFd0^OmXbi(3;p|D6%zm$&@~L8U9NxnWakS#Vt)6U!-86~+DdtH zcS^cL+#*+MYDONT7sjEVAlCa|vg-dNbQQk=Psbu^B+(93eqX_nTzO8zkh0wVa>`20 z!Ye)MjNy7mbEaT^N5AV`p0#Rn8o30|{6D?W?Y^|u^d%D&k4oe`wQ!gp?hYsT#)xym z0rkN)e_{D0NH}2_n?$kOitS1_I{*I^#5h1W&m_EWD3hRXgPjYJw<95(!J+M^Wwm4X2l22V_AB+=(%++o|ck zyYTr0xc>7gm@OR2qsysNNP3Sveu&08$kf2IcbUW9nM4!W<9=g`PJNn=R$)~wnIeBL zxX0Au*77TS6s!+~(JO?D-xUq8@8<&QY=HIzc&*<#@N!t)1_NBb`TuN`FEAMMipuFP zRFVMoXe||U%ww{2cz7tvl(&i{rz&lhnK+M z%V% z87z+mzPOh)Sp9n{z=x<%V9*F3{Q?kepz!AY-ZUDEfAg3BM9-H-WD5E%qy2bJQ6@^C zP8jr6Ed>(#=Xnw&Rj}16I<|AW{Vz1>?5>qhJA1%3JJ}IHt@zX|Y0`|PrT}5w*qAnG zJ$3a7{3M6j&RF@8UzgnsCGL;47sR&a7n%o_5%8D^T&d8o68F@$lL=1gjd}~9hpa4- zv~Q-&Fw;NtP<2Z|02LU);9Gd&pFRKHjb0{TH!4CLeCMt$I>cZ&qhiPZ;*2oo;R@N{ zbzGrfpFF^%Ku&mLUaFqtuteS?7w5e6AW&SpXJEFpW1H*k)t~$#N)JevRZJc4&sIqn zOqo#ttOTh9wj!hnykHLu0^=J;($`ynu8eJRzm)ue(X(R<{PXBdtTt4Shaw^x9&oY% zU?_$4A_#y~KIR&5*emTwGGovGa)SgV{@$Id?)90%G`ZgfWpAQ-rXpL#!qtk7M z(Mtr!9an!Z1WUHQ{td z`bZ>vYrtI)$E#M&s$qkw4(iQm3>94ei9=>vJeOA2>Q*D^S8sRvV#{!S8CJ@I z(Mt+fyU00a;SdZnloYgOJ@(w0_B#toD*=Sk+SAm#}z$C+koaKb`Uu^b# zx5z2#OBU5=p#pM10n|<>C+t?>C2d)pu&Es-=WU~Tom6SN{ zq2U0ej*nJJ<8u%4cC@*tgbx8=+c%c9XKT3~Bm68-@5ln|-2A{6AnCByPk?)gCSEQz zJg}5s%M<0#BVrKkzYtm{&1S+!eyZ!CY^_^zA#Aq=RyJ7VM8`h>P((y|>bk1u>$Uod zjaMwec^tGmM{azXh+>M*U-0~c3atwOP7wv+4vc`cX7F=3=x0UXG00_2-+Zar({4Rd z++`BmY~>z$yRkH=x&AFPTyYY&EJ1f~ra~N`pG_$>V)@na4`NCjTS?|bY{x3V5xB%+ z?*fUL5KwRiN{1|b%y#n(L@9NfJ=~&2kW&y}5{xjgy!@q<5i;dRIeVl@WPN)@ip(ea z1uM*XDsS#KdDtd!u^yaAe2I`;`Vler7(Wls|B_}rwh(v$*;WguMC^S^&ST7%5GZ$d8LC1 zkrh-Ima>LA7b!rwZ&C{8l)a~xbkEW?IHj5K*&yChC@KE}>-Z~VlHZV7RYo4DdwJ)s zT2Y8P2X#`3qDngB3o)gT9}P^^yOMhz7;PP|bF^VvZu>+go4%TZopGOeSbZEuDF1x6 z$)KkkpW0pi@(Y@0t70i$JG6?KH=c?GM##A}qeP7lD*X3LE~Y*V+SNiTPykkL>|!^A zxiSCD^vC&>%7w!W-aE^$44Tb~L~dyX)nC6ow9}Wb-V!_LKEvu|#vbMse?4AE*>ltA z>1DkVcmg1dept6W0z(BoV^A{>0< zSp3D;n<-dR|^^VL;dT7R#?)d|#n3xhAi1@GaVxW`{`Ntj^ zV0$jWSvto#IK6ge-z;f4Pw{BkK^$c8zQ41R-RRHW6uy)$%MfihKj-0NcmRsz)&nd` zqGnO~(W+5RaJ-Jn_;kIm_nkex1kdPn?~U>yLnU)obu1khUMPEI0Us}J5)Yrf5+Zo& zhZ)9iWQ;Y;9+hDG#`A?8acgrayfA25*ZWpD#2pPR4}gE>oiF!i`})Vjt(k{lz7I1m zNnFM!@MA}C#@XJyoE+b_2oR}ox&3Glz+7^hIa=?ufIrVgG0LOtxCKS#7M)2 zlGtpMxro07dErcJb-ZS51RWgx>MjiaQpa0NgsIu@Y9Hw+U`6C=?ym-qF-oi z3-gmaC-K~rvk(u#ef1a_GsND-wyK$1`j6SuoJ}b^V~{nM0Av*7mA3uF#>ot>E-hzG z#4mGec=~>z=Cc?5^RtWC3sPKdw1!_?1_Km6@77gG4A?F1 z@+#c^i;RNPf9@N*)Qr}AU>lqb%Xk#=I4H&GXeQqb!23t^GuOT6ySu8Wjl#i;tC@Fb z!cnfaS}-YaXx87DX;C%h5)HO=GMk1Z7oOelX1oBM9j6xO5^VP=DrH*Lmfnl#pih@mL32}h}g;LAL7O`H( zLZE)a?tsg58@zXVtwUL`az$d-&_83E!ZbZxeRj@s!1p9@_q4VzbV>>c(gY|QLq4_R zXs}Ibdu9(gSVKIDl<}wr)eH$pljfk+2*WNVkpo|!aO0ivy)o*1r+zj{ee=$CfAu>n zvtB9Mq<$C=dmX4B@H<8W$z@2U*LX~1$=C*pyZrs-(1xehs3^< zYR@g5o%>gAcm@~jOSQ!S+-ghBC2`}}j^*|^5#H{L01)#}yoaiOp$mBszLccQ54d+G zJW1cUSD6nEUNJk^cUk$ajg#_@YMwlVb~r*!+5~dfG~2qAOftEXhr+yNaJ(KYel#HC zJ(8=&a54JyhOpCuD(+?!wE@0tFWfi@s6RQzK%de?3unAl8*ngrWu++g`sn`Xv{?|} zYuGdg`f*8p#Rs!Uw)j6bvIH|AaM608W5g!+RKeML47d(q)Wu9ujv#Kp<*sV2e`%l< zY#7qtIqK&qV6RD1UQyZMTUv<0qzd3(LWD|#8q|{fc8nGY2|cwBOW$MYyR*AV4e$z zYUmkXiDp&hK%_Cri$NrApKk=Bz9+_xDAyZFs^>?sezioI%U(b2se9>Ua*-Aj*$^ohf+&73}T@AO~g*@ZNzJ3%|TCqYTf$stNHZR z9G}yX`-P1>gRT*OrXOT3-|t&rW5;=-`J$;2t5}&l*K_sop5PhCnKfsv@TI1sx7RWo zgk+SX=@e?QEUA}DEUMtN&?tY{tLv6>VCy>cnUz1f5mKKuAY`rWXvczk=RdB@e@A28 zQX|24e}vjWVrjnS6w(@`Q*(g(Oo!w@G291ip)iUiTZEW~0R+ ze2s_)O-kDR&V4I8J=hGqZP!2oY?Qy!MCSEI5P?pT^ZsJdHHZ164wPhp0qxMb_JB^? zn$(fGl^wk@+={7Id_Hfd8zre@LK@!C=U{^QPH%sb$D!o&gjvT;RqXk-Yq|5Vj(Qfu zuC4Ye;UJs$=%JB|Ec3N^h-v5LyX!_KYdwH-CG0da~(b5ic| z^)P?py6lGe%WzD!k86t|S&~QZ>JDDJB(<*IMl9oXDlG#b;sP&T`UYo0ZX9v}6-6B! z#zc;hp4ChA5as&Yx?P_03`ZX~78GW*pa2&Z&(qK;iK^Rzo!b^w&11D|_x(d1oRX^g z{m4(Ra?4y!I@`O?=ojxh&C9GWd5B69)OG^JC3A`BV*Kb_Qk>i)VW-P9DHG`Oe0anV zYHAqtmBwYVb%_?_op7pE5_E(fldioXzO%vqoGjuOvijsGYNHEC-jyDDxVg(lp>^WU z*Ks1^vJ6pdL2)bG;)(&v6Q+jqoxE9~{Ut3x8Ss3FE zmh-Y9gy1O~@_B(gJOJ$z@aX}}?KH)&LW1V7|H>TyMb-Ye($UD{%RMXk%2EDL4v6E3 z{Mya-NMcq2PE@bcoB3hxk5AVUG!Vw$jU#>T#caMhub) zp+9hnmONtc8W?4D5D0%Gh?9X1F=LS{JxgW>C!GfHqvNFH+1s>O>2DE>&>X>W#v~~9 zaF@M?66H0)Gw)dpsRrG@R>U!ITRs!B=3rs33n&Boyap{IzN58s~0G>ki%d12kyb~{Bf`1)RqZrbfD zt4f6Q5Too;&x#)J#Cw+PPgFI%tV5sWJ`3)|meBKA>pu2-B8A43{`y)Hj!PU6d~YZe zb$ikxLQdnYxeYNm;d3dAe15!}gwZ+^0EUZjVkDjl30-ytuB<-(L=JbiaKKkmbq`DO zu$vJsJ~clC&pG9_;Cdzja`gvd#rF&?iG)5Zo8khobCOf zlbp0g+BC97P9v;D*#3M)XIb?PN9ee;NJHnXM}TK&Y_)bcFW7x~IblCCfbl#;8L9Y6 zdzlHSdt^RMahD9#_|9RQby_~zM7Z^z@X1eD%z)z6RNblWco~m=!dp?}k7snHar1@# zIcrk!KZ6nW5UqiHq$8=xMivX{%9wU4Ivg4brZtZ&3#zbb!E{7vw*zkU4-6J$Sr0Lg z<%hxv0Zj|i6beYuym5O>?s^sHQslFp9>r8E!iB=Ml*6?7bNx1Rl)TM!oY?bU^D26e z^>F86U$fjV-+b}?maq5p*y3b5g2enV(2QIK0UflWa=CuBlHx0qdjPFeW){JpyP-&c zm#_8hpq$r^^Q=)+7daaXq5k?h3!*E%vrWSPp)AvrufyPRT;>5>Tan-xhg;eHOXA@t zRi4d!i|^HK+&U#heHl96e>ToU?_Tf(sK_0kuvD1FUtG}ff@|=G*$q<1j>CjUZXXpZ zX_e3f>4vD~*qDWX7=U)tI|xv;v3(>4GeO;)eoj{EKu>q3*iLn$6707ur0pBWZE@9F zrXaW&t~U;cztnu;S5}J?Pbnf6;4_d@ZXf1KK(AsPPXkjw77iMShV(@|UeLG57kwP9 zHH?(<%lol09#mp*r;qzo2HK9YqJzeU&)kldk)@f-5e9(i4-R$^=tc0=>ergRBHi?# zg`@gs9G$*HK5>S>RCmd2Y*>DhoP?}{xhD2OzeOnzk%-ZG!8XK; zD()XgLIW<$>3+L9UW$pNT zaJCnJ8(WaEcZ6-gW4K0X5(AwQ2*-X)ohM>w1W?DD(WEn5`7vvl9jX72Sp%}B>W6o) zqS|z-A|u8ih?k*wOUcVXaj3$~YwJb+6mSO`OAbhhcdHkeuhv}ogb@TmHhR#TReI}R zxTj-OVZBF<3wf^YKA#&>NeXy|Q2zg8ZqC z11tnOFH=%~s;2`PhoIOrp~ z@kJXaQP8sDsxiBX^;U|`!_-sg+R7#WWG{{}ZM|pDOF_uk1phrn?}vSAm!WT<*)qP0 zU5HL@`XcHonTS}-;*)^w(#O9Vh}|hxTu=8Ae6(hLSP25Awuoq)24!;!icfb`9*?ZI~}Ivwcb7w3)bXi zI(r5t;;J=+RMRXfeR%YdkQMr#KICGiLOqY zSk#j-uCK~Ji!?BI8$U+{i5=YuP;%lyqLMl_Qogft4}6}s;8!#MnhFx`0eAYv=$74@ z@sAHB@U;bx0);s9<(6$@jn|=__dp?3yjh=0LUqsVrEhHJcSvO;=q8z+aS4xtN z0%&fvdy-!gCAs8TkuwUwfTZ)P=T1#;f1xVhdW2Dka9Gc&hip~vegL74UtB+n-w=Vn z4|iIa2G`@c4JKN2^5w1(1`f<4q77TFM$7NM((VSog!(HFB5b7=>IN(u2h-}bXQ<t-DS=P56&DyKrSQ7eh?AKQ{-)R$VM)0Q0Zb-ofYHqaYM z+a)1QX1r3|FPQe7d>3&lbl?;&Jo}BK?(S{@k?s!fdi5Of z+;PVp_kKUVU-ys0vB%!LYp*@mTyxI#%;(89M6usiXC*rDfHN>ARz9LSiN-cvLzbLH z-Z{TK;7*y|Y1{IGZpQqU;XeN*vLlJmX1O!lCzt+rLB2Zl*PeGItmZ@}MX6!RsEp%C z7`2w99M7}o9M8H3yEAb7bxqKU=z}@w@WP_RzE3XC!gcDB06c1%2dp zk5P)}ODo$5aSs?IRux>LZ11#3jBY+bxO|G#(!W0PWdMnmH}!%zc|7J^){^D6VvvLf zS~F`zIzyg;4x5=DJpa|J{bQH3&=bSPyn&IBiVrA1Xx0=35gi3u(l^WTH`^Wj?;QzY zPt<`nTgSZ&Ot$!&ZH|KqfQ35^?g{ELt+j4H;!ldkNj|+WCUzRS`^2voe*)$Y)zktM zitq0drzi4fk7-r3n#gdAm1OIDUe*h`3txH>l!dZCYBZZK)b_Uun)(7?s6#!=a#P+Y z0q}Hl@DkI3$8YmAShl-hDZ=_;Fc_S)tZ$u18ctSlK?6*2D+`kMx-hml9J8M+8Zo}^ z_x4B0OoX%SXIR`uJVzQ2LNSjVVVJ(|>-K1Fqp_VXqMOHR0^yK3DH_j`TC;(h{S5p9 zbpO;R0{Pdh3YHA;ruml1N8b)snfqVWq`>Wjy7PtV7h7Et7EZpVKbh4{B5Y;V>b=c- zY(z02tV<*R=8Mxp^?H_(N%Rv@O8YiD`#j1gLRVGS$uGm)PP`IM%FEd?Zb`pjh&%A4 z;G#bBDJhzt36^bbMO~m1ZR`3cpuhSR&@*!sZ4 z*~jX^hR>c^q4?-M;y-xX?r(~8=|<rT#nyx9Zs- zqXl>m{}g{1q20qQakVl)_|d?)<3Z*hyJYe$LU3w-#TSOh$@n3e(p?ZmJMD7IM>?ZzTc@rnktQHr{QlT!>a;1br;A8CKi?-Ru6 zZI(XqEn>5HaoR=V#BMR)eV~<{8v*s<6rQi;Y~knA_nl(2@X4okvF^eUAj0l=#S-pV z&tkzO#24_)EYcOObB{Ve!YxnT`jmfzWe;!a5H6x$X5ges($_;^koE5QcLy5RZwGQa z4YjahCA#Rm?^()1k(f#(S@>$1;@Ahj@1J|Eql$A68aZ$sxGY`QI+sdm`518@nFq+I z?IQw#%02IN&VStgE`-kkp@UnkLYKRU=L^Q%Qgdc7Mn{1hR6GOPH0pvsEMlN6)~x+3 z!S_vK&lmtmGi&Z7gzM%;ZYOt2)mjn%hCPb7^@yg@QNNy1txQx!$tmxMcHER>$Og}% z(x5bnA#VC6Xzj~{#QwGQK_-jwxr%1}jnYgRTrYbY3G@{}m~NWL6vi|qv@im85>hlq zQr$_9^ZV871+$;VUxl5Ddmljv3&eUKCP+KLCyPeFO5j}Ge?$*TQBIPy7i|RCBE#I~ zM zgIsO+VbJ3*)$wpIRFf>mcoN0op>6Qg`rEn{v}4|P+a;ni3cFuRa52J`(?pd-NT`g_jdhZvsKXDa7NX%ptRz5rU-%OTJjRm>G%apr9^?MX+1xkr4FhyguP@AJCVqZdskwf7PVZ!^I1^$0RpLMEz<% zXj1+jn^CN9=FOY|ad_;1EhYD}x6#mTn+qSuO~@pq?glWnA6)5UZd92EGTh;v|Db{C z)ft_pO+Kb@gsECJyk}|Kd*EZr5BlLln~r)khZ?WU#wI&ZE4W;MrNo~!ZKRh>uf)$+ zl_x&>6d)eA$!qxQ6dw@0JOD?zVo#;42faTB_))?%d2WZ}*?BwrNzWAn>9oEr)U9ic*!T@mdGC?OkU)+o=+io-WhYY1PTYW{ z8N=i5<>uOOX;#bK+^*v}UyN5Oyc+hcK|Q1WQW1k;F4_FN`P(Cl#bApy( zKccLh(49dxGy4n${VU<@vuUUSCP$ZmrIAu{xGN&QHPv)Dt2B zF_N)_{v0c5POE!i5n>9n&N0bN@Cs@R?3a5a$twx`T*Va8{Oa@+VNakq0ke|x>C3f( z+tesorh!+vu_9VH$ z#8ve_(F}3ml1Zp<8N=FfPO9~4#=4{={#tX_mnro1iL2V?Y!Z#*SKR=-RfxB1jsu9Q>4pB6Y`jZFDfU>)r`DJSY@)QC%*2 z!X0x9e~h3E9S<KG_3o9ox{D7-=UJ7@(5XQ%JG^qra_aBxzmNu5$r;5oEl5zK2G%=52|3OPve z`dEU9iQ;6@JU5Lf=>_f`wYft4S(pvHEwM_eLwy6z>$-t7#n)Q;rrMReObog!DkM-s z$n2C6OD3Hw?WapYPqC>O&BH)244P7g;WU&j6z6oxf+Lu;dB+R6y@`vTR81s2%cA4Z zax72o6hUK@S4=H^q|m~ORYg#tjAIGxCJ9CtoBI*tr6^T4jLY*gP^idSG4N~a9-`KY zYRPBUialkDam$au^`*~2U%^)zb?{o7!koX<-+x}*9_hplD{}^5-BH7s$zz>R()a4> z{4<41#6yqg3}*IA_S?+Lo|u=ll<+o2l}S7_Eb48AcT8rp0(eVn|Zxsu;AZBZ}*TR+qM|8x`N4mR>oh zndu(Qt-ALkNsyQ0k`+9`1 z2)?vWinn7D3r2P0wT#{4rot=*TFnnP@%OT}`=u{B;9d?{AG@#RjE6MAHp8?Clwa+R zw0LLJ&73JO(vMm+AC45gQ&IXEo^bfF$1;Ri+kwwQ`K+3iN>pIYbcfNp(>HA8lKD zDYKNpF42ZJ%OW$uQ!1spKLZ(`Ya8`{@b%NY4jH`OKSm6GcXQCX%emHIe(7(3R$f@O zjX}sY&RwME{1s!TruZy)9Z#(7IZQPwiEQh6H*3`Foa2DRy`p!N!w^_qDa~vrR=^Qp zIk6XvaKxdH0I0hk^AFCph)zo=7kE2t^V0yN#QQUpgn^2>P#eG3Q%}ZCk7eX7YlSk>>_>c7jhEJBq8P>QPmx7%(|pmAjSz zsIN3fSbGwwtr#Q?Pl`gEpU*8d!1KfAu>N)2w;dbrSPcPg*dbL43t_=$SZx@2E}i+C zD!Pw&$W_ygUhO06t`(xTtdnPz*W8#xp<*}&P&mEP#RQ4sVznq!(d))x?Q5QvBN6)l z*gSb1a`KT4&yoQ&J$8R}9jJVrXuMEEt7VbXkau-^&mv6dM1{|5m|F1AT_ET}e%uNZ z-VbsJeiSj|!Pwbx06>K&OKXYt4Z46G`g3FPLHOK=9;K1R^)xD`V*A=-iQq)m2X|T;Ip@a2=^y4-R zD}JV5ZGtL8cOAU@{06q%FMS`-&!t8?RV}$RpB9lBka}%Xp#h0SZ5Udl0>WB{O-994eOfYjZ()wzCVy{ddC$Bx!@{6*;C*K* zZT)d7QVYg2U9LuqZdx8zZ|a%A$)3f+P(x=lGy6g#OnKr45YB~9y;&r=Ik@EVtC?#* z=F);31)Tu}D3#N+#Q*{$@|skwx+pr$oG7Ur|HkMi{`L!Lc3d}ta!kL@fU-v(R{8)I z^maCLaf1^w0_O+Y>ti4m7>mY5{S=++F{ESmI;F|EZ&sV5Bxw`u}D8;g=u-nfY6?Nnc`;!XkD<(E%Uijmhw>)jKckr@x^?Rv_gdNDC zf9AX|?@mhpI``rH+nCdCJwHTlu5Bpk;78GL@Z3@pIs1>FI32)+M$+y-=RA5_4x{6C zOuJ65C4Ik?oLe}9mrcE%UL!3O_L~KOclT}jFNWuhSV+S#4dN-7Yq)}g{QQq!v^azy z2W>`E(|Q7s5QQ6q%=u7QSFZ-g%2T&|sxl?}8>HlWo8oyR=||AS{5s{CT;o1_CuX5R z<1|zF3UaP&TZ<+@U5jK1U7vm2#B+b`OhMA%Ne`0mTFa^-&(n4c)neQ7CATJt*ZxEP zez#3Lj`~j3v6w{9Q4%VKnSLx|vl+}iwcyqzhQ5T!SXX>5;TvsgRru}Muhxm*3+coA z9-$s*sMGi9v9l@zXG4u}STont`s;WhLJlK_>J(uf05XPYnwmy^`C7<&u2EZ6k1qGR zh4vvw8*)?_nzOal33kGZb7yNCe=TE!sZ<#h7i#*m%5MWe{B#p}m*yVQmPJp=950T% zQQ4kK{z%&RN+mB2ooA!_O-!d*{;slg*;;Xln7(ISa<;cqzc3ej=_>8w44?I+Tw z1&X9OL7k!VQuLz%`u=7}Od@FVd`h7yDwoDq(BDCZ*%Vywu`)3uzeNUZe{7dZy~s4(}m8)5Z9F=MVDi6$;t2lqFR0=1h+w}w?S zLbF>?#tHAl=Z+W`RptBr4G|&0R;c%FjCZ6K{M;ZS?GOr_rDFAZi@jA6>0HAiEZF9^ z$!;r?oUaSzXgb-_ZM>Ja^qU!;zW{;)Res2Y`iEDPBng5jTp#Y&?2PHrV(n&;+vq{F z;WFYos{7a-uicaEE<`4wo3;x(@yuM{!n(_L!d|i)jwfO1NXnt zx!DjVM%rMUtG_4~nISBh&=i)xYeoM=))nAAGIoXzn|{wM_}7*WGP(Av&U1hNK|tde zxqkny9q21AxXXn7GdIBa#0jA)41^W8I-RHfBFa<8oJbV5Nr~i8%O!&c+;vtiv z{s(dX6#RzQu#L#wphcy?yG7b*Owrw4Bk=+V*=APP=cU+p7rWRYlYqj8|2HyNR1osC zwagUdUpFFyABq3c>3;Wa?_lJBpu(U6vA}7{9l%)w47%o>b|YFkA0a_NDs-pi-8EotKHztK-sn@_Sw|RTF;ESv z6j9$@1C*mcSHb9%)hO`pVpux3(U3+<=|3c&tB|KJ?iIV<-H65n-uM7x<@D|nKh%aW z$p*|Ipc;Nn-N23W*Yr35Eb{J%Ma+xSC*iFRBU@jiy8VBkU<D8dBd!!|JXS_ zgeDc~bBXw0uO$XZokMyAIw2Pi zNZ-Ky^%sjFP9%of>~9JSQ3mkKk@|I~+w*i+XFF#*lF8i8U-`YR8@A*v+CkO1Yw@S~ z$ULK?ttu{Wk#Y_p)YZSMSPVjwJn|5Q>n{>$iZB$2TZLX#N%*l~1Wt?kOZ*dK7!?Hp z17Y1K4^w9dB_@PxQFx9wUU|Y~NQ2$tQrYnUaHU0|zjvXwbDZY*XYq^DfRV|YR!yn? z>kS})b{NQ>`R21g?$(5BnA?qoe)DL-73c|w*iD-05i^i3dX(As4D?gs(mMQBdnJK| z?8eOkda-v?_6`OE(hAffV_1+1a+NX%&}1MA0{gYTQR#k-70x2S)JX7dfa>=XwkVK~ zXqe^v`OilL{{fVAPA>f20WU3^OQp|3Anf5%%4mDG8zpOpbAg53Ao)*P%Z%bu{qXR| za$jZ-4A>!YX-*@5uhjoVhyVr!@sp{dh9yLmOPnTsXf&$drjW}S0qFk4*$*brwO~CF zjL$67L!jIf&w)8xVHHcM%@mD-&)zd(F}wC7?c>G{ts=Mb;aaZ|`_YY7`K8FkO(@&p zWJj>=QX}+?JJA7qFM+b!L$2+oi#L5A$N8=)_-?OrudntDX=GEYKJuwaNxfiR^_FfP zmHGBB={7|&u(&o>gW$hkK3fQkG$Keb&zrht76PQdxG~KHN`>X<{&5-G^R?2Dj0tc& zgo7rHPI`w1z+gfaI-W}zt@w?+@UT6?O8@)Z#bG1{UA_2$UPz48j#?MZn)Im}Lt<3Z zwCBF4YW1cc@)n)8P4+Vd3l59X0I@)pp+EfIqL3IQV7W`}&bC1e@(XN*Tj>Ndcq{a( zyEDaO`MAy<&^WfIKiaqeT>GN2$v11R21&TttNn?}?LW;a*He^9%}XIo{OEerzN%p# zEUc|Ffa#AEtgS#OE?brM78|u+*zZx((F?GfL$k?)e*24y*hSEYl6XREXySJ29`@|HHo*VR*=Ndt}1wIpJXaF4k zNREjRE1h+;9|>ZtJ(fzqfSYX|7OjHJV4-HE7U(a{%i43D&;NL3w*(q6##Hl^Z@4Sh$H)dIvz%%W=xz&AWgyOIOk#)2Wyx~)MI;8 z8@6W1?RO$P``vb<{n7JU66kC7J;t$s&|8ht37c?7_980t=F-8YWk{O^r&;I2JtlCP zIRLy+Z4|aixf;qR7aAu#mg|4QL$5YSmijm(@2|~Kl!Oi9h$C$5kdpmV5IF3jJUOfo zO1p&X1`yI77!@s;15~%vYpgxea?1&sf&#Z{9Fk6{PZ@0kXLbNhgzWJH#NG)vj|QT}{?if*)Jy*7(3u}98xs6S1btE8{{;H$qv&n&b_wTt z)E$2?0`C_%I!nu;Ngcd3Y4e?VxP0;+05sVesgAxnp|DD>8>m}stHvG}QJvFvJtB;M zx|UtkFZKNPxqxn(UI?!^Vs2b2U4u3y5)RSFMo_vEdKD7;lGtN=o9`_@Duj0v=t)eK z*yoPromIsfAWQqf{44H3!VKAqKm4sd2xKB8f9=I{WC+PW09U9x9nTetjZ2`uP@3N< zgtFct1_hr@VBzPRVphH?ZAZ?XDBA(IGK98qVK+(n7iE^TvDz--@#BkweV$^514(=I zrLcqR3g&|wtSL4V7nG9TPmpXTu+*IJF#eA|R3Md8Y9e9Hu@X*9ZW57Dkk1p79xf!D z?kpSmzPveSb?j{AD^jC{*AVXMi;Z>d{=6o4qJYp%?upl7C`6Q?&56b6(kZEZ-W*D`bh_R(bOFZl2*S3w1$cbv0gvz4Htp2e1TBXs2z%Zp=~2B#u~Y5* z0Q&P(+wt-ztI~1UBq_TnelFEJcH?HI6z`nM~Iia@XRvbaY!;GSKn_daeU-P0%*?JbKM)mO^9&Po?vmiGuy!a<33>^7&|of z-M{oSD8i^9R@cqn0mR`usB|r6(gDl0?Sbz)S0JR{3>lxN867JLdjbZg6Lgx%*4DLp zW5Ra(xSSGV;B=18yet|7y?_&`8LGR0o7L@~W3B{A7PrN>H*ALh*Uz~FqRw~zNdIii zB=V485RusN@3c|W=9iVs7b zJ99DQ__{%y?D&1O4}33rV(FY1wfGJmDq^0{JnZiN3bk}BC9PP51imIkyYw=cMKDQM+kub+t}ejGpQPCS5j)!SY@SllvQ8@b$Aq#{!KFZ< z(7gXi_n%@^*kdq6%+~Po|753BAnM5Gv}8VW8O`uCXzge;xC$YZt5FcUL5)c$jyeI- zEfB|DEbhbrHYWO79}DPZyVed*{aOs3&=)yzkk;^`lTUwyVY=|ZuK@WljZoFOpLp+gwaFRO0Q@U@!t<} z3P2u2x7v<<6zkttAl=MLEp@L#>|dQ2P&@}E%*D7vAYOUrv2>}!R=kZyH{kT!XMXA% z@*pM`qvHQ9rsN6c{$|=5)a^ zz`6bj9p+^pI(9Pw8ngfwxhTu0h{)wlPl@32`q5I>dJ~7U!rIy0f`Xia+nk!}i>q;0 zim(#|{i>ylrgKmI#bwX6;#a`@Zr`pD{;4&7g##wOArL=#SK$OChssd6j7|&BSBbmh zkF-^%!n}>@q%cnZkSLJYL8^My9f9@#v13h$9mi6u-zA$~$dK}DD-eqL`_FgrL;k$2 znCpWOUZy{m5Jm~H<%rgv#Q&7ABKSWbB_pe0t%(*tzMCvzNJ<^`S>-<*4iXq$*3EV; zxt_gtW-nu&eL)?h=WLa;mIrB6)QTMele6u*lmMNH`pMbP8`8`a2h$lXpZrLETJ$A1 zNy;$u4=^nE!DPh037dNPpJhiLw(Py0Q+ONg(fc!;IuQh3BF?j?ge3={e>Zl~BQi}S zq^CRc6Frdkh&hbaHuUCBTEgj%xY}ZOqlESgjwX1uPrzOj8$~b6y}MibGi(@yR9mYb zwhF>e^AkEWf0nrT-JW%(j8w==*Y^YcRPkZfK>ZVSso|T8{z=s%obFA>h1ectg{X;s zeBXlQSYq0x>2Aao^evuRcsaRA3u?L@BVW$&_|EscnuNw{!88oO}%CjXxMmOoN!>r1!D8C4xgYBzMv?_D+}|yy%3S&W-g?U z=i?c6Ci=>AKS(lCDd|`+vI9B#o6#eQt3bmMI^l#u%*=rp4&{1sW#s~j`4<%r=f7xs zWW6(@rVA3uJKH7`71OLtGCn1*PfX2D(K0A$`6SAuWMV@ID*gh|7Jp0^cxrtdh$TUd zMV#G+<1>9-LdfmV0i3+IH*jxn`9%Sd5#T#mtz7&Gp}0Zn&joWBHn5{+s0xv_5#)cq z?1TALz81%JCOgw-m#5xAsjgZ)qc1LVGMPh9Frt@H^E5Bdr{Ppm&;PjHW}AM z;+?Lzx!cY6+!UGh*gePbyr)FP3#Gkel=kxusngQC^H`Gj8?sb%eF4WyQA(3woha!~ zGu~Nl7{4J2+9U6E;;Y+ea=4!gTGQh#c4xahBRP7g)3uH%wpj;D^@mIDj$$A@5j^@a zyXO&R6KT{lI9p-1@cwKOuyZS;Cap_tVsz1`3T`gge>Vx%72gbs{$Gw~kbW;C?6gHDr zRCiI>cpGzlaYRW9&w;pK3&+0vT|5GjYNacjyu?wvkESB|K_zNeeow;m^Er^SH3 z$|F^hk9qCKaN}#w(+wWsUi`Cq*Fhqbur&{T|1n2b#_Dw>V%9g=pO_W{D#SG`ZhT%e zx-|}T_Bx%PFeRKtFY>IohjUmZ``;hC-gLQ&j9724z+Rn?if|08FQ{#|`(X57;>=?Y zv5|ARLhlTfm{)f}!V}g-O4nT^W7WCxrXN`yxD1`BslSe3NW97*kyw6L$I$MVR=;%1 zl?hq`O}AlKmNL&!f5Ew#!O8e{yn17uMkl6cqDg9~z6I>Ib6Bd4Hj!fmvXbp>%37}S z?D)Mh{%-OeC>-C6y_tIUJkDjcJnhOq=W8}z=SfH7Z@VtiJ`#f1&PjU@;mZ#ne6GF3%Giip3$E$Ssy_-S4Gc?ROlwsUV zxBG?M7gj{^V7T3Ab;}w?+4_7wt4J;A4`xKytSyc-7}qYmXWw#bh&QA)TUTT7f0|+P zSu4j~xo<>I8U&i)cf#K)TyK}ICgc{#n5oS!Y|$zA>PaL=wE8^+sy7?@viPSh!9a@M|%2!yn71QPx(KZEw8@Ob(Ogz0p`F6>dZt zPpd8DsWLwR=NE&Ao0wb)BdJ>vJ0TwW3wa+(j zYDVY2m72YX%(`!PPZ>QhmNE8>_gaOdivM1xySBpyrR`o)B^A25CXl=VD)3fzj~K%x zGnmj4!k*s3Tl*SK3{dkd9~rG=Sm~d~iP?U-82nl+gyF8zbZs&I#m}RwYPL$@-OH-P z{h%dP&QX{b_{>?A$%l!B9)d~Q4X%WaeB>Ri^&V9>DvQdyJe8IcqTdbCl&hGZ(h1?KQQtDm3T^1M^qrUtL+2oanm4O}m6wMo>#wphE=oCVJ1lhUhN=UXlJ6$aJHTe^$yvwJ7dot*81F%rE|5%`6L5fmy( zS4078ixj}Uf;%vd4aaS-&!NO z%&OnOXN@QP!3S^$=2YYeCgDYsaItHiz?G zhBicKl>EU};QMUxe31Jj4t4P5t54ob2^yv&MN(vq2?ekgRW()X6%54V@=SQLSYBx@ z=^xj6#Zz_(PsYN+R}_cpcD`?=1FhqLk3vp~ysiSN+-FOt>Xr)3!~IA-Jr=FCR_j9J zX0(Y71&XqR>KS^8-%Iuns1>h|k|9brwM!eBlrK&;x9ALJ^7haCILC6$T<_B*&bj7l zWY^W*Ecl%&7^`1?LrQn6?$r-RPi#&1Bd*c*b#ooSmS0*}HX+{^fIp@xz&4f}q2AM_Y?{ZP!|eO=);kG3VR`8LN9G*lu-vuTy|*+Vg5clAm9 zYlIU$cdfd~vd-a#L>b;Lt}d-kD>DX(n}NkQyszIhG^gTrCt)r$>0b364d)Log$3eR zC7$y?)wSLerh7bhCQAP^`ST9RU~Q#z{7xJQW$>9#|6)@6r@;I&^;4?qfPXd8<3l0W7f({M5gtE#DLH_go73q_?)nXx7-KhGGM5}u8 z(sd?wi2~^u6HF0f-0LvEmt+ws?~a$LQ+oD?BNdjsU#{Pr&5@=DtufN4YPsq~*WK*G zsWnRV!==|0Tb9#2p;PCZn@B<}Dlna>O2%S6T56S^==nw+;|KOcF{Wn=CW$BWr|iG9Z0z3K6d^#g zY$$@}y;UOxm4@OP%ke9ok!_I%*F3!cu-mHP62ac%Vn!v7ub|3zbc2~lrv|+T@vx!f z%pAY^tYCIb{QNEXx##VgOZoK&MKY+KV4@l6kJyq$aU#y@lXOlGoVB)3>Sv7?B?T4* zfJ^Ok8q|B(+}{TJvkHl`_N{t37Cnr3!|EB%t^HtnRm_U_1`w3@ePA85k8E~x3putL zbyQSky4^^cU7>$=&}-DaE_!_vQCm*PfIOD}e>cinr*^ARJt{Z?;ut6QmSLlsB!0?HOlfpqo;DPSLiz=07?*mc?YK8hM;L6t7!v}xVs}Qev=}T#>N)&HL84L-E9Y5; zl2ATc9nIy)7|&*4Zp@p87GoqN`Z9spB+9nEfiB}y+$6kAD+ZEGTq{~K=`9IEG6$Q! zB7*Wm=no+i*8=Xf*-nLUowsi|pSOAX2ZRnLW zBY8)%os>=WgvvZs?3?nMrekQbr@SAgU~)~K`r_Y*A1fNEFW6Lc!P9%s?47=o$|*0% zi~dgvVRf}MZ`kJKbhShT=d3;L`ig6rzOor-oAmR%o(2*3%u@IerG;i8kUDZkVB0K> zoU5hz!PT{Hn_#gAO}09P4vkT*(sTv2uHzi!$TUD+ZP$X$ePDxPsTx*CtPtj>h#tv%(}Q;c z-Rxs|=}3k?^lbCQS$xo9`xSpmnex}2S1}msZpPE zpZ}tjXuJet4C#%_50kS64V~GEa{6Ap#dwuhyBSHZNX#cP0u52{hvdZ*)4z)r#CQz|HY7Z zMt`dYv}}RIWur3q*wVHTcZ;iQ&&4uPrDXR~q{1F;3Sn2y7LU&9YPlx~vj8N?JDn*` zYVOYm6Cz05W*oLB29(cLDsmtE-hyG=7c8_{wqn2rOvriq8?yVmvPHrMsScuiq%nt{ zFe}o1&o+&TWRw#Yt`WI!SG67gsO&NQP#*RdZ2dZ=w-r485$DBww@)h9wbU}TC{aFd_|YuGG-QWPmb0mo z_*ArJn$LM_R;2&s0$}lJBJTryIM&Eg~0^A=4ghf*zDh*YB=$f z=#qWVTx>dFmC+7l?BL1JUezJs#KvhGx0Y9x^$u8krnKTA5ZZoeyY=#0wr@Z2q%Dp! z{DTi9qOo}QAJaFJ$G~hUtB|!aZDM2hW+Qz7#S2rwB>0%!bXed$2}2yG?Cb}?9iO?( z-h^_j5Bv2PjeFFLJ9YVS?^Vyo7;6i!Q1s;y){X?X284zW20IeprBShq?dKiMhSn*^ zvIeCnz}pz+?UAJPB6!c)Z^taL;!GqKz}9OMt^(%B(~DNOj=G1jOSaI0l-{}hpFX__ z-f0lgbrzY~YQL=W+fp{{Nn47Ke--HdpE{ofWJ5|ces_wtfrnlazErp^NFGKJi`I|d zTUK0ln%!x71u% z&Wi*!3cy79D}nva?mdA13f&+gs)BfZshO|1-;Dff2^xkAyB>BWp zhU=_}XU(xBA79eBsgd>%3}&;gXERN)cZBZtb7;_=-ZtHnSUlhcIyJ{dx3*rG{Pc4` zr^fuMK;{t*@p=oT@|<|#0sJIt;-gh}16BUMy?KT@G`N&Tv`^tn4bYa{Vdk2#dPD0k z@q_lMM{2u&eXB-^8jBj@sq3CuH%F-|NGtl$)lv${b3gkX0O z)0M{p6x()>l3x#3@kutb?)v!?{*9^>6#}1X6wR_svbL8_{h0|#<)W=ni6Vq~e0W5M z=fjg3c1r3lWMWpa_YzTbuGzl=)UE-qii?%~kq zyklKnPqKbL(7)>z*}_MH5!2hE+ruO<)QVwy9`Sm2L5|kxlA%y!(UikHe2IDt0So4* z*FL$w!I{cKVjAohE66KQsYN&eZKJafIvj603c=xx{}-}?apNbWMx7re z+3{RKg>uYxK#f;DaO4Hm4+ZBV4RV(&F<8XMiw%(&0XfUx=@?B?9F?;IqxMGog(uuL z*oc5G&1FLg{j~<+lFMM@aYCQ!e$|7i<`PFbjoBK;&d-B^i|*6cqI(%pb??ou7A#EF zoz&=7a|`mG0KCkBmQ-kL9O?s!SROj3!a<(zo0QdO@U$O5{{`=!4p&S73&^BXn{}1{ zlS%)A+lt`1zCX9Igl>Ctu`sm^Er{OHTK*wx!k;K)HTd+?Clb9ht`xUJF&5X&DVa7K zS3(v3irp#se16SlyR}V6*oIf(OGp^Jr1L)hQ;`{zDhU~WOBdg1^=?@0D?Xa+Ul_Zy z*0`5k_0KveF52$X!Tk(h(9dU(7us*LJ@MOOQ)DiUJXmzHi1y)U*=6&bxhyT)8IveQ z^M9b^EGppHXJ(MX7yexctr@dHY&i|fZsMeR)9ymX!S*ahuDR6koALcpy%aUG$L0X552X-TUPi}?3#cSC6pQ90?40|~Xkha+I_~jiUm2TW zPb@`ZHtUEdd=^;|p@Ly9F<+KH>=9pMYr=#gvp1b2lfBvi0@RaE6g2|tBtIbjaew(@ zRgbk*El4_ln7AvV4KbVMw@Es9{EErB&oQtPTeuH~*O(MnSJ_XDcz#j1DANu4>qY(7@NHjy0N(}u->lL_CB`>qO9|G3a$vBBTg0Y{QRn9-=|#m zY~elI(=g@z@rO>gO+U%qp4UhuSfInu2@a7_6fRv{CguWt#q;~2>C+d%FS8P_VJOaP zgot%0*=?;CDR@=$qZv}$TLqE7A23+3?qERP+JuBPtZNbwpSGbG+sXEhYNO@a>!w!ij#l z2z?gk(Y{UoSOL@n?>D&iJpDC;zwIQk!aqF*$emZn6RFWWp5{L0b@;qLZR^z_iZ%#) zK+(qUAz_T%BW)7+Z)=wy$|b>(h_xW$=K0#}X`T8n|GIzLOa$ltD|C*l^+(&KQmJy> zW#)fK$VGO3k;6PUV3!ejd*q$CndIjOs0_s4TYw= zpR8lcJP$XFSe)9N7*=XniYL9JO#wHZB53+O63D)7s&}FN!Nv09$nq*uwGxY)b*rm* z@$a+3YyogAWh(R9mmMv?F1YwoNZ6Eu{v=m1P3=hwE4{B$d{@&iRhzL?F?Z~Pd_A|DCr?{xFo_eC zzNDCwm;o;{QUbtOd#wX2I4@lWkz z9?%P7gAKTeNyQ}qMmuqQx0*G4EguvZ{*CWZaU9Q!J#GOF$oMuLol;L=VO_y`&b*!9 zvn+M_vjgfUxiZi?4!|pa_RcIXXkU9H=D+mZ2!|$*Y}s_B7Na?Yv!# zmDYgvQrJv1*ouv+8B&qGCAE4?$BjSLYjyyCzfOHm0Lo0=?K%JFueJugSucs97zLiZ z+~Y)ht_)oFE(c z-da)=70_Zi3Lq-0nwX-<2oibg{c&MGgy0YV$*@8zARBSZ#qr}%>l=Qpp|j|Eqgl)P znelOPe4GPo$){!uy6zzd#k#9YyriTAYZjV&t~6aox`lg{lHfS!m~hpRXLW^;Z={cv zd$uU5z~a{3dr$w|$HRSX7S9QFZC|Rj76nwc3YMIIggM{#`B8D3y_qgCfxdBkqCD`a zWB~qj)QCw&!We!%El819iI;@(j7T8f8YfvG#jz|l9uuGlxm~uo{yrlThu~dknicXI z_0}1&rz-ZQa80pwUu$8WKafqBf5%l2hed1d5P_*LgY(T)8gm;?>Dhu0WrJctgPeP2 zwKuiLYD*6??}m9#Bz0&pE!S5+h~f=Ndiv7EIi_?kW^c;q7XMVYa|=Sv-VL+>4iwdh zNJ?Hbz(nT4`|80op0B5Po;-F#!lupQtE&eK{5qj>BlZ3p8Pv(z65WfTLvgABDhgY2i;F+c{BXRmH{UI2!VapHnT&EQ=I{p|qUq@5f4rSu zWn6ZMt(`rZy8K6Qlrc0qiX$J?O=A-N0nur5u@PzpGVqaVe4e>)5s2xKrFM!x#C z!Tn0|UDBg5-3Q^l_1R??0vAI!jwVZldz=JkgwN#AV7kqCelQ?;n&CIhPyqRxr_u6# zCFd;ZOfg)R_1(hnJbG1F7{v9L11{0LGx`$>d%bj+-}?}!pDnm2YACOnnv8#`{mxTt z{o%oJlUJ?&T>qqZ=k1uuoOr&HW=gCIOK|#U(OnD|j(fw!n>rjP{c>Y)eGv+vtmE;0 zu5&Cl6PpNqKU*xV<}mdj;A7Uza@?1Ny3QD587lYzc&D*S5fKXAOqeR9ODEIib?$Tq$=GD@dJtrq0{aPV6UGxnpVr5QoP1{0R}N5N~m ztW0&OH|-@>R^D6hLnqy+5*w!TB&2O_74%L5yO!CAYnX;_C>^aPHqSv3!1yV}nHt)- z*@RVrcd^+t{C((&DAB-mNo{q#724(j z0vX^5kBOo}*@B0Ht){_{t|Z92On%mK4U7N@VZKO-&Wt`MF~K1}RH#zwt9xI4O|UxB z0s>m^GT*pl5uU|RS(4UP^VJ@X3YAObqMPrY=J`^-?Kt*Gx=^kRTjRCN{XwZ$L4KJ? z0S|xG%Y};a9rlt~?7zDmk*=HB2Y7WX^TH_gI(@GPhGtu~rt7R_o+LUex<{qXG~pPQ z|Hvc|6-gT35p_S*43jrRQ}Y6``OvOz-Q0G)Ey|`fs7re+d4yp>U=R=8J_%v7+`W^r zzqQAUr9<<9_n82{y}a!ndKAjpUVsJp#QOY1Zyw}`(tdTy3V`XOFrHg4eI~Ht)tyD% zqp@Hr-|RGNl-s(UdI)hpZTJ8HallU2c?k{lavnEdt~E8k$3wa4BlC^$mopi5-|EEd z#TMa2U)m`rd91tP-coWV7~ruq!*WpL3*>T=9cF0ox?jwAwCGx=WC!{m@1kBBZ>H^5 z>~M`oJX^R8Rep9OU4Z<36QI}ar?V%G3~cR3zj3!U^0=O6^9^DK+rKR{SufBIHu#}k z!@XFZ98}>^WxIb;)e6t4fRwf&O39SgNuIt($K8nbz33RP#aVp)l_?+7a9yI@ z6(LMU(a`m1mGu+zwt+FHU7h2Y*V2LOJo#4yW>=u^f)b~WJJ}B)6iuO3 z=4Foi$eQu>B*FAxq4U>4SAA{CNz#FK_4R(Aku|K4MNoJn?yIhc30b&km7qe_u`~2l zveW#lahX3IWG-sMw~B5xS4`M8morj~Z;o1 zqQV@4H=_(4+V)ek*zb?yVFXVz2A9nbGI|@e8t#nM;NRw3)o)yu`6l?PX&-#2jc3tI zE;#0w5y&W`yr)CtQNEl=$Xhv&&5p~76Mh+8Aw2a0VlMjHAiXSIo+4Kn20~4OyrXsS zOWH-QoghD+XtJ@rdhTrv4he<3}L5+R9(&!#aKqd<(Ge;R&q)2u(|ElxwUTK ziLIcjO;~32T>W=(W~8563{YH8Vo5&1?h#olS}z+P>h@7%N1gQ%7dv{17PSk22H^l` z@P#fQ;siVJjn44-z{`ty*Hh!L2yW*?ivPjaR{&+Teeo)S5-N28Dd~`ul9UnC|%pLqLaQ0cd*ZPGaZRDNPd7kD|<%hQP zbRU~vJvwAj*~jF`zjWNGamL%d?{=6dc6y@+Gq5~2NE3O>^9C0_RLG2b=xFAi(_(`$ zy1Q)4y3dpvxjc##d_bf10q)I8##fu2@yr@r?IS`0Z;8J0J2!0rHPI506co`yQ;?$b zQ0Rv*zlHt&;=>JFPU<@Cx?R*}st1@ySnJJR9!>UtrtH{=6J#X`_4gn})fo zQQr5v)Tm;+)RQ`A^;K?B~x`UinZSHQv4B?p0{FW?{e67=Qo-#Hd1R zHwVNQXShuzNM*FXcE-gHV4kJ_K?FT$*zW5A!SmL`_ zX9Jn0ZBdysL2)IQSwF};`VM+&pP&NacNN79r(l~#-Jz-LN3N$wRc4KSyG{B|ZhGVvXz^F6BAFx#0MQDF;} zG%utG8xSlpfEA%YvH>FCu$6~7C``zA?=V*HSG;Fh@YOE!a__GL23RDhKR7wV)YQwB z9xLyM67X8V(3;SY1nviQsLG3Q6&a*n97|49Y3a@tR8LLai5-?2bxAlNNL)f#9?yJxK=Q=VV6Bg>ihIX-H{YphnMDANh{qN! zw==Y6jHfWgFEblI#Oo+MK=1u_14ThQ&s#L&An6?l=e9n)jbtv&8(RyICE5yc<~)}9 z{=!+#R^@XsSljmZM;W&k^ZD}q5xzG!G*@GvK$#EXN(cw8DiV3}2Wn}ISmvHKQ-uEX zhV7<&uj2ba-gaZ8^_bVw?g<+?k}T)U)QX0M2$Kw2euqQ+?@M{-+NX6h@`J4Qt?hH@ z3yVJ1__F+-j|`+Ji?v^)@mxH>%YeHF9}bQxa^^Dlw%1ng2UW0nuaoCK*Mh<}I(i>U ztc%j>KUuhyM~`*nzi%Qgm2-p3jOg9tweKSu&s+iE0A-sNph0BD5nW7cPZFMEO@!5) z3O-TaW>(Z``fj#1|9M*>p+D9Vp%#!C^=)gAJ#@^zt?ulc@;a)xPFW>@ zMEZDrLX9R&iq7HqKQu%S_X&Xj|Em)R`CS4QO{LZAzK7em^2N`J^#}M(YM1Uhu2urq zX>qKYMyy9HS+&UN9HqUmRGSSJn8HI(S`;_KrnwmrUwXW4tFfx93sljQnvX98^Gf?b zW=k}n$2hqN*C;Ac6H{k9{t9XN&TS8|S`SoYV`bj&Y3i(r)J-jBNDJd>j;(ze#FoUe z4#qhtubV<7X{;>lw=n z0(9Ew$pK;F$tz4MwM8MzQi1tiUwx{vOQA(9Fb0AgOD1(Y{!T`>VZ&$5ed9A_7_V@y z%yPJJKATHobJ!WqoHi!KnKfbUSkPH*+bb|1WVe{?9u>cO>5CQ_FNJ5+s4!H4j-^q~ zX1TA=*$#X4ZLsCbE|Gx-+!#O4#!!i;inT66Xu*vz78S*!ay=$h4{v5VtFf%q7hIqA z0N<2RsHENxOKZ?Q2$}SBQEryub+GM^T7L{a_+z__-MVpR@(;Ftx zMrRAGql$JWUNXL2sCSg8Jb5Ka_Mv_N^R{Zu#r#WEj4HE{WFhywt?)`uYtpd8QvJzp zI@KBafM<3>CKU)2uzI1Vo)zNh6W$(M?KrGE zKuxCd!s8V~Jq7;_36l2xdTed$ulaSJ8uwA=(qirF%a}yc7yuwp-yicPPYVMC|7Dd*mH(S0IikoW6zdVEa2Q&3DAJ3?!#7E8F0dYf(|& zGB$s86l;vbce(f$m)9YfHyllCr*`Gx6YGA2{e`gX{Yd+sS(lSL^h#;VAGy?xs}qta z+rYhf*nYa)8RbDbvK!hCD=js9`azy-<%wiAh9t~m$&ytY*iSHooAr_{zb|u1XcTBA zm1hW}`u~n;#j<$xFyE(px#(FUesPr0m9N|{Wi~5A`}OhOJA-Xx#ez-6Cz@f45Anxn z$(4?YxI~`e?jc_z&8Ou_9JI(RMbgUcPF-%H4iw%}Rt670$I-=xbZn~g= zS9BMu*PA|E3~2PkYGd#Ti7p|}45zJ~hcjPvei(JBk-U4KFuVEg(N=0_tuf*IaD3WM zPoFqhrtLlZ!Nn%bgLMOi`xO8@k!*f7kzkld=@ICYa#(JOFY>m9Qpx=qT$8^edLy$? z`Z0HYM=?+xZ8&JEve!M#bCJo?ZwR*d=R@7ygnL@Z13&EFz8KM0b$AeJ>Z|dIq7JI- z>s%o*orcqMXU3|HHqYSk>zNv zh^UJ=>JCd{$Skv?@{9@D*{;VJo7vbS`gP>N5{9fdB+P;w*(aiYLgKZ?xH}_+3+Ji+ z6>?_C0vZI*91@ogw@1`yBrY`Pgi3+@j>oWZytrGO-{{K#Tk~p zw`mp^%5k}!_(_SPBXF)h`^smUJJrD|%sw6C_DXg;bPrM7ik0IjG;x=%=ya0hXoV%H zJ4)z2U!tP>p<@B9hx(%ydybFawB)J_w2&g=9J+Z!Jc9!0sy1%iWMBLHgr^w$0ptv) z5H@OfKVr~z<-r%h`V(6)cJ28Iq$-HW2^5V?%-vpc< zr3Vfh-4O>7RhJX^GRwg}4>ler49aV`Nps~%!G-jR6@KJO_kq8CmNRK8N#3{S{pbeh zvuj=<^F?{~Q0sgAfS(_ntkOkM4_DCod4_L*=@6dH$ov+^OlqQZ73J=;DUfO_hWEMy!D? zHsD&88aBFp5BY?5ve-~d#Yi^4`Gv9qT9JGKhxf{(UY6J+f8(f))^E}&Pq|IFZNw_+ zvA1AN6E8cPckG*vuFkQn=(Lu!aLs-)?8m(UUUHLlqDtZS-SNEuarB)1VQy^-(6Tes z9qpofQi>gw&2=2e=Z8fVmZm`M`c32PIKq2yspHF1at(T?QprwE=eYHF9=gb9|H$;t zP$HLA-Up9@Z?SUKA3VksZ7Y@)nl_%aMTT1-?v7wpx-+m^pU;P;LQ+8L6@bOFWg&?_ z)k<%ALJ~|`9;TV|s7R;Y%1t;mO61$ztDQ)SJ$4nNum=224tA1ti|+Go)=sHikHC8Z zy-^xLa-f8d6=Lj4d^n-Ik|)_^+l4%w?Xy(FcU{Ehosx*>)3mzuH^( z6w$>>Y|Y1)udkDhI+z}R>)B7GNMshhIZIX*_YF8NZcmh$1O|+TujU7NLpLE(d~Z7? zU}hpw!P?pvcpFpsqn|JCl(~(aAJ~j*XPKQ4aS-P{oVlDnv6!o?kAUwD?YcclwDYW- z(|=z87giD>?(BHE@^NVEPS`hXZ@#P+P-99=o4O!i*NTr;F7QwmKACTb7n!C!cX7u@ zE=%H9Iz252MBwmeteE3@@X99R4Do}lyMombCiWZl;JI(Xyh;o%y<|CCqq*_g=(PXe zsmae#kI6orpv;Gfd*%u^pZ{r30I{?8n%;jYtI48^Ex_sA8@T( zx*x@qR+ECVtKTef4DzTEbDjwhyQdfzwj2cuag^#d7z4#P8y-?5-iWuDY272KaY{Td zulzn$`ga!^YvnYU>K8rXd{#28KViA@FzcVRUbS>y#eDclM*CLs;I^<}&N2j%;ei%tpC>mrHoS$5zcKBqG#LS z8q84rN~-ghkf2HKUS7o2`o;H&h0Cy;NGs>$I`|>S5;;|gP)fzodbRj3%^Gtb$@FWU zdjwIIb+zvUCStm$Zuk00=hC|jc2aWy0A?|MFRJ5ZBj#v`6uXOqR2u|a_tRYr0wDUH zr?;h$je-`N;zN;RUBm~?_a+`Fr&Gi~$a7yB+r{Fl7D{&KY}W_PHXaf z`t+8n5!^lFr|9eR9|uH6c$4PV4Bb|WEsBq-CPm#>>NK^x?VL2>U~-{A?7}W{eGh{S zM$dMwh2Hlrrx(MzRO=Nz&(#=w40iy%;yXABiqlBXURfBYnwgrI^_?KT8*gUabDjrx zm#R(3gXk$N>vWg4sn}cJJfprtyD40-7*jZBZhxIJ${Ifi5{tz~Q4+h^Jy?JJ_pQ8%pr$ag<|~p|z|{5@dJYrS&gY|EBNgpumBmX`G)h`K2|fz!;rL zSad^!K$WTj7URXqde+FtyhRU$wEl5f*s2~Ju#tY3f*fx2G@9n!xXllW*;I`N z*W#<2YjT|l>a7e4yNRWKuV7>0uQxeswc*i^LS^bP6V0;Mhl8zdC2A*O6S5N32+WiH zQ^P%9i|#HAq0qkUh2R-~5z#;z9hq-@sk8RB7ug+;#G2*D;;=}vFQqUB56Krk%?Zyu zo^HgY`2jDckj1Nj5yZs)lhuJ|DnUZ_BcG`}#>d~bQgZ2`63;YDFz4n!Dtgl!qK#>_ z&1yO+XR|q#;-Wr(GaQv=ov3j5g&fNB*yWlAghVY+^9~Z$IkwC$9J$#RU$;#3FGBXHd;{o37hXOH4yO3>xyN(T?E_+M9^(2EL)-}_ zcE3n+zNi=xJKPY`I& zpOhoNU`g|RhF&iPL`9{EWt@PCiJ`EU*MyhgRUQ%yzW!jR_9p11-%js~&ksABabisA zvTDLcy754gr6N)I968qO?(?ow4B-N}#K!~|9}!o2d2R|sL|^Xy1Is0)pt_qPyDQXm zkl*r>1a7MgNxVEi8NXdMa;8R{=xjcXzQdV+hrv6sC~0%@-S`FY7*6MvC92wC&@p%= zsbPO~^mYI9UMF&YI!O1tXPXuz&l=<)(U+bK3+Rv-Rgkcn*@=I1aNI)JK!o=MAKTi* zJy!yzLu#!**absX---o}j;?`^o$sLtrI__sV`A~z1gb3B`szwy65kVd)k%ra=ExMWY|_wHtbq5;pH`9!4HfEp_=V1Km3_nofk1Vn&`WT)dP8IG0FR{ zGUmLwd2<&z@iy0jWpMB|3i%fOzGmuQAI;++&1$hO2&RZbZ(F6bHTxEZ;hrYVf zwr_PMuSfNF4ZY#Hy)Yx)QERX(`DtpFO>a!_EPPPGlU0H|01^lL+`pFqKM$r1qn2cM z|1*ePIrQxS-jY3f_vXJ!dpeDRJPqS8QJI4Ctrs60b(>#3u=21x9UGX7h*S4E_Vd$a zB{D#C+k#niCc>;q@qOqIZHnX9it1Oh4$yAK)Y`@e|-dw z0hiJjkHEpjn5g{U;Q@&r$>YD7LH#{EN}%DfU44kQu!Iyy24Ad&PX7*Ozh78M>{R{&~RYZHzdZR#r-Eqv6Z#XD1HJ`5=@xpVS#CjE-6 zoneUt+om=J1Y`#42q*#&4nWt1t)Lk~wyFJ{`;knlrgH8TZjlypB-Ktcc{xqNIl%_X8h zQKt>o)Pc}on0>eVMekxV(+fZ45Umo&DQKVM4}%#0;ty#}zrZsSx!t+m z@(_?f3-F)D^~iW95;|_`0Z->VTZs2Fk5N)B`J?iEUIv7U7TiKpA?mJ*3rGvLzyY4JP8UU@gZQ z80d&0@5{D9g?M+@6ge(c6pdEH^HY)CjI7(&M`5Ab<4-V}qP{FKj*9N>IzM6{Y3pn? z;ti3QeLtc*OMNE@L(91P^Y(>lm%m&~f##GYdH+5t89(XwQ{c`F@Fm{`echiP0xR@( zwiZ+)y0yOf#(i*qWqWnDJ?&VuzN&eJi4-wuyBVqn9L-0*<$qfJ;-T?c_jO&$q-nXp zO8mQ)-FsS8bgK2O$mypy$SaZg#wxjC(L3nUNtz!!Te)ndR{(7)s_i6TExOpb9HM9b zES7sq`s@FgZ-GBreqJI}a$Tj`tOU=qKAA)oc|QfV!k?a~M^(gvO1?$L&kKxIQzp zf|j@BlXV$s$s{C->|kdT@HpsZm>-HXMua$*bVf0rYu*pR_kmqJ>W&uAQ3q-EZANSc zYQFX|Hi4MVj!@=As|IeIv)4b9ta1SA?v(?l)Fc~KgKsMkF2HI{+fJ@Z&n%j?2@mZwnQzaCN& zc+B}NA;3V2q$am-7GCbGONg{)zQQOOr0dNG$L+QhrfzAy9Pj{zyc;eHQDkhMt=a%F z|2CxN0mCq)AG+=w-vVtnb4@UgZ!lS>ElVya8Ru)CEsTvY&eGq_e15_)cHN^|i)U0> zYb93Z_wI34%20-9N{Qp~=3A5^ObO{2eT*=3)9Dh`aHmP#)BYhJ*}Dw{Sqvoa;^d0- z_1A2Zxq^D?D=coV@6gB!S1>xQo^9mTCMwlDUUN7mfL~E}xl*OK^}&)*CGyDcA)Mm- zS>(2maa&b^o8#3$FYg`dHqEjlIrJ1aV7k|!+8TxP;EuxXd!43tbAL*8d~&CLeO zACrt?)~Y`_-p2+yUb3BI`g}Goh^I9@4nw4P#XPM_t6?WexIV=+}T><4Z!L^_qrWI8@FpYw>q8-gIkNlp%*Zisq)D&%rDUIAJq+GZpiyy`2;_&s z$?wvs?EVw+=#z&;?Nt`B-6w?l*WgehO9t**uZvs8(f-?Yl9@s4Gw!p}vc9Zmsd#gU z`Rr;x$%xG{%>5C93GCf?`>9F8e(9kk?Tkvw^_tn1Jqsmyxf9PJlUQ0rkXIeJ0U}@C zpRvB6$E&M*KAxw@U3}{^U#+rf#mw`s%NL*`y^OPhP(Tl5#B5gW7svzOLG@-_rDw1I zHSo9#{qy!v*9lW!AQ!BMEYSS5fX?__>~-pxC8>q9O+9dV?Cz%qO6J^1!pqp%f*^M5ku zaFYX$XVB}&rDCUAUMllOeci;~=>&D}boFfg*;#$o6qVquM<_ZY1F`M~M)7FxLOji%WUK3XbqOLeHl! zr%@qOrgkG2St&xk1|b&}8Y4b+y=Ye|A$ZTY3V;ft1-|O4i4Mne7ep?>2rZ_hq^S*O zJn$YU5*|$u-_Nx6hUpzqERa14I>Kic+rk@Ow7_ICuR(G+T$^BAZ0k>=IVV2Xiit%1 zhUlAOjAL~%-x}93q6Q_OGB!9%}TJ?Lsxdv_Ds_%UD7BQidm1(O3X#hv|0L$KAD~$3j55})+mU_OpPm>-NE~i5C`=JeV1d6KKjnd#*%|Ai#(Qcf zLES)0szJ7H+*nckIxoG!#Jt)j(7t@Q>rCwqMhg+IBDy^$fIi2u^s9x4TN^zmFP%D_ zRSD4LK~LVur;uu&fAN`3i8=>C?^JZDOJ%z+_1pHv(Hp5qKByuq5-4m&25Ta=+_1` zYN|#uj^ov=oYeCJL26QFCoR(8r?Goe<(B1gFD}49qNzPx$6u#CNu%e>EW3wJgltF;-t#x?IS(n7Wbq>guK8YPmdNMP|Ga8FJ$rSCfMop}%V1u!~g-kPwfr zVFzH>YL~q47DrzPQk=z&xm9X6g-QGw)GAbFE_Suu+6-r#!@ublpUl{2F0${mm_5N} zm|tgM+<+$KQEP;)=r0i-P#&BEl5c5zQC81cG&|_9h%Xtw5bc6;CLUMyUS@8}%i4rs zS_Os-fYPe5-b=c<9RT~19vo9~GMN4);cmdzT-tWup-A*;e=FT&9->#9yt|#O1Ap6B+jD zQORHHw?K=`NqNz`1ta@X-j7RqnBUk`-0hxenVFJlU`tp{SbV;PgpMy5Cn3K(m2Vkt z1t81Wyjz@=o^~GP2>rd>GiY91RvVc=V(52FG}p#+^{BAo-n;bKd)F)|i5~dfbiEBY z+f~u=AV$n-PXSmq^8N8gopwq-%VwkLu$rvHwV5|kXGiE%>WcX?sl94wIY`}&mi>uh zS3)Zv3tkO*tq@0^eW1y$sgX(TMxIsg@>WxwMA@FEoK*1oRyytUk>_T>=vX$9enwc8 ztLRne=a2CRj$IxG`^Sz%hK{Q^Gq#9uI&Xa_9{^htlf2K&I*WE#F{YJg4hG{z3Cnx~ zdAeie0U_F-j!?U2iJgm7Gzd}6@wL(3MlL}$XtSi#`17}h?x^8H9|rpjIiu(jRkG3dN1 zP6)GpJZkEGX~;{hAWvuNBE9lcPy(B`<~1=hsXfBe?!z-}PweOx<{71yfdf!DT({=C z+7wsRpyNd);Gu?HGuzm?axN`~6sOps@qFBUxpD+_ZleTk+XX_i?hSLa{ zov%dRyEiZYR}e)C5Y?TU!$UIkij}ZWAJ;-C%1EZq-#Os{(Z%UX0F&{Jky#Z|E}0t*vfK|H`!q@T0s`~ z-CACk)AlrGr$chAC=!Qh*Iq)I^+c4#R(j>7Vs`mEE}O*-pGq4bOK?Lw7W8rO@;(VJ*PD_{FR=A;4JN)WI1=?C*h>rv4Qd5IT1AI*^DmL*Fd=@#V& z?52M!o7DmF+q8S4A_Okl9ui)noW85DZZ8V7i1+S{buGYV5@TsOU}Q8UpJU~^?^wz8 z2ak}STVsos0&py$LZc3Z)Gr{C)d@Zj#66jIuH2sFGp)Xg1s=98#4<)uXoKV-In(A zu5GRowx^CVvz~4f1#YwKyxxE#iOx&+?1~fRh0K?iEI_R~1&IB6pBv;7=BS%7GHI;p z(=(@=vR}n(bZVp6J_N+)ijc(AREy%Os4e z@w`{+!=t`RpYv|3iya1p&qSPbxk3(?-f2tTOT8JzbDJ4R?&->?7xHL($Qm;i+xb{Z zbN9@)5BD@(4^P(lUT1$Jz7MPQ+9L+6Lv#~90@u(3=%CwJ?8oDKuLU9OOJOQGV%$uD z{L?)pS*2~XTmU3m&Q5hlhsS_9N=5~06tB|5Cm=US&@DW;4NS;_CWZzOSOl?~a&G<8 zS#^ksS?%1s_a9-J=2ofko_?DWqsq9My~_fw(5{EIK2%K>%u~&zv;Y_CU=_fH=cC>F zm+TreRn{AN1|3f0MDLpJ@KBVqhmE2FZ zay~1rcxaGHJ{`7v$+Q{BE`FR;ue!5OScqpe*&uUCsBz@ft0kPK2s@_~<;%`-8b&evkyg7DnIW+sjfa}-Yt)x!f zcK0>IX~WzVlg6V?wZXeS7M+t8dbQiMVR%8M_T*EaA)Zc|h!S4^bYyyJ3dVi@jCR4y28j9%EkN)ND4S=yh4l zpHZ$?#@)is@dr~#{GZN(#uOYiwFF*_c^vbz1soHT>%d9j`U`D#e^v$??=0J@d>;GQz3TI?==0MWqCgtf zdL@qbR{2>8UCI2iE~|T5<@<9%Oih=u53wY(ekK}7*oAFO&pS7$gjFz-~1P){>#3HRCMF~tcW>o6xs8^ssrm-bq!yO z?dA2oby7I=>KE{)&$6`ikV(DB6hZzM9iGfoFg{7?D9Xr2N!S3jfrxM)TE(hQ-UZAX zVeu;DGGm)h`{}Bb73qw#6j+TH;vE`n7nvuJhE;O23sQ9hwqS#)QF%f5s~feL>9+~a zlj^orfJ(eE&L>(0S112>P4n zbJ0ga5kFutAQ1KvyRW>%oJ+F|xSsIye$$}t_Dc&O=`;CW!WT>p#cD~+=@Ju@%k&w$ zm@w3iSF{(GVkW$Gqts6Rq?$-B9JFGStU}G=j8AmoR0!ilcMl77tmEWH{X||Zmu{iZ zIgUo&Qp5M%Kse=|0SbJvg2aq4pGH$^8EIgbOq7KCqSmF}l+o#PgY^geMKRN+gS0+e zy+@`0cs?&D?Y9t<3BnzR6i44PbybP|s<1)%0w`PHT$ik8b5NoR{Ml6TV2HOrRkbU9 zE>DzafkJVV`;*OMm)`i{;*&t zGGzd`A-;)=lcJA}Y0^Ti5udk2f07N~OMKZ+MEj3JxX;B>l4RK-s9CpRN{WG`Y%`;Wr+JozpS++iZ|J9Gy~yiX`tDIUx?d`Ba#IG$9@SC(jI8yBw9PoYz1B z(C28YUo7e6B-dC2p8Y@(Jnb})9hg3dV!cF<1`VUVIWYwR5|&`+bG5`r$f$8gyu)U`;w%gA~AVT zXiT*<*Tv;6`!~Jf$$UMmYb}uFctUZ&t)lmkh?i8n`v9&}hurqe>1Q{nGHhGUZP}K& zD6(U1-y=4yhWV43d#4bFb#p<}BPM?_=3j2azyEE5L~u8|WU55~MrCoX{)NQ_Jv#(8 z$1L7KcF9S{>PFo%b5FxBo;;$`XGGq3a(dRZ|3=|f;mTEsyneks9ZU5=NfZWFbFl1b zh)13LtPq~-TutR+742P5lyfHAc?|pQW`*MSN=V?Wmh|Fh0%1ldf)8NZziINS^_Fel zd;bQ8e!R*JBhDGlIE$Bcol|q98K>BabIzX;LLy38G6kSX{w#}-;tJtd?wM!ET>I#r zg#Ba24O9G921S00$j=2S_HH?*qMiE7)49FOU{guSD)D)f0up6Opw zrq294i=!^j$MTi=itBjOn#P$e%+%XsxWkp{b#$Y^y|>ZOfttoaTHYJ)gkWr?&so9l zi>RY^`9-6YvMj4eUNWdglGE&$D5l;_pYU~vwFDp6YxibMjsjrRi2mXBzH=9nQ(vF{ zq5b}<^F;c(zzTbo{mrRmDRNVus4XTP&jzbWilVV{WS!io!tj+@Lt^%5y1nDsm8+|V zH6a9l#5v*28!ehNyE@+ukqMbRsU*74Cy z;N!*d&Zuo$M%v{G9aRM}Y5@T_s41F=+Q0aHbOYb~YblmhL}PddX{kL%*})bZnp`y9 zijNPhnKjqx9`JY=Rg#MQnrlPtboHLXPv9THJ7<6!@|VX(d^a*^d5F4!Dz{&=kY45s zqI}`!H<(DzQPCAbR=Gp^vv9{Zmrr1yrRcA+J7%FXmF8#hptBUxrBZDE(qZ}zi8kvT zt$Hf82m`wJ#r-_9I}*)oCA|1N#Qe}r%j$LHGije!Fzp`^KhSi~(dJ*SZE)YKOV(uf_mOnduu0JIQ8b(txSMlS4rCvl0 z*4|TF=bJ{ULxSrvL8+e?JVCJM00JM~y?tj`O-uV#LE!w-viD8qxPpAv5Wgyi;#MqovcPnt(nDAG0%SI{cT|yQ8riyU z2uDVWiCp-JwSJtb7`rddk==psQX0+_18|rPxv3h`I|u1uocGkfE0-FFyiYIun@7mN9L+EeoD`S2@rR|fMGdG8Srlz7aO*ywcQiP$@EVVeRQ7w#qH5Mr*wYx!?fGO-AzzYkWt+9T);E?F6RKB2kE3O)m z8DZYJW$_KkZC*s2GPn=im{q3cgudKwM2vV-k)@<&gSG@F% z$>I|+?~mq`dI~pG>)=b&;E9Yil-~YpQJ|WDfY4T3&!w|pnco+uyF^XIDH)CMnt>T^ zBWqCOJW)(oazE(BLVR(m=~qG=JqAzmPuOdy7+7d^(X_vUffQBd3S%Kv)q(#?)D__B zMPNW-cXvLZ<_tP(rZ0qF>ygUXZm~(7qp{GKLa2FMX~h+uXhwqrTC_lWZ`p}Vs$-@}Ml zWWAl+K!I4G@!=mU9+Fcw(?Q`m9}J|Ql-)p-+qJxjS=NLfoXK}i-OTkCT5g{`L(tXT z_&h1XLL}YGkXB;6$l{{7_4(mqefVx0i8I2%!}hHWiWCMJ^+<MclDfEYFN*Ganh(c%iM%~{)>U7nfYmXm zt98hSL4lURk*Jd~j0YVasJ9S_M*v^9I#HeIDEaIFh%a=s8jVDzA4e^LswhqR{GD52 zG^3!%=yh$N`l;mkd$Q+^CY+T-TTc9EE9ws2hbJuKhuzD4_wIUqK^ryXwNg*Ku4tH< zT3Z-)UCzv{rEtCax~mEILsO1yy`cdAhe6ptIxaVw9(8MlI31uG>#=k`BGq>A}ilcx|X4d-QD@P$}i{pJ%xy1|a4iGew^HqX@6#(D7)J_^dn%>k>U( zwY)B;ND*t~vWU&cK2C*|*U>k9NYGwf4N6+)!84Cq07pAv9MU44%m@BCj2Q73*#)= ztPVuBpJCo}Ah6=mOsMMR@$nKxb)ygSsQ6g~d~Za8D}HszfP$hyC*G=Za86(BY>psh z)b4dw4nXaO-Ku4~xFkl>%2Wf-M$Y^=y=)t=@7!C=N)(nu^Br20g6%OHJc9)$-SmX@7Fph-kIe*^oXkNV!U2MHQ2A3U_$zymYn7AV zJ;xV+GAZPNHBga_afi;44RDA#i}F?tC(FanjhmSj=`=rQ!o$k5nFJh0T#i#Vr%Tnd zr$ruY(XM>uq2e|5sP2%4>P`RfF-pR@fqTt;55KR!DV`A49TD37b%yez zQBVeOioxDTS*KTw=XY6~$@kmCisXn0EhPvjgggbuZ8z;#zJ-H<&;^{FIe(#FAW%gI zq^-dDqC^9cc&wFI`-xq}-mv}oT3V1;H2R0Q7A(`8Fd~;JQa*fFzr0I2mt#el{pcSS z!p#;IBK3m{S*@FrJm~y&arDYA@_bdmP>PwxwQ6t3_1F`>04masn-AId{vGNtu=j|& z|AayQTSjang-)zNZi~i$pIHBM?~wna&+T>!sROvQetP~#Q6E^wID%LW#xmvp%3*j;G?^ zFEaiKy5+D8RsHsk{C@y#p$Kz;7B;@oeEcWsI$BT%@6F|J{QU=?Ko4$490$Mi>#GR| zgm91T@#bI72!Z_PkQHc6l|9>^>y@Y_6b1q&#=pWqj@Aky+p;&8XY}VWXda-|#6z&Z zq996~36TrsM1oHQ{*2&O@XCv_|8~)T9n}MM)Jp$K^=}JO9mp25a4~N`_3uz8LO7jQ z(sX~>;(dcamtD*^)D*#}v3e?1$JuTBea#6&J;Fm*$oBq5Sh=w9$(@DouR`olEZkv#a!ZCsE4BMa9 z1oA_+wb4j_;uqKq;?kvcr(^QBjR|Ov7erNvFw1}X=U1EfpswQ+*(CY%8F0LX(ndD# z$C>|pr~^%BT=y89-$Xv>4`PBwFX#}DJ@~7S|CK%^|DPwf`NIE@+~r|1jqPd+`b#O* zt&GHMZjNM2eBM3Hi@-LTK+kcx(6m5;*%jkDDlee+*-h*y%=iT-oae z>nWb?-(3rh!T;Q(AT5Ajk@pgZ8fF0-d-CTqVmB*NG+XzTa*8jhgV_hne?^N8$xO^~ zgg{~De|&$fKre~3dZ+vuG{l3@P%!xPh4Akvh~5DY8@xpm^+(0c%@-P6WNQZ#f1Uyi zG$5Zjk$_vdf1Qjnpqf0*9bL=6fAHHE&{411R5t1UbO1SIkG1a$`{iZ^wTgHHnq$_j zVYa^qai9bQ21>ot`#&DA&{EBb{@086Kt0@iH?;Kc-2e>}^fA-Cmgb+Jc|kkyf~)V? z-`lcV5itH`*%~X*{quuuXy6A~;JF$9a*rlQqk^V(JAWSjpSKHC0-vQ~iI=|Vav3SmTAGsM3l!*2sMrqYjN=WpHVIrSDr<8Ae<{&Y&(2>uDi9Ps8$W5kR7 zJ#fJ{ZFeE}4<3utyey{;`X>tWubP2MAbuCu4C$|@@kc`ao@zJF@#_<48bo74Rw|ug z^abXPcb_Qa7bGUm;jXZJn*O~Lc|qIIf{WLfz@LtTEQ%nnl!;=arJdTFupcYYxus&j zv*=}%#P7}kxPS0+%})>h^VeWE3yASXwH>w4l`hM+J-6y+7;oKoFP#Rvz8r|2f8i_XA2Ngl_k7c+~CY z5i*pDzZ3AD=QbqF;o4ey5dQ9}HXW#!3vO%M{#jaqru|pQkcP1avHn1b(`u2Znh7AA zxN6@2cA_E1hXVTGUQFrViE=bjC@=t7#-Q67_SH3@Gb08>6c7JDL64tn4>1VL9Zl`O zthb5X=md!y5qeSiPWiuJ)6~@i|_>}(MxdJtzc0O`Yi}>rtOZ@O>K+P9K z&Q4}sQ#2A1zW{d_f-Yp6-~QpmZy_8-#^->TKju+jbdo@UvE3dcnRUIXj<(e_sK!E$ zeL~PLn^oi3s|MI23QLtcuA%t3nWUrgFq9$a@Rxli+g8Zp zd<{ z81T)&!`l!81TR2hYYMm7f zKpc2;R_<)><4|CYfr8~+R8MBn8&mqpzx?;AgBAyRpk<{jPvP(PUVA~z0N>l#(y-V2 z{NAB|VbUC@OUG+_qa()zbkpIigeix?qXg~B!nG*V6p-aOmiFhnwo_!)`?A<+t3}=VY5B5b+XMgr86f(E6;(Nc}CfJRX#-_2#x zXEZtPB7=8Q=D$39$pZzT@quQi_IE{_m;tfLbIu?UyFF+2T9$bH&92H(&jqu|fN!72 zhuSWi>_`s~qL9wG@MbBx($5uJfQTtulPH+TLvXmtE%eOfoHCTprs)=Az$EbAK~jV6sQ%unv61%LaEv^U26T*(K+Bgc}xn_WGdJ#=YKrj=ascP_K~zlFeNQkt_qfKPhhO8U51x#>_`7vH;6ev2h`){ z!~eY%oI{rok!72aD&hSJ{2h*@H82#Wl(s2X4p!9Phtzx&;fmV|QGDBK*x$EUU2$pr z?YV3I8FhB#v%rh(@)xd>5p3!+PI@Vp#{JP51Ey`%XG-45l+Vp}Vg`T;B7}FYx;$5= zRHh6dq!dP0PrUML*wK%-nn$qLm25Z_5-xE)`%2yw9Va@*hM?i>FzClF3aDG;M)Et< zN2xpkzh~SG=wXM#d91&;qeEzm_wCwi=~i$1kdPG9Ph5uv_uw0=6atCE+IzIbAI%KI zZ>A-Rj-Peow?DU)V;0suUG*;54(W~VMSK=|^TX-9Py2h;%qh1yI1~D4o5E=i_^OWPWCTA_c~|$ko~Lmr}9TXWh{SN0B98XI)Pa+!{*u z4KS|{?yY0<#JpN3*YhWMrO%^&omNuU$e14Pxw1^JtUHgPzMHH%>$1aoyR%FDD+09) zfI7w85~+R6Lk`xkKIM6d`OYsmawm4h6N#=O&rD`WYhwr*a~52<()D+OjyVm_mxKNr z4+GrbRo0w8*}MJ@GWh1_1zm{hYwpoznmfkUE&_!+Y8R-18W4rI`V)mKJy80taok~$ z`l|6O+WA6kHDDkTTydJl@-W+;+tH&vK3!5U82BF2(;D}AyH+`p?fZt)F_oQsmRTmx z#cR3N&y?qGW2+Q)kuAaaMTiSdE7ilPk&yDxfQnx`V&vxlg5ftyC)<-dq4m$hq!Sr2 ze~nfCRWJZP_4u;=USz;G1E}B?m{`Mm8673C8IBYswP0j-PlAkcDg=4uCkH=g7_W=w zHK;r_3MM$;vNae={MgeN2h3^3^Am-2y6+KXW-kmzUjpu>=$Uc{SKPEa)ul(GFFH|- z`#L#>J5@>EsL_DDKf&|wQ7t3qYat>OYpDGz=$hoCvf+yOA<3jb5&Ji?KVmBg5F31KHX}^p7I9W^6tra?*S`r`1bJ52v^Mhp7O6=|q5?|cUmc8$9mA{h4baI0HP=*ZYe&1Z;p^G>3pQqo(;0On2c;EbSA}&Ms zteYVm-&J=2*gNcV8Hl%c)C;x5XzBFCSsacleLqd&eD~q#iejNo(6_fOqFW-_1nP0a zu~~G$0?B&)M-#oBmZQDfB@PvhHm{K2?xjv6CD_}m44B7T1;hUd%viWVDGA;DLif9u z`0GQA{xWhDor{K!^)0DHll}Sh)5&_V4uU}A=L^`WnRJgh_W3ej3R%6>u@$m==}=*) z>qaCUa`$9|A>~!rQ=%iLVuW5o?%I*t-d)5UVNdA4@|5&NF>@?;eN*iK4jli7u(yt? zYI~!GuLuI7q=JBSiIjjyHwcmv(w)-X-5}lF0wNrmL&pIG0RfS2P`bP0UB~;oUhWw0 z`+Z~Z2ZO;rXYak%de(a8Gv_mn_x_E%$%yY4lBNEGAW%jz{(cK4GdBl!On@f=>*r$C z%AW36nxmD^k^JNi86J~$fw3@(PSEnzV$?;o!XQDRKxV^E#ho#YRaDGn4Bz-hM0vMS z&eh>+fZ(y_wfj7t$z**cD6AaQgeC9aw|5}8??*R73Y`P-% za(@FxNkKTRtZJ^6IIcHjfo1v}KQm*wlJm8~t_b2Weymt($>AP2RXv^_C`HCt8{NpAsnH2 z(7*A~e`0^Thb`oF0)x7eDu>$#gRfC!a(w=BC?B>Ba-am!eExE0hybBW+Eh+kUhFvCV4nDr(U%GfsZ@`9r?Byl3MTCLVP+8Qkey zJb&;FaXzq8yN$oZ+>U!|@Ed%RHiR+eK@Q01Z(dgHFZD>A^jlyrC1Ws5ImKokZ?lse z*|e>~AKJ*&W{x$9-{Cu5jp6 zHI4<5u>aDc-^t99Qx(ul#*EE6chv>1Zrc^eTJufOMC0-_<&;sx@R0YU9~*Z z{-gK1Hm7=*-d8T_qKR{-XSi_HP4(N2fy|W!3NgclABGjj@MdtI(&vXNh0bi{i_R5% z=OurOlzt{dIJiOiqfMPg`rMigBk0{oDgP<8PM}wLRng zf;@3VvYA{>bOm2fQ2&|yUjZ0{j~`+FANO)T_~ajO`St1F{I4|@fVr|S8*hV-*6843 z7j!8Wt3M+&KMh!<2h%B5vkd=)S$I|r2SITT=4t-TNJy(ebfqhtuNE3L|9KXl z-)F7!O#Rv0@Sit3xOmpw`PO^=3BQ-xv{&dU|K5u@sSx<$*C>>!f7T$Wj|v&MK_w&K zU$=J#aX5M~!vUY<|M=4W zgag6O$+Qu%x1W~){=9zAr*1vQ-}cT6m1h6m2mn;zqtsX6eRr4K`e#R`t!Ll?m01G4 zmgokh_za=!Xbv@q#kf&k#9NL=?_EzAKJgqrJ=5nri*YMfG@{ z@Z6DL6jHc-=A+ocrjm5Mzahx*0*}%DP0qD!1`jRUI$NR_aH_2^9-t0gk&(1dC&`ih z%WkOFP;6!p^u74Fnir5eXOeb|`MwDlqADnrTnjvpW1<0E2HWlLbaS-xTyHQAu-18} z;O4uQG@L6wv(nv#nQDeV+Ec_Clm=IUvC_*=6}KQ{QXgmdTn;q4uM{pUCLQ(rG$jc4 zr%j+wUYgIIGdRg;>VMxmC$Gd+Z4qq=;niKZe}_!JGwesXgVu41{}VgD--wdP{XBrbBX=D^))-@7-B7A3x2iQgG9b4`kTyE9=F z9aHbf-OY({Y$+i_SSUx$TO2Yx{|Led=3prO)NKGd7#X~BeS-uz1B-#%J~3A;at(`D zv${gj;}WYog{_FS&8qoIt5YV0k$-EZ;NUag-lyS0)xNs^*ss{ZcyeSFPDK0=IjN9u z8ZM{~T4!2K`9WtWpsN}#ZJ}9BY}$dd3wvG=TXfo4Fz6k{qwiqE!FYSV55q$r+cTQn z$h}zOub#ZM9yF>_%;_x%Ar%U6E@2#GHUdG@A!9d73iEr3Ib9W5jC*?FC8D z62cN5+jm|udBwkeHGXcfp2ieOc?@O0IU1XbVKt7RL|k}%$MdAMb58Azyr5wkpNCom z@d1R%YwYe)c4?!F?Zp<_l;Z+R>m0{meqxgC@;7Z$o~}b)%0%|mNstV?}VC9RNQ-zwft_3HzSUR zDIa1zD^2Tyob0(pk-^HtTGo8xs_YCwZ6LDqTpu<$(mJOrUZEUzGLXn{Vx4v7klzgp zQvLblPn-gQJO_@-RecTozTK@*@X@hdNsZ&VP2W2}{66s(n$91n`RvV?TOB!I`i?kO zjV;60l@PconopH0nDS|ghK5)*RmwZk!rf@W*+k*zrvbbr;MzyJQ=&ofexntL-mXjP z*6$ZW=wFk)luqJOxWC+@g886R=Hi$n3Qx;bn(z9M^=~&?WeqKj^|6v{gsw+rp&QM} z=!6s#6-Lp(1++H}Nzy)ZydnagbMGI<#xFIyZHp^ff%FF)Rdl&9uJIQd9sy~bw&pdI z596=^s%JYlb5k9{R7*E})x0;_P@!HOJ^-xIP#JvO#c=#;tuWV85BhX)9hB zLj_#AC3}QV=F&wdTX_Q7d$xx>EK7sj@iZxWwNx3kx6YMHgAhzTfj)=vv1OBLXpmi| z`g6ipo+V?zjkc(?Q6q)DWCI`WM%!E3v{tL;y=x;}7-Q@9WnUgDwI(85zVq;aQ}e8F zrs@o>52=k^-nq+y%!rR$t>K?8mF-r>$D&F=MVr@aendxp`2Pgwf#TwUXUjy6I*)Qswi_#WKYF zOs~O{?>paR$LJ>|(F<;e6XUUJkL(oNY%r-KE|R95Vhi!sxxWsh*=roYy3XrvbWez{ zi2G8gLN!WeZyt}h9Y!PXNGpysQBQk1Vid0IY@N&|LZ+JIN?XokZd&CUSMzK=3eA?b zx#_4;m5f`&gw9Sn9y}jjnHdfpqX2tuI%mYK@_{%hHhj~11A^p0GcQ+9yt2mf;`Zr2-P){EFmC2~|7gB$Q zzzcVIiv@O6eKBouyZD=LX#MBA?lK_?m>Pb0okwO=`$Z<|-_MIe-7JT4qMNHULUK@^ zE-}rxE10a!K>V6tI(Kj|yyyEHH@gz~Le?mq%E=^`akT)u*dEo(NylTPYj}84r-~7O zt*jO95Q}>>ZOBz+Nex;qmww?tVGEwXY&y`i*Ugc%YH5(j@89+EQW55DsKO~@>29vs zU$Ts;CV{Xgrs;QMEB8tp0?(AV@l7V)gJB%Cuk2&y%t+frTJi`a{sK-y4Swg2lKT`0 z#TgC91fMiSPCJ~Onl?(BUf(<1&VjJ@v9;qMw2U1fMcYMTpXnZbKSR2 z1)x^}u7GsIbwpW*2UJkf;%F3L3U$(`L)0D@GZ;Uz)wQp%^zlJY+q#dDSN9_0`qZH& zgL5KU;5?xvl&4sseQB^zD zfq~eLd?Zoj2lI^d-`_!;Wwg)T0@j%q@d7F@ygUuBppw+msgRaO!jDo|EgEry-i`tldfxMGm^J~M z<%edtA1$!@E$;{3%(`f(3I1h|{PXDOiO5KcZ|rlMUzvQv^m$@$cq5y!6H4)2Bn9X^(+A%ja}0wfbT`Si(twm!#Ah#NO*77EAtc`rttXZBOE z8uCMu0!VpJB3;q;0yC{zRq&=fu3DL?f2pbpe_KVFbGf7g;kH}R*|%8RQtV`1&CByt zI)ilVD`}yulKk-X)uZ#|3J$i>jJjdm%M~M8<}cVGv|l^UJ6)L|#Zo6Er=qiNUJ$5W zCtFP_ih24L_xq1fxE(F4VYix62*g+>GrD?%Z*T)2fy&dpH4>A0g6E1?y9|>E07mXP zr+Pf;lWd7}jC3Vm5=P9%IE7rB)CR=kdoWUscq5zQ;#uka_oj7-rF>U0_DE3e*sVH6 zy6zKf)EHgiN*M4K=9UP13-A9uhnp?G4Uni$w=E4PVeq$GSG2+B@vCq}&&4|yRPNE( zm;5(+snGw~(GvVnzK^%B`YpGya08d8-9=04W?SEOPI{r)Z~AH?b1$Qdz&AAnTUoo% zE32)ALEGy9a_(aenGfQoROuuL^>C9O_obmPyZA)1(tK%}c+LKR8?C31M0|I)wT1Zr zubFf_-_xc!)ZpVe?91i+l4m64$y}^;rqjjsue~&IDDNle`cEa37Mu_%L|KrwT2nCF z2s>i%GE$>Eu=})!;2h6Kld$%VCObq%l`thU0v8 zUkZg3V!BQH()g>MW;Q5!07LrvxWb%B)XL@FRMQKd4j5gF_Wdv)lgGUD>BIR?-k~Bh?zUQLY)dH zgsx_Z_8Wz-uS1rX2@qQZzXMaWvV9t@YB_rzQS^gTGl-TQ+c${W&Svy;|^4FcA zAEsuWbHwS`kg;~L2nl4v#EV%TEfz>?U)BA|C@C%u-6K_$OVZr`D_EsU(e( znO(vvGvrXFD#<>QQ%OB7tou2Qt59LAfH3^M1L4u=3xDHaesQ!FDVyTw3q9F4QF2^f zI+-PEjbkMJ*Dy!x;2TUFyuRemNQ@dRJWUx)hd=|PaFu&!8|%cB24xmG?umM%vs|5~ z>dZaKGPU%A&O2C7_ydz}8`9?fusCN~zGsIhIkjRW?dVSK3Q=at?x&jzgLz1Wo>@o2 zu7RyU&ot}go^jnns1C-RE#{^DEV(A*bVg~-ntA;GgP$+gZLl|I9&K}f&E-zF*an8Q zNefpvzYS@}ejC!3P)wM$;qvVLBABiqt@C;-NbE>EkBr*LwDD}i3vpMtVvZvF(hYn2 zpoBa87e62rIPY`V-_8df!E4ld{uG7L+`QKg`!zT*$2PTGw9NPUpK&)UA|AIN}KoG!$CIm%Xe& z;!?a%{rnUsYWE9?FCKl;B-EVVX-)zj zCkP)q|C3e(hs&>m`L%Zbe>>7D{q0EW?E1%%w#tP1OI+r-_0S3bc7kKNo7uuq-9&7) z4w~e;nrRVt$HFArXWH3=FSvQ(;`hB;JH2Sm*~4apGJYqN4oqO<)zU{z*g0xuISC`l zO!$_Xu-b(+v|RgUXz8k&1XY9hf!xL*rNS79R32JVsajnEJJbyWZ|4NHt|lz>dh54H zCWZxdXlf<9KNipTVJIJ`lp%ql1(Vu&%<%$`eueDm%dMnb)zaN^bH|6{JJD~ic~MVX z*!4sHzmIg@M+C*=I?_=4YkLL*L^EtpbZzG|2h9h#?>j$yM`5v~;~F9sdE-7&(-N0z zw)~!6rU_BjJw)_Hn6@YHM}(*8QNPx2kTI^QF^!`d5oM>aM-Bt@!(IFAvnUbo`da%L zg!)1;WIYDY{kHP9;+cd`H|(s`p&!;1%rjq;Ch_ub#ZvTOWBuauy!786I!WK=$M#)0 z;eY1yS<-5T1UjPasmgrv0&y@rvt&jEtqMAzbkXbntT@JA#}H8sV^?#c!h>CtpjnN1 z&XHvU+b1||-egX@uELNqXmWBxX1xBUJ<_e}9pxzXXtjq`Xgu77mir$U+L943_1`YE zpT{gdhq|F=V2Y52)#A`ImN$P7w6HOOrl$%>Zo8g7D97tA!3!>6EWRF3sQfDY;sv5$ zy%uV#4k~drrAkX1Hom8vRb5?}BkYC!Fd~upecZr@DK%q)QOnYqSyTVm(4rq2AbuRi zF= znfCK_luf8pz5wV{hKTiJhVM?F!_)A9B=y}6$9_)JH0|eum_jki``A2N?hV_OJ#(Z8 z68_Jf_0(yL<(L^?_&qW5H5}h+=Q5f6b~af+0Tp+pVy_ecF0{Keq#jwog_eN-ofF)J zHn?S2+#>hpXr9dFb5HK11cu=z(?NFG{#bK2S`~2{7SGlNs|O+%V-njNE02ecRiG)3Sv3vbCw_#Khu?8BRgmtzo60$+dwCnm^~M!sGyQ{Fo6$S9U5U_K&oYrS$*_m~R=PCIVZSK&Qhm(l8xxKF~wl^mBLVyHW z19>-ffR_NJd1AnqIA!0gAcnT?Jw@}V@rQCg|X!)+Xp`#w5j>OH_!r))1l^zCnjjJ`T_1!5O&F$2*}LL z+Cb@LxO6no`=8`dLm=OdU4J5KuMQu#`=%8K(e-tR`- ziDfh)8k477^D3E3x+-Zx?#!yODTgU4Y-T0W%`@f|k=r^wVvf%{V)}^`{ruhyjztplQdbjJ|7as{w8U~QH86Wmc))CqC@9@}uaE3H=1zc!TUa5;xY3F*(ww*xU zaUlFf(f#UlI=6rJlmn{fb?U!^_@^!!OE* z7^n(e7w-HG7sMr=X~LLI|0_Tq8di?(!LFS;OEzS8!8)#)3h%N5#5fMKr>wV%HUb~v zbf-t%kD&U+Ro@>J(_9>{ern;UPo1g1k|b)v)fQMlw)t?M$6iotE-vF0a^w%(5h}(q@9K_{Ov-!$&|C;DfrM}0o5$mvgzJhtAHg; z8Kdc(9;H z%&7sJ5;PbW1C2SDPJE%FqHB>4<97fZcB)1eqMG*Kk+c!#^2J}A{VMn*IAe?bo1hLS&yr&;Y+QD&WF@5 z@Gv=MUibSorM7t>pKbImB7L}wSot_NFXw83%V-}W1w>@Zm1F)*c^>VZeV}g|hi0dv zq24)gp*`XAt7=s%a(!2LY+&d?JMCmpJJ5hH+ei#n>Bcvk>D#L`8jhi3Kce`4FDJf6 zNy#f%Jlr4R$(B*_Q^Ywi@4M+^{3mVC=$oSeHd!RfbG5LUspI?LL%0$jHJJpNpaAn| z3V3!+kQO z^c;7s(;pDht|Z{?GJebq3y0%NX-`0~q`$Wv{PY+@Ahw#?DY(T1|zk3&gqZ zUDT`X&(&PJ#61h?flh=mP1NSFgT*&TmxUxLyTv|+K>U8#BAm=>7z2?g%Y0>*0rd~G z=95=l(qFkN4`P4MX(c>*h`Cv(BV^X*l`<82ER!>7VgEm?m!?S;+c#(4xZ}rLHxnjz z^rT)rhTGF_d2>UP79T0mfUO`dpmtIi>B8r6IJa)7)tCDB{0>MvG~by#a0;g zeJ<{iS&zho+tZ3F>}pgUQmNK&zMH}DPnW`HUAH?SL8-ue5zRMI_9ieg`J?DF_t(3j zpnRw7b#D&%_pLF_S^|95vro-wRNGMw<7&qBK)U}}f(h8uhHw0p2Dhh80rs@R3Hpnv zkG2zC6z1lbzq_I+?~3png??IN4cdp>(^CIqPkaCO;S9^a7p1$5BVhjhkEO)NvATC% zsenE0=zf0>$(q&rgpg2c(F6ScL^#=I0P|Y?6(m!95v4;xS>DU&n@c}F+Nc@~0qIa_ zPPpZ&B((KD$Toq|B14_Y%Glg{AKWFfwl=lLzgW9x+bpb{*vD)R{|5@qa+YyckuZG5|Pr(K2cSS4u+9*^yvVQPVr(jokN+HZq>=DuE%N z+@o#8{MD?7B0!vbPV4n2p~ab^V7O@DLzBxq@s+7R20+8c5?V zn(E(3ZR@z>6}6vby8gr>a_;hYn0fKwDH)3IB9z!ZF`%V-OMCl~3MYAzgjO{}vtl>) z{`aesPblAa%mzDgdE`ihz7ONu9XaZ#d?Q_uG+7cOiQ;~)6qT^mu-2G&fMYL!;a*k~ zHg#4%Kfw=ZXv0cH&;d#F5K1J< z>2R%}g=&d=4*6#&ztJalW0)RM9I7uX0`bw>tRQ(w>C~B zgk!$Ykq)V{?tkR-j?h;{@T;h=x9x#6`#Q=7-b#b`N*&y+_K00+)%f1e2iPJ#bWAN$ zpzjbB$|HjU0btNlw(h2ddVuW7xrzcetAzlw+E0$*k-`l!S$4%uz;y!ke`d8ZWdxA1 zkC5#mP$j=lk2BM4*3@>w=)SAexP`km-JGY;_jfrPpgj-C2D_|hm6tQf#+3>$%cPR| zl&_)=;vN4rtDWf{cCdT7Bn0rsbOCr)ufR0y6jg|~8cc$#CBIEPPclY%sV6)S z;yjRSP#V&$AM`xBB?{p9&d5zUBEyj9pT?T6knM>b(c|Q|Suh(h5I(2-Hi^9*ook`V z4}Y6^QtIeYB&s?ro5Uf1M}JYBQBinX``T$EwM=Cx7kje2vzh%rtg1 zBubw?Jn+$u2OhPqZp{|F$YrElJ;4_$JgumiH%hmk#WtXyO%;q?W1NW zE3}$~(Vki{2bLcWxlyEav(JKT7v2hlq(}ebQOh|smfLh4d(cS1@z__f&g(Mtc$|EM z4{1O=+JO7^?!G4u$__mJYWF+M$whNRQe^pQQ8Ww++Jhp+rx=@#aLU!XUD{d}}@EmOolgeUShe?_mbTTMLY<*FGG{7OFIXj&x- zuj5x@+y?Vh;8b!YW9kpTgvxRN1&@nwXj&82qEmwoi6^PX-j=-l2WVbF^tsm~_5!-a z&+b-%6HJ?72}h#)aJz2v_c2Z2NVN1znMpsAy2o^5Ur+cql?1hp*K}w^nHb1}cinsY z4691(IqDvx|3khZm-)*ln+0(0#)?QK_L2bG=~uDMx7+VG8r}dAl;tFa=Jtp&p;0{r8U|aE{<=xnb|^4=jh1&^HIL#Qx=&B9Ot!me`EAw?{zS z7$6$?m8eTwe@Kyl`6pZQhm{NG3)>}wZ?JPYcG>y!6>D%pl|3h<@jui_1Goz5zl72~ zxGT>8BdEt){Hw$eAb?*RxI6J5U1$m%iCtD`z4Pzg2^hdhR`jyaKaxQ>(MTISM(3Ej zP1T<}q{NH^x0n^Ia+_F7N(BGF2%5y2KUZ5@f-iQl?C0LOP339@6loe|gn!@iM^-TI zLlge{j{maMyb*=q<3_1L|IZWx-~NAl^OTsp@LjAcfdQ^a6Zn7%Cw|whwxP*S%Ty6? z*!+~`O22_Mo^aM_=qe_qv4#Rk4zMl2gi zaqNE0G(GS@unzngzw;>gAa>cJp=U5xEKfA{Tt3^qj-w^@CJ+!lmf6rtFK@QJjjvG- z33()5fyLuAv&U}&`ti4ro21nIUkF%h&f_lf2<2R2<;~F8n6Q?oAje}je#(6Neiq@O z@o8_ZsYzR0a)s>?vfAOsWOh8OW2t+AKw9Ro>35+BVs6GQHMZym%Ny;qxjwJ<$at3n zf*|Ee3n5O~b3O6}7cXG2peql39y{ObVLx&{l-21*EB%^+G1g6iF-sH4 zXP(V$8CW|#Al_K!$g{guDSF0ywLX( zW>?NjVoop3d9e`@P&1<6XIgwD@~Hxkv|Tcgo6fLGPsvfeUXXB#j~$#H3O8VnWT+G#w9d57n51q^p$XimI5 zL?w2^mZxj2;BM71?d!7#%YC`-R7Td?qnS<14--J+=yM+=EeQqN<$klLT4&i2YfcXQ z^HI}mI+HgC1F^Q7r#3{FE0+fY>=XTa!-Ye(>xYG9qf0wpPZQ7(zJ(8kY*41LZJCm9 zMy_(#{fda2N9|PU<+L@xaG4g1o16KT%<^WmSXH=Wf5&|8@ zpih#}7LLPSNt=h>w{Gc$eHdu*>BOPYj>VIE^uX1I%j3MtQ5aidzGShHwdq_^_6)qO zA@hB$|Eya0mY}F7_pD`OYR7QCj5$Wy<1FKq?#E)4y4PCnXAWEH4`*Orb4^Y&jMbm{ zsQ}4c=A~~*6LR-;CWiPHfowPMh>Tt(;A_m9bh+w#Y`ev#{N_Z)B5eacp_&z#!(u%y zFutNOHBpmzohJ)83$-PV(J?YH9+{0r0R@2g@Op50tl?Bdy8OY~^U2a_z!vXK)b^m* zy$HNu^0;#NQKd`N?KBt=vc7P)BXH%NwpDYJdaTpRFYpGjwKEstmD4eI=WlF4slYtzl=prvYaihn^`L4e(zU!YRlVV zM^pZI%r27J9mc}*Q;PNEr*v+|+p){x>pd1Vvzt2Y1nsQAk$R_RJM(y*4VfeuzJ=a2 zY~gB-(YhaZ5aYO0Q9DWdtr(})eC2ggim4yqgQ)urd{a(r+1e)WHa_7d8@8!2pOfaN z!yJyn4B!oQ6(f7NIwJZ3uR-zn)5XrjTn&^af;eWi3n`BKqsW(%vgaYM6p}|B#;qeooY#_wa&bZOcPlxI1q z%LAssxSSr#VYo}B@(z2mjF8dKEsvg)4Bfl5><3Me9X+qYJv*Z#R}f&3&+lBM_7}S? zKAflL-eQz>12UbxszO0nedIADmFvg`JKXsD+$5A+vwB(B<*b_B5Rf{#2)D5*~S=i0^PE|Uk(()Nfar=@}48+ScJ}VWK_md3Qq-uE0 zRLdm8?cXOOM?pG#$YR`IjHIoQ1;_cbu$QG+4p4OgVGzSCx?O`+ESNnv=s33b0}WG* zBZr-Fr(Cu>XNdp&+31INEEdZ=c4%)RFlL=9h(O)}H9_aeX8sieTjPs@0VF7IGfLD{KhuUnr6h`d@@Nph03C^7=%)i?Df)JFAaF!)h5F}Y7f zJ_n3ytH)O&{nA$~aSj|y>oHIu$#G9mC2h=ow&4UO`XDMZR;nDh1}}}%{GgY&j+UFt9xZ~sxL7J_+(1q z#fZ4URuL8hmvF}L3rNxR< z;d_Q|vtg+HY!u`ISp@vHQM04l8j3V?-;)yux2{YvfbOnJ;NYq-w0h+?i;oKHn&ilAuOFMF|L);$;1^baU7;ZQ=jkt!?)3kSM z@q>_;s3$>hLt{P`NJS!2DkpqSjonZB`e>C^rIdNNa_oMFU~o1*i&50`5B&64(!Lko zfec)$kb}PASI)I^FS>~po|#QbK4RIL>{8b9lC-)rh8xghi!GG&W+8&`=Ax(ZZ zdPnmeVXWzagY4)n$2tA+PPuP65Q>-XB zP@qbe&j{^1Az_j5dOBWEbgkP7&Tp28%SFc6N4ru#Cq!5dKG@alM)0V=Fn?PRh&vih z!blQa0$f2yroJ!K=j>BpWO33g1bN>@_Kg17^Woz7CVuQp%g#Ua^=X%*jhEbH?%4xZ z$W}iu@~YQ{4rI1QjD{g8m5|4M@ss^q+%ML=-XyfGk7(1J@=aKINobw(S0@`^|DV-}r1c$!_xn4CBt zEc06AS@vZ_+lQ`nQXTHD32yw1oWEKvIgi3>OXG=f0Sr7fB8>-@nf8z3Ygz9se zjrCVWJAA8CcmzZh)Yzlb`W?m;FNI!Y@>*!bkVD@h_P+g9%Jc?iVC3AFjxPo;I%Nrt z`<#wL4M8{6h!1aG8=-MRMf1SMB}IB&kK+zgDxH#2k8m`fn#Ky;w8dQfjxKLIcE86_ zLA_RYAa9NR9kPg)n$1P;}199>T8#%kplpTg|cDwGWeec385v)v0_G`^@JMw5n0kP6>LDmqs`k~e=D9f^BL}u ziGxi@&WznWuM+uWqok(umtV3nN}%)hw9xaO!%cQY^#~zzwr1w`CBNer=wZmC;Y5=! zWA%ER%(D#mX)J5*g8C#_?N3URy{0t%W@y}H+6l(ecP%@(D~27Y46Nt2&uuw&q?{Vo z_E^Do#8K3EOW;Q8vj_(hH00&zjlIZ7^4x!&q0!&$x*oqd%eUq*QghwQGht-8sS&{D)h- zb`@A14&oaWcX5;|g~J~=(2Udyu)M4wPl2v|qWr*YiOwPOshpCr%E0c!P=-Aknaed= z=fH}5W?ZkFDEwSb@?B}S>f;5w$9EFdUX~a$QgH@yS-!-Km^XoH&e_`GZ&@*S3n<=0 ze2o&0w69GMXT#8Ktyo-tdlP|FsoCZ9_@`hx7%iFW8eISW_KSrF7QL88LHg6;T zuiz{`%fS)PV_}fCojuUo1P6{8V>tJyOI1?Mu9TxK?+XV1_8WscB>mh&maI(~3cFIJ zti2b1`s4t4o;ch`p*#E063a2(et=y*2aI}pX0&)tBlLN-nPP0gXP(bYUG?)JkSe>l z(tf6R4*#trt?tbEHE0a0gLLad_1&r~C&r8-k%#=+adJ1wlhTKdZ@tJ9Oy>CV4J_Lp z^9=ImXv=0^rA0_t+W95f426%Gkv$QLexoInTZgV)w#9XE=}WD=`@nd+v2!8bs&j?U zGwU)Uf@>p^?YsLcdG)Veyw2kM7|x7QVJJ)0o}18eUQV%y&F$?Y`-OMUrM#ZH79nepotpVFB5_La86g&ioXZ`+ZCQmAF+Y)`$xfs? zBWeG-VV8tccU>y2Clt-tgrw;Bz^DbsKD*LO>O~%)j+DOYbKdf7>?iS@*E+f!8BOeK zY#Vz9-M)}4ZK)Hw=$he8P*L1zrNiD@m6#>2?Oobb; zf1K#fWcCX2q%a%0Kt7?)89r~KPBbC>vYBv*T!LF90V-k8jwgqR4?7+vw5pXsLah@I zsh_BJmk&UJd)i#BV(;%)0PRcFjyMhy0ZdDW!6;`K8RwDkW1jYO?ou02K)LV#gl{iwMbo8`Mb({K;h%Gx(^%0@a2ci(fvSq`~n%*7I6GWI~hE# zb+@W3boS5?=JLgNAKvffQ!!Y13yTKQE5_J@zCppfX*2fmq)Uj&;ezZVq2@Qi2I0Y@ zyGtLOkbQrhN`hU}B7nlVZGd|E*>pbrU;}Nay_ZQj_GUuk?g!$7%|d+#tP7XQIaJ51 z_b3^=?Dtzz#;Glk11c}rR?e83RgfM$&*D#Ud1z2*G7E#EMOdFDG0z7(v{-a00|!%? zi5!g=n~Dj&)Dt(v{&dc-5AZuUz^EZo`_8?ktgZ0=0s#~vw=0LS`#I1l+PWR71{qi0 zg85`EyuqW=*EOatwI;Z7?vw@F({K2&C^}j$C)Db zS<{?;^>6u7g~_7~IeXg)%zT6V=Y>#M3}{rkrPJ0coh!aPq#&;qrBE2lwr!kW(!o%yA(sMDkf*fP>q{E7ErhmoYX%F7v zin3~Wg+l!-@VRp!x0BYdT|iG7;H&YdaP0$JoH*-=K^lz+Le960bV`csSmsv(&seSn zw**)mZ_2U=xtRrxCwvReeD1((F<*A2hkYq@+qy>>+rkzOy$TV^ABZoC4_J&#R@=n~ zE-biS-`Gx=r)_f6tq})A2U_SQN7Mpda5yv$$dHO;c?=n2BXGuqH+q+D<0X5(zsxXYpTJ=G1PjJMkX*0zGb*Gpoaurh{z*JluNPL;9#}QP zz=di81jDg8W-2>qdh&T5e|y>`yq#{2#4dI$+f3Vn0o7~<%kP{rMK%sUAF(nrUMEm|&6%3T;A>XV zJ$3$P!_{K~6K6;4zMqbA0}rDmK@WI`J>)5W?xR(j&XiFtx{-}nBLhRA*8oEw;h4kv zd8Lz-~dzNg zhM{ds&Q}78k!gu*f-yMX49x-r{0Jj>c}_7llQ;rkneFuZ#J91`HaM24VT)C4?A0w+ zIexC0JBfpk>FySHw7g+e90jnWLEfKeT0}=*CO*Q2ks0b0QeOVm1ed*J9tSfgEGCom zhF5jkUJ?EQG|&M(!dD$5z;Z^jhHy2KNF1e2141CX#_(aBkp}>Tsx_W|3NyIuVZrmb z;ZnLxHmd+uRPbcNTh$xaJGUR{dbgXS=gaVoiMCu1$Z}Gt+pu}$IOFQd8Bocz98JeG zL=%`kGL-402R$3528$Ba7J&?7um~#{1r_VFF|dfDQz{un_%gkQla|E@L;Ug4E$ADzcMiZc?LUgt-H7%G4;t4FAS|9e4~V3Y z9ezjgzvq<@J%arLr!8`j(A>3r?XTDB)(n67VDss7e-aQJ)9}bU@C!{$a@=2hV-X!O z&!W-=u%98^SwMG@_cU>O&j0D)(9RojdTP^lnp-^=aLf&BE&#FpR1Srl!}FteD#|w( zIPd4(tL;0@ud&`D`|7lPjE;Eme);h)zZYX41ug2NMRB`$e<6RS9a=%@ke^<8vSdp- zr~-tn)gjp%v2`W}4@ z?kzH=l!2_4>TtgBC6<1x8*P_DplR|YL4etWS2T8Fh@QfVUspeu*Sz8mdDPDhY8&W; zxtam3yhs|^AK3?EeQAu6Z})+i*MQHwdq%U@F&Mho*92Eoh()kb>kCPI`qKFZ?5QWw z)(=OyFm(8uP&y%3#buBq$k0&MWeFQ{)M>8#_rcb%Jg{qnaW<{weBbn)RcimA+hk$H1@ zP#a!hky@L5+qi+i8f?yywq` zSVtqv!C64-UGb8;%=1qLMa)O*E3e7W44IGBt(v=Sn7tc+V|}mAg;^Nyxo3(X<8lKn z!P%#)m9`tkQA~LdfP$w%>jJxsn~>Zf6koo)0+Iip^Pb3e&$SVDMbelPB&?+9-GI6n zY)2j5MW&pW?#?o4uhg66lvMK3eR+qA-f1GQCv!SwqjxgbS~(dX?xv%Xq&$u{R5vyh zeIKLTO!VlP?oaU}D(;p->|GQRQw8I1kInJF;7L)szX2rlyS8Fq?z{H#?kDuiexC}p zvAm3^7vdd`mGM;gI9-@()&yOnzsAHv{yU=I&IKj z1)1*jAy&gW8(rHtKiP{}**&fUo+|vLrniQhnKCTn>-I53v_HH{A98Zz-ijqjs>QA} zuwwf-n(&(cf4kgEsOqnY@|y1rNa7csn|5w!Z2Rr_?CU;f2f)8+CloL-NF_mc^MU{g zb#bQ#h(Mjkg;#=d+*Baozo3iIQZ}Ya6q4u>H|{WA35WIbTy#02>9pW%vRJSEMW@U( zSK_FeMpGcIfV^{0Ww@OS2e(Qb^Koh8B@2VEb~b(3mI0zHO7E$l>2c$i^DDicd0tiJ zx~HGAeA&+=v-g=TTJP_>P`Q$vE@f5T(-l=y+d_Yz({Zj*XPc5UX^KD95q;T*HToqD zDbxXzQ-zHJQ#o^+DD9jhq?2{k%3>6~pLw3{Fld{bXtpV*b|B-Xd3g563 z^?92cD!tV+2MBgv!{kgsC}0_{=@Gc#{9EZ4K+pyGK0bA=xKgDkoBjym0(LW^F0*1* z>z4>B$t+K@V={8r44%5`Pk-q$$fK&S)6mLQXA!`))MV^v|A())j;g9_!+r%(K$H{^ zBn6~FS{mt)?rxEi*wSo}4Ty>YN{N&r-Q6KbNK1E@ba$P(d_;NA`Mxv8^M`|n&0cHf zJ@5OP*Ds?o9_u8b1YHc}g)3pZ-y~rT9UI2YTz!ImovB3W_FG3UlSW?Sd0XWT?y(X- z)th|j-V}aK^S!8l;Q?-{Cuerj-l*Hy)j0pEW3PUVu*Uq>3>(>PHbt&wo&ggTa7C~1 zbmQLg#MY(Ib4?V0typTyI30~kv@&*Rg@_sJla!^&f+s2;hayO;PQ`|@C3}wLXm@=(i z?T92~3>&`LU0LIb-FI|LQhYb78^8h|<-Uc{G<+Y8VT9o{AN!qm;F!`b-*JdVYb-D!6be!AQN^1t`DEbcV393d|BZzZA=MuO&1S4R2 zKM>w2Z{xEYiA`DVwEdEAy0~V!4Km%=yP5|%)-iQrHvLtTKw1=AWJ?y;IE}LcjjHqN zFnW)S>H(PYh96emScP|Y^>}vWbiUcKXW-s+?ue98;9DY&U#aWPUhcxdprzMg*zLz+ z53+aTpYs&8gg+f4s<}G&4~wWE2mt=>H~~!p1`^q^YLN22;`Qd;^(EPVdVKDj6Ur zdW`TR`rC=%9}Cz%AF&10d++huZ(zNP1wLSfN3I!ve?u9vI%3coqPzS)G0>Qy#cMGB z`#d2cj!^%w&`10okx(Kr7@7l3+H-<`=Riyk_)%O>PiOQ$n`$3e93+GDLdX86#Bzt~ z1Xb;H>zB;Xq$zGg39v5>`F|ge8XFZ_4r{3$Uj6%-2(mKtX{)D0mv{z=x4^)&{2p8N z@0o#b_;v8ZJT@$nYyVzP90F~;`eOD!Y%&K(rb(he9B@gG_MdfXz`)-j1OCy?@ADB) zpunQ_(|FYO*}wlok&dEp;-*q!NMUI3e!C-d`>`F_0)sBiZqvT-1n=3WlXI4e>?!0A z`U8|=;RagpelXr8Lv@i+sDpV_8+(bKPeNocX(~?Xf~INp|zLRD|N< zFV#)<6;7fB5Dl~(0xf>#lH2Q~+Zi)&Xe3E6{&dX&=+ho@{Q18_DMW+>?*YPM!bdDo zDzaE5QyOPtjBcv+eRU=*p6rQ~+J3m>mhy&f$x>+OZ0K|Q>!Qzs#k*PthE}U62w5Go94l-LSpINfBdOgUQ@1t)E@qIc89S}90I`WIl25GR z>Ib0dS|p$t7Cbzlnr?&N7?xjG2R6T~c*$*HZ>^5Kn~K|a-8uIwP3D$3b-(&Fnm0C4 zT};6jzu8VOW0s2_fO*Och7ZAyNKMAjAa2XoF-lDG)l@b|_*|V4TOREce2R3g!~~Wu zp5Cic!1Vk%FE~b;*S5((ZeN9WAM-8pGJ{GrBIK{jz9poc{bXd3@^2^uA!#$dz}$rQ z+>gAkAGlxykUd%ezJ*Hd_F$grR&aVWtxI+R56&_03BGUI3hr|9hTb~cS?qC-K7(xg zR`}>#4>oXYnLkoV?S(A4;h&xE3sdLhci$rLr0bp@jrWe*IYd(5$HM7TI8Q$m_MCl% zx%G7*2+l^dFx7_oNuCA61C2f^*#6^74oQx2;B2YdX+qE(MRjQ6R0?~K%krdB;LmIn z$%KOP436&(m*&Dpl(&<-u7h+$qd66`-1jE5Gdd>1UhGY`=Csnr+kODITQZE8iDuul zz5(V0+2KGvK7yl5(yGW6jB2poT6*A?`zHio#+s5Kv_Wn?IwYS=HqU&vAh>`bxg-afA4PkZn->h_}~)L+}m} zr>KRK<%EiCI1^(R~cL|#Yc?R(X`Hf-Hqq7URYve)to7Z#An{P z8Qs!tQglph`u^Oc*b;O|+gi&iWtZ}{*fpJa6FN8_tzjWG+eAX(iE z$u!^KKMU_z)p=FpFa&?eN0@r|24Mwj+@JVDq!Nn!>^K@X|1G*;L6O`L|Cz8!b=_)N zL|=mbBdDh;;iO5mR>M&XUoAdMukX{8?POUk^iN=RWzj2t45g7lBYA?F8irpruqLEt zeA;!_t|sLgnfJR3_o?DWo1d9g1e%m}_l_#~1ylS=paiBP{gl(%4!V0AfAxuM`95hv z!{b+Z*jG=J-js~piw&1vQuxnl>f=I3e>^2S;#T8R+R^aYZTV{wSog$|95S$I*-4H&ge(HF3G^#`8@ra3f3`+zhK>Hb|=f0n`&mRZlGT z$R6lb4;G7MD%Oc`2u;9{WE zpM~y~6j-Te9Qq$V`M2_+iF^azN=4%vY@y*4g>w039Zb7RYLR!t&BqNb&OSKBd)*I= ztj;V>KmW>1q|2G@&HbRuZTOSj$t+QMlXXs+ESdKXQrUbu<6QK**U!421T_5ziGnf_ zldm0OR7M&!v(A(NI-1UHd-gpfyxF6?V%`xZ6W`tHp+K@16}R?u=nasvCu!B=XwNJZjW1OA5S%vKgn8B?>k^vhJA<4 z9g|bfrDeKsWRzh>fUa`PeVp}$Nl*@?9HnTR;EyVQ8!{n725_9J22Y3Wm*^Bz0mYP0?(R<5jo4e`BXm=B+v~kD) z%jw>_0^L^)r>DCEhQ{p@sd_&NFRbG089`XI$p<6h`L|!VVsGFI)F_R7m3kMQVC}Tt z+cx_n(sUwb0!|wd0X{UnV(cRtZP^XL4J5(Vrh3F!?gQ%BEgw)SXh7Gm9Z29T|5kq^z= za?ebTk^HeoAS2g&r;5GUGBYm(hchQZP>l=+8kOslmM~=iLSbzP`)QpbA8!|aCMLO< z=>socVm{m3HE$WKJ@M~c-emg3vAZ&iBh&2Z_x)bX;RdbiCl8E9&KR}?+h~lqNWc%F z{v;Q+Nv!!0hJ#7?*5@K!Jsl20!vB{up8%RGdR*hcOp?TnW}sjV6}J>lN8oT-_Q{kC zr$|YaDQF+W@@|*(T8_%vu?6(eG983~;j;~V;TT(gusxKI@K0e$Jww40P{u^i*30h~ zI~T-~_6LBw@|j}F;{+dcIMZ@G-;Tdt5w{%Ki*2!(QHqUx;E*Vy=O;n#*Vju#jqYylgo3^^#5f$sH z9}{0PBjkxW#O)$^{1LBV$uTv6U{1M*33(B{Ux=)_Z*P62wSSWem8LA{7!{TJ;GMq{ zg9`OL6}bD}5zyXiV>#ff>5a@L-|RW0_Y(70T9&1J{QNJjZ2N_KYAjDk{%+s`&;}k{ z(8%`hY$skKC*lwt>c>T=oRD_-mURz4{Em4A&c~u9(A~G1=MgLiAk%e z??9A~mt@*9Fkf&>=T~Jmsji&Au3f}>AG~;Zy5K&uX7SrurP_C+=p!vSbm%_8Mh#CB zk~@KG7L)2D-^Yj|dc=WVj-N6LKl@ypQ_fexmwDe&f6Ot2gz?8Juc5{PLmaz`rhW%1 zk*|6b4jp4b#|1b5mU%-?-GzPRi~JSZeJ4+Y(^|e*TitR=6R?cqEP1-32bM;OJXU2l z%}E82MDe(Do=!Z`3!~*1{<*Z`vA;jH`Fy0cyQdtVsm%# z7tcJ_RO&RH=4xQRfP$`y5x1SJ_`H~51VnFD!n!qOi#HX= zdRS6A93?7$0H&oKwu7SGb-bzqSFiP{%}9hK0UxDiRdup(EFm4%uZ@aM!|2ZWM*Y;y zv5b){*Pmb?1F1niaBvzBR}VDM(E>SEKQ%f-medW)VB<|a8pI)vewXW40@7I!$M2M~ zd4(c_;q`W)3oUNX8D3!nEN#rzh0bf=tT;aOKJf8Kviv^G$B(;>!w{&n@Lf);{uYYK zrw@nuWlT|#pRej$8ugRsIQa7uesRouS*Lojr}0C3+Ow92Mwj-q$6!w*5j0NUIxiKI zrPv7Bpdq2MmWh?0Rz=$$|nX}xUpAV*`4Em*^I=(m8w z9tb%6fZou|rz4b~+@S8>Fj_q)&9*rVU47%G3yZz5bo1OaV|&e?aQ_eCsnVhMU;IBQ z16oSlC<@$w$ZANP@;!Qpo1$2`Lmw|Rw7p{JB%+i6m`uyRR&CWq65il@`ncHC!ZNmA z57})<3&w%cBRTve?JWo=?X2TNA1LTJ{rZx1YlPE|dO!6?zjMAnwfBHBfhcvR{`<*u zJTH-{3OpeJ%IicpYJ}3Y*Tv1dWjn}>>z3l*7)!wfS;V+{QYz4Y6_9Fc`ChH z4jR+KGT?*slArMGBL!=((^4Pi_Mem;MFe!eENN&`>r$oy8Kn}X^Ig0*J^ z)r|5+L{zT8Yx!|RO_8WBOhZK@7)|MFYv&#VA8#=SArQQy^0$1TDHx7hy-SBu2N*&v zk+S0AHzYPZ?fP`0!XD`A%9;eac98ITzAHZy)k+^pEE-3QgF6q9CuQxO+y)`t;>_2w zBck2F?cta7!d}0<&2odQQ{r}}w)yL=_@|yWpRUN{j;~B)z!Kn=6@GmdOQCvu?#2{XHZ{t*EjncT^6aUxKq;Y3qaLZetfw-Mic^Ki}g$H@xcZ^1i!8DlHbf;cRYTyw@64 zxrtR(dGWmpJNZ;DnuQR!H3lq`@$BD$(;81CR8OD3N5bNc+(#~Oe4zYIfcAd;-&oTe zO47JFKjgkNFMVG`PP%Q)(pL$3c8bKAws^!z)oP zT0_^g?g&RCWX%l2rqp>~-#e@d;!Hl$Y| z^U4iV^FF**lqH-Z(x#i``Ml#(i8Kb_1!{gsPgh8!@+R*?il#Uj*UT^dmfrhzs>yc5 z9Oy@og%djkv<-kC{FhdgqwS%k9J981%Oiqb%|rh;jw8%&MZb2YwiLrDszePlc2+`F zQl6;Cr{k(@2*8itJ_q)!M#k>uz=j>9SLihgbB$KNr7V>;b3C7<&5Q*hIe(p<=R6e& z!Bm?RMeTOQt-DvVyX=o%$rSvaKOBTp_K$?$@xK<}nV>Tb!20|Po$e37LKy-=sXfNy zzjXbu77v7=#u07@KX4YmGLf909e>2sL8)aZ+LCbF8|59ll37aJpFwF(?v7oOaoeae34?NraxD4Y7jo5vNpQVhG=D?DeZ`N{woiFd6%XBZLNlTC`Rbr7IAj;w zo@-+~yPu=DAEaZ?u`u65@Zko2scNy!X|vweA(NL2&SGB?oC&GPhLD@bLM4F}aW@KO z%3|=F!3RpXdniqhMW>73k3!2H>FgNZx!yEY$6p&b@J^?pY;}UKu_z<8zA|zXu2S=? z2J@pgSaKh8p$kdz7d|7-SVsqdmQ~*XOgX8!g`JJ}HBOp4!!lX@9YY_BuEr+=9Z`5w zi;zwE64i=72Q*)tp!tGb5nXt*Qu6!a*D8hIiormoG7+sTjg;2~dyT;))M#}L7u>Bb z5zwHVZMesmFIi*fUh8ydQQ=rt*K7#Ws3V$f)%Vz=vu;-BE5%HJQzfa_(H2taa)?16|tVRAb&tCk}&TjMF0&q#$oU`wRyN1#8@50ub?+C~1Fsa{4 zkk8pU#nLs~%Lp_Zi1(NU;G1xdH~8wJX8biJJkN$6Nj;Jh`4SZ>1x#T5M2kZ>ty}K6 zi5)Wg`!gH``w5v=czt!}x@H2{DILe;t;0@t%|`Y}5vx1W1F77Uv+D3gUfaH3EU3#r z2O_Gn#3y`%M8ec<;jHOQkMGjAb}(tPR|KL6G;tpkE%&$f+w#x04HcA6luS4Wj>{U% z`CFXs88@U@9q)!|e~?GdEVv!7ggcKla&oF2G`#z*4o@S$)aBgA_Xt;feB@bk3bU4- zdVi|(n|dgm4?8?q4UR>2xh@S$3GS&jS!J^sEamOsBDNx*LQZIv5YCsImk+<$GCdqS zy`-56^EncmLL4_K#-+86s+YdlSso(Nz5umgITRFEL9p>tg7 z_6pi3e@K0P;_=9F?gwRBSdqcohi;oWXQgzS=~yJOs>qW_G|y|79#{k|v)r&_BV--7 zbn0cCD3|EFVT|9OKpRFwQ`|M;Mc*Ea#?YIq?NKFoa;*rzs<;S$Y}8j#*N7tmhRuII z>>^U~p2NbKeED%j=J7#HzIy}rK@4v`zi#2!erYGA!rEAcV*ZmV2BSn57v3D0{ZQ2c zYx5Va5sf5+eZ!8EJIRDQ#ojLU?mfZM9a0aO?(vd4WGTPpjS(W&*gU-Xgk=S41&`3- z;ew_*(?9F>1_(e?gc(4I@?s(Pp}UX$X7aVMsC}>Flea=dFq;L#@|E(J7}5rH$(mk| z(>~U)AyQ&z)(?uz*U^fjP4Dg&ZhkMq|5|f=f^KuRW;#Ac`R%Y&AZF+=Zy45#UT#YLjVfxq4LjIjDDnR+!&I$4`)58ePoOX z|3m{6*C4S!GA*f?q|y~UWxNF<_QZkeQhU#`Zs3MJ_kE60ow|o)>!d(Yc5gXfKRfxa z%L27EaHcYqCkUB@0OG|y1PA_tpZp&h(AGQ6_^TLBl?R_-Oc z%MYV@!YBm~U3o3LKRcsQO=kU#NDaVLbANCAKWukd$P4Us2Ya#SfZec0Zq}H>VmMZY zTTc^Xd^FL@N=Pss;2Q>Dkss=6c;`tvn$;-iMkXu7^36Kr{wuB7K;a07@g+x$5Rn$B z%=fxu7i6yJU*Lf5+D==+vy> z?}q;JEM6Uz^EzF{8mkyl_v?!FUUN=JC#

0)rh2Amx$4FY=}2Vk0^3yPvAD=XdL0n`^^1R6z0=-9V)pBvRz$Eu zNJfPoG;ht}QOK0&C>FCjndg7Oa9gXe4SVI9MF4^n`tyvGRL`MR&-KI(w{ zNAv63Ak&@2tiUVX@xd0)%P$m10uijMHo%*4S|HdE^INL7^bwOj&0TGz)hz(u0g?WK z=`1xz+e38B~8KZlJWJe3>KQ8Z?8hQsR*U|lt~3x_74s*m3X za-V3pmXhGq4xqRJ%U!0J;!h10ZGiuMEkPK_JNm2%Q#dOQCBLoT&v6wa&5-N6lMUjs z!C76Z)4?Zev<%C=ly9kDe&6*D^(ZQ91YGa;3ux(i<)s9xQ0DT_8RK{S>B8UYyj_bIP;WQ98zh!RcZ)w zT8egwDz6+yGX(zN2l*=rFhM8E;mbP*TY1G@#g2+|{{CT6xV%2lXViYN7>%*W^gR5c-i>$7O22#OM)u2XX+*d|ht!0H6Ir z+eokpD5q71*Oik|O0`Mf69{6XX-|XNm?ar;EK0}lF9tdYR6pM#vxe&9^W3RTlVxdU zQTs-*l&jZup%~K|}OGKzfhf<+wZ=^4Mu|Z#q0#{Byd7lx9zJ}qkHGvH6XQ8%t;Lmu3-9wDVPGZAzh;i6^dj_wnU{N(P>_j5K?#js>n;+@1sbfy+L@)r;j1Xr2CL}Sd zv82ES8(48{?~~4|Y(~hopFT_)vNd&B)NrYA&JP{p#IXY7xRAH;kagPrc!Zs)zl})V zPL=@d=?wuxWq7|V*fyw1qdSQINIYRmamhgZaP++5cdBuSlNl&VHER8YwBzl`LH4I} z8%)IO3ap19jZ~I;1ATGs&D6s?JDLj*NuewO zdUV#c+hw}7`DyIPCyg)Bmr)5%oDv@3Znlbz=K|`)kY=AnO@+8qOud*BOSN zSLoc%a+SuZH{R`A);ouV7aB6yoao5i5GSxscAf4p-sVnZ#j;u#R(ZF7mQpWfaNag9 zM$AGf{p~I2n^Pp5Bv7fFlzD&S4amAr*016x@M@)Yt*_#K>hqR0nG?OsDWTEm^)6yY za zw!F0b{5y^F*6h8HrqKRABbsqMAO0O!?Gj+1;l{soMgTDSD0lK2PiE$H*k=-*r?uiP z%_UhFl77i&TDnTY_$`IMs3h6a6>!0rg0I+-Kf+!b}yB9k8u2RqZxd$j9#Tp4LQz zGwmlz8*zmc+d^irNps@9uJ(p?bZ3Gq*nNlJ{xs(DPm{*w z{9UX`tGQPz5;Yzdz7}vM$XcGo-?^0(_dqh~vkA#uMQD;x5Vqct{H&_CJ*66mvwya# zAQK$y<@RJJ>?%V+c*|uHtuI{whQsr@b zKd);~wD6%KIX`SWstAwx_>@+s-41P9_qC%*ifo8q5+k^5q*=21#>cOmdX?r{Dh|vu z{DzfYn7!(Ah#M<>ZMw~K!)leP~NE&G4 z?4oSQGHa%3-recR`r&2kEwSeLI1)5vIE|GGJy5XvRm$DmNw z(`9W?$|rQnd&qQ~D}D%WQm^V@fuqy`uh&!{)fH7=%kIAs*7Fe3e&Kk9E56S(6Vu^@wPg_tlNgA;xuogV!`-q{lQK~Y_J$~+~*}oWcY%^V$=)m2J z%fUrJcav&XR%25O>N`XxGvW*?Ex~?zuU!(%T=*6>y?Co&^{pul(|0t#VI;ov!6MakPAkb%jM;%(jEx%(KPv)jN_g15$%v*{%w{;7wB7-IyGcX?LJK zdKWuTpwJKZt^x2K+hxf0!g}jLBZkLm7Y6ooBVp~PMzd=zSn>~Y@H%!P$ z)mwQNmBAv5oj44S_^9R4t`=iAMRc4?gs#nQ@?#K5BuP!I;1TXP-=mhentf0qscBMHNBjU{<({RG z`wtqwJ#<6r-r^CkKsgMEtq3$8(wr?Yg+D1fIV~`}+=(0iR+tpbHdGm54g_5Esvq<* zPI((S*XTk&l%Ord3pb!czQ7^4pakmeTR@-~arxVeAAX#@qR{s1n`{PBj|TA%2EF@! z?^*wQNqnlEa=ktk+{(xjndS%^;%e|pjadKi+`2{D7ktds^30;~o;F6)cJJ5^P0lnF zxELKq;`vEfKUntZkV@7UPR|GT;{aW*iXexbL$tGH1XR87vm z5o#DXbuv^6J4{U2Li;Qk@c#Ca04e-qx8kE5T3xPADwQpNO)@1IH60rSY*(?1#0ZAvvlqYDc%%#N}qSES& zLIso4; zV(yR z2{7}^E9-NbrYtS@@(DgjN2CuSUg7=Z(p^KGrLOhW_I^jO7MH$|7(zw97FuUnKhRMv zC(_qujn9{%oPu%^D4$oWs)sl1TrJs&R7m~Sz0J`gYKKHr z{0}huM@o`5WjNY0KpQK8&fKB9XQ*pHGy^Iv1cRa}X)4@V{mPGy{4C&9dQYqN&}dd7zxm@(tn$PzIM=nI&} zPlvW3}Mez);IG%4oImbsVRsL8xP1`P9 zYyC#8wmsj(_)#YrU0L6ATVbFDWI4P$(*(2i^h5Cg&B^(K7ojC?@U(pcT9 z`nOlCaUp5vcL}tLG=-mV9r<74cN<0jzs_Ht<9eSr*tFe#OgHF1C9=V%K7 z{-VK{QGl9IlNfiuzKvQ|E#CHV5ovYPDsUD0sb30TAK-hSTR*WL`40DWIRTz47{l4V{r&!hgD2GYpIjDBeD}DCN9RqpjjAo~U5hs9 znL%MxQb7c37T{%(@GkS$6hI^=qjlArv_3jhn#ejsj^m+?Z)8syPHKS_&1WhIkH@5 z5@viFHXGL8?YgMvQweYjwsT^*)sq^(kl5Q?C2t)+YKD>xljNYN3|=b?nqGR7QkT_{ zmK`>l@uOc5+m~GyG;VP4U3#y#IxEHJG|;Y5(4(f6c3MfO;LooqIj~K^m5`R4Ek{V8 zaERA}R5frK7uDKLar?om35mC=4CS$|>n1fjmsTVQpt0BL2jV5V-0VWZjvGK)X70;l zbwp7IVQS{XsNpHZ1KGO}f!z~)X^aYRM(v3H3elu16OSvmMdEf9XN?stOHi)MtATY5 z74E^wAabWKQc|Sw!TxfEdgBV0eV*t#-(I4JeJWS(6T0eh%zr7>@5wROJOXKgbztbJ zVjP00;f>bI@|8Yj=0n!4&wH*bS)Zt!4~RHeyTf%}e>4mRE*ky5XpjaqoPYTFyGln%%2e*}EDYkP z#OJvE-pbFlZdQ9<6IIa|EvQ58I+1==#sA%k!J~S!F@OJbf4|X57`y^tC^80o8sn>G1WS zx4!&v)KV09@O?z2!Q5!B`}#k0U_i1&{l24fsP$EQ#x_9ro#TjrQO&P0Omx!BmA0@} zdIXwvVh)D7s)%h$U}3sTU4QQ32wki^Klpr}2xHYcEjziOmqE1pyv}>9VYA!U*d|#w z*YAVVdsDIrvf%Q`kfES%%0&kPcVp}ghFz!xro`=jBi}9?u)X?ocLi8#sg~a!R)k(W ztM><8wyQngxoVv{?Yz2bd93zz5sslHoDw#n2h({5;tY#wMLoHD&KW4ftkbz`t=T+Q z{c!5=y!*6@A#RSiOk{xeysl$s3s2)a^mdg-PdmxSd&Jq# zB3*8?^_80Aug?b(uo071udVaV*6bIDr(N$rzL$2m^{xR0XNGuTv}IjQgEy@J)#;s4d-E7tF8sQ)Iazv-H;Yi^Tw50DT zND^4g#OKavK19b$b<*9U!~B9!qOkef+^~qlMiz1wYf{U)0?pU=F(gD#HxOL@Hq3|Ne6 z47yRP$7Whbt54_NNCQ7`>7W1Zz_*>t(UNhpH$#><*HwB&|gP4dcM9>Rq_}hc7gf^!4~w# z|LzlhD1SRkB>7e1`x(L*2L8h{%SY3_%pfgKcQ&!z~=*c$-cf5O%~^UYhn28n-exUGQL1V^KGo8fbqIj_clP zgnRe{sJSq{j(CwDn<%wA{z0~300-dHERIeVR?in)?^(_XIc{H97j4Y7>DZsd8eiq+ ztt$fDMrr>t;_)!}+DS+jU{q4!v_!6~cWMt8MlbazD4Iw2WOCe2zKv0h@QpHC>6{Uo zAv#Bom7`gB&H@VBvuA)K)BEUUc1p@dccW=l*o31e#48TVnU{5ZGTM2aRm+L7k1%tI z5?QR-I{sc|DI@cTfi0@3jyY|A9~I(XR+kX}aM!xYz1z8^D_9K8)3xnrd+&K(%6H<`$%4EV&gZ|I5#>(q@ zc4JFLAi>1d_Fw&6fUto#-AJuj;+JMz5;%eK-p$q-u1<^qmlQnk)F(cY(CQa&lS^&0eBh z$>Lva(6{JI8e|e{1cYF#4{uF~BM9HiC{KTX;AYF{v0I>;GG!mJnVPWo*^WGylmt`x zrmY${b|%2nQ)y%*(i99z=Gpmht8&_r#&<*T>vZaw_)QA0MBQ9s%b=kI~g%TL~xWe;jQsTa1o4XFXLDc=0=|Cfrs=Ttpu8 zX!Ms0tmo^6x=_GO3oO&;%eOoW!%B8CPA`>fJ9(iQyve3(3j>|It8$G;Z-j0U=eWplt;ZMy`;1VbPq!z zLWPXPQW5sgTcu8X*GdYS2eMzNT09<09;rJJJP6QrSo99Gbz82hk_ksy@r=~sV-(~y z{l5MX{wdL*tuR8YU1%l2SekIx^+`)TK5ZD2idnGBBEpxq4|UN$STubKPX*lzy2opv zQ*Ciot|WbX8ZNh^@QXO_Bstg}A({HO*l&D{e7T#<@q9+Ma4Z)ClNmLNpB<^J{y1qB zqv85GH+_i^NeFhC2N;9DM~H1I6mjSu`!kQeKO&`SL{Ot!KTH*JuU7G0A|wX=-J1TS zx@Cp@46lS|uGzc^|FusAMeemljneQoF>~u-k=0anO^ zn7DxRxEYc7ij|BoqQXowlq;U<`vm$?q}%S$JzSTCksvfshnwlOD4Adp9CVX|deWJa z%7wxfW3yp+I$=8rZCW{NB-)W9C2V(gn?`Mw))dh^qc`T4;&q~Z`q!&|C(o2bDIweM zBRjc^=4;#^y>2U5EJF}8z_JaivVG)-o&#b|``lYI+;UV`XuP>4xqf>WV@F5s>#Uvg z#fzt^HZXXe=j#QADHnu4y3Na=a->~F*s4D?wPKEgklxKYv`*cTl1O=9=l2J2XX;$H zBZKt_TRTP7VfLp_waUCQz|^&-o2xrF6&Xcewt?Z~Zn=A@1yEsU*`5gWLsdoJ`EFBE zp25SY#TFqY+ewY zIb4=e=H5o%RUDS9_9EVCw8NW+sm)d46W%%6vE*}V?F_9N!866QLvO0yyFOkC_K53j zp9)D!jMf0T-VI8!4&(1XE^L`wW;b2wwBD=`1!vB@FE?mZJ?P|ERLYcN)p~}{R^7I} z*>;X{F6&8UnlySRWE$SOQRS0F>iVo%z6Z>o%@&Yc`|aihEO@snnu#Q8rdc}`#moJ! zeL*?`Eljt#r|5;U04d73XxMS;;!kx{qxfb`TRi$GR>w`q%FL9c{p7wARP`3tjR>{L zdrRd|r zksWw{KU)TPD|Avm0W*iRl%B_8E)z$aMaPcpeFsX`3eXGa(bPt(JWm|}#@rvl1o9O( zdD64!U%zB~SM^1o1kWi^4t+#=pR$T`Lpr_G=O-e}iD_?flwm|AhK`udy#p0Cq~F{W zx04FBE1FCl03&DwV2o1K^uX;@MQM0J+@#rO1A*Q_DQ1cNi%|?IG{su}Re6^N(=V|S zY!Fk}uGZR6G;TR&E{czsfd^??AE=Ek6%*W)t5LQyc%d2JV$B+Jbz>6dy!zGkR14w(R1W zRfvy#m!Ki(PCVw!LvzZ}oKph`3RDrMBXl9^KuP~oL>%@=0fdPzejss_vC{>u?NDkW zP;J%*1C^14Y81!{jBOh=9qF+_(lo)K%PvPQO z_3MGBk~*<6{EnCWOSUY@Nt=6-cl|^hrt4>o|B@VrFn!W}sp_a(gI2|klh_*8gZ}mV zYf_9mKjXc*QEM)Azz)hoKQgSfoDcX0bz}(#=NL>cRzqM8f;qLt~3n55W)isoB*c87h>300#W2Qsl`uBxcJoh`z12S0$_) zTbp>*%BJORuW(47n4KR9`!%ZkFs<*kCZ_H#58onciSB!TvVXHs(59N_9LX)_&HlBL zJ|&2G!Tcq)%!wC1%gf~jFysNyUwt{C1X+yjeT)1hQ-k4K!y~;I=Z_(}!9=cqb!T=3 z?88L1?Ynp`OTX6z5d)ju^xSMlssyD#nls8N;xUgC+qt3)`V)ejXP(G+vJ!|`x=rZn z`x`tt*TXN0h>=RM9rllJF=L-176_e(xa;7GL>&m!_$#h|!O3`0$qmQTBC8opLMA8S zxrRW%Be(r6j}5;CL)ss!>9mIBNn1clkbdc#f~S7&(|pr$FT=L%rlK7c(Ke|ks=Hkf z5s@rt=RI!7EjI#cfMbgPTFXr~Ho+W`g{K}B=BF4TIl0O0wmt~ljtyoj=S2f7Ls-s- zxvR_lRJV0-1;ze*zwlTn3rb7vi|+$#r~rxwd*XllVx!K-Dn%kGi5Ofob-9fFl$OgyL3L^B27k)_nFR(Y}?A?f*x zt%ya;JnQ^->wRa%PytH;1>=h)9NxA#0N8(#rWAI)k$vaG zx?W1E8TGpL%O+`+_1lD?nd)M@rM51`=w~iq;ClJj`(C@HQN4V8v8ofUf+vX>?OYvy zofmC(AGay=B&C(S4>zB`dF?=2dqhf1b6FpHeSw8NhsAfX#B_fWO9-kmIt1UYD-w_z zICq^pcR9(7O)tNTF@+`Y8+3edub?rR* z*g~157t96Q2^V)Q(Bs^LX`!(Axx0g6@z$mcUc6GRIXivW=@py9#)g7{P&VJ5CClfc zk0xv|1X-M61oeg=ekb8jAGVZ>WM6HT7^=dDdUBw@uI{pg?bG3-694qM;i~6`4FEZJ z{RTGap8pvF!a)JdL6jr>L&q|M_8vh53Ow%52TaYR^1fNHRE}n%hf%?^AxQbX4<|pL zfu7tvRj#MD;hONZvRQD*vI294=8oJrka6!1{%*EVCk|R%;Y`V+9=t7 zqRsag;cOsn-e<=ZUS}*9V064=3+g>7Ty8A1Bc%42-;FAaJUDLmXdJPZ*?RtzI;q1C z$|Y0sZbp^IvZo*0lEAgAi9JZF0vaFg>XcDPu~vNTx?=K3BE1N}4VAEHw0y_*99y4J zH41VA8wRrh{zTs}`ymoU>KXg^L~gBlOtTXovOGa$D$^KmFO?wyZv=KO&-Tc_m}D{2A|wR35(*1r zeQPG16-DU8IG-nA);!cYM=cvUHJ0!XSOPitiRdlkFNo>~ZtJ6 ze#l4u8BM4sBQ_7r>&;>NB!zrq2;lT^(Ywj0C=;Sn>{R|aT3c`xQxp&0jCE~T2FcBf zZC-5B#F#bNddHalS#`Q%z8adM{S-?TqyN)T!ADOQUv=Hghda(<&|^r5Ygol>(19)! z4P4QYzPIVmtq(`DEN(k78O+j$PsatQ;ZRfdhCgFaFGZ`@NHBNN$2P+5ZuTO3(KhDY zqcC8p%3IW)wcC`kj7&e+wNq*)4P!ul&hw=D#gJmLG8lQ3MY$b4-X#D6@DN1hm> zYsDLgsUjG!eO(M#+Q)>34>R_n)2VDuele2pU2waAa(fo6RBl4$0_J@CWkBbrM-Q(k z%s!j@=l5mPjF1B@_BSgab=In2Q+}H$NtKk-L3xnMGb|)u2LCwLt6vc=g?B9^vl12=e4K9Aw*MP(hC}& z87d$9Jj*LEnHQb(M9O18Kq^GuNp$x+l3)}sC3QcOKcN^n0&Ha`zJ(KCtk^9~L}WQ} zRBpX25}MpA(z6y?;<=yT0#CUtI1W1c2m~#I!|ngbI9l}Y_p2^O)Ze{hM(Ds-3N`J# zb~TWo3ENpp6aTKnf*)J&-2q_HUZQ`;7&)KBKD(V<%h_e%f9C>=&<14B_$d9^52*WC z*afH&+nw8vTRX4W;$ltAc+D(BbLePSE<&~@+Y^&4H&-s%^~rC|7*pqXGFUne^M0}s zBfMP?NjH3^3tX-0FR$y>$RSL8X^-AQnI>LV+cRgZAt$myJ?NP<`=+v%gDw;`$M;V3>n zzp*v&ij22E_sixiyC-1OK|lh(el3lG1o=4x20~;6`i}`BnA8vYRY>mK9^AA)E;&2Y zT0Knoa#$IK?Ph&EVU0r*`HOG2z;62)OgGzEP_h2t<-l`tH3NHCfkGfQ2Isjva~D*> z{Nu>GZ@=C}GTh)|Y=R|m%RTwhxLT}vk>?rNbGXxetz50u)n057o8<9{&WlFLs1ctm zWxB91+;qMBqFZ95Nc&tg@vb59h2vxatRJfT*}r)BD19hvAr?^o2$SNkm~XW-GgRy; z-fpPPW*tq@dvMa_GpNozN_9FVmw#TTZ3c@vP_EKJV|Sw~4diviW!cCsO8$c`xY}|k zpfkme<2wiZWaV2?cwykRl9Zl-YP%MvJCl(*laW~mlo70kP9?_qo8LDjb`uNoFBIq^ zt8Z1m3OPR+9Y5uJdQOy`k{sbs4xV*HsGK{(MgeT_()o_P0jCpS6W<%6%91;5&R0;M z++6VG@A%u_)cln$e@Cr0jf4V<2NjyYZhNjPTBnci0UblKw!FuVK3ctn)>n;Zhmzi% z-&@JJBk#j8BCnMq2Ja?+1orQ0u$}3MG|c5Q=h`b|xzPDk?H#fjw8c9E!PVoIDqlGt zhHQQ?b4ny zblG^vp6G8}N#ZS}PV@A;Ew{*svg%e?DZ)SSL;9W$ZR@cR`@^37S?8dra`C(DDoxGl zi);TR?P6+K{H<);@ZcHY=#XGn-fGY|@-bhzt~349_D2`A6sHdKh$fpOeQ%Tep?63w zCTk63e1j_p-;p-ah(537(5hrymHZwnX??md!tPLQ+VPcK9S-{m#H_CnkJB=TrxaVLvRQ`{o$$Ho##3FZ+X=u0J`n5<39P1iocd z2&WcfqYW2Ev6i=0$L&Rcx{5n`r#m}yXUK=lXxXvtDUM`xJH*WS#7vT((u%~1%UoS% ze}7?1Boy18t_LlGj)2QZU;7Gd;{tC?Xb4q9d9V3baX$ z0+f`fl*9Os4BrNH-?DI0>NuWGkO5O6Z;$2hZkizGqS&vA(2pDz)0CvoN<_CPppV5ZIF_Fy(6L?0}XQr2`i#5%40HeO}eTSz;W&L^s%z(lt{Qo>5%366S zXgWLR=biVec zi~RR|k@BA~=o;cKU+2l_|@vNse@GOVPV0-b9<+C$q|vV z#@G}K?{a5n0`kT$H@SgNzPWtJ8m zg#HYeeEYA|6aCgXQ;cNn3ENg#$T71z$Oc~X-MF+~-`rznh&)I8UZL6QbeRwkqsdf-H zK&++n9cyw{&|CavD8w_1f9UuUbE;%@NCg)nzVUvh`b5S6)3dvX>V$FNK7jF|0d{#wHcTcMwD;@{U@<8_9;E?}ovWy3Fh610Z zoJr2c(wGT5X-6kEeA-Huuqvo?6r!LJyspQ%PBsQ;QO4cBi`F)CZcMAuRkfbK{_=D-t%Fw zz9}zyhM$aOUis;k5qPW1NZdL15~niMaN4iHSuE$75Grtkz5u?Few5f6Nez*F@-IKI z#EVic9pVNGOk)bzq~X+LVS>-@Nq8({2ng8I7}#zdQTt8N09DCnc0?g zdb%4%I!(F#q0E8n`>#AP-%_=&Mu{pwT<>iV?i&YMjepyB=vLv-EhJS;B*vo7TVOn% zsyj4>7q21N0EG|Oo60^dInNlYF1t*q1}9Ha`B%$eU*o(zEnG*cYtTO?>yjS-=)69j z%0l^0lAw*QeoTOXWTqHxKRnlHJ=A>ziTR>_abHaE>yXiZE4hE#;#mK>zABKfBS`

C?ht*?qv=s)THo5y!i?*Gd9 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 D6oZhi diff --git a/assets/images/enterprise/site-admin-settings/add-global-webhook-select-events.png b/assets/images/enterprise/site-admin-settings/add-global-webhook-select-events.png index fb8d634bb7b4eebef4901b345286ba5254efed1b..036815a68b0ee8d216ba88c3cb9adf9f57ce462a 100644 GIT binary patch literal 56855 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 literal 40719 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

u(41Ccln8kWix0Wo{N>!v3zDt_%V=qDA>aCCt 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 G>;C{{LHW-B diff --git a/assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events-ghes-and-ae.png b/assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events-ghes-and-ae.png new file mode 100644 index 0000000000000000000000000000000000000000..8c3540c6e3921ff588e25613804aa758a4f10708 GIT binary patch literal 190422 zcmeFYgG$o(OHt7Z30s<6~iAJy20re2Im1 zrw|M4_Qk!sm^*i;6(X>(@RuAE6tqsMx28WjyZ?ABN4n;ZQ^kpB}(EDr2tmh8lgU^nXg0@ErM zYOD$OZr4g~6R96QL`7=xw}|P|*AgAB1%9aLMjK=vN8Cp$O%q{BrFDJyge6z6v>Q$1 zicbQeiL9)9&rZhJLSgAs@wQ8W>IcDw?VC56$M-sm-nUa>;nP~$j^$VtU9tv#l#+oY zFl}zP72zB(Cq|BoH{NWHUIKn7rwpz=RZ8TJ#|dRFee4m4920oA#;s~hCD0|mn0P}* z@CI8)@MjXZZ}@54Dk;lSM%z>0@Px2HXHcfI_uBoF!Zu<-?jQG4HdT{-Yiv`Q(+0WJ zqCU>u@voN(%w`a<4fhNkC9pG0ryv%Buktjgy;(j+T`&bfXIcV}7X?2B?Y#P)d@x9% zc=x;C=Fh2N$|_rHRqOS-qjQ$^zWsre3}9Uh*J@Q$uJf8o24OY!AAAtim2y(!yp#I{OXceIlstaGhTF>D1S(0&Zr{nh z=X_gI?#?uBNr$D|{Y)&4UqWKIyunVtD7LT(pV3p{@O5zb6819Q>wHG`{_Yorrg-8v z*fa9#-)WD-Lh{@=9;$}EWFTgFXCP0V%k&wib$&ekn1*OwGCGDIML!k$Qawhp^qu5&{`SqWOHefCBVr!4`lDUx~mv*uA5YzbcjNr+_+k(S1*%@wbidw>$1zEm~I@ z>X+e7;ZeVh=_;~%^;*;#`5Ip3GR?b-<$WL0^<|aY&Gjo04Q@&d*SEb++McW)uhqNm z^hYc$yo(eEkhs36L->)+IrF)Jzv#7iU}moJQ>L#(^7o|Vc`dn?vGT&)5}qnkv2zk@ zym#$Zw&HZBt;#ff(W30H=~0iiPV>FLM#+GIUV3C$+;9rgewu7trKi)%R5(Jf*A z@8^};v;x)gw4pSgEP z9O>$!!5_g168Xy7LIwzfHI52{GCirn=~A&GMcry0e4T#n*)pKwcH~&RfaZ+h%&WBG zOsHwOzd7h_c>bf276;SWyR+D{&u1BE)kO1Zw!a{lQ2b!_0KMl%J?5;&HjS!<{g0Al z^b<>}I8B7jyh?ZQCYwugHtmNk2bYIugo<4?k(q>!>5kcs{&n(o;5xdx;hpTT)ly6ypH5M>|E; z`8edj=tgxWk0w+mpG-PTKAI}rZi3@`sd)|Ww7vfP)G!*TB))pfT2D)jPfn|-!2+ra zFkMoVRSjwlY`wO=osT`vFq1oxyYPBK8|D_gtlDMVg{y?aT=e0aeX$N?6xW(`m1;Gn zSEE;f&5_MHK`OyG;YAUdF5x)$IOn*et)XC%QThyBjmbu3Lt}l&S}S1{e;OxnLgP=&MtZ8igUY7Z;k99PLBT2Suxxc z+kLZ@xK%s%B}K(9TtHNiPtrQGH4`S5<9)rhvh{J#qjR0`l^RS4#$2IrqOozZNuMhF ztLUKDeePgtbI45#cr)5MtT6m;RcHNZV*FdeCTQeDd>}fhU!otpZnMXFa5}$_F>9ou&(dHG@lU z@!@=U#}vXDl6^M=S1rVZ;v2y&N@t5h`@B*4(as_wqRxjibjM;7EJ9oe*i&aidqbP) z8n=wYq-9#-+V_RTFPIizfS&#O=~Z~6`=j1`AtwDNVZ%K`m4g;;!A_a zLjSdXnLhfJLTQ3Q1C-w|q21Q4{ARWb{vJLywO|NnZF_Uo{D7a@__*!_wn6B>d1K}h zEFb(S*QWs98?aQ+P8qn=_``L)LSqRZ6!t2rEUG`U&3VJM4fSr2a9vj2S!Hpoanc>W z=rZk+@8T0B9Z8tNk+ha{-`S$FwJK4^*bwE~H%9xae|O+)k7Yk`Z#n0oOX`tF2epXzJ4F(*BaFN%6_yhl=!D z=MfjWgU@2#J;!aQBca`qqzOEikI~f_Braz*aauMu+B+N#Eog|npmD0GDVwu^8e0Hq zXi{i{jyzX}eY9}0>}7vQ86l%a`I@QiAB4qdTf45>C**#CidQtk^?rRhqktucTa*V% z1C0-W>yMHIO-v%nFUm>nPKILZBIcBa3NxwgEoQF|{dX@UDLZ+A=J%U?FFr06p3s)X z)}$=(=CrMNtWW4~OcpuC!X85-th<>mHuG;GPrFJxM^dTgO#-jvW>hAv81OEkQAJ`;i8n zmU@fu9jsUPzrj`_B93+C z?j(>;ziWry;7Fy>;JAZ`WiTFZvW=mNt%e2`C#HN4>kc*v)@@7)8}o;S{TS=c-^y56 zs@T;3Q+|of@ei6?SXdATES!JP7-PPFU-6g^hWj7iw?Bqs;bMM~U_PO_xBf|er!e>S zKg+i-Fm+hZbQM%oFyFe?9yT_vp7sD>=j4wcm>YO*%0`}8SQM` z8wt=!n#oW@n?V8KVZ$KIE5!ShNd}*RfkDdSjjhB>MWuhRV}409*#m)Y5`265yOve} zFQ7CN)9(lU&-M5BwDEQL*OOd5{~;DeK)&BKeEhsm`TiRl(82aE*nZdio$YUO{rz!L zzZ;X#_q6d)0Jyl=xB_MVrE#ghJ?Y;n|Mi}KXViA^wQ)97biio>W+s{>F* z;2$jiar+-!QhdKV=8um0yA}NHF2)RG@TK_v$E0NN3!?_Sv9RQ@R1}}-`C{+3;-=C* z2OpSyloQX(tO>m(|Mu2LWhS-vKdX1aC*XHSs0x7FS6E<0JA5c{HHX*)S@5ct6 zTDE!qk|Dvdkm_g(4(S; z{}kn40zOW{$_Ey#Z2tOdl5|RJ#qAB@MFhqFQprEtkt-mPOLWz{q@nq1k`pG3*e$&o zi}L?lwf|_xUJs+an8=)W3V%&vjuATp<~wfk-@54U?Zl{Jw5N0A>GszogHaf2@A8^O%#B}xhvc&y*HK=44Pj@B-dkxB}BDh#|o?=&7H1AtCxUUww9{zgfIzP>?xg=}oes9aq zEZPR834Ji<57Trv1_e%%2%Ks!gw;t|oGd_x*qP>Khl@w^%l{ZwVMO+4?aE#BTo-}L zs+k{^ZIZRhG;ZAP4OE!dOtlIJ1?#T{ZU*x;(@8h=!NXV<1A-b&jyn23Zxsz@EWp}P z>`FJNlupWUW46v|Q`UvxxvKb|qmnE}u7;v8 zj!t?f@N58LmAZFDzp;egZ&*EjTIF*fgWMu*kEyB1l$tRUw|Ut@$Ck|N2U8If89*|B zm*OvXW*l&tt7nhgn{KSJ&qq*J%nMFD)L!OrEahf&yCzo79=p?UGvC-R`q(L()%4pxyH$WyJT3kune1*M}sh3a|TOX(J+KPvGyz@L0S|@G9QT z>glaI6^r1CFP(j1*7Xt%Xy=qqDpaVVKx$>#9YD{&?aen1Yy)1@#L`MM1zw@P9;HNk zUZGEGoRk0PdZN#-ZVehI?vLcXgO4@Va7h9=Lb$QlyJ;I1Vr$?m%41vB3hDx$&}^0|f4 zftLd0zB~Ax!c>7DGGF>>6ld9H(DmtNI|9(1C>u>B>=D|$jDqi6yq}p2Iv?e1IL|6P zQUYyT0Cix#ts)U0+GGc~7Ar@unO{VI)({?a%|TH`alhY0*CkA{AFD>arQy#8?SmR_ zz6EnW7&mzamz^OBaBT@xB3mq0Wfb^x!PI{9TT+Sv#&@{QN%R3^)(ds$6LlT1Q@O_ihj#a6%=s&lHMnbJ1WAw}b>5dH<@!5*vH7SVQ z^FzuDrRSgclv_Ph<<_muC&5Myi@PG{Uwgp9rpV%xp0x*1+yq z-<;a(U0&WxhX$Nt7sqp6p^=`(eI@ML^wuBXpEu!k38k`YDG!5ni!~ejg3v&kkDL|* zWE;g^@Tu#L$wU91>AQbS`N0yT_GkHsZ^2gy`G^WLO*)S}6~*}$8?{vOLLYG4R-OVx z(E-iw?_~zUbki9>k;(K%J~ufU{Oc|DXfX%*OFYavAIwBNf&(bvqtpL1`?)9;r^yGt zf#^_8z=CNy#H#7qPd>asmJEK#y+*+2`ZStW@I~EzVX+hLfKDhSdeTMbDlM7wYdc=! z{p-E70XXTc99h{|E@-&EV4;bAGs9?M;3DC%_I{injMyRu8Tsr? z^OyP#Nr8yz#C%7#Au&>}6K&?L;Heok^x6+y*XGU7GCu^XT9GINYO*9ERJvZCjn!OKR z#`k|G+jx%V2)enx`T%KR8=7!BJC@h;O&y8#sAERGivaqQ zSUeg@|9<6^v%E<-{0epIMIwMNe09#v#YOn4AVBCxkyO6?xOb8ue7x8vscL!??Kg&e zK2>d_RxIG4ON(#g+0CcrH$421_Hx>Lo2I99LdK{F7O6!eOYG7w>^e&o3r(FgupbvL z##O=03Z7XKULMj{r#dN5@wT06bT>6e#ca+d`!2?>n-w|*uZ&Q z#KFOAtx9ahWCGo4wzS`y#TO5Kr}_w9yPQ%qO;FP`z4&fyHp01inpoNfM0-x^jKf7? zN8RV&iL(xVV3j|nZszq0+S~0D7;yB=wwo-FT7V9t4jKDm_05C&VZt*dHW$+7NE)>H zJ)=3VT)(<~a(wYZzw1NGuKao@b-hLP%|0M`r8b8f!{3P@mFN@Lg7D4nw!bRKG z&ri=iEs%0GW$2^;q~W7F3uN91@QMSGW~3FwH!cP-NH{>bwU^Z{@{Wl&&9%=I9q?UA z=eODM56)VEye=||M3C!1$w<)BJ@}B<&3v_siQ&(|uV=GcO}a(b$&D^k<@-6;7sc*r zS|YB%hI90bigupW5SD+NjBs!Luz2A0dCPx6U$z2q+a0-?^TI4%u8{sio;EU#Qlmy4 z`mDJWs_Hzp#-DeJT+#8WcRYQJ+-SMbk91f`OKX@X!;4$)opgdV+8ne|+6A1z+gF>s zw@IK}jCrT!AOZpDmO3-5{k?|4elpTJX`vpu?32!@h*xti=m&xoQC5UgYkj$ANru&L zwwnVxv&aqft-hQsxLw^Bb>4~>yBXKWm=Adl=z}M)n=cn>vPbKZZ15+;hr=m-d4Z|(#8=Qc<@2h%n3_5VzfEI{f%!@zR&C}7Uh}m6b zNSwt+XbXijkxB}!B)GO2wX?mw8#2`++LFviCp@+QKG8@+%iOG}Mc|Sxp@$l*KByDw z0b_zHj|+Z!s*#(^Scb^n6nCSipUKQr^1EmGU$prNLQi_slG!SPgHF)xlsTmauUwLw z>b>>mafPQE+2RIEOklPs@{=bC?5v@Cv*ztaeY%UbLG(H3{!)Drc-|_M9wgMSm9yGk zHUKhTe@*^q_}uVBr0<#GMo%MOUunZU(0VuGdIt{ZCRN*!__|TDEn~Zz+1+X!l7Qod z=R5opBvY}uL0#cv-SU(=eR?QhJ<0d7(NcdUk7B&CQNqkxFt*ZuTB zg1!Q|^oWEzC*V5Fx7}~Qsh~eYwvKkQ3=J&Sq`g8ecXrnabwb#bWpN^@*GPqFqueYC zS;1`=Q~nL$y;%gC=tvM?-gou1q9%xl!k7^jJ3VAl`E;J=L-y0amJFEyM{*r8ozGU! zqjUU=jwM|#zq$wdS7?x#A&*eqS8I+z4^7=?LKV~2ul+9H5ps3q2EgGKQFL-8+AeKy z(xhSop$~|$UkCJa^MeHAHLaDL!A%mSdrLxIjeI5Hmrh126qCy4LPk(H8A~hK1%&MkeJUK#8&f|A*75cu&C9mADaZLL3r)SkGkFR_F>H`VK;(U7H&{Vb884@-g^I2Br?e2wj z%84tW3W$4?-43cGX1gWf+=Y;A%&W`{S>?CA{%TcJdu-0-3NyPD_*odoPkGmA^nJ&N z*r1(^e!3e3nS=IXT3|1IcdZIpvu*LlN-PMaHl%K>>bS>UK2dhKlC#L5Qh&v()VV#{b$JFIm26y zJ;sMr@nkz>V;$<|fov@QAGWPHWRyCnMFfRC>-cU0y=!lIlItH$P< z+dmk{-+4zO&uInhwewM%7OB+j9=r$H2nB3@t&Gs?5%r(RR8NLG-J%iiOwD_bFLx$u z>{>EH`SISM@=^v^#8MCQy(6?{`)B-#ZQzim{!e{|F4}D}c|P@uK6q=k$G?*8P=lh2 z+C2llM;}>r&Plm4oSr~cBJSEc5HtBF&GkFaWs@Qn7s;dS zS1DR;h^KqV>74t=PV?eL^0sL{q?m|#&sK;^QSbz^bA!!`yq3T}qLP*`c==A8LPT{U z1Fjx(gh^JyhmUI~q-T!FAAc*889r%~X$gyc61Ot4cE{001yJK*MJcnTEqXYZB_QKX`|#*F zOEi{oavnzs$@b7rojMk2Q!I-UUoYs+9e_(ETm9`E)|cd$uV(vI^aA!`M49=#2GsbR z(4rb<2Lq>|C62Z0v<;#PF6W;od@W?Q&lBFV3m69f5u1^d#%#uyCA)=qYQq`D$W~|6 zWpAA-cy+(Gbd4d*V@!B$mjEu5E)#xa$tW@i5g3V6?U|Y6YUh$MOe0FKFS5ekDD|{f z{jN8I*%J5Bo3Euc^qur!rQ>ibw?3^BmZ)U%B%rJe#a9OnK2N zn$wc?vl|hNKG10KXa)}&7tbu&kenhE5V12g`Ce7YDQRh)tfmre0zbn8Gs7&Ih3YAo z4XwO5nv~ZXPtInlMB}I7xaH=rl2z7>R>L+2bfKJcRdtC}0qDJk9;hlDyEj2gmXwm1 zx(A})qBU6%Hw0a}Ys041#DsrBe4zJXy3*1*ll9pu<_)4O3MWeuBqd~yUFxUdA#c}< zQ%D%q$v&ns=yX_36g_v`4Xi05-)HYxA)PU41iK~xa$LPEkkxYm^}wb%7zPn3z3BUOmvE#Rzz^wqEK zP)5)u1O}P?f=i4ED^QCX0YtYfKc;owU{)rZJ7z)kT2FY$ZyUnQe9hq51rWYvma0?t ztH^h~N{k%9tD7s?D;6c@gHt0xKm?3OCug%!>X8lj7a!^e!U?G#_u$k=EFlz(I&HQzxZ*TG&XiX0+l;#Fb|~NaWfr%c z(v^#FbCW!zK8lKy-Lh9v%_ZgD7ub%%I9F9zYG7)Zch@P5701D4JPueTk^n0KaTA`l z$g4rp@6mI7&g?d+(JnK{mipNV)9tzLh1(e(*?&22x!A2Y610A1ypB*XbI(&qATp*N z#|gHTz?CNyS+@{beu=~-yncFppDq(2&=4@LM*4tTmW*5;YJb9^C*Jc*h~SYLLiC7> z7GH^5BYvt)q7QmprK#Yqan*m!Qg2P}_XY2X!nhYSwWo>qjbp*eTL_bzVOu;9)$uJ{ zE_CcVU5pzMO1IrLR_id%RwBV8rSeO&;rXqJ!W5P}?-2a>4t7rxFFLh&zuF(IC{i)D zid6W;E|8XIVQkQNLD(qy7!-Kr1ye%aX=WqXOKEXa7zY(Myl}o>+XB2~)gNkhqc0TB zv#_tZy5f({D1&(V{A}ale#wfltII<4ek|Se%$naM-kAPl{iyqcPlzHrCC=(#rb(ZF zu#Ks|*)SCM=6;m?oOCv<$j|*eAXl6azv}u+yymh(-=Rk3A(|o6j+ypW|MmVCxKDt= z9BZ=qcGpEH(rJNy9Qpk)CJHEBhuJ()A=gn~0TaI`!d$ObVKRJF|9G7&TI9w@qnBlF zHul*cA@&;|S*FVsvubfj@S#A+0(PM(HNee99ftw~vZiLr|=+RB{gCEHQLOKOk@q`12lEc6{ zDLj`jL*rT^=CEkxAcSgwJ>(&6q=CLUQ+8U5uR@18JTHttunU&9F79)A9>Li+X&6q3 zGnURTSNrAuy49RKqX8%^Hfs+sfC$yNK}A_SC%wnn+c?XcVE86SK8%9&!LAq^ z=l6m6^KA%vJ;luN`3gi3j8$XZHzX!Y);VrI#r#4qHeru}-*V#nhx*4nve48wLLZE@ zxE!ih#$Ge^AI3Y3iq0FD8N<}5`b-(g<&PXpcIr?%<~UDlsw%zw2)d?Ro-8xeYAfTP zs7YV#`wd*ZiKXuyoVZQUO8&uX_{rHRHGOS(#7mjs8hIh|vDU+m#Qr!9X~P^q#qB)YYqQ6KKjgeEA-$q zL&i1s7mWKRS*z78MypLM`O4g$Buk?*QM7J_77~(zH$C~l6c$Z2Hd|bj?K=Bnae?H= zAi`P-7Duq&P#pqFUT8K;Y^-xp6&m7B`~aGORNvE(EhDJ1?&D&oZ8=~05b-Mav}8tzO+u{O#cX!0F%7$=GNT%XlsHZk}yqA+lcvWrclMT+>Yyq6;h zSHK&RVF<|Gt_*osi(pzOnC9j?*Q=G_9@Ui3ZjBj4tsh;QKQE3H7&E>pQqQK+kh68K z)t|ERFTUt6<&8=^t8(L19YCb}D9q5&OA6KkO`J_A`7$Sac+WbU!_IZ2!SS#ARQ-^U z#l$?HmNNqSc>4uz9_=UGofr1oBZ^?2rIy~V>rcZ_E7Nw%tFWT+J&wW?Qx_H4pIo&T z+hRwk{qF*jked3LE~B}rnipDX21aMQqs*SwGeS#N(Vi%5KvM67t`dxQ1{r_0H^<%< zg)iMgr`-x))q^ZqQ_C)pc}~1jY`w_yxb2_%F+KI#d~``lKpHsF)py8PIK(4;IMQVr z6Vc|$v#Wa^?=kYNzric=$Sh}Hp&_bds4-7q8~vuDl9|&aqupT#Y@wM0>uCazfp7HM z$0=m|N9r>GUl(KW*upeZ>}da7GftmjX>H?|;JfG1o7$q@NnchK(r;&7miF0V46^D| zPFA1^Q%kT&=;DNXN3`O;%I9OP&O{x3GNkBFSm~Ho9XFI^(&%I=sbQ@8BV9R@oeVCX@*zf+n(F+Sx<(SzLV(EqBv>e0QQ|$z&albJW}l1h6o)pj za>4*hb|?k73374zLB?O~k!oQp()6bQXeWHr&>+np1pZEb=BfL9`mwYa3Nb!-RAK!h zPSf{Ju|jR_$t{EALVEvC$bs2S|L-Q1ZaVV78j<2*z5%{BX>b(JnFEb=~+9UyaLYOyFjI9Zly>}6eA652*PX&ek}pER}YQ#bDCSl;kt zJ-iX{Si3jZP4Z{AK2ZAItrMs`0snLD2JeMFouMh0xz(>>{UdSJBSPXMl4{9HM#uiU zGX;KMXVMH)zL#w#)!OYWw)(*@-U~xz_I?zn!g%nB9-t80wDjtX3}kKJ*z8`G^**|; z(oOYy=QHkJgKk&6al&h7);NgV@&v_ZcdfX!6j`*QXF_Ydfe($}m@{0Zsjo{M zGiyPfrtG&$t`v*)<$$0YwGCynT!fAq5??Nu@%g2(9%zt03P(Di%|~xrM#Yr5**GkV zUp5z0EuC6sBpUdpy2aj~t8g<|4iGMlPAVU)u0XCMKxP)m7*phMnGD=TwApr27R@`% zsYdrFR$%A%;kBH>Vji0+y*QYKVpUI3wpV_<^vChfDth^WOQ$+p5`_~`qEREtaOXu! z&*=mq8R+~Cs8A(Z(ug0F-y-isa-GM!x1V~fzPItblkUm0_IT8bn8(CXV~=mQ2GWH; zrxLePWLm7j;RVq+ncAR;OMSfvVF)Go+G5T^30q9$J1+ z)w=2;CM9%UG9A#C(tZR|F}c+4v8bb8mNvWE7aM3k4dwFj6zPX zZ?7NCmb*mOqz}ZR4cE6NfcsNZ;PXoCJQbSnk)j#dMEvu`BM4j3s!*AL(q{t&3!h*0U0&zK~fO+|~zo%-R`u3G) z5Tt|jr$mR3)`Dimd7||zp%C+5+kU?zC40WcJC;hxzglkOJo1OkTRkALcyKPEtbH}i zXg>8?;y_%dO=@YpDIxr~COb5Od#Zt1h`gi*We&IT9VR=)9Q7+^Xcq>g9n1gnUWC9zU~ z&lLmY%PxJdP@#Q>U?#CW>Nap$)k1xMiJ?vA;_e*_$@;))Sc47dL4T=1XH5Xc`!auZ zT-mz5K~1Wm<~PhHQe?nF7n%_B#Ndk&6`^!=-E{;~neh1`!m!^{q81qUGU2kfRskut@e(ThEOL}0L*e-_F{%;|rx$OY`#rH)yk!$|v#+B&P&NJ`7q6}Y{i zi4ECoFnkwGsKwlV?vbtV`Dun)EnhDvd&>};D^Jc)?&vY4ifn3H!|S}9Ou>soWq@vr zIN;e(6Kl)qp2@a*>50>`UY~)vs1&gXaATR?!T8i7ijF{1^XtUBfkBh{-X+{+YObaf zxVeM58?d=0zPnZho#X7T;+V|8zih|Ig_=<{6fbL@uuu zR9mrHBVCbiZ?DkB0eiZ?I4IgEP=WhJEKRo9&&VXMg?>WWW9UrwdwE7>d(cTaC_(^V za70^VTI(}ex;ejj9av-K#fNSVybWmUg#qFNR?3+aOd%NKkag<^{6gEa0a~>`)m-WX z9yg9`v|Xkryhu&!#Mp*gQpU-O+EG;l7*J_tGV6J@dYYqnG|)vKZr2J~K53&(%4u9| zmfSvi+$;5pdi{$jDZ#MCNd@eB83z(s;0jYTR9YNxAY4Se!-|RUoo#G@X$hPkmqL30 zlv{>i7b&uQzf*Pa*Foe;s-k|CIPlzU?SZ|eXKj!M&t4K#rgdfR(+CTRs0jUK)^t zQ6st$JUGk2_O(|YdNmBXW+mr&G%l@tRHxwQu+KG0{UG_(5)7(18Q(hepjA8}kij7O zWFD31G*j=A(apBNeA0TH!(kdl4thRUdRdRw9hRbu2#^3Q1=>ZR_jI+`E6lhkdAr1} z`z`8hV=_)U)%FYYOACex_*!=nS&73tewin#^m85i;z>FeMT8IF>_J9M7|e!b2m^xW;^1cLc_d5VTCgZVS-g$GD4! zLBpYpX?pcOAEXPT+$}1G(MpU+Eo*x<(A3RI`}Mr^(c1X_X1hO!M36JJ+MhrRAu{Yv zpHIqg+*cel4xU@$k0}V*PpdAutA^@@yI-0YqmG#K#+}=8q||e`6YdFO4yVdAPCv3g zJ6mktk7l#3zKt0xfoo|c^dHe@2hf!cahIJWeJRzt0}j3&l?lxZRL&{UGeQErl!$Z` z_Dv|IG1*js6O6aY&d_k_4ZV5p^i-o~v0{>AU&62y^|~4O2dj+CnXn9v0!L%K0PYkw)pQE-qeu}o8P2RKMA3E9T z%`25Pw?8%xI3MlH=gw;1He9ounf>I|-m>5sxO>EIZK->?WKqSWV}@!`bw+TJ^s$hI zcb;tUn6#uEBrA?SozSv+XW{VPU6WpL3H;lFOc3AJ#*R{0_RGO;k`s{m5#$d>dcQ?^ z!1OgHi01SoBpJ++*KQ%SpZDO`BF|N7ab=dyw@uCS7E`+~W1@6|;k zQzUI{+3yfR8$i$J=KiB6yZvJ}2R%lQJ*B_u(Ng{CZ9M*nl|A-k)=1vdAlrLfQO1E- zBfmaSPNc|eGpqvxim=40o-LsNh+OiCQ`3r1)vr$lMHXaGFc-KzHuqJzVaUdWcFi+s zvq8Ri$_@uIifBT#GPwwUUKQFIW5xU*v69$RsL(N%;39 zZ4sX{k$6e%n?sWL65YE-f~|IblTKGda{x8pt0Jy(kZ|DqSD<%6h1z+V@JX^FHH&S3 z!Ejj{bm>PzHFRLSc-W9M-^OhCMA7CEmju!yD`=UT{896igxcoL?%YShh|Yc%!yW8r zTN-q(4G8`5;wHw$RoRr7_BWa10n#~>NU=>xZ?K7V^z)_%#wow}h$V#ZM!}?71}FnX%;ZA&z{$tX9i z-^j5`+BJW?Ih5P(%dyRX+}6YK*>rONy!FFD(}_27`9*0yec3WsJttJ=huT@m_BaV$ z^12smj&7~}2h&$+-$TyqrR^Gz$Mmn0C=Y3C04JpBJaOhd8kAd`eantZZQOvd%H3)H zf`$B^gKi@d%`s~#K$)_s=OnPWl8j5{{Au?2NWZe1j{10Mu@;mm6{TrhWuNA^`*D42 zwIHilGmQqX^l`z6V2w?w>LST}`|-Cc*EFQPakHx#d53wx-X?o)ljE#VQ0x>p5aOk1 z)rkqb&XuS^UX6xxXE(N#=?C_&MJ$dt2e7c&_E;pbqt_xxnGb+TT60wN$MXDovW6Fy zOyPC?4pzkx=5C;!ZI5A(^}>syKGxQXfFeJD1W2PDc^x?|sCQvi;zIH^JL@E*nu&n@ zu)0M)rG#s5GMl`KxlD`H0Ar12qo*I%$v?vtI&~`=#1L;+T!RQl>WH%~B*H6NouF+^ zkqy?qm;T$yU;N}Jo!XBt0W;P5`6UR$Pq5RSS9-U`jlZrfkd)_#`KS{L z3EFRBn?h6V*p`RD$BuWv*(TCPYFU7WB@r%s`uq{v4e5&N^shtHvf;dP(wJ5Rg_~Ojt3Qx2A z!0}wrpF3q!tERsKnwnPU&gA>@!w8=w)gr(bQ-_&Qu(|$zLYp_@@ceAfR%x>vJ@ATU z2v4$NpWu~dTH?KqH*@$#J8h(GNqG>0?S@zcGOYLMg^$))hJ=)XSsPrT$f{6O%eX%C zQCP@KlZ%OO>ee$z8@+rRr}ouVNq#!#rp7T?=S$OKivA0;ed_JDLKs0~P{{*)h{#do zz`Uedii0qCq@L+w<%DGPAjq>|W11f`SoV z%dfFJoFk>P>A5d&g|}Fa^ADEJwd*yAcAu8QUn0W^THYs6yp`wmk{<4AsveWj8b)bx z@tsd8z8@+n-EZS zZZOhYUu;#aK0vh^-77G)iM%j_Uej}PMO6%HULS;qxA9`)NE8K_Wn%3y?f?vP7NOXf zLYQT+dte}W_um|hHRiV*S#b~Ne#37jg5N48K)ZpBaw4w_ZEud3rbb&ayRjJwy_!rgo_Gq1C|4r)OX#$^RF{t&^zT|X9tYBMZx#hbu z#`=$nB^95pHaWE*9c<>O-KZVz39$uZASjKL=IPX;&k{BZ*+-&8QQf~WLaY8J*9`RU z#G*yHk3c`FkH6L#u$ej@i}l3z{)uJ!8z%jNn8E+W3AHEqK1R#T*r3qsRjq4QcN~!N zaJFzwiL2HRpaau_rum;d9YjwYCGU2n$WM0bvU&gN@ ztyY0_AkV8u$A5q|{`Sb+?caF*CTq1}jE- zd`PHV3?9d2wBq(V+=2Pv+qn5E9>O0?k^2j#NLR{6UYX1nj0yd;N2K2!Lo_DynrgK~ z+k=p<3;C>!l8#bByZ?cj&sF)2r+?X{V)vhd|Ld?KQ6xCIa6!r#_g_%R|7Zp4mPQ07 zK%)Ct19j^!iE_I!=>C**tWl{yz2tw-`uM+Q{!cgmX^8)4H~%-L{%^kd$1?o?Z!mnj zqwz(sXJ5_8C~dCBE>6<-Fjo?c_$(QK0s`L?@U@J1VK)6q>XquQ|Q?jE(3hlH`nX~oofNrNV@%!d$!Kkw8bR)<~tFr;6+?W zzwW(1<7$8AWxSR1#AM@TJ-)!~_M7(R8eTM(n>2U_pb+j0%|1TAG2g~1nE(B>GXB$; z>S0W_hu~Q*-P6}^sReD-^}>TN>tipg+u5#>&;ESlXJQ`XS~p5l?Gs9chcseaGKLp< zlAdSL85mq9e6rMT)jP7_zooVXv&msH)~txg)2-M0ld60W?}?e24(uX~F4SW;j!PCR zEfw@ISU6HPbvOJY9SiTvbG!x^!3s%_S0-km|GK}>)QHJ-nuIY@mo0`xQ8dTFpmDLt z=B10|(%7JP!qK<0d~i0}j?>YfR+{uygDwkjo#r7g==_+PrfRLx-h1;t?N=JGYSz4S zr~4mi|8vUwz4pq<lo5_;t&GFz~L9Zy04mU4rLMSWGjwiG9Z)|CrS;sTEUtpfh>*S)_nCxzhwT46`ClH0T(0Kt)QfVJ2Rz}m zQlFfdmFMm$cQ>tlRGS|wR4b7116zKjN}%WUL$-!81k8l0EsS)$V`kj{6bER|JC(LXAQRHQ{|$oRpnqTE?lyg-_3*r98F_!a2T{bZ>7_?BYFxP z+nD|S-7)&7Qr1{T%ARjmS66dPD8Z-73sfF>zARY|XS`0j;W4RK^nz2FH37d^K1k{z zq?Mt8noiU?$;ZcvVqANvObHuRZdJeyW?$=>RLkbg%_X@OODjnMg81yrKS}>yuG$fK zKMD3JHeG#`O;68|800Wu((IHnRDn5?zN4Y;d$v2XHI0dZN32-*?9CPqkt&q%kQ~}P z))G9D1#VTsce*5jKkb(y64)0oCwU8vd_#@d(qOXrhqPLkYiWxmHl-X0HM`+TD(~a9 zC&fpSyM5Q602b)8Ju}LiO6zZLul3nxbeFnE)vqQ({f+9KVEf-!U(JybV7gF7Kk`eP zS+jRzSKCmH-SG3pGt6Y++3I&%^3veZ=1{=0_uk_AJmq@EskRawYNf^r>1qLUWw-R% zO&!&d+R(i=<%f?J_*s>4TMT4L`aIvv7)v*-)XG`Zgmumc+FgnJ>CIF*&k#(XU13Jj^M;vhXSOnL@}6 zW;5OxXHfpIrT{@iPqLO?S_I-R+fj6tMfWJ^d=JH2?Q7;LR`&q32oJl=of$Dj%lAE` zT^JNKKe+plM!V2;!0@O;wE;Ne7jadq!KhNCo^Idc*kamhTkhv{9b(_Ubaf^g@I6dp z|7x9!X>^)1;m~(LLsao9VXJ9t&u5-}u|QfVDGfBBA>OCnd5PIvik&h`FMqOnsFfo! z`QVWhM_Ki++HMr9+LG4+)bK-NTsH=_pR*kPfR+Ss0~}{-cs)9Igj$Pu_0>Ta8V%#g zgAi&-oz|8sF(Dh;j_Q1`wnnX87ens2t`=wfPIqWq5IHd@#=Vz^Ss=!wFAz2EQ^25I zO!%OwVS`6K`sh7z*Z;@fSHDHMb?+-;00K$~1|i)@OSiOimy~ofAPfv5B_Q1`F(3@h zFf=HLG$;*2NHe4io%4M>-_JSk3D5f%yw^29=v>Sbd#}CrTKBrwz4IV`O_%X?n?Rc9 z{*&lfZYX7b?wk$zqC=~Gw9&dpdem3#o_mLHHzfRXgu7`}wNpLnOGZ}zgGPb5v>lzZ zS39;3Ct6z@zhyUO3e!`uz3nF8eA4?F1D?C^Oc)cVg6zi{ZVz6o7Jv046lmO-b=w## zuPu2sS?+A=?>PN^5Vnb<#s1urJV{1)BV`=?oT%Vu(?MMe&~(s_|0w26C;~6;m#w$- z^6#y15JjKTJbrxtw5B)H{9VVPT4;;BrnFUQRq?Lcn;en&z0@XC`q$m@+>U5E$UHQe z=elj;%w}_Aw)ggR#sKc*Zi~~OZ2Sc)1Bv+YA3W|^M`lV0%k9fgJ%lrDwPcK+6foBjgTS5sf@-6JVSPtp=0LSZ8l_P4PKreOXCe%^GBux3>=aZqDg!P<^*O)R5bN z<Z0CoMjA9yOF?PLHyG5+;gkG->H)NTi@T(P`Ex?2Y0 zy*FQQqwf1v(r>_x8a8K?B@Ggt_Oej!=O>JWJ5y-)eeIE%Zkb18VR-_U&puF*3vq!j!JP=u#mn$mFxj-+CKLX$O z+?r}IfwX-dWNm8j-iIEJP?jVca-z{mBo2Ml?GMIm0xktv~7I*_+ zIVf#nMfTg*JY83x<DZM7oGh00kZVSC70{}r85lZOW? zG;=`L44csBD?1dds>Z>(Prp;Cu^GXive4eJANPB-MTM{$UFVBEszGaE=ynpPJ43Bv z)LJLO9lcsgS^~ty& zYPK=2h1n>$$(O#kXC%5Lh6^Zwes&0}C~vuZCS{r2dG=#o+E4ynlGwYhsN-qkS;25(cSq_y_K~f;C)7E~4PVL~ zk^JfyK92f6^J>^T^Je?F;fkz_n*=h8VosYWM%qjL$<{5(IXVp|Pj?zG4r0no36~BVIG!U=kt;S)aqrd1FY=F)u7FRhh~GS5i3ehXy~i9*QL@(FR!Tva{dv*J5xJoRvPvo+nc}H0 z7p8R=a7j$0%ozIUbfOMsE22dXk$M$y#~OXbpS#7^D^PZX>1(?XUJO+&`sTk9y!wRh_uk863rjO?*rBA7YaEI&_ETHCiGwCGCS!+m&TxTs z^kfJ2)u{~Hu~kSl&Zz1zvvn6eny-jNwPK1Ok*%YgvBQ93Npj&XbdeQVP(f{$LKMuT z-ejJN{Q{iw9+WBPH7h3E!ocfU-n?7jZ=+5bCq;vLKy^toUY{d00tuEt0i^8Dx*)w* zkGw_8_sux_mbAq_s}9)~Y{;6|q{{f?dAs)Z3p|_LX>M&}H>vs@UYA-s`$*I%j0a7( z-LiPNW~3cEJS%*0Fh2Kgz#A!RvQ|S1)$Yu!c8)ls-8mZ9IA9&~U{VC|eK%nbc*1+X zXn$%;GZ_+2Bg%cBiP!(SltXu(n%+>a%x!hUBxf)P-By_$-tkf2NL^j2^FQxymElTU z-b%Hi(tR5~#qddu%T9XO(oMj~-#Ei6Ytr>uOx<>xy}9I6RShOcsS|0(TmQcF5t^pP zyHimn+oNL{!E9ppMx+Kt&Obk-MD(U?Jt0Qq>DvP~b-sQHuEu2$YxUE%Z{Zlm+Yzo? ze7cO-wyb%VN4G{Ls9GNLMoJ5n)dp!)^2EEqx_2z4L-A`iZSIFR^u*kGU_eel zO9In=M)F-_1?G8MK83G^K^`{U6-!IhApmXD$gdB^ax(8U zDCw&^Ow)@Q+qRqgjlPU}oxNX$U>H1Cdohk3t*erq^nrt7fbrso#bHTmC3Pvq!IusS zleK@Kn!hC&nlwNxX^Z#p&T|I6l24-EXiKd`ioCLe!}ZZ&+p1ddPQx$&5;G9#4}#$TJ`oT9sX*%jL+RhzG0 zd$3qxJvhsf?P;P%sAAr#yexO461vPxku{7W?{5#qkAUHv(G#vNcB*O#ZeL#9BqEfN z8eFf-4G$XN6b>Ci!e?t$oeSN&9P*+A*j4SS0Tzh?w*kSC$w^1mC8-7R*f@|neXh|m z?%Q;k^Jwt@;$3)0c)`wdT9wzXfQto2F1_5XB+7cPi6Qw>md}qDpo*Zs0pP#ko2#?| z`Hh<=6M;f-{Wl3gIqji@a&H_cii@jYCXLA`@(%8>`fE+p#nH+pnMgl2Gw(7x+k&rm zjeTu!h^wR?D`$;hPWMa=zOg7p1h7^rXVsx5KI!MCY7Z5FpvU)cBf&>WogLbO-n6US z-iE!yb!Dzl($GesUea~C<78*oI6ODh({R(WZw^`HxLX$9ly+EHL1Urh(a56g4!o^xl;AGZjP+OEl8@JU`nn5oo9O8 zX$e1IrY++0ISpN^ht{6OG<|`kO0RnlD!B~`Iy9D-i5zR#lPQ1_i9oPPmFvrxuH~Xf zB(@2bYm(^^#s(Aco5Z7h$DhO8%1_sOptae8ehdQ-cwJt!(R%HzxJ54lK?l)nT^jZ9 zW?$-XQpv8yZd|o8;l1MOSlSTAaEGEFQDf~9G4mf{X^EHD8{#&m+4K8@9|`MT)E|m^ zvj}dZZc5BU?&XQ~(c=FK+#UdgCZ;qS3XcY+;kNP7^^L=kXmeu~S*TGUN3`lF^Dx(g zHeUT4h7V^a<&@zBjH=dqFCAwJh642|i!{qKG}PjSPQuQ@&CJ*~+h+r(8OnN#8`2u3?gx-ddD4OJRoW0`W;hv`%?c)tG

I}tg8 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

)7LV2_PAqf*ZqEm1I=)$u*0@b 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 literal 0 HcmV?d00001 diff --git a/assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events.png b/assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events.png index 7fc5ac113a815d897f0b356effaad258ae0050c6..565695a251d2c3f8d334fae40034a72656b31fd0 100644 GIT binary patch literal 218562 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%0ASWa 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 literal 14403 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 &qnmdR7&ou12@wifm0o>AY-|*J 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 diff --git a/assets/images/help/business-accounts/repository-invitation-policy-drop-down.png b/assets/images/help/business-accounts/repository-invitation-policy-drop-down.png index b0beaf09742c8a4cf2e554579e0427f486ce712e..341df2b4110b4a520322bb5b25c36e34eb44bf3a 100644 GIT binary patch literal 312909 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

rlj<}CNBXN?ir}U4cpS6je{GXg+PAF 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

Ga21NNK@U9O*Mmadu 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 z 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

_uG zF?qKNcpWmXcKZ--L{YrJfXTJlyY7~p_O=i9Y!Pi&XuoElTbUdGA-`quA`8wXcMaHR z2{{EIrF1}+lr_~P#Qikc08}g?T@erU_6l3@@hIEyk{)j*Qo$4a z=cbz}yrQj>*Z`S(v_+rfygU=3lrUOdv4Dy7c*zKazpfP&)Li=*XcNwFWa8oPQ~gU= zsZP$yohT%C#a1mKv`7E@t+@lxKKR}1R7F45X@|I-a%jv?zr8e~r?f%&+o*ue(V%!Q z1Aud-A=d2B%!qR;(G~$mkjiCA0iRG6^z+YuTXTU1=6T>Zi@6+C@Y_e+(?U9DNmoo6 z5{3u-+fRW6wK@$aA;Ni`2G9Ct1#VA=7)cG2L_?$vN)JBKO-d9 zj>rbPiw_7D{pDwTO-o{}jES1OUlH%S4b}tjpPBKW7h}NlRos`z%XUwav8Ma^zZUt| zlcI2wX1-S_oOO2#Fw=mg$iqSu{P=Uw|21Q>WZL`m_qhphI*9)|4ksAC4L`q8$BLnU z(UF0@iNnjn<@je<|4&1qG`L~Gq3cB1f3r673IU?M(TjBwM_J_2;eil!89_Nmtbe!8 zi_EeuE!KO$W_N?}uk-)1@5(F06Xh4*t@;=ThQrXn0X(#Q%*X$ZAr;{k#bHCwPd{9~ z`#Zdc=<62V?v?$`0qrc*sfLG^053}8U#48slBXuX$rMJFf&crl|FPnYI&RWkD}ESH zj^=wlwc1tP6#w#PQ{M>U5`RaDGx-%thX9e5mhOSchXG;z-5zvOs>m;TC2u(+zo+ym z0zw5k!E9)?hc#jo4DJ)*Ab0m)?h2XthxdDXYPWT)yVu`$8YCwN6VVex^WNgInJ~75 zjtS}{g^rzo`E;PCN6WM@vD3L`Sz68i5GHQsaNR3(Bx(^8f4iiJPRHY(R5-v+V;Ot8 zf}_I<)iU)Hc1DtohEl~VlDNH_;#e-h1U;L5YGFvhQ3SkJBTV(6`Mkp+9rf;J1&MFf zLJqL^+`!%l^ZOaM@V9{AMYm%je@0cpa3Xd#6#fgM$sW4(6)ePOu#T;K^_TX?7T4v2 zPqVe<=I6a|^WPh?CqY@)^wUa-6$FVDA6bbwl1whb<(r$Ddh;WG0|YbP`EH0z_N2M5k1=*-`r?l&+Yl6 z&l_HrYSU#2b!|0j>Sl&DJDh4dZXaBlbAudwOa{g7md(aR zjjg%C?rwRq11E%ty5+{K97e4ML+K)gb7Rdb3ojQ+oOU@4Qm2<&x_gPsdb3Wnx zM>E@)IDS^-wiz~p^{XJu29bc(%v0hcc&L_DSa39@e&%G$r_j5N>zSZGWpT6*-cN9( zL!3ez=+%4_s3&dSiD$EJ=9Bxc^UwDh{AGvwT5QLrY4X2Naj1x%`Te|IVec}JD(_~5 z;|1=Cnns_w7fVo=X1!Lh%{VKBqT-A6({nwfu$o;Cg2@6EEs?5`9ZLIziI7KaTrNs4 z*qD3DiqAF2>0Fvn1-|Uff9KAME%J)jOXR(}6zAv&KDD9M;B(pxQE!8fQ1|%&5+OwbWEegqy)E;AD!DP{%1pKd~Al~CcX1=^dO{isx4c~Y`e~);{f>FDv z^(aLh7vh4YQ;R3V=?58E zWt*(N2K74KVV)j98=bwOVT@UIOFX$soB#YU$-#LFpOispm6cF2Y}mW?Gq*O1KIO4q@`1JY5=TgO z)yc0F_nrs@P(A9*PL-SAR_8yjU>)xMtxi7)Fp1f=kFHzpuOs;vtatFki8$0v9_|Kq zuR_4YCTkvd9C6%kpT>CQ&zU?u54tfUbxo}8kWOa%s4ilk)!$Vfq?@s-6gJCa(PHN_ zM~kFLLlB^M{xIEiVJ;dS&I)7m?Q)CP^ z3z+++<^6C+vlHpaaD;n&btKX|X?#Ux4)NRh@A@yl=AZt3EB0$-@zw#rohoO0-rMO~ z8AJ8GyN7;4oH8{r+eqvi(ogTeH**ZZ(e(XYo+zvo$mXitakO(}JmQRD)w#rCZaMuS7#%xl+TOydUldaa@^ccpCW6-0;hOL}efyJc!4eK|)iZO@YR zj|rdLlud`XAT4JhvV1dnRL#ITqJ;QbmC|-8*u>U=aIAanzS1IU+=u1m@Nh4j`|SXaYIu%pYDd`5F8S!! z=R3o^vWO)*!j3a{ai^{uPr$R>nc0O^-Sv~%(Y9;&5pbYS@W{I-QG%Lg4P?|(T(Z)4 z^OeoGV=c?;x4GeCKk=GT?IE$`*y~s^R`cEA)J1BKj)&W4b&Z~K=J$wXF%(H#I;RRp zpp-K+Fv*GC;8!J0UZ391L!eTRei{CAmJ|JFlGRMX2hvNwM%|VPzS~ktTtrU1Xf}h| z_GgC0h6;L6_WoX#B(u;l!Q*2~y<)D$j)gYm^JXIQC5!OlvLtIQ=k(kw=#JIHG{?~W z17(Cd6#lUILTe6`;7jFlBkdZ8=V1z`*_pT;KAj7W&>Exse;x_8P7CW`q5j%GEicf> zmr&Ybch=FhrP5njZKiN2%kE<})?9DpGT!_QxJ76v{$U=RxB)PZCiM(+wox*{FM=z? zFq9%SDtp5jkSndF+c5=r^eEry|Gsq)%>aenm5EpWK$2bLHIo0t{=_X*I-u1mXD4)@ zGR-QUd{kMPB40Ej6Gf<3c6%|cnEIQ2k&@kT0hADW(lcZJp>DR={AZgUxvF-s^vca! zWW)-TQTn@b9+@`zCut$`4yDE*uURzr+pQyTPO;b*N5#pTm)Ux^a+L3gt|yNbmtAyE zZ2u_Tw!nwGwq}>a{bE#Y`ZxPe`f}K>6Ia#fU#<7qc98=gT>S$3eiP0rB!y07Xj;QX ziXA0=oGv!SJnquBM55UO0VlNz4z#D9#7et_H(#MVh0&cb)61Xn3~92V8O;UG=QvGN zIEkWv^dQ{Eo_X9v12{VBfRRU_O&jo@2t6&>;(DA}}7w`P7S}3tz`!BY0O8X1!I6WncAfy>--$>~~GC ze)&p>Qmcr9x{f9I7K!!4qtTgG{kgW&iDc@-^yC&vU?f?)O6CgWrAmhJy9_yV ziWOzPa@Ec%gJkYe%xUyq@c@$W6_$|^_obS>M>8wOHgk{I_xcGew5*xW*ke`R;%U-k z?A{?8r}m0TWNVzsxowr}WILjiyb24|i5K8;5? zt2-;Fvpj8@9^Sf;GRYHsnk4wbX7(9lw-KQsAia+_<>y6uC}1$B?`)RE?vY~Ozk!y= zKqQiLJQ+J7;JQGO%aD_G!&2y7!Y8zm;=+&UhS!)zzn>iTpQhb~PKRT93||ibIJY|v z$OnL7_2V}2kf_K>zYSAb!B~0L>1xqI#zCNML{BdAk6b&viCSCRBC^oJ1+}RD!$E8h zfl;@|R$qTuYI(JP!Oxj#Zvk<@jJwj?G9$xqs;^ih1Q;_#2|+6jo#;=-31gE3(OSN% zuB(>{<&SRBbVkf%H#MFjI!o~tGj0L-s^5n7pxSD=9h;w{i{w4-15LVm4h*ckQK$4< z1N`e6K?jcSUPsmv%pJsbZr4sd-t(?I@BGT1 zI*d&?N%%Y6WD%^R2SXVU-2G!Qd0hR(<#U;y1yD{h>`?BG1?dJA?vhw&5A_XB$!*Ca z$IW?rD*$Ji;LmR=Ot;=XFoPkf5I^eqlvlTJ!`)q*8r}Lt4nByy3PlnIzuI=J4;$RP zD7io7y1a&Q^VO97XkOx6zg#^a*8TElpzI55Fq$2Iv2ja0{sk1{Y5Ny{p*-7fd&~%RI;$i#jprw8-#w2A82b7i zcXV-ffi|{uN=r^YV=0BZtD;bGr~D^mt@>cnis4HK%4j2YoV!kK5}5sQ17uqSDwkq> zB~*VC991uMg#1G`oJTpo!rfrjvq{lNDiT?5A?KR5Sr zIf09&-4|lD;{XxQf^Bza#S(n**+)UD{3^gjosq%CUGtlL`Y#XfW)n=cKI|5#DV^u* zhz5z1*TQP5buwj=Ts<70K9-4Vr+$o-mYWQ2bNFZL)}AVp<-&Q#paoXjm?1u^OJn8Q z8=JpEWF4+Y?;bBxtKq6-LtJu z>+7^??HLryzjW6iuQZ|GMO$ihlGj<{bT*x~TZAJkaS+g;8KoMLLUDs?7_)+Z-~5^9 z9TpC9PGC3sS&KHEHNs%8TVcdHa+ns5Doh{#ZU!#~xNUc9EMef$DsLzLwf=a0Y=*Bg z^Yh>{hv<;QvsN?Uw?~E?Z@OsYTx%~QAu8gcZ|h1y*T$TG{F}pQDsc{1pZdv!vb%55 z=yN{sOH{IUNIkIRY-Tww4(Kh5`bQH2Mz+Pav<-Y)yA=PDuf%B1AoO8qs@wMWMo-UA z?LjPFs#2$-{qar4Fsp^sI7e>2O?B!34%=F+zpyBdIC;IN=C6+C zG11EGQJrJH7at~EH>PajS1lG5BSMe#^A+Gswhr4|-5-v(a=0?2X!_ROOH)j%Yn=D- z7Z(cOmRm@%b13@>68tE$Z;z?&LBwJ$e~zqJ(&P zhkY`!sOOiE+#9TAzMixiAsPNdH@Fq>Rm5edl;WY@BDQ{h{D%uUfCl?6?@vdhLi~6R z^m6YTu)d`jMpngRCPIEix)UQ^z7@zm|Gd~6+pX5m51_rob??yqGdoNlbVSX>sH0g$ zAhLew!oB{AeX8vKn#!R1kN41(LdmCO`@x2qCR>uCM~|#pRSS{LXI00!Qj)sg8_2HJEh<@kY&+*s7eB>~vC4v`kRt-U1=6wL2%lad zPyVu^pX8{0Bg@)DI zD3uR<_`r4aVEVK4O!1=~C-ife*2`hDKf8gL_c(1I(&fix=I!Baj9g%MBZPv6bE!G0fVnx=MPZmK3cyUTs;1Gc8cw4gEZMj~WiY8HChP@P=_h z8VZR&yleG1FIf2YA$r~Zfcuwl#@aXOHIK(TmFdFsf!ba^Gh`U1zs@;#n@P6K2Fz`f9A%V_0$vHfP+!%M7b%ScVH_cPlZAn;ij1?WCuby zEz`-IFYNkp=-6=`!MS(7F1?pcUIe_TvDGPKSqzS&^{`AOyy6MwoXdO+au2-nJULF! z@zNiEgBy|XwbWTlw@U$BrM%s&e8WRo!s>04I)A?G@jEWxLVThDl72Z_j{A*tBFo40 z@b#IJkJNItqpV2R0YNPP2XK{ntgSOnwE$$J`@%?Ae@UhWpV`7UuT-s5e}4 z^x|pa5{>F87u%)qoR%+JvT%}MjXsjy368H>yilBFpX);VQcfCU-Vfc(+diMiD^A(@nwq^%GI|R-4R2RlLE&}T-O;&i zPwRaq)4`(kN3`5GITg3?K9g4^t3Gw33wpgowYfvKYlgkFPghT^+CDsk3$n0L3Q>jm zNx7BRCo%FjUJ{}bWXGN0&Ps!e;7mx3>%Lms)5Hz-)711MYIKoWs;=E?)BFPG0`>vk zIsF~p*>gVK#%;c>Yx1vHZ9E(_UwYTJLLKg}j;rr}+*{on!w>~-;^7J01Rzq>iJF|C z%5K?5-%LCMEn^5ufSCS#7a&5O%0^WdI`w;cBM^>t2x1ebJW_pq#Gf?wS_)vJRgpZ| z?qruJYvhQk0;2~v=&f=Pa~3uopAQ|8%1@wf>u43rSwt5;NN9t3*$FN(WDkC<7CxZxt1Ut@{u zzm_UV>;I9#QaO*9E&6zvIqlLN+gad)w%68iplGEVzdIi6+VP zTRbv`4RxqCIbyd~;pqIg*baP2VlWT4X^fQT zXWEm{X(1Fy*tFnRGo%Q#4uhzRXoAu2Vg1OXk3fw9>X_eG<>`xd=D+j4OKwQ32)|q9 z_&~#{_F7yiAWtZMnKx7l=AzZq=o8izDDtRRs;)G}wlH1Ris4R=R?*phXt3X->$V7$fqm85ps8)<4_6qG3v zGll-~ZjolQ1V#L_gsMJQ{|aAa2gbbqJT{M|U+q>mrg=Ru)Slhp z0Z@2sfN(9|&9yULJssc8-JrMYu?mYJ+pH#~AZD<_1i>Z$b9qHf7eL|yCPAZH>2i+B zQ6j83Jw9Vn`XiGDZmpK3DvrhV-nc#hITc^ky(42QnhM^($c#Q@jg+NTF@$%Oz%WdX z5HjXd&oCs2%@Ty_7@#J4HWXJ0L&6R`rI}V>IJqU^?MBBLW4I?F>y{K;a2X(h`_)?( zJ}{HVT5Z1e<`ZvhJInaRLaMbC$7*qUF|U>D;ruXMd^<^~GWCq*e%cob&rURY)^$khLCUk|{TM3cuQS+&s6jal64I~dDo)FU|! zj4KT||5dy?Cbj%tQKiC3nqf)iSNwT5rn`m>4WEQy07Ca6;FjUboo;~P6pf>s=k-U> zLhN8c|Ba?0t^1>Esew^waBV;95!W_io6u2WrZKPanld$VX>rT@%kAd2$0D#cF~0cG z<-2Ll0JLWMGzUrABM%cHnuSxWP%p4JeqQxQJI_a4MlHz9Omsn9~hh) zEx~l`XIwbg=O58>b+o)(#0w5KUO-qj$b6}yDh`(OQuEN7g+@}7gKXdKGAYBJKJNQ7 zi?&+LVw0gZY&+)n5hrUx*^zScm0r&h;9g@<-K15$>$HxW&cm`-f7-W)Qe0H`=1`Ot z_OD^28M))M!i+lI`YU(RMQ$Rv87?y&5D-CI>5ju0Mj|TfJ7IEnZwJ2doK*+%_jX3e zTSs$U_*z{q>~Rc00z@_JlUSp+OT~xpuy*Jk+NTa>35`Joy~*N_(A9-IITF%}^g8f( z?_DwjjC78RA5nz-qRViKa0h2=aFN5^7k=LxN!BA^auPePt%>kqKf0ApbW?Q0i%pCX zLhg}8bq@KZ*{Oa0%6;!5`CLbw)H?>23o0ys(jQP}wY^k}Lvs9KwcttBHlbEnX;a!q zOxBtYW;NhbBl7va`Yxr})3EoNCZ64q7u5_qoHl`v>tm&B*%0QY@PgX`mG^spV{gV+ z7k2SEtLMeDM2vd8QF6Yg>f1v}lD?5@r<?1&EA=?#|pq-O*YX{DZT!_vA%F&wZ zX(DSQtm{`Se_|Eds34hF=<2zLtr#Vb+9~5d@kw`Sv;f47x^F5(aI_r2P>W)iAY}nz=iD+4_4SQ9fI=dHE3-}1~HtH0Hu30 zZ{rt3v|brao(%4hKPx`a^d=RBTab;T@^d<8$2)%!HW}g=Gm6nH@v@2cM1#s9$!Wlr z(e6-5>evLjl&n<3U=-8y-Qk)C?lH4xaf;fvxx4`XwImrc3mIYt*|9;ha0>LvCy+CLlhUcfL4ClCZfa%k=d&aS-qN=oraus71Vui5 z^mnN2pcT^xvDYb(1Kt9N-b<*==fL*&J32wh%z~9+oeMjoJ`cU_U5q>)awMWshXuZ^ z=8T@2XZkn_6vk@vVp2H%z66Pd=gP+b|OZ9Pdlz3ztI6_)CVE)vP-;9sNtQlR~(x>+B%rpq`SP3Iaa9ppRN5GB1%ZMafg$ewwsz# zRsYrtTdxEA>I}|^-sg(RhR`?>zoN$KwI+50Y+EVm$JL7JJE?mDE&Bzb($V=rV%ZPX z{hro}dG&6=dIdEU7wJvlJ(%P4V4+Su6OCgrxu$-RAZe6m@DHqY zipzj_fL>TfEE)@QqE-sHd6rUh5|d+_2b{%XgM_VclmxSH2TLr6_3HMk)~EHz#EZGz`$64pz^s*z}$>_$IKA z5@X`|aqN;qI=jji(nP_KXu>yOX(25+|g6b_BD93>O^Z&si78viiOE6 zfCCCYB!(t5-#y#CLigzSV-0k|p&Mdb)c{>$%q3hLtwIO1pU-rwViSeuokL(ey&z1^TIxyi(WFhs zY>Lv%DD;x4M7?srLbTKP;!FM0ilOczV?UGj1DS~Y_SvZ5U!`>c=nk~ zy_^~h^c5i6S1B;gXmt~UsYZcO954e%-uMeII zB9S_+3(yg+sf5iRrzM$P*MQcaXX`Zzm^#(~3$k~b4%D0xfHmm>^b{f7S>1DzZ?Ujo zzR|Q6QxMS+i)hace#-jm1)hmuHIintCEr{M1c5uY)~e2+>7-I)U)P(%2ie}z-O?}P z5KWzkWNQ%;I(5{Jm!gEJLUGz#@nR_uTqV03bm8L6T~7MecGFKDGgdK_od$apF>gdx zZN$qJVg_zrWV5fToANL8{YZ=`9=NbEA@XVIzsUkm|00il!wV!R9o8LKAdf)9M1c{0 zSzef~<~!kCF(2}yO#pWeMzrm5>ey=Iu)2&ezXH($0XLCVh@!)v_3rABx%&l$HA9#) zFZ>mJ)#DWPnVqH~*~*q5yY!N{k%G`+l|5PFXdsei-U3;ndhos`nSHvbx7>x%Thfk{ zv)qqsN8vw%r|5L1LHH&UZJO7RWuLJ)Bs6UjDl@&Qkq%wV54{(RwSYK)g+%hW&LqTX zbPmsq`G{%cRoGUdwnXVymtd1k@yGmh+3#qh85;L~nlXfhwTBn8k<}bXK#A_p0uNo$ zTZGDcK-@j^V3zOgl{ow{lU=oUrBrUU-leAQWa>2)FdNN0LWQdHHsV46 z2G}&#+0zurB1GcRAv2)-gA*1)Gww9J!&*xPLpVwnxkI_*JwO6F4uo*O+7w+NT6huh zF=>$Zm{+$NTU5=f(oVnOQYhkt1XIw5R1GPlvg11u_*oCl4?IkGaj2xOqvg64ctcEg z1I}!UkCRUkH&`szHc^a@zm34M?n|D%g}Sh1@X>Cl{lfs_LPt~9U`+IEPzYhm`4_Y4 zzv1qGoc+JAAs}eF+qP{?oJ?%nwr$(CZ6|Mj|L6Jm);U$@tPiWISMA+< z_d<7Hy}HBXWJKYhv7mu~fZ)W%gcX2*K#YNaekDNy|BSdscBBFQ`b8`*ETH7}>moDA zbzN*-wA=S9$RQ;)HFX@(#Ke%@gEuSIRC$sdpa+BudlCLWKWYrI^?KtFSq&k zO!m&szv1yY_@d_L=j-e1TN)3^r>r?RIlIb5N&n;Zy0`HmXyM`FVIpJUk+jNKe=i|H z1s)PSJx!O99e_@!Yie{zOHIqc=PyUDrJ|#(uI%XGu=ip329Y)2Peo-ZlcA=qS?uWH z@m^hBo!LV4e|RoDT;!8MwY~;LO4C@uMNS?jE<%Zy;#^!@5n>#DfI2z3C}xkAV%|GA zS#=aw^WngAZ3hJe2*J{kRqv4F+4m+bJq^pEm>wTZj_=0Kc76Hn@9(D^vMelrdpTM4 z;ic-TdA$((861YY`u}gHGqO^>UtU)4(W@_F&(F&b6B8REE{dT>Ezhy1WP!x*FEeqe zssrCj?w_Wb?mPK05rhcI@G`ttljiQmhNqFApAj-vAiIq0_4Vgh$EBs1dEJSNjT>O$ES32^cH|c=?3}zssSA;`dD>S^c8rnw*|lZkROQTm zKH+Fi(aY@(9ev%p_$?IwXMsa{30*gC4-OjIo1m0VaJZ%95_2pzFG>$&{ zxn*rhuK3(ONeOXVD;s-gNZ{YQIe|3NQ0AEGn>^mb!(>l^qow9^dj}S+bcD9~Up78)lG0c)=uW`jI&VQ@AX@EZ(b-~%%XGpTAO0JmO znC}y8`t!ItKWY%+U}xu$nZqPInkY--^5|s?+UV#@YxnQWATIjcoM3JOn!F7h#+J|m zs3|Fmy=aehBa+HEpK<@jkZv_ym- zsXjNbHy5dHSDUBPO-db*2xXI7zY(Q}!4zJ~uOomI%zU$VxU#~|lswCY0%sh$d(L*9 zQraJsA_q{0^WzEW^ZqJGU{;Ddvp-sRfc0yOn9$-L<+*I@tjC_u%u1~lt)MeGJWzC0 zOf5Q6!3ww9)sNscqLuLw_7@cyc3VEbmv6rNXF)a3T=SsF&zu-aO4r`@&W`zLO#DZA za+Hd=ON>wq?{GfpC`rX5m{g8EPhCz)q8pA|^aQsfvNy^}N#CAg89DTjfKYI4ibxOt z1Z7NCdinra!pzJfcXz?p*LGXj&d~v;<~1QSI4UZt+0{v2A2vOwG<8ELv1M?4*%nf^ z%i}ZYjBt-M&r25RM_V3*pMW(9q{X@6xf?08WomDNCe=`7kQxw|cM!XnDaL0^WNb7< ze4B$#=@$f2Q_@KBA<0#SfQNK|k2URhA#zd~tX3PJtH(Fr$lkL1uUR*qJ;&^85veyjmIuBkK`=0^OhFmp}VN)~u-s zwG<&u^V227!69H+0mSta{dwBDj{rQ(ceqHJC>Rkc#+bhlV`8Gv#Wbht99Jv^_8x!I zgmqT8SGNeA#&F&LxS$^0)|SqB1Aat~q06Hq=HY5TQ93A_a`gZ0~Kxq16^#IxhSJHttDfT25S<=D%j#90twg<#~`px#ka zBu>yJh4rY5wr-+hs*SdX>sC#T7{L>V3DbiI8}5d)QA59u(@~Q;m`sEnTk0+&ymcaybN4v0|44#hn;||9b=sq5G5ubdf=gE)JoeW5*K1 zGLE6grv@7cSxULvSeW-mrWE(Ss*&Dvf6bv!>J0<7oc$W~JK41w=rnXXya4M+iooVb z;grT=k`)}ruQF!fiT|W0uLmxI? zu_e3uuw7>32hk9mfnzAog%Z9MFaPr#CZkD*MEJugdJY&aRpacU7Fk?(&Z2Ao(hfQm zre`BH*T0&X@N?0cm>kU{Oo>5b$k(sRs&onz%i%Da`S|Qkd(DdQ^TEP95}E9>(~|qi zdpt%;i%8{r&*F(jBqghsWUTN-8`(K=q@X zf^wn7w;vx29)y!~HCtNQIBV5JAsDiq%5tW9JzRE)NiB2@R(gK{4NbR8`P%OmO@@JyWJlAd z+!&W2B(t0GnjZ~EuMW*^Wm@wFnJ(>LSrKlaV?>T!cjwl*j{~^O@cyxLkrwT!?8;4b zVQ9Gh*$+2E!X{Ue^D*>m$aK2I#ZtB8So(sLM_+$>PhM#w@E?7%aQX}4WgVW*8hNr) z`A6(^zK*?|2zoFSNe8?Z(MzG84+9?~;ojLNZxo5HP#xOo7+uMzxT3{Rs_aV?zuj*F z`HTOLCzm&fe-qzDJTek0gd!?DI|0qIPtDEFBk6NH$)t(EM(a=+wy%N zj&&T7nCDBFRs+^y%;ZMXWv*{^f8!RV9CfA7D@)K5EOEh#iS$zm(=F!!p_#i7!XmB53alrQ}w2x#NdhWTwPtZR+i_NL(DRe)$}X7 zBwZ~ovcz*^lniUGAT)`pO;rpUdfj#-WNYYdJh+AV*<-ot8{ry-{t9UEop8i4`3wqJ zbcq2P8?g|5h*q~tS7zeDi~a=1-Kw)@n4qKmI_@>(V#|P{l^QVWuG|jl{aQdiJT_-kyA)I2Zl~nJzy+(;eRbLR6li2!g@wZy21H(|% z?^boHSWE&oJr>cf>?k#&y2Ghm1s+PF-7BJueyentWo<-ZT2U(Xf|*M;GaL`o$Jt4H zVwVyB_2vpuY5Cqt>wyG3`toBr%x0`SGl8iU2C|iMUfcuh@0O2o*0iRKc1`KGl#x8` znOJ2qb1){iCn8-!u~DZMnh;zG9c}I7mt*;0A1?gCO+Kl^+}(^DW6dTjO;{<)JtlsZ zjek-%4mLhn#p3c)-v3#{7`h>_{c!T=`*MM$M8q`k<4v0XlxPfH94tw$dGP!vCB0od z3Gyg9{`cH5C|3pH*=Kb&87&_?x0n7g{qyc>k3tKZHbV#O~qq}=+ZLPb9 z$C+?#d;2j0XhsSL2Tvh6w382Faj~h=&fZ>#GJ%)Vk9jum=-Ge7!^5kq_qE%(fBnIB z-Rw*_TMus4RaJX#uHAe!?aj}L#|{pH&0Zfbw^16CA&!po_m!%dx?0pUH2C=0ULnVQ z0XH7r-2SrJPm|TYYjCEfvC(oFy#0OW_w}Eb<3hPNcXwmB-cEG1v??mgFMge$!}N%d zY53)to12Y~&i4U0T%w|)UI%%$y|L2KA+CmW7M7mrG+Eu%eWD)+3h~)@@%^^a-+a_Y zzP`TB)|1?I+h~Nk7pLd=Znt9>(^HdV#U=*_Xg8i@SI&bb3iI_#OH29NXP4L|C1qiq zgsEIPv8I@Egu&GBE%eX^`rXR)YOA}E1_Ycv-7iM*^lpOA{)-0menZy^K{2A zDM97u6N)@fr|Y(#_d7qRAUd1W=K5l&v|8{(a6jJUY-wXIDJ4TkQPuZ7yG5DB`4eP% z)%^NmZ+U!_?Q3FcYO2uGpK$(4=_G&P(9)_5;;QM`d3|DQK#x zDav24(LFl4^7jqz>x!HCC`fQ=k`h99e4noRI&CahfnRieG5aQdT1Ltxy)G@=iQv}zYlTS_ zVFMi63jU^sqmi;xN>_H>opW^@_t@# z7pqFHXV4%C#BX3n$U^1IHZQAw+PdF8Y0lW+!$p13yl*f0(R?m~uX^*J5D30A`_SF2 z9d>W(DYMpT-DahBVgdMZ7%bYaGqsM(I*zVnjO)>Vk6f=dw3`f&rH;n_C0h3Nz(xy& zMEghZM2d)7ZHMh zZ@G1`)+xIc%hL{6_L!{f`g(uHhfLIJ2)&TI2ZsoGs4Y`XAUW#I-PLS<%jWe?BB$&i zuX=j}zv6TIdsN^izvt3_a&md(G&yPUH_v$KOQ3_Cfye7Xjp_8N^Ib@YDBJtVozm$= zw5+vZjg1~siQ=a5ujTE?i~|myPFIFpP!qX29-j}g`VOE+EYJP!0W*!nQ2vGh>4C$7 z@l0K)rM}wN&dY1#bE-FdcXyVy=WV&0_s*L9EMY{#c6d0`^K5p1nECbW(NZF%C;WQL z8luLt?ckXcNt6MOuOgqqg`f0nLUu=6*Uk{MAb+n=Ay4Xpc0z7t;dxLFfYQ7#vS-f4&GoM@dw%b-Y*IN71pKS$DlcDq#N09tQ3?T6yya z)NlX-;c!%f*SbRt8fmyu8mYbO|b|@N$=V$Yb99P!l6M@fGVB%Uz{0%mgmay3a za0!*PtupSI7YLQD6X9dG6VVEXB;CFzeQdvgFty77+%phr7K*dIN!L>ZRhRN;CEDlZ zu!3red@)eQ1uHf%CI^zwy%zb#4)_krI-Ks00=wm9lsMVhE5I|^-8t7`4~%jbv^W@` zz4s_p*|W46pvxIO>T^GAnsWJp=hW`XAk14R@8(UXseq8s2W8w~MDuW_E_zMwl)6I$ z^eD)tgbb_5MVt=v1oma{&-y0t>fLT6Fb z?ZP0_@zin>Mfg56nVF#Z4d$=XHAL=Rk?AOCvhK%NhYi@(1`#F7C|tf%BoG?yCWpbY z#?`aHqoXX#U9=!vuIG_i#oa+oZ*OitJU3K@GO=9%?xzD`JEH>DWG}xLe5>&}e1_$d zQLy952!r9O&tLt)FqAz0*PZrtnGDYR%jWBmbAkLAF$S^HCmI_4o<~UdD|(#$v!*+{ zBX-X#?qswbNCiWf=GgGeQylfF)3HTMHpn2y1h95-fU9N-dmbFG@5cZIlI!K0aLX;` z91@XYvgNW(sBvy!0{f%b!#)NcUN8Npl-*Q=+51?CEDRAjHxI zH3aSa-1bMH6wf!&qS~D3j#mv2MZ z;wecp4CG&hMK9tB6Jr-LoH`nAu`e_A;WO?h8N7~D*37GSII9X3v!nillFFC}Lj$2B z7%TlXO*!kJf$K)}-1MF6KxVw^>XyS*JPcI6cA4p6=tZu`tSO8;DU$g@f7Z~{QA@5z zf);q6J^yuMYU}KofEuZ&DlzOrrO)9R*R35=ss0Eg67Bd@ZNmAF<7b~QE+b4 zghW9d-r}crS?&ADg--zUkQ({Ek@IBZ_sC%iqmMkxJtZIDq$~@7ps3p8%$8+H)GpoR z!^)@47)Zbn$^I&4{Y=7=ihE^<+V7;_2J@15bG*JZ}HPFSvo-28k zzUp>6WxSRJzpX$QPEbRzS!qzNfual*)sVF&?5XO-S zKxZIgCn1WZ20+95UG}M}Uf{Lhe6x6$!TbWcK&}wMndik{9jcv_d31)PBIG3+03CY^3qo7L;t zQjuG{Cq>wnf54#)F4r-a>lLZ0hQZuqS>rjqx*L+}1dVtmk1L@QJ4jP}=K0IhW^)9v z&;b!al*t<98n^`TJeTdIV`C6Qy*{+6O83_hw!y6)3lSE*r1&dC`4MppB0Psqhms|X zpadhBf_q<3c(R~YX;t+Zf5EXEf>|P7iRxqD@9ATuKYN?L9frD#U`*N_q0{^*7(8)^ z0=@jdG}737V@K1l{lNjb3Y+oOp8-SI$og)L5-{GPxC{^L4G-*Z3JPMrD3M%S`eFVbGUmj zXV`MUBM|wU&F=nB0tymzpMD;EH%E->V9NZ+)i=fQcJ8+zq4VB?`OqGvngK8Hokj?j zl#4VHGUl3x$QYSp0Up(>AA3>V#OyvFG+#h-gCP`rI(R(hY%qX+Ip<+w29<BSUcU!mIPul}3WHW$NkR`N>O8*>fE$PX=kOc}y+2p1B>-))5ZpY@x)sVMvj+;s zDOD`j73a&24G$>%@?eG{F)QL+4tkr@5!83fNo}|%6!`0k1Gl?`c zhZB3CI_m<}Q)3hPS&u-yJBQ6^o$`;45=K<_3qd8{L1HV|Mu{Mg&y<cPaaPXR~>P z(nAsDQ7zmgPYD#6Pfa1zVHOVCPa*FgS26oiUuA{@N9rp>fvjlXjspJ+!YLq%DMQKN z%VT#Vw&_@3jeq06p1|fNpP7R{xL9W!I-V6OWJNP~v-gPIJcd~?_~xKTkGr(2xC;!kvG2IE z;ABIraeF;$Y=d8-ms4Um^aL9N~P!UI#}uY z4ADpt`n3bAm9WzzygR5TL8Oq7rtzT|ls8rJ5wgDE9DTwW5fRa}4I$bdLFEmG1P zA>#j=iCmeS3W=PA1C0$o8IHV0N(s$vQ8kW0iqSYALh}&p$P5#32ip7-2J9I=E5yvF z!9N6&?qJ{Q4=*zWR?HEQk(R97t{H_A7Tf(z-5c(;lAuf%|8K9&AVzhB_``JTV^Aw0 zRZhFCd`!am{w9ZrG_F0xWj zE`daOgj8K@uE^J1E-5JM5bZQ{gi)Vqmo1<+Jrj1V0#zX!wx_fJiJY=488gbqbazl^ z;}-+O{Pg|@Mo~7YeWJexaY>thUo4*6@7cjba8u{av0ph8V;T}bFk>1p$<)Q5=!>m6 zRSppyq%GZk==X_8lcsxThr4rNRZihd&c63=jfnKyX1jw_%T@QX(@BXWn6Gl+M`Dd= z(`+}}l=>?%8s|h`uN@K6o}nlbU#6DQ!YRC;=<_cnCnxrl5;7Rc`UNZk){u>ft?rD^ zJCYxmxR=N0*JNiAeXFQQt+nk1L_=Wjh2yGHD@CuSQ1Y&mKv=kPb>8O| z;t=)#wMuTY4HU<9#H>4lqkTs3)0m-7c{1A9fK%uVQYJy?tBXCrB=Tkymi>MaO~K1U zy=*0;XMxjUwgM`D=^Bgb#H4F4ykRZBDq0#bm-8;-3q8^^WF4|%!Ot-P4OeAeGcjqH zOATjCeysvzJXc&Xlg#|FPW*7jW|LHQ`x`>sh5FmX`YkLR%@MAb_9jmWzL&t}OHLwY zjH2>TRk}m0*1imfboC|>mwSF^aLs{|qc2>YiVbm5e~2=R5*u=^FPzcbrIR)<#YLP91g9XNDO zj$Kl57%8H(vLy!sdSzuKf4W`2MG&@Pnexb9)7g1B-dL@xRAlq79D-8&(;33rC)0GnJAgu66N**=#Aydd+spFq2Wd6X>U*b)3{bdkjSYh z2B*b40JE@y$ ztGW;=3X2K=iwVTcD+7CRC$*C z+o0DFbSL$SWB)D{C!G}4o&97Pq;ZAV=bS#(0Gq^9*Fd&SYMELp7-`ZI) zqE{kjQHh=#2*R9UHFOwPq$BHx&H|rXd!*x%DzQyW#$wu(UC>_mkBRMg7n!&H1qn80 zR?YYQosYQWCko=Aolnm;f=#9rB%95n`ZDdDYb_i-jxgDm`3eGW&24>_F-U@PlTg2^ zu(45pPW6xF!Rg!O!XQ7ab?ky+T^DqDZbb|_UO9fa-EG!NnRkDqNvQMGnDz^9{kKkn zT-x(ESP(jstTMMA);d2<@ct*}$mFDMJQ5Ti7~Q|8*x7ZNF3?si!$J}!lnyhF{xkic zl0XAfHIvS#xyLN;vq<(E z(-HM46Dwoat?789a-Ke+!&xZ!DLX#U_lrv*&*?g8rx(Ar6=oHpT#5es17A&UM$?gk zS4_o?=?QM}gl-r$Q8A*H6KS3RT0PWNu+8PoY1=dGmOLC%_wk6>aTx0_V7!|WzM zQKY{C%?6zdaoDX>AuyIkr0am2;QkFfkX)%_MN(iugs^c3l#bv8&!?G(&Sd-lK$CfXAHJ2cIlY%g(Cz9w&ys^G-L1-RZSDN}-zO>9}?+8MBh{#VAt zAN@5Yy_4Noxq-uwLcI2}F}@A>WMvVtgM3Cp`%Z_(R6ZUkkT)~HHzMn|X5QkIm0PT; zY&3eOkzpMnD|R@UH~9#%fC;Fq;L)g@EjrzrDv|6^Gl-7*s_usuBAo$(>VoFIU2F=N zYl`gCeI*>L#*WhPF3eY1pFnL8dS|~lfL%XUg<`ZZewNBwD?r zq{q&~Qe5J0`}^y8QqvVOy7cBxL$ehyolXs%==;EeFeo@3B?bX-O<{OX^y9JfOS+r9 z8Z@Og==495^RQG-O&12~i}Um6oWLptN>v-NN(HCFVEh$bFA{hL(us`mN`u5dGw$>t z9ib2({K)_ONV)Zm?ZjjX&b=U2(<7a7`4v*GuRFEo2g1+Vluhsp&!@Xz1TzUto(GMT zx8v-`;w*B7#WVAG6h2};!yPY9ifI3gM>6)6Cs)@HpQb>yl<*muVw=l*M`#DFru}fp8^klyT{7QWD$vT9Wu)!buVQZaR8) zvr_i~QOTX68z4*E>z2;VH+gsBk-h6W7Y2oG|6d$~ z-SyWet&Y;)MUH2TaTSe)7-&+HOw;MCRtQfV1T<4`1IlKvuY0<#0e%!Z4>^iE7ve^G zOww}tWr0!lUv;rTAp@a(qebND+%v?#ihIK=_zg9>1=U!0Zp67_8a^A7up+P(&Z^Qv z9C3vkH=Hx#mAnr_lFSAZHUqt2u`lqpsXEMhIW<}DB`E6q@KM4?Y;{0Pt@J75TqWAv zW?S&k(;vi{+kPwh%TTXt>4%4Er@R(ImO(D5rXZm@@uAXTX>^M&t5*TVvG-hmuWWTg z0vmuMhMYaH*T*A>#G(!026=ubZ^rZR8+BER8vjF%tZhX3v-kyg8-{I0rOx|pGg4&7 zBxK7sc$lLf8)Xv2Uw)d!G5P@}NexUNkBvs79d&Osg0MIEaZ)X}cVLpMO+Uu4RH03W zRuGi{Rnc@~khWpOh7b$qw7ikTN~~_gDkGHSh)z4^(?mM~O2k1Qbk3i~$0;a_hh$J}TeJDP>`S-2^LU*ALs^t^ z_KK3ijKU2GNsq)0>B}sUmXEH_g8GmyF|PRu-0zDKa)Tda>8l_j35!CvFc&Tfbko?& zm?i$g8v=fg67v+(OKK~5Nz&N@Ry(N0K5-q*J_HJg1jCOt@b!+_;*JgZ-JnyJ#kEG@>FUwxi(r53Ts@;?GByXmcbm^xy=h9mx{Z_lGcGP zTndzpXL;UOFm!?qW@!MrcbF__XWgWWQ(?U^^nhRYRi$XVK$2;477R`0W}pE;%^q*S z+P24{1zAG9stmv%A@D5%npmO{DgH|iCJ}|}pI3u&cCyKDWuW6r#Fm;cbcTz}Fb6RM z7gt96*`N5OWx1l50mS-3pCiFeNprhz?M)uYLhP@=nr^uYIDPf8V?qg57_7C{GWBXr zdv2HB)?(zW2d}+@R0HLEWo3Asf@~moF~KT1u))l%e`VtGw^Y@4EzA@;12pwRR1>|h z5}f&>l67#6IsBzv7YEqOGk;8}(e{U849mxGVI&(g;PnhSHkOEN76preBe z&cl{H(G`h;IlB7lOgc?{&Qc!cZw!VH%Vez8o^y4C%IpH*I{5qxRvnf(O0YlNNHct8sfUP73otG_a8K^H5$7{C&0=W zX#d(s>uw6z$m1UqQGR7Gm)RcRsrQ`mGw9|A7$gBZ)`MhU$x2lAlcVJ)E|z{3+r|8O zyWUbHaEKRQgN!FXZabUXbTN@b-=uifXMyo`o~hBHkeq#0`X-{=?%O6uBsg_NONDu-TlP*<9e+*3G zQN%KQVsc(*lYo)xFPR&FhMKEGds7~k9F86mf)8oxNLOw?2lsSS3A=z9+~=S?TM{I~ z{GJA$B#IHe|He|tP3v!70Jy+ZyI|1^LjlTvr}HuOyFA-<)2iMQ zxXcuE=FNxo%2KKx!)$M{eFXdoF&@)TqpfpFP zf2&e3;RRX#&#;%gt&KS&7V9mkj3XU3LHJuoRqDQ zl3&e#I(7>r0vfiZ3 zQq;ZvyCeR|%+jcKmTB#rRAI^^hvVjYxG2CYOG`CgMFH(++`!l`_UE7iw zHWC;hGxOj(*GAakSiBy=Tp0buvz2}i`1QRICNSJ~G!mQtkgBgq(7qRr&beS{B!|SH zTk*Gu5Z^_Ztsqp2{bW&(zWYR`3L6jhb zH4r^M{T6lqL$U}&1~kKnPc(fOpUq!Z(M$s5j;&p?5-2m|m?=WClN;_1?Bm^;fb`w9 z$8+tB{uA0PZtpkzKL-VSlrU7_NeQIGK_DSsB*Zv#=<8^0Q&plN`k+>{oi`hyVx}o{ zUwDVA0%Emt=LX+KZ>pC+3AZvWPuYCFytKcfOa4vEW^v-?OPPU(g`|6?m>?2{EOZZR zXK*@u43;hGx7)VT``4W^neP9t97Td9x=A=?s#R^oL>?5D3F7BSXzUKgf({k&8f!?+ z;E-Y~i`l^!!iqbe)NG1omBAyJAo>KJ#eBV6FzwZgq9X4gKf7^cruuZmcsoHvXeht25Z@Z|Wo!ird$%7Fk)tp~3rP6uhz) zrY3aOsh7#PA!zPz(i)LQZI1W>w#<;k*o4N}gO+C*<;mzoPF?EQKXm9LRH;PR#d6d* z=``m|vJ4<^uYzQsuS}C2hfZwpw7OayM()i2SZ%i2zI$>>U-!-$&!cgn60A*6)g zMnAWMT+^fvQcpO+?FtqNvBAGhX?wcP_@9BQ2m@`Z2nh;LppQo&`Y<0YRcdbVq`qYJ z{^3Qfbr2_Hkx=1urlz zSc{vHG|v_Qb(?0*wydd)@IMZl*%w7`ir%k_Y%X=Zc98S=YR%BVq%rhKTI=(A2;-ie zT@>K`@~FdQoDPQ5nbCFJx|J$N-m^ZY>tA|^)DK!Kl>~Uo>}fOS{41A_8&7Jq$q)$m z_O7hbj*ak**S;^MvsP0kOyJDAc1@gmSdhaPT*Iow0#%2dT*>lrD>PmY_jKKuKF?d7 zGR5PiF2(T$>MLSOP-%sXQtBo-oxT0i?K#_nt6yU&?Bd~hN}3&enQCFgt##O9hR52* zAU!7KgD*18<5T?DDQB~T1_D*OT@rmxUB`?{XPfdxUdO8s zol2QhBeD*Zz((&}KeHmbF3eB&b2Q1dJYkv^@hR_XnVQ~D)mghtMfE6?5fR^E$upTYxW~XN~($zOEmk)BekhLH9C2QP4{w=YX z4&RM*{U$Y?E^S{$DMzzKBY06~yUs%n%B_6&G`uhV_mRF+#WwV>=#9YLo`B#y9N&3V6aW+YIj`byFbhR+@kj=l z1Qn9ST_6T}z+BWwjd$a)HV&IM@u70{OdIuUZg*ez`{VhU@0-gSIan5nU>w@sQ1;PB z#+N>C=E?~S!W|a9e@wT3x7*F!Pobw4D=MCQ)bYP$qF60S>=!=oS5_f*-2bYt_Ss=4 zxhLk`QZap}UPZE(vnJ;Pn3m!*Y03+P6c*hdB^H~t#tt=A$J}PiFD>==z9s#1Re?gY zw!S()1AtKEfmxlMpPgNvqoQP)nN90fGv3U6Wpcs(Sy-6kV&dXsVOpP`oSmJnj~&I> zSy-i4RoWu=<;BO(7adL9jHE=WV#n$<73RVHg)ap z+=TjOdw;cRqM#@mS*ZAyn|piDTc%Aiii)ZtMCKc!z)91zX7W6Vaa$0yPF3Mu>jK$x zHTU=3hLvV@`IL2Tv%tIqq<)Om9+J?=&RXPHv1~R}MHH+Fp^{U1?W-x@_v>c+^IE${ zTAC(=sEA+v_UBXcPaO@B;r@gPkSH2jGDedB5in>*rmo)l%8QY!ZTE}U>miIpZ;fB? zuGhv8DX4J88$`&VHb)D|{1ut(I#+wc_SO~>;@u@@tgReo5mDgqPU@aPI&+3Ms^1wcwl8Yu`QnwpRF^u%u!g-KRQ7nkQi zjjm&VWxw0Jw4fdIYk2r5xp5nLiyVLmni8ErQ={vxm}k>qi|EStGT4VfdhS6Hgm8`? zDIb_h!zuv^3|8RU%u1iD2-eb13=uL7Bkewm-=t?*(9efy>~xngL<&KNY6Dd&E@T=n zrt+c*-0?o##Q(~VF(g=2WoZcz9I$$s(IX=@#caCf-cg$xRBimZ8*9&GVc`Lfp|QO| z85D8zPm>!12hZBVoXJz!;>h02{1PKOgY{7O_r}Nc&EC)DO9!II8~DB9+H7Y_#~63e zVP7B6J+w0$GdCJ};NhAaCkM~^JlD)JpAk>amPgnxf0L0YS(||FhVZ9{i4OH4ZoA`4 zSsx3$yII-ZgLZ(Vs;sZ=_s+mVg!=9zVox}P?FE^PMITWL8t`7C8TXmD|oo}9q+cgcq>OOk9& z7;lE8OZqzqilVp&%PaIJ;!o`>-{?A*v8$~v2urEk;pkW_YG+>#id5E>O{OAq57rVJ zb9JR{OvK{($wlHg64S%{T-<4lKrg(h6CzN>yrj#6f+5n3V}9P+T(!2W*T)T=5usVvtsR zNJOcT(xNLgens*OILYzyt)n3ktH;QO=Gs;O1+t`JlxOR>UQH%jmxp+$;z7C9)Q*ZS zrs4sPRbci_ai?QEDLe|83Q@a?!G9#x02#AL0>7dZ$B#szK+r8*;<>}SggR_osG5Oyb~`ww~NDq6?39A zO(;`#-1k>=3ie)D`+oJ%#jfogC+YVq3BAD?$&M8es++*wN1uVRG*3F1ddVbobimUL z_DD(lXiZn`AguQ<6-C;V<#z;pETkpUT~u{vW@cj}k8=1F&okJdkHcx-RX%o9m-)K@ z1YY{#nlAxb=py5|^U+gGtN=DfwY?*aTrAi*RyBg!YE+K!s2u7ejUP1mKs)Yx{`YBoMzO))@Y}*QaX|>NQ`i%$dp9<=I*BN{=0HG4N&EaCPq z^SCUQ@}b2Y{m9G5f{Rp8M6j!4Yr{@+v?nd>@2BjoH>5XX9ItzY0+4I)d?IagJ2K~d znA5Vo9HZ@sTI$+u z#WRB^>ZU2w8Y_%Ihw05r)-yoq#6{M*?TZ7;AHkO=F2368(y|%W#*~q#2$z&+)x3=1 z_4s(%>U=*zY~^0dP!vn*zmX!4CkMm>F>Dz;1ZXv5rEO(gCXKbYgg_M=cpKIiJ)vP3 zF`*8{{S!p$gL*~ELF)@}=s53$_5;s}v?~&fhh%y^x?FEopsu2_YMO@|Q&Vt6bgp%^ z>jA&4wRcm5Mf9JiN-=V1pm+doo4CB_F(n_JtgP_*YqPpCmX`+UrwYUpv&>=^?mi#4 z4|^lR+v&|U1HMs_s(sp*Q>uD$*d(odjC;s`*}0djssaU@6CYxextS4^#2&O0v74Tn zKCC^^=q+Vmbogiq#D-!$L`oX#vU{4kpD7~kjiugGSlB4NB-?g`h9=MHK!{ynNFCzWVmfP)ES+QQ12o~}-Xo#(`#>qjIKN;kv_lwnd)$326~rK7A3!KJ|}mMyi& z&}ub~?a%CW{B7R<%&c~C3ppd!RoCs?!(Ddz=yW3!!5l0yxJ@nul*E&#zktYhgeO5Zx_D zd*uf5zxZ(RGWksgi7laY8eB-4?5fdf?wwF~0p&|vrUR{g#)Nxa1TTuVpXL&78=-Zt zS)2xNL15&^)ZGf+(BaAHhuJK}F++$M0qB?G`SJ0h)!Q9~@H)>Hj2q@$TsMDqEV%?g zqJu46_89FCvaI$EoZJGZ0vEcqSL^<_%Td%GXvOpxZb|&$jR|a-tF<|%u@z%~qrN~f zuWoEOP+2hdV2_%{;R}uzS%0{PwHNkskib_dFE0rAfXk66~$1aI+iSbaBi15uHYuKV&Z zFS|=7mme}o*i`*}@PH~f*5Kl1i;RqR#>HU_Qu3R1kV`@^$j3Ywr*RjO$=$x+B?iUS zDm~AIz(#Z0`4KJxb#8Ohn>wLG)*r=ZYlIgyl3@I>rxx8wUr#{)S1)00Y9=fYSp=9_ zpCSk<_{HTV46oGFs;N66HB{;jaF!7LZwL}Us~O>q2K~e<7r-yn;2@DGvRY^WKL=4P zEpcGgPr*SAyBW7ua&72|fR9}VIIM}$2r=|jQB?hfzP_X6d2g?N3aBOu0H(&~%T9&F zh&n~9s?rjO8#5e*O*&TaFK};vv#gL^NQ8UD=>T8413H@5--2h4?icqzxP?9wh@w-f{8HD*?07Z;aB^7VC&dU=ncXX>3v`0h4v1wenA zfa@>@qxI!Z{uMuh)ZYPT)p2Hs1iS2gJkXgKa<^D$!hz~=Y=sR&nD4RT_GgLX)rmW%#@I(GOuS+Aott=L9;~qyjXa^rrBZ4= zUoPos#$=j6GNg2qVAZMx;sDe2gLn%%x4WmMHv76K8m4M-b)(_GxG-ksIbLp$s8xhH zKXR;5B1_Ttfue}|_Z{~5;2%xLvpXi?JKD$RpI6t(Mze_zC- zPm6;|Q=IfyK>kd4kOa$Lj0%ZMX@oe9J-0_ORS=m#Sh&UHB;)d~f@unkYU*}zY4O|RPPFlD_%U9J%@25dJK1Lg z0{RjQX47&Nsm@0c!uT_-@~WaBWQVi46Rxwh%TUkYIWG3)E(*xkYNGP-1Y(1wT#&*_1wgD{(CF`LEjh2GsbB!s}Bs6amNYp8Y;BNb=Hov)SgW1nc0 z5BHpPGfdf0$p>-glb78KdS8FUqzSZYC_sz0yFW>hqYZR%I9QdD86@f3z2XFle8sRV zp#ki!xBdRcv#+%y4}~dIT3G7GY$Vz_Me9xIrGjjPdprqu75d|P{L#Ndp2JPX94W&H z6|Wf@;7`6U5y5>H?oLi4x*RKnwL3;Jeq0X8N3p+40|O#&CLknMTbTdp9H{8A?+fVl zITM2xEi_cv+n-N3&!mpn6Os7iz-}QnU}Ko%~K^it_bX&+@S9b}t4uzUjIcX#IP1lK}*g-Du# zJ|+xsG+;fd?h7lt7ZX`p7M8tJ4fu`xcsJ$K3&PI6%##asy0RwFwF`uHy9zo1+t2XQ zl-^E8Rv1o9eW1WzpRzB^?Z4SgrLPPic=e%*38-bfU_-?0%MUhz_J(0kiFm!PZoNG9 z`W@V1BCrmkzyEA=zlfO38jvIn8}ntz;F@v`{W@49Yi%TIE4^axgrT?`Ln1^LrPaBW zWrl@%8k#wv3uvi*0f@_I1upH^Jc{17KmE^unP6}ihf=RS2ugy>rICbsjWMHiTauQF zE%p-u_FI@)rKhC0a;Xy!{a`D_Pi;9-J)z;C`R#%?|p*12X(VS75 z(-HHz+3hVOv;U+yJ{$$4Y13C?*CO=JiX6A{ft{0Q+Y*Y0@Q9l|7h z3j~s+9JbWgN4dup`;AK{R;*iCHT!(Lw_LO%PHQ(iAT!LsXuu5@nzF(9LmR=|I6)bA z6J=ETcGJ_B5PLsnr41)HyYEu@d?gM72;s^*A6;{d&X=eG8tSWYm~{HvvSjN-3$!~F zNb5kjp_xg6;vgu1L1>|TFQVS|<>BDOZ-)EUMu)rpp&|Ijp>9xO#r6%-*!K4HUdaL^ z;N_IN3>>Az&d#x0mtkS}=*YTp={J0)UO3|lgnX%mLqYj_LV)Wn z)q*I@i^rP@<-)qhMcbHF0x~nDTWw>l=;nJDqf>olC``s?GW(vW{`JoyRzS^A0f?85Rx18}+quBr#3hQ-O4Zz=%FfmH0vv+X zeyTuxJqAgK)e|{CgD!S{dhGptn)H+6ueU*WYd6c=1s0?h0O_i$YTqx@)DVQ7~0NBYVu1P);nN}rVlmt60 z7X{VM&NUe+E8NRe|AmAAdudG(ZPNZy+4xi=z;#iI1PSkin1FVBPF@2W22L=QMhpS1 zDhQdS7g9sL7pCJT?miz~wteV*`33|>SJ|J>>7ly7btVMWap-}ghox+Q)COhnIJ*K< zrv}n9X-%`i`$~Kl)fJ<@@((k-r+gLWMKhV)9VTfT-h&|18L7DG`}4=xWAMKk-6Uyv`XNKO=kUsrEn4s z!o$iIjaO%cmf`PK@oe|JVl5PI=XEDV$?kGc*q%CF-8OMq>2yHzhk{)qkAMg8Q2Dt4 zVT&6w(U5H=04^YPsjAjj=&xW&CFlxVNV9j6ru1JbtsJk$vWIM0sdTwqE)D$xSK-*S zX8SI9tIf2h*bjol4hWRcLqG6qfDq3mJ3{*ud%4RQrbU%-{e^bq{`~PV_vd2uh4%%l zLk(wR!+rvi5zLk!mO~9zq5WGKjK<^^qct-DM#r#nXgnf7tCb8o7+a*d*+Yxo7srpa zr2U?!Vy*Gl-m;7tgy+)YB9s7oqZ{ppkT@;z>ouX%ZP1ro#Yb~nTe*S8+^%(ddc#*|@lYn7PrZSa@{tq88WKl)^b2}%Gc!tSpjL>OPr>2X&j$lI z6_5Ad7|`>i)vm>wT{O}4o~NP#GIA3_s0MY_&3I7(#Uvz!XX2rG(0_x+eZa$dCNsu3 z>5J`Rx0aNc%1}~Hj@Wk_+jnJchW>rB^02PK)#3;3a`gJ|qYi8& z5`g&XbP#zk)sN~gHUemM?e#>~qp|b#E@m(NV^W>XZRCKON=1sC7(1%SNSV-nwFE7e zNlz$0WU@J`&rjt=@_M2Uvpq|rXf#up;ZILNxRW2!EGvCo3J92;pV>G##`ubVSqlS4 z`uFoK9fuBQEVsJQqhUS_IJ?g`KDwewOcsJ-pb<2f#<4k70YuCN!fsvmt);?MKF9*@ zRt@#_h8!^{9m_r;e*Q{O*b||P8Vf$pHyN+7FG9F(`myL08qXbqf#%Q=dWb%opt;cD z$G>X|5}{+`4DT2`w9f+W=k%>`Zmup5M>h11UTh~kX!vpFKA4_C%XQhu}RxQ-;w&im>GJMW_d+(q6~faa4eQ9luWLK%VzTAo+BlWSUy3+3x zUa&rbEXrJNjL~RpYFkG~botH3AwKKfm`M#TjCD)^&oR-0!VtOl&c|25i6Jdz1Z)gAp6xmGa&;=&I zc@LtSB0EKJ(ye_tXC@(thM+nN)Ey;1)o=;dVM+u&-)^L(5&pS)Qz|B96=QyqCd~5= z9zp*Z#N;SRdCs;RsJm3EQTvGkC}VCs#TSv$>KGTn|1efplT6XUj2FS`Z-vHlrqb{G zt}88C(OJh%e2xvZDi={LK}1OS72UdVXX#qL)<~1lJjS)?F%NLDst7eXE#d)`9$`eK z{c)637wC9~UJvxW{QURw`(-LMKhduVZcU~)wtbtWwmSgL(^DOE)*)}$_VfJ9cgUkfWX<*AJ-pvRy1`&| z>$(h^%E(B723Be_8&QN=<9w7TApym#-wvR^csJ}Aosd1uozP zU*L&tb<}0XWreg&qj=*&(1bM8&HS-UDw=8E2H9h<1`JrVr3Cq>?L{w z9}V>;0(TgE$G+On)R2^k347XG4k#cQ_dH8?AC{S+TKF?RT~NZDUQ$zSeQ|Sr1gYyQ zJ2IhsyIgBt(=YVwWb5s2>m5LRH`MyXGjnyHj=0h4SN=Xp{n3Bs95B&KLVh!5D|4te zS#3P>@v*l6Mpu~g@ccNOhVSvF{u_59o~GjHwP9PQsgIk?Duq*e7fowO%o^Y%U#C(s z_zA*j4X4a;`1aO`U_cnnta_@~aR<8mga_cFrYB@ z)7bHg{GGYaEFtp4H`T6qUiWlr+<>N zSTqxzS12L@pCCGY85EMbjzLHLhq47Z+XhWq^FMaDQ5Z2GsL-1-J*T1+D;7@laj7H? zQgX*|?xLdsC}1GMcC$O+7+JD3dk&Ov=2BmB!LGwMPkRSQPX!N_{hMDCH>HfNWs=;Z zOc4+ezJPpQfWQgYl#N=6${0(s`DI@i%q4KZ-f32|Ny~;aMFA_Xg?SqU0l~~It;4%W z8D%&|A1~F%DRu%U^WRDt;cgeA+>e}iz=(j4WDpQYN1$ZET~INGpDeCX%JsUie*S6sHamp`9BE0%8_N#pBSWrT$0d82jV4=;z05M#9|t zwK`2kr0=|*D&}w9 z2hp)?|EDcYwn^tTPXT}~l7FY>@#a4gA^`bgI7+&+QU=98khVcJj*f{H`zS;L?H`j< zS0TTZOvhg$Rf*U4L7Li^&bqbO5&!7%%m!d11VMV)dwc6oyn}<8GTQf7N1GZPxz1_E zL%&O$Z>+YTuk*NG4cDi6jC`p;y}0ayMI~}ee@F)8OSj&NgQsK@6yk8Aa;Dz0)pvN-R|GQ=BtEA<1+aIXLaITYYVqtyx^59i z@!h_gNNE4hqGM@-ivww1mkV9>!@C-ob~p%#$L%W2Wel$pMO%08l69n4)kQPceoPVe zb&E)sy!klR^HoPZ9Yc@sb0U_F<_R>*l_bcE!1JEdbX-_3eJ1;F%aJP&nq4)+*+~X* zqY>1BX04K6IbK`cEf>}UmhOO_=nxQ>z!ePZYFxRoDAK^!1CajiQ_}r^f9QKTWA4Wp z%BIPAG8nTpUBS5mPh=+!ul=G7%xz!DjAM9OJq4SiBVu%H(yz4i^pi0rzIuEHgIj}J zsasaoYwlq*;!@V*g7l=5F+q2WjkVcR|7=r&0)R_4EwZ2|x^5~IxcNRa65Y5Ti#Aa_ ze}=OU8c+xX(gCVQ_?lHai$gW;LTh^H#tOC;eaFZ=$EpQ_s>>$(#7B{fJBo0`oB;Dq;%q_ zWRlswr zBs`15etFWF>*8r`3n1s!9Oio#uf8f?byCYVx}mY#_L?XdAk0bIO9Wb=Ji$v&8;$kX zmJ;gvJdhJMzs+unBV`2~iw?^$QNr|fXpXumts!&hh~}iRm~P=;+=64C~yfW6*@fZO2{Do(kPp!YL;+DWn|DiJ??(4|$! z_W`*xez(A?7Zk!3A20?fNR629Jyakxb2L45+zPh%7|)ON)8KN|fZLrIY6isM<9-_K z-I#SZsv}EocC!sw?uwFDhqNvDNQg+ml){8hx!tV2x7-uvA~$fbHw;i0d~0-r z3Kr8DqLo*Iw3o0NGS|41DKk%6;rIH~aIrifN+uz&^y6dGPFziH+uXb(>br{0uI2pw zTGEOuDf@Pk59MX>^WpJUjmJjT3u?wTh2hEg<)PbpADPR}^xW!ZWnpW#V!wb7Laf~0 z^N;K7T_9K%BxCQzw}5{$tMhdx%Ao6R;g zdF@xnhSU>^CS4`QPRL`NKbMnAmn!>)+l%S~UU*=rN)~MEYwe+a$Sl}6xZJ!y)&Pd- zEX{LX{di%hEIE@_gn&XSQvIBtW9u60YMnJ}yg|X`=x`Faov=@4L|=OG!~KZxJ#eNE zAGOMhOfOEmSoHzhhndDuxpFw zxU2j~Plf2&dz9-vcFh{BOZD5`cXn$@{-RboEXb%*#iuNR&zKqg+v$VlBuU) z^e^wPXRGz`f!~a(E=a`u-ouwuJ4dz$yJE1|@7tEP0kauCcgP>=PX~|tEuTA$fv3vp z+eO#%=h06MAmqeWnqLZF?EqF=UOIvBXxp8=^W*rHh@DQCgYZJT71v~efz2?(r@U@) zw1tHB4tJjhn{C#DCXjy2FYz?bbFyQ8_gILG+@GI!86UIO*6a1_p|(5O!-rDS9$^fP zk_)cV6NLy0*4Ml zDpHbg>W)jYBKN01eScmdu2g8eQ`iDRjceRsZ)IS{GLvx+YKT=TDlJrQY@!>-b0k*m zk^0yy8jOimtxWDp$?)H+(pIe3d@vJT_RMNIVl$+1T6zoF1=9SE`F|(ESO+VJM8c*# z-J9JPf0x}ifD~d(GQ)pM9V`1IEDtlMb*c zP~(W|66XWD&zO6)?SpyPSlx&LWeQ7Q!(nzCE^`z37hZFEii`B*O~cj7m55Ia`|ch! zOHNOMf*IC?1qZ)-oMhQKZHTEP^rIfmI1c8R zgzMYvpo0+qVw_o$bR^D_X}G?h5*jv;DowQ2&3yN@j~*`IampSYhujcD;Nu#9 z?t7Be&dXa!XOSq`X8bsV)-fmsC-2|VphF7=bBuoIvQv>BJlA5*ysyD3BliJ2=rL=_v|o|@L+9ZRWUD2^kC<4P=M zz0#C;1i`y2M1o4Tg#Z_RI0VxAGIxij@21?^iRUg-LWU}vjt55tJ2u2e;9#bBNyb9c zDsla+VZ{?HM9l@XDjgh~LA8Y>MXyI;+Ri1Rr=Uj$Oa}*UN}Iac-iP}t-1&;^v6ITW z?*U&|+dtsaiTJD{64Iw$J_kGKU5w@3AuSYW1fAZL!j(OGvmhg2iVfc^ z%wUeqX9VF9iUqBWS(xhIThJGOo2dcMut6nPWYB$shP#bvtF7u(ho8Ns+1Odtx}ro$W3PcNg0DZsyf=UUA^2>Z;c*OVxDedUl7LHP zfv4SYdD+@Z)>p8vi)5^IM3m|jmE{^w?@%A;RA!ti-Q<32P+zX1{y}=8O#!&~0yASW z`w+^#S7x6QPAA>Y|nNd4Bo|EMpH0krgAp?E_B$39Zd{GK0TfA6teI zc`!kbDF=aTzv^X#I>|Iqo8e79NFBS(|QgV361hCT7K#?uh~}!{sg$b zn*nr4N{s}N+f8^SlkMS<6!ig?#OrZ((k)? zbP79i)75(qbxG~r#+hL62$$W%`*%Kun@HDZ$6HJ{3S}p$E>O)rAnBVcsmhks?Bx{Z zpoZf%8!2Vl{UrL11-_;_)<>h7`4KtsJwA7;?oySG9NKWud}{$ zlY~G4O|*$J4^%W(T3MJE6k!Hv?uEdbeRk=+X+nY_Sl2&@VKqFo0~OJp8U#%(yls zQE-`JE&oTx_usc$bhH)I^IZM-4@L3tNRbe;>VPbVShZ_r&-H9$tRi{hF|R_bw%AnG zH%NI=V-}qFDPIOI@yL{j$&s;+cbo4+V5R!f`cJDS@AjR~9{23uGd=TpwSNj0F`*M| z+?cjci?vwIZOkgWp(=OZr^$$ynVpSYp_DFB_V#t(*2;NI*3}X-hEG58{f;{|g5!0C z*uLKAMcnrL9V*OQvR-Z1bBKz5h6TD%DxiuH>UEc#Z_4lTk*@syq~X%{JDoB~dValZ zJ1atvoG`)b_mGG$-f$5qNLj+NsWZQYzUTsdU|6-5cwRAs4<|%Oc4ERU4A8J>4EhU} zRcoLwv6@xRXEM@AQDw8>a~=`O6!g<#b&+VV+ikz7D!EM|G5&@N>!{34mCHj#_Rp$J zOC~iz?{Y+^>n4>O$VHuC+r~(N@48VEw*Lmp#cR8+@b(e-_Ytdl?u1h#^vlpgi^TtS zT`@R5umS=eZAH%|nk*rBlan&H%2$_7tiP9N5rl8P=ZcO{s7Og(hs_-56B;)v0;W%# zYMbH~(=#3%nYM&~-PB=3;}&8UCll|{Cu$z(bkMy`Va4-e2d`%^BaFP>jE4l1f*u898X*kMy+s-LlDqB{Q2QA! zWu*A*fM5MBuUjC|aA8G_zayzcY50mNUG9Kph%Q&|awtem7&uEoco^BfQ?r zyiI-p1GO%GIosA7NGqMclwN<@CBR^(?c89XHb$+?c{~PnT>GzaM}~awnH5EOFP6PS zQ@mH8X*bFL(@cJ~GL;B4-&)M-2jCX?Oa=xzeJ1Of#5n>TL4(1qae`P`M?0Zj@Ll*; z1EV}fuhc1{7eHRs{A*eNy7>*$>ne0!FPJrZ`nxW{<|Izeh6)G0a?wMdval{iAeuw- zi-C?Xi}wY^I?kWRnQuL}x|JjFx^eUzZrLpZGg~0#{@MSwY4EC1T%2ECn=NKqxtUBd zzS_tgs`LmEs9#wV2AW!YyUYn%VXdyhH*Dbhb6)F;>h%W<{%XDjf~TggS!&k5xlc~> zz>;G07Ke%_+KR$GykJIh`Ie^{4I8mzaGUN0TPX()kZ*4!_hRV-W4d}(y%mJc#B1h^ z4G#^>b&jpDUUDUmnz3%jB&{+>ELL#Z40WbW{qCEeM_VmmB#`Y9g?G*7waf+NBmJ8j zmjoc>dRNoH&RsJVYq z&iz{-H@~P!g-Y%5?R}mmixW-k5JVgB-!9PD*nK+!m18~q<3nQvf~;+rV|fW&^8ZZv z(H2MqJD@95Wa=-St`Y8Ywldv=yVrKq(IZ9lxLm4{+ zkptTYnQ!}Gibi*?!VgZJ;&6p=CvlV@{xSHOZeC>U93Hn(wrCls9?_=u>nLabI+e;=V7@L=B` zyDlG7k?W_#kqgvL9DBEVAiB7v&kLEr*Kvk5tcFN&nAGu~NS_TPrxCzn!m=gFV}`2H zo8#hs2W+kLo|&heF_lT@0pBPr(Jz#$6+0I;-whmL68C_G^Zj|kFO~2h&l0kl8Q*|{hGvk{_7H)0p;Sp zs-0a%8Yy4*Y%VRx&`!S)6HITPv!)Z$_%iGQ&aXy(`sm?n=S z)f={Q`UT!+9UsrM*+mRnQzirc64YQK`g$8U_WnF1-LGR7Ynf@Y8*;z`kVgL{%ohb~ zl9<4I13s9|;iaaaL)B@LmiK+$dYcK+n#JUBBIZCATtSa_GAlAOrr;_B$9+HySMj7{ zX_dMr3nTq3ElIc*VcU0`0Qjb`&(()lMW36p%%@}1I zCW>(bB$#@n&S*4Q3jl2E0q9D4f#-o&CM9*P#j;2zw_*~g7A}9@AxnG_yeNJxo}xs` zZamyul$GbU(uHv-gXR)qbt7ah?w+pngMv=R*UZ4qZ3XW z;V=~b&cs`>k?Aib;t@n0R(p6kOLV7`desa%^$vrfQ#aU53dMD9U>^>JHlrttwy6lZ zPbThj&Ri3J`Q^%$L*#0AE?R@6#iPD<*zBlsGvSrgK0|{NFP2+;-m{JIIc-M(bif0b z0$8y^wqzUz9n}U)z&_dhC%guip8d}uQ6k-ydf$Ep_2qrZ8IaSdGvO~M%qeL?#J*Va zf%}3#xR-F2WEOA*=6jG7J@eV(RqRC5=JbQWGebirT${d3R!k4rrsK25e(vo)U2pk# zO4JpH#|&C@FZzU7X>iA*k%N#O5pJkz)Ajd?#%BDR-Q!<*>)X_%G&KbkP-Ix7UiI=6 zqhgEWM5ClqRTit`HM2e*J$XR3v#idaF_V(gHFH)CJvCi#K~L~`(w<74n;TdA1cdHt zJGtRaLfPJzc&R*$_CqIbB$%Bo@&OcLew%vrtiRmN3h{vhqS=q0-Z?`Nu1+Rs5w-fZ#B!Y5$+qRSE6q}BZtpNq|ml477XZ=gNRTBed4PvkBC2+9*>yW7~ z&qMb}y4y1}?q9CS+hP0*Etk2w3(w1;FAJ-WhnN#W5?d-AuV)!0CoU7oEtfI$6#?FB zH=X2@0!bpyH)ju8?t67|d~dHB2imXe;u$b0Kk153-mfPd%iG_vp^jm;Ue1U=V1D*h zTd!8Xarr#byJMEX0D0-mxi7j$^2bs^Tf7&)F1w{GMAmMXQ*2&tHYSp}jbV`Pwnr+w zFM8yzu29q3j+;}~-447Oml<7GUxrU?rT2zmiGE?UyRFGIym1>r^?xwCLFov*bki@a z+Kq5#HSYeab31?K{2d&G7$k#09c*gYMdY=;grnpAwsD{Xg(|x+vV?R`)-u9oxsFjX z_dFk>JAbyWrmpz@Zo1+1em2R0U%w5x4vRuqR9vpn>huH-DmEQY($%;lzCVX-j@et; zd8~eGxLB+|YpS;f-x~egQO~in;+3T`G`{}*pi#v8HcoLfI&`dgFkb9*QNBL+p#1Rg zdS8D0q!J&G&t;vk`#T|N2cOeeEJm-ywq?-Srt8xe=*Xv_06n{{*(BQb5MC)MYgA+K zEd@$ydYo#bUD(6$X6{jqBD6XPn~^fb9Li^!0lBlbbcu6ZYDm4#MEmWkFF~W|>wUF; zSU=idN8^bhM$N`RJ@~0ryFuI0#Y$Ji?ZweJr;c-0$9)#&5^>?$aZ3_IfR(su9Z1H( zJ;84@wplN>pDLrl%|_M+lGur^Hi3<6!Pybj2&rYJW*>`Dla-CqaIJrAl&+*Cu}mHM zn1Gl3TU(~tAL4Ah4WCUtgG~Wb9UTYv``1^Ij(H~vEtL=O0rUQ86Eq@rlR+WNHc&fw zxkiyK?G~qofZEmS7!1z7W|Ah|nam#$cY7L{Qa?LD$z&fkA~^YbXC$E^(SaL4bE)=#4H%m6MnH@PzQXzAj%%Z@LbB*6u0T0@ zbk%>;=hfUhgPE3&gC8HD<8i{@uGijB(SFxOt?P}mJ>@{{aC5y2z#9>KXP@h&1pwqE zC;Y|xTOiv!=kR>+XxpFcW)y}KtXCqhXPei=Zn)Z@KS#f6Hd%hRaF`=l}sflx!juG}z zKI3ZvW1G=-rze$W;V=X6qG~Gl0#6?>y zB5AV95)iBK*$Xlrl?9(mx49FC7EqUf-D)4BuKQ zUbMb>vh3UF4d9ND8Jt2+Gr$iAp9q5fGJCU*GkX5*^VLp0?*;!$D@Z&tP4oh3VRs2f z_h`OE5JeTWl}7Y@D>B}cDld3DyU^qkYzyvU+oA`Y|35Q}_CE zPi>=jm<7PO6K%UTtWq*UPxlFcmksE+S`W$aT8qPpRhn*p**e(X-X_lfffJF?VaA}Q zqM`&VjMQu13kq%}c6gNhTlfCxe@xactSQoOgK~UMnk&Fqu~A727c0=-FH5>kNEn56 zMw!oni&gmIw|mFlTQ3BBdxk#t{c5pXsSN9${{W3O7`8gDWwGpYIIFL)f(G8ml zypQ4+z+NsUrej3T2V_T*>Q2+a(vB^pJBd znUcD3O}JNJNv+5X)f{5Mhfgp~^FVKk0cxZQ4tYSGlLLZp*8PI+UKKu20mr>IBAtj02`Z!aY1WIJ88T8xIQdNNLM)E0) zQ>(pH=X3Wk`2={@a1+rHb@s#Q1AXQtig2^vF<~+84R}I}k&6p2ScK~fjYIk**d+>r z1hy8|iRx%gWdg!KV&IMMs!)j$$fSudu*h|s*3DqxgJ&u_K~{KI+1>PBv|5$wBfqC2 zfw~xLC~x86OiI|uMmS}q+1GA5qhF3x)lxyebUoEVqCQWA!^Z z;?a59CVQi?K}j5@0+ICs;B`k@OV&k4tIeIU>_qpVZ^$&2&Hh?r^GL#a4Vb6{onrRc zyF!T|3^bxz9@Ao29CF04D0@$&>hX~?Avz3$^7WhEWoU6)3xzUiYs&8b@P#8%N5D{$6 z9di=43}X({Yh4~-Ta)Xsj~U<8pE*E54+Gs~CbvAv050eAFOdy`@(of^VqknhmpSL| z8Eh%2P_RY$qoh8KQf7ZN32-5w7(i*7P^Ps8Mje4L#qfoqWp+K_M`hA(-;Qb_CLxCL zy4qV<-`#y7_Sx3}NBQmv%kj;Xl1#*GaEPHuN(h)2G9mkus!`^BCijKD}rHPL4yyWZc2EkVfB7Rfv z^|&L+{6RRB$0+z*ytVw0PL2RP^5swkD^WhkDZH_*csJO``}4Jle6X&Y8??Rc2p^V$ zfsjr&(EjA6A>2QiFlq{*mF>=6feVov1gQ^`)CHlQV}KGFVXa@;t0Mf|$pGQvAI#4C z!DByHOTp_9O=3TK3g&e-Lif&R(SBHFhlgZgmhbES!Pvno!1f^3X!VcT)z zD3Gu7{Am*`D&eooDeB(@9z`J=o*y~mJH=oYk;zCRI0~iX+HhH@@cB@ysli;(s5Lwb zmT7xI_I?P6o}1c@Us%U=yIRJ#CCwae#ey9f17IO0j2|Y4PVE2_)U-XwT_}Wxh1oj> zGWZ7C8GezqBb~NC?|T&F4=%_h?YIWMhN3RAJ)+ekvTRvB+Rsxp>}Lr-VZegnA~#0K78Gqs%8i>JF! z!Noh^Tp2i6EI$a!&|1<^wa93(ft$sfT5@y*DglX7{gWGTR(-U7A;seT6J8yn4R zi4c(nBhphD2v{Lx)xwk6Q%jph7>t=DErMKS_(}KCaqvZZMe(Dob2Wk)ew5O-M^I&D zHQEWWziq24TJ-Njks)1K_G`K*dryfJMTWH==H|DC23yMb3TUY;$a{yv{DQ{rL2~+= zGEYK3yo|(J#`D7{-x!B9S@KNko!wehV#6qZiR63#zhy-FW*3-IJ$zgpeysb>r>Lf= zW1c*i6%2%i5BIL~Ajy*SNl-h_rACz%Tno{pfQ zDNfajie{cPDn0$#MaXG4%Sse4}3(@=P%=XUip;KxuvEQR3Rg2c}5!d?wsp-Sw-hnuB zx!<{e`)>AZ09Uc_agl%)jpDxRqlW&I`T;}Nnd(0aQZgIhom#+&6(M!u+ ziG5N9=sYH;lrN1*G27=Tx;-J;3&P?U1Y4JOoU%Q>Zx8K)%^Fw^+Uk-oJ{^C*U@7-} z^e@1?V|qM5kPp>&>hq1WE#Q{@+qSL{c$ipU)K%46M_XG)8lAk=+)X!C9O$1@&DdVO zIaC*|@Xu&_spyUu70b#@Y_8}+OoBe_|JIl-SH4wx;*(YlX5v6XxD~kn>C&47d#(Oo zPhVGvwn07SL$JH(|L?O9kTa7dy`eOq$87cOw(Rgi80=Vk*q52PS%~We>0n|Y1ryL! zxhEkZ+v51(ZL-h10d8j>$N6!JMSOq|CP07W>UypO7S*5iFWCRM^`)&4xo01O=I%d@ z!ujezfx8Uxf4Z<8P27V9~CzJPB zb0iKxd;VU|;~oY78z&!Gcjedr_AU_|3V{tiRLn?%$|YwF&^a!B<8wG|gap&(D(PnMj)gqw#*wWa*1M&&5P{X2)FVh*x$6& zU7>2RPCR4VnBZr_NiLF#DwFG7WisMwwU_B13}arWbA=k&o?w}u*z{+UjT)A0cTOnA zkvzx*!)iy9;J(puq|&LroWBs4xlhflolF3w(mU)FR`5Bkr)-oQ4Z9=QjNke}*-wWrhjN9?PH4le_ zSR=c1X0BvGNl~$mnr=LE^Eb6zy3KO+Se3|}HLr`YiOJCwc!zR`1BMNpDpzU{llgg6 zXa#Xg29fD|2>fP$Tx(Gw`gOp6AUh8S9JKm7HOAra^3U}B7qQ4RyT?P8w5h|B4v~rD zVdFAYK{$l@daJee8Z+9LiT20gVjNI>^+vs6Lp`ugt=%CKd;@VrQ&OpPaJ2JR?x^q1 z0{xFdvP|tUkfV@_{H`6$@-+m-GiA3Kzg=zCrD@)1ydqnoGmCfIV2hnh zNyn4#UiKUi5)}~%n!#|XX#dPuz$cr*Azm^%-2U3;cC&xRW;$WcG&8d@F?cY!m6P19 zTz39`>&USe7Fz&D^8csg&I=6JADZo<{C@JQ8ta`X9m!6K$AvIIGM|RR%Ow>qPF(7=7354ZX29L zOr)pV*+1uA+=uwKv3k01P1@8bnRmYNmnHvP!N(@HHP8O;E*?ai89q4hKv0t{RK;?h z%|n4nw<*6vnKk)g=9|w}j8fh)a!T!L#F2hgq0FX}Rmu&ni|T+k6a;tU`)8$ylE1 zW0T*_>ZbdtPbm#nYL@SHW=CLT<0Dg}q?(k3+!1b7_KRh>Nf75Jh)f*u2)u>dUnz}` zZX@K)lcLll<(f6JE7=~0hZe?Z9ED`FW3Hnw%j$Oq<}cUhI_;W+^H5pm?` z+V$IK`0_0}h9UnCV_zK=*RyU31b26L2{aa5gL`m-y99^e?$WrsyF+jqcY?bIC%C&! z|L%SF&0A|`&6>aZ$m%0ib?TG)_TGrfVM1*F1m?**!Z#{o=BmR?}tFr11- zkmp(ZQzrn6R;gC2DW#@j=52`EZu1B4qCV)S44`I%)qd>Le?55api<9%S%$@Pym`h*(@NN5!)9QTh*?p!GS_O_ub(&LV+r6Zk^|Z~rq<{2x0z zA9&z%^Fr90z>_&a&)2hhYSR3zU!5E7x(l%m?z>OFz;@c;_;|wLxFs70 zN01CME=SN27<(k>2u_?#cy60!{Yp($J+EOoo;|_H_2XoRWHkOQsBp74zVz3Phs1u9LiLUbNp{vfTJ-FMl#&IKTxBHF54p-? zrXPe$T+KYd2aP|kC2A&K3M&BiD zcaK(hrQF@z?vX{n+OpqNWCAXR;)iKT_pwuOQkSOrc}GsVD&1I1^Gr>>8C%Le^HNRi zVN60c>G=dD{pzZRsZU2I6fo6Pfs@(2h>zm*<#iediVqtvPXd* zA%sR9n_sZQ@HywHs#2*g(ZWzc?8M&hf&WLk=WSy(5}$oB|L}0>{sPJhOtDW873Uq; zNAN%!6Ye~TOVN|Yv6p<@uN+EIWS>^ZL8)J9e-16NIJ^Ne{RL>=p+%eRr%vOyzUs9k zbjUnZo@5r6-vED4>IcM@T975FJByj&V^Gg8E=WnN%ksUr9u5i5e1`><oC#RxPR0C)z)MZpv#;s_!wRk8>2+8>nVD%WgoNF`gqxxq_N<5 zw)vi4Z({292R+)#?qbIeF6QS0+J^J(EgJCrlq7Gw?yqscw;E_?Dgx6i4hec#@F)F1rfo9x1NNbVMWBGbnVr#0)XbFSH z>k0iBHi(_N^c=GO@n@>q;xN@6OLCz25*1GUbi*5K&KV~5{ba5Kqkgn5Jo=ZC_YW>O zIx>Z|w&$xHA3hEPmG7GBOIca*AGKub-nXW(loZ(KIOzH+%GQU+nF+~LOt=-TX1j!` zU<~=CQ?uj!PO=j3G?5*>AqH-?c--^pX%<9rQ(`L64IQo=+wb-fI_^!@HoMd9bfb+` zfOchdMdy;9srxaeQ%Cu`i>dAyigoI3)>q!gQIeN&5Zv~ROcDV$22#7nW7v$N9hs@~ z+Tz{bt&Okaet#yHi0gNkphQhWX|=xG_eVN;ewF}+X19lnWv`+`?0vk{Kh4gW={jKE z%AXHN&UdJGb|;~D3?D&6T%0&!srMbv!PBf6Zoh|M0-iNae|}dFD)no1Go+p)@VLiEw3rg%$zj>$mg6PhmEdC8TqlfS9RYJJLS+bi>Z3AN zCI42{E15V7=d;=15+bYm3#nDq`Xuwf_7W|+rplUf;v&HBwN`20#z74Pac--_ox4TP zhmTGwhqMnT`9lLT7$y1or^I0KHFD3Klj`F(WWbE}xr?i)jH~bHaLd`S{2Y#Zf)%VA zGY!X|u^C`M!F|U)>E7P$egmFz?^i0*cuVhabM4f=S8aBDnmFZF~yA&sk5RFx5~&F z(JQ%78|Gm>bx77qcBtkF!FN|f+)IyI6ElQ&PVESN8hexr2-s$uL9h}*Ktr2g&6TTb z`X!}ghEHH5{dRfj?%_g0ibLgU|KX23Txu~b?5{{S*gY_s>HR298f#%q)X)X3Z}a1f za!RV@to4^Muf2`!ocmuaxSJ`zC#1KX`T#;+Yj_|ZJ6DKJ7A1DfoQ!IlHM`I}(*rg> z%xTZ}A>#QITvB4vjRqGT&t^%!TVHP-O*8~-VuIYPbih$?V-}}s^rmS1>(BTw#De`$ zr#Q&HqXqZdmc)P01)_;ao6|t1sc|&psV#Q|0OoaK5J4N7JCj@n?#|m*R{YRXM5Iy> zAYbOQ+>w3d)r#iiLA35-pr%YQCRu+QK|>96R5QAy zlwkfW_^BwTTaQz093!ik(#uVFa!j<=A3lm6Nq^uBDKb20s16OBAQQm~_TjAe#{{+nqQw5=mF8fvVJm~g!e0kwEq{H@)`<@DmpTH5sJ z@@o6@&NxlUK9tUZ58W10?px#+N^>Yq0@EX*PXD#M?VNXtD0!1?_H|voKYd!tRYqFu zLXWO{y?h}Fou8=O1^m4{MVZ$Du<0?&?TSA_%en`OO10%j*G+E{m&g3YAMtC(lqq#Xg9xM?nqm z|Bc+RH|a|j>+4_(2%nNkxUPg80ZE^jIDHF;#nEU~j3U^Wp~%mDd~xCMNk>0RM~lln z-sU7zM?57O39@$JmRNs7t#<|dUq#UDE5DE-O0NMv24}#HA;#8qO!mvlV8~vC!ld-r z2o@<6a6j*G%_*(%fdw#|lS;c8cs%ZL^#sH-#B{@wwmtgWi&|u0%ApWH&Yhuvtv*X- zqN?R14_x06Hmt`OFuyFoZ@g2m9jX%}y~SQbE5y*}91;zM*WsqAgs4?y!G>HH4-?g& zg-;1_K1kKDtT5!phX(9yqeLsVyTe=w;P*?n5|0wV`B;2TS`KBaM9@uX`*3^ZOPjA71?#`1JOw2Vock*!rd( zVZA_5UkKi|a1?!CDo@5hHd|+1$zOmk=FL-zriLRZ?G!#wMDH_nuQl~Lvhj5&EETS% zhKwq^nv|mSUk;|yt8yu1Jav3fxV70iK&2}vlT48s3-0^9sDzf?G)@oV^EcGTyKQEj zh+OkM+->m$5mNi#0eIB&iufk~E zth$_boE$gQijjQnaF3E`!ER2juo7&7*sIh;c@Z6>_<_yH{6aLv^*h1&RQD(dD`|{4 zdHFrhC9WVoSb|SDYV02|XoBF3?9cEBxj4N0zM!IVSinxdGI^&7l$nV&9!~xAo--32 zt?@NFd-G?YhuJY+BJCAzI@_rC+(NWMS;RIa%lHJl!Yy*C3|?yLXu8MQ#v5)dLAT8N z3rFRBjnFJY`N}%H1|b6AYa=XRmQ`LM10`e5VB7GZ0+Wq!4YM~`0$$(b zPLy$gfPlEUUZgECfJ!d!3p?ck!((0y}Jy7AXf zI@Q^o_|PEk?<4Z6MrM$*L#AGCN`Xt__vPWdd7oQTe&eNRXqESi4n;~xH$?GqbmOa{ zqxN^~$Be8`KPGWkO_9-Zh~yG;F3lHOfs_y$(4wN|_K{SPGpO*VkTWhRVa9Za(w|^R zF^>nk1`GF-RZ2p4>>I^I${B^@qlA)VX#U6ZaKl0R zLLFr(PK}X*bH>(Hi443H#nn&Z0WX&LHn&r>jt<}Skk7iizb4{QOXjU;Pw4h$4~AAC2?mkI2ic#vwlC%4k3|B`Vb)khy6!1m>bsG5>FSk6Z6$Ir;| zAz@xQ(swJi3Q3B_?Y-OAFDJn@SV73Vql}cdrEaVCjfuO5hpDZe2dQ(~KUy9ysqv#T zr47I+R9L^GFA>(gz{n_Ae5;}4Mn{CV9aw@`GOp^+!R*1z6Bq%G>Q6lN-g z|8eB~9Il|uN1^<{E11r|(=H$QFC~g+-wKoQ)c-ZiEyHQq;9?Y(;aPwPMJkH67pM#z;8r}yj{!k^(P&Hwj|5#8`*Wef>YrMxy$N1Uxc#&CJ`hrKZ#JZ~ zMs~I?(8+jSi)B2Ni~fm=_a!!iymhX03?_4IY{raJ9zCo~tcN+s<@p{35sNz7J>OlN z8ag(Zb?{bz`zL=N_oAv*Nd>dx6;zi=54`?NhA~3qSWjJlv1xWcIwoo4nRN9#mAOIM zm)Mv1cci=6(l}gf>UZ)R9F0<%sCLN@#6NmOY#g8J`hbIV3w=|aGi29{cS7S#^DU*v z)01$i{j0f^Lt6RIHDyL(dlxPHrxAUm>kY%VP3{9Vu?-weZOaDy9JPKP{=E zpOvoH<7;xV-Ea)M8Qx&vps&p9JNvqG-SOo1fJU06`OD(xpRFN8i`bI#s!uH}K_YGOnA#O5&xppjmyMB~z&iRg+B!niJ)BfYKF0Tla<8s_gC+mU35RJ0>(-16L?KZFcfK z%(-q{93Em7CcVGuJNJ*3mp7eg>lck@F0zagc#sc*BNlXY><*K|dmG!JU+?)d55$5- z!$B|C#$q(rp*QPYRL)v|f*41U-@Fcq!oUPOmdahtG3)&cng{6=eruD-F>#6dNRG5cW;*;Hj*%FTr#U9R zjxZMaT0@DP#2!nVV&_L*O#k^DBP)os&*_TfR_W*~iW(GW!TA-T-gv*)-Q1|GTK#T) zy+3i9d>6aYg^A$o2r6`Dqworzix#Qb0N~~g_yR@#LAF8;qcLHp)-C8?l zXi0Fa{hETjV2YctH|*ffQ?EV*alfyxqt*V_le;JC2ij~O19hn(y`Q|+rBoCjuvh?{ zLqr}57eX>*N*-Su0~5!-t34#efA?}{y^npq=~v5C?_jce#@PBme!UF$pKp$2R(Avtm?OMAcmB$1-xVXNsxpgNpUVum_{YYE(8N$7i#saQ!^C*TtbeH z>na@Y*#B1XWt%VvSq)<{Wvi;X5>2%$i#76Cb$1aWik4kO9g?lXz)7VUvEKj$Xv<6L)g5q?dYh?H0y_5x^^6C+Ucyvhl-0;_K!sEg#QVg=q#R*r zgn1(FGvPNXB)M_yOiZXB=hRD0sBoLh1hK|`M7qvYQoz*@tYtSAvmO)f@@5eX4rr%^dpqXO} zD#Y9)S4Ao#NmX-?7nqg$25VDn%0#DhVBi$T=FP{U^y^9H@_L`CE$c<1CmY(QH_m+T zsPA0pL(u2r?Y}K9S7Rf8>k|n{?lf$QXRAA00M!--$6*u=Dy6(AKc0a!SX+av^7CiD z(Y@s_+EuYN);2I-7P+{T6sNZE4U-;d09vQ@v34r~X2>w7P;+s;fq3;*$oh>gS2+5_ zgxQyKdG(y?=tGaRWGg;oR5g zHcfaR%L9=Z_z z?-A+%rLMSl`3cAtf=A{rfqR%9O zfD**ExHHWa9%dCtPH17};OrIqSm>KS!%k%H=J$t*HS0HmJeHuv6DqZoY1TgZECf^o zbfXo8+JL;mf%r~xfRBG1XK3u!RwG920h+b=XQ4cW8-HP?57wPK?{GFgwjj}6G*@yh zqxypIZDV;YjZ-pQ<||8g;1^DBIAx6xECt0WX7)S+o*~?1N#jwKdRrHxqi+80!FQ7TBvWj0aI1z76+AWuiz~5JMF~26U8UX_iCF}!zB6QBy-0$ z@kE+U#_AngG!!|mLKFxZ5^ktz$!JPOLE-K_$v9t4?B7j$sn(FgsY@HQN8u8&MIK8o zq6ZPPz;0a~BxUn-WzTB;ZeImhXTEJr2V8V;El_r$szdBm$jI;COuLMP2wV8f@lf$k zB>>&Ns|TBd|F!~PAOAlF;s3Vj3;Qo0|35DaPTl^$H(z-{Jo`k^oXN3@H@F}!qO;O{ z>VKT~cQ9#IS~vE8#S4@jLv1f14csIb3eA0MhJK)v0sX1`Q>Hh;2%lp`rH?5u8YcGObtQ#q%)=A3jk&QsSO+9Ok8a**W2;~VksWck? zL`pg{3lj_pG;l$`dSTTgu1!~n5XgNPB#BJ>yKjf`^c%fyxtfvT3(p2ANcO4xa{RPv z)P_Pz+SeQoYl%kwtO)MYh-c5!~yv#Sv8%wGjsrKyCq?iFnYz( z36lc@ls5H!?v@1oyyzFy9p5;%07jCcW8d%c_6=X(?W*~{Xq|q83Z9Y4o_`0WO&yxl zr)iY-V^GN&D4+wjzx3%Ne1SE%!V{2X}D;VD%s zxu?@lbKTjppVXXe4UFM~joZF1WEoU0%;24SFz={*#swsg5gl-T9!Ap>Y*hzbEZeXw zd1h+uk>-+Fr+O!iB@1-b-A(jig)bA6vaGBI$_b=X-{0Pjcf@W4n>1@cX@>M;7>gBF zcC`FCxof%cS0`jn9DLdr-|V^=JGic+qyHJ!4hK=5xx3;qqxrKz{rm4QbU7V+2tM@AcP4E&;y! z0$|z9@e%U<;(>&XQ})d2f-v7#qm;^~TC_!Ug-}9vP5S=mgiFe#Bm@8yF#^DtBx;VA zo;IZ%Vk;QWUeNs0&{aFRk-u(((1XJ>>9+?j(A2sP2c6nZ9r(b!abGw%#9XibE(b4|+kaRk z;7gn$F#7BcBP;dQ8x&mfOfnmuMAK?ud7Cz@fMtdrT~WM-&%}!txek|368~De+SLrY z;(v}=FesMn(YLQnG`#K z=@pxGc1%W4+;C6A54R}pMp=IC$B!!H{+_~=04Zj_>39G4i9e1-65io-OOdXcv&E3njm%*am&fJ50$0ZA z(+N_;4rlwO#vCPwtztEP-Hc%!JJ3Jhme*A5`I%{uJlvs)Fv>EfPcnoi+OD~Qi$=bC z&aMiw`^{<+|4E6N#G+Gt!k_UutPvCjvyn&5&Mwy2Q5xdqEv&>$o-a1X_`IM|6Ym*$ zbDpQ%vv~N+Zxajr#CH)OJcMVzM?+>TANG^Aqh+o>6ZCoeE-Du82+(aW`VhQUhC`Fe zrtw;A5l(I^=YQxXtsshEV#wn8T3HHHR$lozQ9hsKV8Wz zvMRq1o@+3sDjfC!*^bqfwkV08km2{W3;+cMeGVscQ_aNV`P>NruzFoMNN6NN#s@f_ zU!Q54z4r+PqW&7EvvGp-4s+1mJlGom?PIax=$IHVW*#2W2ndZ)xR#=y8BP)h81~jZ zkgo1=&*;kGWEfPe4@PS?yud;S?WQY;jM(2*dIwL`2C-(VOedSH11oK0Rh`$m-rzn} zMl|EkZmvYvj}qX?^Rn{T(5k6rMTSX9Njh#$49bC@f6ecHo%fWn^bY;HHFb(%|<;nkHh8k4$W`8&)R`E1KYx@ntqLR6srcU4$3c!&G*?I4||w9)A>{h z6=}GVVP))xR47A94yVf_@cPP{9a6}tA9#L$dh!g<^lwF}gpiR@N+(-=FN4TD13&#_ zC>gM6x)rzyAAr^);pL*lfjh|yR94M7<9FR?#b6Yrt7T_-(<+s49dg*>CBzx1aSK^qgGg1p`@*3Jzs#R9*)j@4FBjt3esy(e`cnUE9p+owe%@?;ZQVMFWP z9f^DQ<9REUJZkpTOfK%-B4Z^9ImDiBn3hbPwQ=D`n_o_n$5} z4Wwr?tbL3J5`ou+i*-6p?gMP!*QWA^3qgm!*U6OH&7&!fF zZa(*wssIC{0>qD6KcCf4P66PWPdLb_SoI$eujLPdiz^&GNI|7T?KlBlN~(U>bGg&i zFQh)O2RC(Y4r{7YQ{k{86m|FyXL>%W7hY=W=s!R&y>!()!%&wG!Ve4OouB$kt_sPz zUC&*qURZBO#rhL%e-^o5!hK25UJ?s!aF34WyKR%lNJeB&r;19QWJ=i@B z_5i_!%bNbaSNodW++08b?HaANAMbq~3iyWon0Hk;x7h*E@{`uFK!sxRpPSHEXo{d&?P?=D%pk4zm=z!J$6M z(vt-FBXMyzL;u|y#xWbPvLDY-#d05%3Q1VjFq;O~-Vr3>VG=!xZ~8e{y6=_@tv;)#39Ym9uwe~R2Z;TZ(v7lO3(Q~?gg(k^GZ z=NQGiyApPqP~%l`$hTV&^_2JY(Fha};%-W{L}YU1fk4F86K*?6T6r)Id2Bhetnvv7 zw^sWXE|?d_E<;rh&WlDLyB}(NVV(>A>o=j9+j|sjy3iK#2I&Zwg7Oh&70icgoXRa} z7eOrwS5KVU`)kysWMiIxA*LU^i$F3F9KUVMnOLFB5Na`Aye_}=9sOagJo|YjrC%Ug=735_Cr>dji7nq zXJs=s<#{P{O*bVsd*ON&Lo~3agJdPR+HFf;WpTYMYzv6kAaXReV2#JDkK6g3eWNjH z!Mb;>__xL^)@As5n*4 z(a|-;Y;wqW92~X_iV5eKplC3Hv~Nzrez38y)N~mMA+e8EtUg~V+XVa5^Dd2%uK1d$ zo_xGrC^V+H&$MrhuKHnzY(%GF<9&*i z3!WR^ls3Nw84Et|41$}fb~24Q1s_b*H={NX_gDKYSM>l=in zRZzs1gs5PFS^{z;f|sEq=_G{PKt!5{k%xB>=kEIi_a>*(9-RIFt~_dl9IL~#9X08A zt=h8tT{I zSYt3jy2|P7YwOr(NjjnHmcS?Tk8jwd`+T7eX|9B5l1H-lW1d^)8s*or9_xEaUVkSv% z5cVos0p+{;zDVZ`YSf4QZ>wUOam8Ec+M1feVC{1;(bSsxft|X*_gGRQW<>~I6lc7m z!S9!bay?0tljq5mi_c?;X#x=S7}Tjz&TN z={z`pz^sS3L$IpHC<^AQpX*lzj1SDBO%;q02*f9Wvhd$A z_qHZSkSTq(kSs@J^Jb<#_ZPwryF(}r97yHJSd&1QPVA)MNYdaIe{2bmrCt4LOpCba znX^V*>%tfz*Y8XE!oDytR?X?IWb za+(EROEo3DWY9IR9?WA-JDXBO8*OU*Q|T+J3(gwKCrTo=2Y}rV8>hr?{z-3Ts})~P zj$~XzI0@AUfF+3Hv)tf6-7Lio;H-N7Ylnz>Ulkw zYQ6v&h&X%?L(0du^Dg%Xq$7b(nPLr1U%T;G^JmWSGvDP7cZnbb;C#LF!r35mNJp>Z zU5{a?2dLwA`hKY7?RfVr*`b47F8pz4 zN^1+A^$#?S^qso9q^}0@?{RedwS~FTdQA|0Y%z)m!zMmsMtUY;nVz)@RgM%aXMWU@ z31M6TU&ClxsMZ%${acN#w$^c}G7-YsvF~*2QQD-Xfbzm09&1$FAl62TD1@GiuAB3Q zeI^*MQ8eY7pq;_-j#lhH0oPz~iXqG;^dD;Az|y)5E?(b+-`h~8xK+t`lDjhXZ*xqq zvY;VM0A|@bt8`ILnX_LAH`*UGK*3k|2muAzZ`c&&2s;ukoO(mfPSgqvS`ntbUqsXJ z^Z9TIsM5J?!xz@6m+gRf6x6afuUAuAeVdQ&^*bP7j)dnt2C)b+;yQmx4}2E6zS?5r zNIq;q)26hjr`Bk~WBC?DF)&%nv6Xo?-QAiN1x?Z(!J{_FB^yidq!3DKY|*2-R7uJ?O> zdk#L?--ed~tI*B;l(yI2KRrhVfaAT*aBFnWh_VGSkcgSpP|}kF2Vwj~fOcvyJNA9D zy}Tc~r_L{M<~FP{v!6*%m6_e* zdTCxk_gR_B-&6Q++fPlRb{Y{yjz-Dx95P~mVgmNPHQ{_5wHAefZ(Ot=KK9^UAQc79Z4yto0 zaHL+e8@F)Xw6&u*GjzOo!fZD$e%GnBlUe;9v9Wjt9xk**Va4FyHqp^KywHuO+$9*o{DY ze}gAuoWde&a~Tz|RZPC5#C;mmr}Q()!AV^$c(yTdMhb<7uQMT;7dwLM1N(P78VOat z)Ta^W1x~gbx^L9JpB`^D2Aqw%S+l%euNW^W$^U)}Ikm}GYw-s)kfL}6@Icyfbo6g0 zT@}!$)%BbAzT!sF+-4~WVLNiPP^1l>^d+~M8QJ~3g|fO9CR_VS!;TE~12=r?^P%Rh+v+V}pf8QdkD6kL&3@7e4VkgK zEBfuUbsia-_4rhLoXW+7iU@+^u=tgM{+ zc@e!D3Z^Tr$$an*B8u_{9@<$2Pp0XPgmqD*C#Rj(Rxz-Lg~t3=5nP<+?zfC zEE-y`uxFl{g|LNc>>H=R2l$|_O?@0}1?@tW<-Iw4k9~ zu?odcEC0E$S0=@ze+b67!9EQ{YkrSy<}U0k{PkF9l#^GaQ6p{I>h{V3-H8L3xoM_0!I)6JP-l>>mqi6J6H1$rpYcqohKF4D zydW^rVQbd2VA4qVT?dDxda16AOC(QE1E{eve`gJFHwknODtesQZ|PXZir!7V!088b zxVxeiQ}XOM`C^QU^x%);Wv4*g#o086YS5^GE8*j8uyh7{ozdY&>u72D(DF~=ABUXR zM2x5?a{a?;zgFd0YG8adJ*q?9cHhZD+>9i~;S5v_Ohkx^H~?*x3WewskzvFH;GFIA zTTGSb!;V~#R61JczTm}+ty1&YzZV>&FhBas-{1|Q`+Mh;AdKV}AM7@^`l^jiP+S#w zS2Dkj4ERM5OR=C^%fi<`biXovl@%$my(w-~J=G^K+)+w|&Ir)W_Q5bKltrD4RK4h( zW6pNmq)EZu*P{AEMHU2o%p4?My(${-n>h>$Hd!T2)e+@-XHS@QT`Y9^6HtEtaXM)Tkh1sb@}|BbvhBhaBlW@}5Ya zEe{+LNG;_=BA3G;aNUuB%kc!E@6zJiX}{JI@Q}k;qKSnu$VrR4iZu;u2)J6fHRqpoKODh&t&cN_Z#9>9#M0TMxeApoo>?oIAZ+aZ*BKzA0Ynyrf zKAo4I+Iv8I>gPQXdK}^?iu%-y)=z-dlQ!$69BF;_(c4e0!9;0O(`A%4VbHwZ`r(WP z*n}mdMOL(!;|C(H%?*ZM`e!1JA*N-}Tb=~7*}9JA=*>WXjb%kK6rF;~P>Yk%^c#M{ z5X^9YG71;Pk-W_1|0)z&sM{o>~7Fu>(hTvx0h>R$XQB&yz5|m|U%__{C5-S5mJ4 zB|Y63BpWb!JP>*W5iki;NV!{Gap_y}$`l{1+I8H_P%lk95F z!fAxz8xTW<0%b>?02zsAAKiWJF)c8Cu~Hy?*1b|i+j+BaaDFMX1R zPZwQFQ3Qq=su3$c6g-hL&QSyshzB}+O^OI;*?NC0#*8%m9IVP~OD_@!@x$HDF8=cj z$B`Fhc#7Y>u8-f#Ms6?Kkf%AdZ}IvaBQX}G-tiAzB!l~5Z%zhLQFd@dlGes%3wgnc1IZi&@9{qB{GR13*i$Ai8#g(~oHt}}&4u$i} z4i`3lzLrNRv?q?1v;kEcw#Mo-naA^#>5&|DKm<0eq%&M0Am|gEqrd;bZV!7n-R$KS zm6s?9#v_}>==>uBDL;LhmhGFjc0SyK;s`@Z;H^NJ;ovy4XzcFVU@rXNUTZB+@>Gn& zxa_D>5429W%;b300tCJq7Ph=3xpX4uS-qU` zg7e;%WKx3YN8N+Z%e`1ZI!B6x^XrIxg_a_^**qsmG4&F?Sfg132J$b-@1Pz5ZZ;d_ zYzib#qLpIf%^1NUH0g8!r?GC{tpvMaNP%8Re%p42eT8i5VdcdDtI)dO8|JgSB{T+U zRuA~ibe&iCM6n0*juv`4<%BPDi*&s+DTZAG&aW|Px+breSTr+6gdNz0%!i!8QSQlX zj*U`I(PylevDo@q|BQUk#_S6xUPNwR5k}uy{xOt`hYv_uy72HkG_l1r35)q#S+<7* zCS`HDeaAw!mT#^h2XRwvia?uBj!Nr}yaF$>LWKon(b3j+66}JXxh@M@uBqJA#^+ut zqI|_;>akMolcgD=RVb$weCH+qGPeMlk^SCWBlZkubYO6k4bZfW$;p7+ThevK0!*5m ze9LPgrf~RL?->yLNFuo?zMz@Ar!DXzTsG4ewCOFAI)|Tz1!9SpT z53I8}`mqvibhq#Nb`BzIlyIAj-{UAEBh}99PC3Uw%t+iCKIRx%oSDYCp-iZRnt8Pa zz~4lEPqPg_qHB?7O53nIFcn@yG1hq_@Pt*sHaP-MYRK2L7fosJ18zh*{n+-ZV6ZIu zX8iuF#dmU3k5#Ik#sT}o;e@4iaAO0-4cNhSj^4i!LE%Wv!f{pF>8B3}lE1e~kvYyb za8aJnsu~eo=id-4_8ajmdILPe%x`YyyI|emWqmqYEBJ`F#u*a8f%m0Q2v5?~VBS)f z_pj8fwQgSXFHB#;pXV$}|J7Zf58dk9=mXIHoKikD3)DCXeyZ`1de|9Hu3XB<&>4S9 zGk|}4d(%eyf{V(^%4%7&$45LgG&I3Y3g$7v`Uh~mwfw(<*9E(f|0e+Ze?YT=gU|Or z4|Cm2Oibp4M``}y0`RPFYC5~i45+_~m~lKgTwh*ZmXu^x%FvdSO!*4FyjJY{z0R%< zMDEg(0U+eg5==j`JU?F`jN%31{_)SHv$C>UT}~7Y404Uo{tYKDEh+h7eF9$FHX4Wf z_Yt}iB0_^kH~jm52udJ4mBCT2F!*K0k^VWo<(_(Qpi$}42j(c@Lx%7_=>S90!K5UV z|E5ZS`p?eH6~zBM=!Xx!IWY;z2@(FOUyGIBPn-3}BiPVTj_b&&MJ_^DPyH^wxOlgx zRfS!t4(E^U-m2I87?w|YcqB;R8?~5*?%-M3YLyM&Wu&YzHjGRvlw)nf$36Az|A~3Fwybexk$y-eLG!0w;-jY zLCWWQHHNZl^86aDbR_vSyPk?ilFh{Bezu%yM`UU1Cg{F?yR@&k0%Nw?lAf7)_(h_> z^1X`J^ZKGvw`K!m0={tnKNmJT5iscTHR+}Vc^n3uw45K{sEgCuthDnt-5oh^uyg_p ztQ%O_jhxkXQmS4ttBw7Zf!c1Ht+uta3`#lG3x-yIfD_e9Ze%0Kv1^T1!|y{(OA|9{ ze*%bF&h1t_$c=6$cT1;IHAvrwe`tDQfZN%yJ`XRKvqifK3m53JZoEL3w-%et_pyXC zY3FMMxqStRf$*WVPlz9%$L8$4zC(h2_mDh^*in~eIssLI+WmT5c|TdxWC#9&C`chO zdX;6YH(r|rd>$Xul|1W<&(cYodpR72H-F}C{q?JH<=0%ZJScZkMcT=q8GX)MO{sk- z!25?Yhd5SWezifT^Y0$c=?+$fZMK&`fky_3+NJGUA{Te5k}oZv~_`l+%vIuU#C&I4j|8ZG@n4_jA+n!-&bLrYQ$%+31i&2%m+ ze6eA%nN773GHzgOU)tVE8*k^8GFD{i)Y3_t{WGk$m@&9Zv-P3D!%_=6&A@vNNb05f z>qd^T@fM8p^?c~1(gEbuc9;3c{AQTPHu*hgu}X$d%;$M6udUI09`xO=%P2$k^n~p1 z@wwjiUX$aC&>GV)wXNR%X(7G$?0Sj*ICI7HG67~bXlT%FF2-l=p~x!Iu~W*QQFU0f zk{^thlo}cuKRm$G{M$bR{Ac6?VNPcF_9y6CGCQ^YxJ$ew#OoCK&xuY8b^`Q3K{$bq z3~L-WvY@~Mp}!Ir)g7p-`V@A%F*rmZm!%H<&r9S)*zt9nRIGxftfh7GIx_p)75&2o zo##lA^8c%^w+yRmS-M7XcUyRHf-c-GIKhJlcMTHUT^H`|?u0)WsRRBZ3;%x;%!FZ;Ol zm*?3jFGmyRWG_>S_!Kt?o6cadNvyZ|tMVV&Cq%86?mGRm<$5m;pm)l`?vn}*qql6G zSVziXLiOz@okSuod;P}gA1Xhz)dGvmu68Brbk^nnJ6LF1oRz(&^zE7dEH3k?^o^Od z&JR0KL7EDHxxEnbSpxIiHn8NPy{)-kK~BhizHV^Oj-7p;JO1+0zNDoJW^Pz)5!a~j zUHNnz)O{YIsMB(`g`b>mSo!;Hy~l+X*yyXvG9WsK-~b8rIOFOsW!7?NV_C34jQw)% zf7ssfb#t2cM^M!9nbjR23cQe{TRlDOD`(A`PNy}^9Mu=|XKOcx2m3Zn^OEG`zPv_r zN0Os}ZV?h^8LA0!3ffZQ|2hTLFOS3OMvmFsEG`P`@-s^T5Ciwl_(rjhTd`QKE;pDn zP?Pw4ftq%Oyo3K43+Z>BVp}C{{$G%GzB>Qq%g?uBPsiW&n_uOd>U%Cw7H;Q#_#NXo zTWRZCf6&lzv@v@fd(kB5Ut;y_Tk?wu{r{Gv|H!`ok*I%Jq5h9wMgg!wWJCn!UpZ@H zbZutnZ~oF7)Z}(hLrg+3!(q!R_E77_MCu>$ErCyfN2KmbT4;Dbw&n8~9baC^hj6)qZ1CXTO2uHfq0x!AUs)XWbqMgOWhBp=-g z_~XZ(7Ok3_tI+<+O2{ZYaXILw+hAyk}jo;-NgwJyVrSEN!5qy?G9Qk4q!zVnB_@cF-ZG{zhj z=zBuiaz{&l7jJ2V(rhgb=NO6hL0Z|@VnEBCK8Lv*!*}VoDq5eMoGoN0D42sf^$d)l zzaD!!6O$EI-!fNg?cMG0FxV(qD%)t%d{yoe=I@EJJI}4GFUPrk^~K}5P~cSfT1#6? z(G$v0cGXp7cF2A-z@(XAPO85o81!qRU9KNOlO#{~uz+WD4WxenyENwM>~t-^y{^X7 zBn(ZBot5o4Yl)$3pTp`nYYhfvSZQqZ&)z5Xhj9^s%b23H(9TzFd-wz{;|tkLj*4S7 zI=?IHT>-m91+YTtU4>+21e_swj<#O-~&yebb_~ zH^D8uzbp=}2(*EI6=K8=^wlxO2@18n8!O2mC&5i2AfS|kdueEDF}HGDTV%mW4|(5~ zqty}zAcEg#C8sIo?Gq6txFNhT;%kgm9SMuM{_eo-xR->AE$EAsC}Al2hv8?u5=pJC zO}m{1VrYE4s-uJBVa_6h<&HDmII_3k^uj1A2mPDl`kVzEta#Olu0m_95hm6WRiMJ) z4oGM6{zkb@PH1U45C8(5Zi3J{vX(oXOA5qaZ2in0lDiSv$|{c;_$7{Jx`x>|q)N7V z5~I-;+wXBcsJ>7Y!1?8(_qv?&n&+f`H{i-h*Ac)QtiU;Sa(IV??P_R#{1V`uBp0Hz zVqh~p0nMquy~f_|Gm*9OJPWFdOEGpPK#i|(k4V3r#ZTNt;w%eJ7ToQ3zY3dmfN5&4 zOYwWVt-fi5KSpFk5G_qJHI#Brg9D!}ff}P2MA#cb;)`+n1isrk1@-HW5F4w#w>90D z6`g5zGLODsvVfi!xPB+kSr*Q~WFtAu(3#JqU6>P=V7SDL2_r2K@wc+rgppOlQbOG~ zWu4Mh>WtXaNlkIN!b(BpZ*4um43hA)h4%IRrb?}*?yn%v%iOw7o8x7;S7+$8*xwqE zD1KET{m}>53ACVGw-MFklL`CdBTQ(eA(pHhN+w{I^W5ExU z_}OhA0K`BFaQ198e0qX;*YLM=tt2>`TZAZ*6o)9C1dK{$z7I&$?V)GboL3V3Y%|jn zah(`%drL;u;YoVB9T3FTO&M-YF_TfxH}|IfDnEY-l!xq??Iocg+tHdOaPGPMtm}+F zeeM{GJ)Ps7D!9hBEl>HV`i9?OqcKzZV`?bMkqehfK0EmN?n#ifv$bi&b*wJ3g4^{{ zQ)CHD7lUwg^s8d#j)#SReU(2`zx?hdIT$e)O^ZxlxLT1`1R9Br-6q7qLWfCGqwU-r zUy%Dj*V)4F9mJ>RISj<@v`Qa*E*Grs_zLviP#<|U3?u`b*Xs+qu7iV3Y<_|a9bcp{ z7k6QuS0|rGk9;CNh=r3jwHS1TrgrXaoQ_GLfF)HLT!56v@?ZqVg6OpEC%C4cTC4*% z<_r=DM*eWLx=bGzCu8smSz^piBAwdEB}(eVU}-s?&KEdX-{`KY6XoEW^izm55hKEX zpIXJ<2^Y?bU+vub#C-B@{2T4oNG^1yOJ0dc&DZN(G;22Q`)*nb2yDca(_B{PYGN}u z{cN2-vkRTAT>*%G@UU-h1t{@E0gio-SXKW}P?h*Z@mqK)H>wO6Bip>uu%`_fs}c)ZSiSBS<)p!UD*2~k)E$tj zrma-WDi$D(i*;@OYg19ou3QK^I7DCt(wIqy%x}!@qW&W{2U=kiyxHyv`Rvh`T}ZZ* zou2pTvw3TNdUCR2=I=_@Bc#ayckLavp;8~P*+KHmo<$izU7gVeB0yA2mMs)#2cw>{ zCMv_JkMuSY3q^KYPWR^^Fm$~JR3gnLGzNPD0swA0JAH%Dr;O71Tx~HJp^ydj;7u2S z5CNmu#f5;FT<2DKD#iqujd#kJJYst?Pclm7i|vS9xL4?$%Nz^647FU}8K0ZF_WDBo zgA_{W5tT6NBrqhT2K8KD<7Vu+ov=)!Y`}xx3;VDiWC8iO8vJH?LGfEM1%>i>mCc=J zf4VA(Er0QXtA|-dY2R20IT~=GBl1vcqan6##*U;3%w)U2|3%`oS*!Zn4 zu)z*T3S#wiur|Co_<`z{G<$eql;-SdJv#I9aIiK!ad^!3q)`d*h5u1w;;7(st(C{Z zE}Q+mvG@3R64S=r-L*79g%Ml>R9%Wl>BR05T1xLaxTb@sd5dX%`NegWFKCSBSAeAG z(W5UqaamQe4jo^ce?ReR0JQ^PW~258D+Wroy@LNp(S9Znep}LevW!@}ydjB0M;_Wx zF6_{J4tIt9RQxsrlXa=nr%|S)(au9 zNFNHRArrS=Gd80A+TD$c9#TY_tGCq7-|AMG_}Wdeq!J@BtVf`y4dG*-Xf-@9Zrs;W zC#-$k+=`Jk*v(u?-=0n@I0OxSVhS3Bj9}F2q-<~WYdUTF;}c#HK3Ef2eLJ?+Ma=o1 z@s27Lm_;U>nGf#o(vyyc}0Vmz^A71 z+w@ZCd$e16TVq^`Y5kjgT~b=E#rGnS65R1rJ43tOUmd;^D7CDGSEcNzVd@l^^dA@E zpyx-OxYBfUm2FCJD}L(e&g$2)bjAlC>1%4v*EuEZ{NER z1MDVsG2~BKkpU8##`jTS*-vlN8o8-evcHoup{f3uFpmg5-$Kri2QHgoAeZFS6y&l^ zt5stoYQyD){N`z59l5?^${#1Z#g3;cjDq(_w&2ChI^3x@|<9Ye^ zPW}qP;|;|Dqgj-a1KeRN!dA@}*sU{b33aJ9i@0GT#PYJyu>I8rI8zHpYV;O-hz zv62@HGc~6DAmI#F{JnOq72Tqzat>c`erPuPZEdB_U|#Fcg<9K(|3XvxI~VVVY7 zA81S@Y1{-rijq22!8-iWN0APo*7CwMfjqgM;ACB`cY-oNW(niLTYzUhv{XvyCUCEWy({ZF z-$tIIy(trKYKVoLQj)K9uI{Txds-gd!ku8oe*80mI+lF8AM(oJ@5K?%XlL4K%#Zff zaN%=DMd3_E!LWsV*=EK1n?I@FJ&p4?^@NWN3Yec`I(HMhhV$u;^zuqqNgXgRCv-2K`HWCg z>W$^j-IAd41wu6Wc?QvLtGr~!eLE|#*)_lCWl`Yf{D~bE93u@3?XRiw|I)n3TPA`4 z;#%hK-~nlY20Z<*@bD=J1C51)#KZpAUx63>_rd?Isr~o0|Nf7V?>}AqzdV%wzaH{w z2m|S8&y%!$y?!Ljq9%wUJbtke{!&ATHq7`0{7yiScEp;Awf)S3rcT zwUedm&Rg-HBcMn}`NxzFPeJ7UU-RpquK%^f{*R{paX+Nz4NcN{@xKQLxGDU%3FP{Q z12>0%$NAN;AL2K=F5cFBweim){9UhuIy@tCvK%Uxe>xOz|GR{Ae^uMRH;(_`ruf%? zpO*K>3e$ec1(uch@6-UAhjFBR&>5I@)mXQy=Tpb+`NoF4+(nfhU=1k#)`<@&doSGa zN3x{CdOtzs(8}nIm&0Y~*FVOiwLc0fEO!~ot!5bIfJto0rT;r4fN0>^<@90whvDNg zzfO-pgSCxmL6&P|k-9%AVS&%wuup*L;eihG@z2%3m&f+jiTo0cj?EKjxVH9uLO@o& zn6H)DuGiecd+Ksva(6ED|7dQR0uwJz+Ied+zu-FZY*bYF@0{o8$0br#8f$gAEcU@<`$bL#d{CpO)W5R^ zR`qEsIbB2T-9?YF(c7^J`d@^^Dn6#R-qyeSc=2=2>azzcEbfuyo*&mI5F>`VMSS$u zS8fYl1R9*I$jC{YY&Oq(j18IDdn&vx3f2vK%xn-*0M>|PvA|U~#{i&Iddm%F#Jirv zO28|Dn2izlmP-DE$AG0%V8I2i0L^J&cbkog>Dk7q@AyK*_9j4l_n*xwhK>rx!iej& z+n}=bI(@ZY&(=^Ir>gRDmI1oJ?GYC#ZIz$4Gy_v4nd<}5=u zacq~zIqzS*jZ}d%_0MIl_=ikCBv16u%N4XNs?8z}1jVgiK*%$-x@KlLSKyxqv^`@@Njo>mCD8tjyLVGlSsqVzcGlyN zC!=>$Yf-rC>K{qRT|%qfoxSCUyzeb7m`0;s3hN=B{7dZ*e(qBebsC2U zN0wa0fd?-aG~5(S+FxChym*{kXSb$UJFQ?bIgbI4%`fG|uzXb6&j7W28P~zt=J6~1|yPxpf_P?VtaH325ZW+ zQ^XLRzqipVmgY$tQo zQiy)Y6?r4Oz)8*K>tOcwQS|%^^9R-%77)M!BnH1nq+q>nE+uUOuvf881C$_iuW;Kv+CWak0PZn+-5E$S!wcG>h?cUSi1PPg4e~&@$M!y{AM$LJM+GwnU|sCW$_JPv=nYhT^h9M)cPyVW%^R2tPou~dS8PVpL zBcbjh?&hnmZb~!+cz`M5{qoZL_wNJ9z{x-K%kH)ch669J4^L0?;V9CxS8MEdI$l)< z;}8blas$>>KHxhG5G-qQaCG*%#;9_1weNf~`UL@jK}2U)-3!})%AOJa=@K7bL!5lH zV?&h|=zC{};CXBK4&iwVQV_7^Uext2CV|IDx-Axed;99@Dh71Fhu69{_Wkf|Q>K5Z zENw2VU3KTGx~e++n@(3-hmqFu`6kWMhdj{%bNqryV}q_9gZTwX_#erj8au#CbGZ29 zd22vCyyqVUi0Z}5|AqaN-ntxcCG9^N>&ohEZ%3q6`7r^?&@trvY+*kd_PJIrq2L-5 zV*qlPwRjQD6b_}InVGS-x9{xi+{V{vxlwMx9LG85ds= z@B$MkTi9Ek?h)T7PPc!N!U*_6erM>DkLd8K(_uUoNT+p=FOaYz~RIyq#DO?Yf3x zHJ!ZNLd;qQNcDwe8OtRUd_r|Rn_N%!U`u@q(Aa z-P+m;Cev+H6>27S67X(X6`Z`fUgY*_YA@qu{Ou87s&1hqspUR?`}61I`N8-~r>H-? zIerQvJ)uK{ir^E-;hp6K8>{v_@1-*1n_f2uGasiw<4zi!8F2vvZM^|@IS%@+Ok;xx zba|Yvsne2vdfX{#;!STNnm5o%y!s(ThUP zT31{2tfuMikN?Qm)PhGJ6hVOAdxIVC3=!lj$aYNv7%887+%_XhLL9|Wqsvt6olIyIAks5x^K6=mK2?O^R`oF zQfnVS1{@)2T`{GO_`%>+>jb}__J^0s9YZ(n^m!1}yr9Wz>}XYgfA19DP%Wo4*x=?+n~n&c+^?Q_0QeY&|Z3L+_o0gFI2SAlzb~Y5$$!ou_2-EV(Vxm_H5>&XX&bsyuOtI4(R7#Vd@$B?c?BwR;^*l z^@2OR&7wL!R&5vHbvvmY#*0U}1mOl+dS5CC$@0#XU&we$n``NxMte4}sSp4`(v>jTjNSY71Uk zoJ(5el1v5x{+?k^wco@OX7H+bnel17H=0541U?fJV9k{p%MQ8>lVw#AO_X;ve5~?y zUZjHgXAI~uD(7ZSFNH+?d-7Q3CHH%`Dj#_~ES3&#Z|k>Y)H;hh@?8ZnzG+3`7L~s! z#Kx+cxmHJs$7yBY191>>W^i$EFtwGm|0FYB%f&S|_ZRmjH|GQeCG+|}zF6@ws_NUj z6Wx_~T9zlutX%8ejr^pP-(#u(^`jN~D^~VQc&>{Fy2k5jUBf!5e`4@vKHbZEenns3{S-5* z|K*Gw3|{Zn=MfRQ-5D|OzFA%tmMKdsBwky#H3~~7xXp{W^KG$<8>_j8l%_34pAGBj zdLlvz0a8;nO+yV9bhBIc6@l-P7~*2@UV@75p^xWgO#60~I$9-?(*haNpB2>LU?N!- zC!enL7Tob?xOoalL(Jam)MTf~N)Yc~_RPkZukFa#Jrd`nK+Nd3NaY=AHU`a8Cy(x zGAy{f3W^S5-Pt6f8t~*_N0M0_cJGkVNG5u3c+}ah#2~&)o&E9kk&(BXrG_Y`FHBN z7M3nzKna+`%nYQ}&3EV$Hv)J@r4r-DVNLOM0>r0K&V})Js&-ILMz17E8(JtHD+9p< z7*=wmkS%civz=@GX-=qS!KAGTy*Qc5ISr=`W>k}8mA>aX%o}eu5y_f2BQwu5(())q z6tV;X`+e|SxEKCbqVMP}Te>y=-YL&!HanEQp~Xkdf22J5b(popRTK%Zc(Vm6X*7Ra z^$*SZBE3og{#3=odALxD@$0PiBZErqpHiHLAdZ*GgZ%C{X(Lh4NxYQA^!&UEwY0Al z0Au}g#Z1`rvo+LT_Ilo2S5;(pVm$Q;5eKxnb)6$Rz)b=CCMr*Eiwi4z9?od%0)%XHUP;5? z7bpWG>~ZgdnkL{7Z!F83n3^lARYo;tW zW(9_t>fP)c#slO5~u{EngRcK={nPD5Vi52ze~lm*1=F1nfKV zMAwRgkbDx?<&kU5m?t3I`TpmJZ+Hd>A^lU)hfj#sK`%q?_8YVVl(v&~O)Uc>1Ap13 z@?mM8Z^sF@HZV9m>c!MZvuZtfnqA6Cz1Y5QMG9zex%PAw{t$ZWLpBTpeLXm}ngHQq zl=JiahV?m$0{?+zLH@g3(fQKHDoPt_)KxniZgIhh!1?5nmKE8 z3N|<3^on|$y(D10)*)pTpneayP(qnp{E0h&UF>ML2{Sk6)D<44`o_bL0kBjHE*#pPayrItlGP=VuZ(eo`qt($G!EV^ zA?Cm#EPU%FcYTylvX{eNTKl)#MgwXh{hj&Qb`4@prBy$s2lQ#3d=D#SNW<} zj~j?O0NEA3i8yPSTg)+LA7aeJ@>v$*v4WdgTfeCOkg@XSh3J^PNlYTox0}%F5qce` zYAS6h`;PGxtS!nPj&>z|!IEV4PRg!d6p_D0UWiPHB1{pZ*eDf)5L1Puh;$b50N1$zme>^=j;#**{_ph&H zHH_Xw*LWswL8BHd(oj#sr0Ea7mApZ&1@FdWtvZ+YcLXE{w|~8a!66Sttn|VqrY};l zUeUTGO!WZ5VO_(8h<+R45++ankxs-Edf{kCRaGjni(TUg;t_rDJW~ez5$}*a#ZSn2 z$?d{TB7)s83NVC-JRF%R#}75VtQ;wkQD)WRLH#g_;~n8QQ1{KLZM_6==Fi33J*6Qa zmg*;&RxYLnwhuaA&U{WNgC%y6k=2gyM&@777}`$kbIB9TpUjL-qisPfsp7a9v@cp} zq|LgA62jyj;X4zxB0Uo$+M<_ipptvuU}@V%d?^1EJkf}_AU#P$1A7CbU73o|nwZ^! zIt!Ow${U;vwbY_3bQKXyL!G)z39{o5gcYNT)GzQO4}%(oC@Tc1A?>yL`eLVHe{kH7 zfxw4sxEs!XnOtF*!x7Tci;jBU{CV{`M_1VNzOsmv9f5WhL*^!vn&GVvVi-4KA{bGY z=_Z&C=1n~Ee6NN(@dxq1)mWn~KG+8lMK`7&7^(yinF%{_36oUC!dC^N8tVr$kFZDG zfk}7Zb+emGnYetdEex6ap8FZkL#Qfv?Pfw!$v;5)Pj!SEGTP%V;daT44rAm{Xid-Y zw8it%=@!G~*A3+4hk?Hy&3?!kKD>z3$;R*kYTy*WvEp^CQZ)L#JMR@SWyKgIF)}!u zLW=1Yo6|lIZlg!*J2P8x7{3Hnrh1TB@YMXV)jOu68_nO0d#&{Y<|)?_My5=eTPK7t zYnwH}deVP}i>x&5HamMEU;Zi+>ws`6KFVaxqE&V!WB1-6 zuSBM+CN{$W_O~(Wa$5`2gsJ`t1A;{82Ok!&nbIc@EngUdxW0yfK6PEW+$hYFF-Wb( zH!97R;xaX+53qY1DoWkTm&Vb1o>Ny#)4t^-CgdUNZd}9lHWJ%1r`X(xhF__8oC|{UO*c*Kx{puS6 zs^X3yM_v%{X3m`a-1$Y0x_8n3Co9#c5*$8O;=8Q&d*~n$lXMZIBTisnw3NU92u=w~ zU_{c$@N|BF@SY49NQZaM2B9j32)~a)djcRk)WM8>F@K zysh6NeGyGfn_Nb+R5xV+;Sc!xs((A$n9&qkIV%77jt~8|K+B3%*6xGsaf4xU)@M3P zLaEgiHB||iX`9oD$QoqP)9>(!5i}AL`3?JaWF*wk)2C<#yV!xs(9W?&6fWo-_FCEA z0fUbw+72R)FEt5%ZVjkNrW(VT8EF`xPh9MpJXW&b?YL6zh`!gR=91T8to7@ zry7~k=T?&oFfejFDtii1yb#my^@~VPq77b~4QiL_j&2Zv z29oHLWaT}oI85zlkLy8|&~y~FY7QcF0-k|nHKt8_X9- zqR!)pAEP%fi(mQ3BJxMOaeGLi?(rLt!~$dm6NbE2%+z7XE_iX_lCQ%$TpCm4V2akZ z(=rE33~9HLQFHL_q1romsi>&9D?8HFE}IB!1nk+tdS!Po7D?UC! zWlzK~S&caJnX$ay*G0NVO81&ZZ0#mGsQT8x&R`wdq?JgoG3IIn>b)cL&~9tcY$YG? z5Wg4fjA2C$H?M(dA$AC2&C0eRb$wkla1m`AE9y+nk1P9q9Nfnbz4){5IX^w8 z+;S5Gx*0!dBezv%H-ZhPC#17M88a{f2di3PZP^RNKOYst9%IYX?rBV~Z6DlXU4dLA z^r)a(3pZh9@V&38#v0&c%~pf6^m5uFRt(A^O}NdMj&GC#5+{E=?c8m3bst$cym!zk zep(?7%GA~nxbRUUHlw8+Cr7g6nf5EM;?%-ow+`rQbIdh*O9G`94$3b9lozLD4NvnWNp#u(Lb=V^>9-|yNR=vzkf{O}3L=X$ zOdT!0MjYxLUFw2v>?EBAT@eky83Z*zi&nI%)De5tKo%Axi0;=Hrg4lUADZmJzIL?Q zGihX^8+-d~Dj)y*PreDt8eK?@o$bD?rlIc*1!05}0Xd!Z%Cy-vt6O0f^Q%f|fyRxX zQTO)vcX5eaJoJ@r zKXgd8GD*Rq$L_Y{mYtsi#jnWKOKM0))HRpxS1tAzf{nU4b&d!7GO9aIv}-RX7Ne)T zHFy=jw=h7NI#lwT?&|Kkly%beS%0fc%5%z0UtiwO8vl)2-q}K@CHDp{d?4$w6QxG`PTdXZ;(G0|KKA^_)@96MdO?tjE-|G5CLDb=Y)&MZ*7AfcJk3 z2>)MA=nuVrV>qR#4zO~VB+m=k;j2e$H|e=rYbb1Ze-^#e{~NvSGRpC!|3rr7yF&7Q zLAA%cAi%?2L%20B+QWmga$FJ^81#qXzc0&;1l5rffWE(&w3tb$Y7Lg)B=0BXj?FX)bI>_B}lF%gkL zgxz8w#KDyH<@Ocj@Bky;e|G^1MkD|L-fLw)LC8zYc0a8~3_q{p*%Dp%G*OoaJ2t+`_8io*u6_Voy&_ z_dprVm^^hhj>m(zVYq@ByqpX_RmMLUrpz=O$aseVWz#;p+?t))PIOo~0A;?8rXwT8 zPsA4fV(iEj)IA}i!?pGfP#3yj0O-f%xL3uaQ-n2JSNrMP+T8x`7|7yX))-Q{XUypB z?QfD~Z+dP%{4#Dr zYomLM=T#YD9NVwK660>M3=aO+(VN!44isiI8K`Z$lmOQ0be*4?46u&aJvhQ3r#77R zB%ws_hWcncd9_bzp}vaxjJ7<&JzlG`5$d@(d}5WSCknahF*m5OnOTNZa{t@nO;2Ak zPZVUUMOp0;WkxK_{u~*6!}}(YIqBOE;Y~36n(^t$VNa#Cm0g!{8Z{> zveRi_9@dB)A)94s^XuRZOJ?g`Mg#j0LwSO#3ZwOo0e9=#(vtVn9clp(!c?cSw`V7N z&)!h4PO!_t_HJ%am?H!=KCHd!TLuVIQzTn2dcPruD-JKp0&|=m9#Z}@{<#kqCq0IV zWp+k972&;}eg)~SRtxJV)VQ~F1;N?BAH#+i-hBQGpZE_PBru1AKrdAC^ZW!98Jw7% zIHHgJ^=V)jsKjV~OD%YOoYR+dp`>K-9V0%9R%E;|E6sO)dSaZL3Zo06II*F$kVMGn zjYz)`r$YJs)X;%;OPBu&5zi6nZq`j|ba7>cA?~!H)(1HZ-Y>dpG1_)fI(KTtOb+FCCt_uJjf|qSR}RZeV(7?Uu=KS74||1AF8W&N<_5;AWUNS zFUcSv7XGi`6S<2zGq%w5_1t?@^?THnhXiN^_dLabU*-;2Oo3SK|Dau_ zfa^Z8@HF~bfh}a&I;`PXn6>Du0`aA#S9*pAX6f>=jdOEnL9Z~TK#LMeOO$km7Sy2b zyD!~$YEe-K5a~k*!RzYO?z_UMZULF4Tywusu=vq#D3oW5JG2rM}vWh84iw5NC304Uf-a}-M;>t{EYq2Ut+1=%YS3PnyK5iTwfrCe^F)UD&mzz9>~Brxba zBMCPom!?^s6EDuqTpjS2;xd*@K|i(YKG4*NSs~_{m{YX1w?~6%a{uYFr)S~N&BMdv zT;|Ei&Fy+168p9J9gR%*rA9X)hsxJ5u1h`2l1=sbJde)$YL7X`FV!&%A6jA-#;3xg zK9Ab$+Gt73Xnv?X&gNMSy~gVOMwIfB)=i8G0e{-r_T1s}OKLzd-ZAyRNREmcE;;Wx zfuz>8w6wIh3uY6?Hm&spuJ1zp*}nNTVM%e@5wGKn68|KAQ^k$3O`4Pv6^5pVp-;!6 z(Ba40(bMjg-AkZ%GnH+DI4qQS2y0vfHp0in^~b$0xm1g^v38F7=;D$@3ns{!2Dw6- zj7hGJjf%%m@}v#-3ztYDTo!E(a4>yAsbx%7$6=|mSmFWu)dXsX(>%*2+gK5>tjzWfr>x6ugcUeCuk z@n&d-!)81nRg~BMxVn!`aIphZyOyh)kd*-ETSIASX-f6?W-n&lpK^)_BiU``8|B0v zY1DK`ZAI8RVi!rlDoXgN%~!7lI54(j)RR9lyNFB@gwCW$zozPOoetM}HDIG1R14n> z-g`F7+!goiT?GFfV`hV9skiz(uRgJ@Orvl<*MM?QD#>#o_%+hF8l&2G<|(^{4-1Q& z7~ADZwuFPQna@qUJDR&}%C!$R?B6(qusSz#+Izh8j5Wz+q_3fV(%IjnVoPl~-LO{Y4d{V^R%**(0-tJ2}zV8;VG)ZCj# z%J1FvSGOd+AuhP(6i^ADhY{O!s8 zjP<_A2QL~L&yg9R#3G&FMM%aoba{ti69Cqgrbc`!*TqX6%kL#+4y?A4)dudk%^X+*B2 zg#iz)g4AVFt;H7_cvx-EOqv`8pxng{x}F8z>Wo2G7q~i>hUW4$R%0qSf;}y%kH?p! zO2{;hfO;^=Zm_)aVo=xYdO5ZfC#i;OdhiRe;^3o^yaHZ|Ee!mD4a-MPBE{}^L?l$H z;?dVM#o#@|*fK7z%=+pWpHSZEvce~|Faeur;pvV-hH=I{yk?q@3E%1W@FA#p zDc2V6L!{UmJ3;7*-5vFcdRh^!vag4~kD)z(@!@g7;w<5nvVwQTvg|=y}kuORM zw_WRJhn}hf9UngHui+U1QHpYTqKrH!D`fs!rcPaY@Y(FOxi>n0+8$NUK|}p=bhn}_ zQZpOPm%$1Cg%7Wt7Dmo6zU%n@Hu&i^?d)S70QUdep(_OUVQuvz!4}G{zP=F6r8!Or z%9Psoa)EQJvuTi1hOq&#RdVI5EyL8lImGFahn6^E$?Uulv=fNfiPFPwW?BnnO@Dd| dEC9_5+`!PXxnpCl1q|?`AfqB(FKH6;{{Y1bN;Cif diff --git a/content/account-and-profile/index.md b/content/account-and-profile/index.md index a8934da2d5a4..84553a0557c4 100644 --- a/content/account-and-profile/index.md +++ b/content/account-and-profile/index.md @@ -24,12 +24,14 @@ featuredLinks: changelog: label: profiles, github-themes, notifications versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' layout: product-landing versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - Profiles diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/index.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/index.md index 3be57edb2c20..c1d9b7f7dfee 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/index.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications children: diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/index.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/index.md index 90ad31f9e484..b7d081e7e0ae 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/index.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications children: diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md index cb0132413958..02a1eae5c9b8 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications redirect_from: @@ -16,7 +17,7 @@ To help you understand your subscriptions and decide whether to unsubscribe, see {% note %} -**Note:** Instead of unsubscribing, you have the option to ignore a repository. If you ignore a repository, you won't receive any notifications. We don't recommend ignoring repositories as you won't be notified if you're @mentioned. {% ifversion fpt %}If you're experiencing abuse and want to ignore a repository, please contact {% data variables.contact.contact_support %} so we can help. {% data reusables.policies.abuse %}{% endif %} +**Note:** Instead of unsubscribing, you have the option to ignore a repository. If you ignore a repository, you won't receive any notifications. We don't recommend ignoring repositories as you won't be notified if you're @mentioned. {% ifversion fpt or ghec %}If you're experiencing abuse and want to ignore a repository, please contact {% data variables.contact.contact_support %} so we can help. {% data reusables.policies.abuse %}{% endif %} {% endnote %} @@ -64,7 +65,7 @@ When you unwatch a repository, you unsubscribe from future updates from that rep 1. In the left sidebar, under the list of repositories, use the "Manage notifications" drop-down to click **Watched repositories**. ![Manage notifications drop down menu options](/assets/images/help/notifications-v2/manage-notifications-options.png) 2. On the watched repositories page, after you've evaluated the repositories you're watching, choose whether to: - {% ifversion fpt or ghes > 3.0 or ghae-next %} + {% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} - Unwatch a repository - Ignore all notifications for a repository - Customize the types of event you receive notifications for ({% data reusables.notifications-v2.custom-notification-types %}, if enabled) @@ -72,4 +73,4 @@ When you unwatch a repository, you unsubscribe from future updates from that rep - Unwatch a repository - Only watch releases for a repository - Ignore all notifications for a repository - {% endif %} \ No newline at end of file + {% endif %} diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md index 5e03acabc831..a85f10b3c349 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/viewing-your-subscriptions.md @@ -20,6 +20,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications shortTitle: View subscriptions @@ -37,7 +38,7 @@ When your inbox has too many notifications to manage, consider whether you have For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#automatic-watching)." To see an overview of your repository subscriptions, see "[Reviewing repositories that you're watching](#reviewing-repositories-that-youre-watching)." -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} {% tip %} **Tip:** You can select the types of event to be notified of by using the **Custom** option of the **Watch/Unwatch** dropdown list in your [watching page](https://github.com/watching) or on any repository page on {% data variables.product.product_name %}. For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)." @@ -71,7 +72,7 @@ Many people forget about repositories that they've chosen to watch in the past. 1. In the left sidebar, under the list of repositories, use the "Manage notifications" drop-down menu and click **Watched repositories**. ![Manage notifications drop down menu options](/assets/images/help/notifications-v2/manage-notifications-options.png) 2. Evaluate the repositories that you are watching and decide if their updates are still relevant and helpful. When you watch a repository, you will be notified of all conversations for that repository. -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} ![Watched notifications page](/assets/images/help/notifications-v2/watched-notifications-custom.png) {% else %} ![Watched notifications page](/assets/images/help/notifications-v2/watched-notifications.png) @@ -79,7 +80,7 @@ Many people forget about repositories that they've chosen to watch in the past. {% tip %} - **Tip:** Instead of watching a repository, consider only receiving notifications {% ifversion fpt or ghes > 3.0 or ghae-next %}when there are updates to {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository), or any combination of these options,{% else %}for releases in a repository,{% endif %} or completely unwatching a repository. + **Tip:** Instead of watching a repository, consider only receiving notifications {% ifversion fpt or ghes > 3.0 or ghae-next or ghec %}when there are updates to {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository), or any combination of these options,{% else %}for releases in a repository,{% endif %} or completely unwatching a repository. When you unwatch a repository, you can still be notified when you're @mentioned or participating in a thread. When you configure to receive notifications for certain event types, you're only notified when there are updates to these event types in the repository, you're participating in a thread, or you or a team you're on is @mentioned. diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md index 72210f1161d1..9d7677ea92ea 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications.md @@ -1,6 +1,6 @@ --- title: About notifications -intro: 'Notifications provide updates about the activity on {% data variables.product.product_name %} that you''ve subscribed to. You can use the notifications inbox to customize, triage, and manage your updates.' +intro: 'Notifications provide updates about the activity on {% data variables.product.product_location %} that you''ve subscribed to. You can use the notifications inbox to customize, triage, and manage your updates.' redirect_from: - /articles/notifications/ - /articles/about-notifications @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications --- @@ -20,14 +21,14 @@ topics: ## Notifications and subscriptions -You can choose to receive ongoing updates about specific activity on {% data variables.product.product_name %} through a subscription. Notifications are updates that you receive for specific activity that you are subscribed to. +You can choose to receive ongoing updates about specific activity on {% data variables.product.product_location %} through a subscription. Notifications are updates that you receive for specific activity that you are subscribed to. ### Subscription options You can choose to subscribe to notifications for: - A conversation in a specific issue, pull request, or gist. - All activity in a repository or team discussion. -- CI activity, such as the status of workflows in repositories set up with {% data variables.product.prodname_actions %}. {% ifversion fpt or ghes > 3.0 or ghae-next %} +- CI activity, such as the status of workflows in repositories set up with {% data variables.product.prodname_actions %}. {% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} - Repository {% data reusables.notifications-v2.custom-notification-types %} (if enabled).{% else %} - Releases in a repository.{% endif %} @@ -49,19 +50,19 @@ In general, you are automatically subscribed to conversations by default when yo By default, you also automatically watch all repositories that you create and are owned by your user account. -To unsubscribe from conversations you're automatically subscribed to, you can change your notification settings or directly unsubscribe or unwatch activity on {% data variables.product.product_name %}. For more information, see "[Managing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/managing-your-subscriptions)." +To unsubscribe from conversations you're automatically subscribed to, you can change your notification settings or directly unsubscribe or unwatch activity on {% data variables.product.product_location %}. For more information, see "[Managing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/managing-your-subscriptions)." ## Customizing notifications and subscriptions -You can choose to view your notifications through the notifications inbox at [https://github.com/notifications](https://github.com/notifications){% ifversion fpt or ghes > 2.22 %} and in the {% data variables.product.prodname_mobile %} app{% endif %}, through your email, or some combination of these options. +You can choose to view your notifications through the notifications inbox at [https://github.com/notifications](https://github.com/notifications){% ifversion fpt or ghes > 2.22 or ghec %} and in the {% data variables.product.prodname_mobile %} app{% endif %}, through your email, or some combination of these options. -To customize the types of updates you'd like to receive and where to send those updates, configure your notification settings. For more information, see “[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications).” +To customize the types of updates you'd like to receive and where to send those updates, configure your notification settings. For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications)." To keep your subscriptions manageable, review your subscriptions and watched repositories and unsubscribe as needed. For more information, see "[Managing subscriptions for activity on GitHub](/github/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github)." -To customize how you'd like to receive updates for specific pull requests or issues, you can configure your preferences within the issue or pull request. For more information, see “[Triaging a single notification](/github/managing-subscriptions-and-notifications-on-github/triaging-a-single-notification#customizing-when-to-receive-future-updates-for-an-issue-or-pull-request).” +To customize how you'd like to receive updates for specific pull requests or issues, you can configure your preferences within the issue or pull request. For more information, see "[Triaging a single notification](/github/managing-subscriptions-and-notifications-on-github/triaging-a-single-notification#customizing-when-to-receive-future-updates-for-an-issue-or-pull-request)." -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} You can customize and schedule push notifications in the {% data variables.product.prodname_mobile %} app. For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#managing-your-notification-settings-with-github-for-mobile)." {% endif %} @@ -91,7 +92,7 @@ From your inbox you can also triage multiple notifications at once. For more inf ## Customizing your notifications inbox -To focus on a group of notifications in your inbox on {% data variables.product.product_name %}{% ifversion fpt or ghes > 2.22 %} or {% data variables.product.prodname_mobile %}{% endif %}, you can create custom filters. For example, you can create a custom filter for an open source project you contribute to and only see notifications for that repository in which you are mentioned. For more information, see "[Managing notifications from your inbox](/github/managing-subscriptions-and-notifications-on-github/managing-notifications-from-your-inbox)." For more examples of how to customize your triaging workflow, see "[Customizing a workflow for triaging your notifications](/github/managing-subscriptions-and-notifications-on-github/customizing-a-workflow-for-triaging-your-notifications)." +To focus on a group of notifications in your inbox on {% data variables.product.product_location %}{% ifversion fpt or ghes > 2.22 or ghec %} or {% data variables.product.prodname_mobile %}{% endif %}, you can create custom filters. For example, you can create a custom filter for an open source project you contribute to and only see notifications for that repository in which you are mentioned. For more information, see "[Managing notifications from your inbox](/github/managing-subscriptions-and-notifications-on-github/managing-notifications-from-your-inbox)." For more examples of how to customize your triaging workflow, see "[Customizing a workflow for triaging your notifications](/github/managing-subscriptions-and-notifications-on-github/customizing-a-workflow-for-triaging-your-notifications)." ## Notification retention policy diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md index 39495e3ac290..7c726003a454 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications.md @@ -1,6 +1,6 @@ --- title: Configuring notifications -intro: 'Choose the type of activity on {% data variables.product.product_name %} that you want to receive notifications for and how you want these updates delivered.' +intro: 'Choose the type of activity on {% data variables.product.prodname_dotcom %} that you want to receive notifications for and how you want these updates delivered.' redirect_from: - /articles/about-web-notifications - /format-of-notification-emails/ @@ -19,6 +19,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications --- @@ -28,13 +29,13 @@ topics: ## Notification delivery options -You can receive notifications for activity on {% data variables.product.product_name %} in the following locations. +You can receive notifications for activity on {% data variables.product.product_location %} in the following locations. - - The notifications inbox in the {% data variables.product.product_name %} web interface{% ifversion fpt or ghes > 2.22 %} - - The notifications inbox on {% data variables.product.prodname_mobile %}, which syncs with the inbox on {% data variables.product.product_name %}{% endif %} - - An email client that uses a verified email address, which can also sync with the notifications inbox on {% data variables.product.product_name %}{% ifversion fpt or ghes > 2.22 %} and {% data variables.product.prodname_mobile %}{% endif %} + - The notifications inbox in the {% data variables.product.product_location %} web interface{% ifversion fpt or ghes > 2.22 or ghec %} + - The notifications inbox on {% data variables.product.prodname_mobile %}, which syncs with the inbox on {% data variables.product.product_location %}{% endif %} + - An email client that uses a verified email address, which can also sync with the notifications inbox on {% data variables.product.product_location %}{% ifversion fpt or ghes > 2.22 or ghec %} and {% data variables.product.prodname_mobile %}{% endif %} -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} {% data reusables.notifications-v2.notifications-inbox-required-setting %} For more information, see "[Choosing your notification settings](#choosing-your-notification-settings)." {% endif %} @@ -42,17 +43,17 @@ You can receive notifications for activity on {% data variables.product.product_ ### Benefits of the notifications inbox -The notifications inbox on {% data variables.product.product_name %}{% ifversion fpt or ghes > 2.22 %} and {% data variables.product.prodname_mobile %}{% endif %} includes triaging options designed specifically for your {% data variables.product.product_name %} notifications flow, including options to: +The notifications inbox on {% data variables.product.product_location %}{% ifversion fpt or ghes > 2.22 or ghec %} and {% data variables.product.prodname_mobile %}{% endif %} includes triaging options designed specifically for your {% data variables.product.prodname_dotcom %} notifications flow, including options to: - Triage multiple notifications at once. - Mark completed notifications as **Done** and remove them from your inbox. To view all of your notifications marked as **Done**, use the `is:done` query. - Save a notification to review later. Saved notifications are flagged in your inbox and kept indefinitely. To view all of your saved notifications, use the `is:saved` query. - Unsubscribe and remove a notification from your inbox. - - Preview the issue, pull request, or team discussion where the notification originates on {% data variables.product.product_name %} from within the notifications inbox. + - Preview the issue, pull request, or team discussion where the notification originates on {% data variables.product.product_location %} from within the notifications inbox. - See one of the latest reasons you're receiving a notification from your inbox with a `reasons` label. - Create custom filters to focus on different notifications when you want. - Group notifications in your inbox by repository or date to get a quick overview with less context switching -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} In addition, you can receive and triage notifications on your mobile device with {% data variables.product.prodname_mobile %}. For more information, see "[Managing your notification settings with GitHub for mobile](#managing-your-notification-settings-with-github-for-mobile)" or "[GitHub for mobile](/github/getting-started-with-github/github-for-mobile)." {% endif %} @@ -75,7 +76,7 @@ To see repositories that you're watching, go to your [watching page](https://git {% endif %} You can configure notifications for a repository on the repository page, or on your watching page.{% ifversion ghes < 3.1 %} You can choose to only receive notifications for releases in a repository, or ignore all notifications for a repository.{% endif %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} ### About custom notifications You can customize notifications for a repository. For example, you can choose to only be notified when updates to one or more types of events ({% data reusables.notifications-v2.custom-notification-types %}) happen within a repository, or ignore all notifications for a repository. @@ -84,7 +85,7 @@ You can customize notifications for a repository. For example, you can choose to ### Participating in conversations Anytime you comment in a conversation or when someone @mentions your username, you are _participating_ in a conversation. By default, you are automatically subscribed to a conversation when you participate in it. You can unsubscribe from a conversation you've participated in manually by clicking **Unsubscribe** on the issue or pull request or through the **Unsubscribe** option in the notifications inbox. -For conversations you're watching or participating in, you can choose whether you want to receive notifications by email or through the notifications inbox on {% data variables.product.product_name %}{% ifversion fpt or ghes > 2.22 %} and {% data variables.product.prodname_mobile %}{% endif %}. +For conversations you're watching or participating in, you can choose whether you want to receive notifications by email or through the notifications inbox on {% data variables.product.product_location %}{% ifversion fpt or ghes > 2.22 or ghec %} and {% data variables.product.prodname_mobile %}{% endif %}. ![Participating and watching notifications options](/assets/images/help/notifications-v2/participating-and-watching-options.png) @@ -92,17 +93,17 @@ For example: - If you don't want notifications to be sent to your email, unselect **email** for participating and watching notifications. - If you want to receive notifications by email when you've participated in a conversation, then you can select **email** under "Participating". -If you do not enable watching or participating notifications for web{% ifversion fpt or ghes > 2.22 %} and mobile{% endif %}, then your notifications inbox will not have any updates. +If you do not enable watching or participating notifications for web{% ifversion fpt or ghes > 2.22 or ghec %} and mobile{% endif %}, then your notifications inbox will not have any updates. ## Customizing your email notifications -After enabling email notifications, {% data variables.product.product_name %} will send notifications to you as multipart emails that contain both HTML and plain text copies of the content. Email notification content includes any Markdown, @mentions, emojis, hash-links, and more, that appear in the original content on {% data variables.product.product_name %}. If you only want to see the text in the email, you can configure your email client to display the plain text copy only. +After enabling email notifications, {% data variables.product.product_location %} will send notifications to you as multipart emails that contain both HTML and plain text copies of the content. Email notification content includes any Markdown, @mentions, emojis, hash-links, and more, that appear in the original content on {% data variables.product.product_location %}. If you only want to see the text in the email, you can configure your email client to display the plain text copy only. {% data reusables.notifications.outbound_email_tip %} {% data reusables.notifications.shared_state %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you're using Gmail, you can click a button beside the notification email to visit the original issue or pull request that generated the notification. @@ -110,7 +111,7 @@ If you're using Gmail, you can click a button beside the notification email to v {% endif %} -Choose a default email address where you want to send updates for conversations you're participating in or watching. You can also specify which activity on {% data variables.product.product_name %} you want to receive updates for using your default email address. For example, choose whether you want updates to your default email from: +Choose a default email address where you want to send updates for conversations you're participating in or watching. You can also specify which activity on {% data variables.product.product_location %} you want to receive updates for using your default email address. For example, choose whether you want updates to your default email from: - Comments on issues and pull requests. - Pull request reviews. - Pull request pushes. @@ -124,18 +125,18 @@ You can also send notifications for a specific repository to an email address. F ## Filtering email notifications -Each email notification that {% data variables.product.product_name %} sends contains header information. The header information in every email is consistent, so you can use it in your email client to filter or forward all {% data variables.product.product_name %} notifications, or certain types of {% data variables.product.product_name %} notifications. +Each email notification that {% data variables.product.product_location %} sends contains header information. The header information in every email is consistent, so you can use it in your email client to filter or forward all {% data variables.product.prodname_dotcom %} notifications, or certain types of {% data variables.product.prodname_dotcom %} notifications. If you believe you're receiving notifications that don't belong to you, examine the `X-GitHub-Recipient` and `X-GitHub-Recipient-Address` headers. These headers show who the intended recipient is. Depending on your email setup, you may receive notifications intended for another user. -Email notifications from {% data variables.product.product_name %} contain the following header information: +Email notifications from {% data variables.product.product_location %} contain the following header information: | Header | Information | | --- | --- | -| `From` address | This address will always be {% ifversion fpt %}'`notifications@github.com`'{% else %}'the no-reply email address configured by your site administrator'{% endif %}. | +| `From` address | This address will always be {% ifversion fpt or ghec %}'`notifications@github.com`'{% else %}'the no-reply email address configured by your site administrator'{% endif %}. | | `To` field | This field connects directly to the thread.{% ifversion not ghae %} If you reply to the email, you'll add a new comment to the conversation.{% endif %} | -| `Cc` address | {% data variables.product.product_name %} will `Cc` you if you're subscribed to a conversation. The second `Cc` email address matches the notification reason. The suffix for these notification reasons is {% data variables.notifications.cc_address %}. The possible notification reasons are:

| -| `mailing list` field | This field identifies the name of the repository and its owner. The format of this address is always `..{% data variables.command_line.backticks %}`. |{% ifversion fpt or ghes or ghae-issue-4864 %} +| `Cc` address | {% data variables.product.product_name %} will `Cc` you if you're subscribed to a conversation. The second `Cc` email address matches the notification reason. The suffix for these notification reasons is {% data variables.notifications.cc_address %}. The possible notification reasons are:
  • `assign`: You were assigned to an issue or pull request.
  • `author`: You created an issue or pull request.
  • `ci_activity`: A {% data variables.product.prodname_actions %} workflow run that you triggered was completed.
  • `comment`: You commented on an issue or pull request.
  • `manual`: There was an update to an issue or pull request you manually subscribed to.
  • `mention`: You were mentioned on an issue or pull request.
  • `push`: Someone committed to a pull request you're subscribed to.
  • `review_requested`: You or a team you're a member of was requested to review a pull request.
  • {% ifversion fpt or ghes or ghae-issue-4864 or ghec %}
  • `security_alert`: {% data variables.product.prodname_dotcom %} detected a vulnerability in a repository you receive alerts for.
  • {% endif %}
  • `state_change`: An issue or pull request you're subscribed to was either closed or opened.
  • `subscribed`: There was an update in a repository you're watching.
  • `team_mention`: A team you belong to was mentioned on an issue or pull request.
  • `your_activity`: You opened, commented on, or closed an issue or pull request.
| +| `mailing list` field | This field identifies the name of the repository and its owner. The format of this address is always `..{% data variables.command_line.backticks %}`. |{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} | `X-GitHub-Severity` field | {% data reusables.repositories.security-alerts-x-github-severity %} The possible severity levels are:
  • `low`
  • `moderate`
  • `high`
  • `critical`
For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." |{% endif %} ## Choosing your notification settings @@ -144,8 +145,8 @@ Email notifications from {% data variables.product.product_name %} contain the f {% data reusables.notifications-v2.manage-notifications %} 3. On the notifications settings page, choose how you receive notifications when: - There are updates in repositories or team discussions you're watching or in a conversation you're participating in. For more information, see "[About participating and watching notifications](#about-participating-and-watching-notifications)." - - You gain access to a new repository or you've joined a new team. For more information, see "[Automatic watching](#automatic-watching)."{% ifversion fpt or ghes or ghae-issue-4864 %} - - There are new {% data variables.product.prodname_dependabot_alerts %} in your repository. For more information, see "[{% data variables.product.prodname_dependabot_alerts %} notification options](#dependabot-alerts-notification-options)." {% endif %} {% ifversion fpt %} + - You gain access to a new repository or you've joined a new team. For more information, see "[Automatic watching](#automatic-watching)."{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} + - There are new {% data variables.product.prodname_dependabot_alerts %} in your repository. For more information, see "[{% data variables.product.prodname_dependabot_alerts %} notification options](#dependabot-alerts-notification-options)." {% endif %} {% ifversion fpt or ghec %} - There are workflow runs updates on repositories set up with {% data variables.product.prodname_actions %}. For more information, see "[{% data variables.product.prodname_actions %} notification options](#github-actions-notification-options)."{% endif %} ## Automatic watching @@ -158,17 +159,17 @@ If "Automatically watch repositories" is disabled, then you will not automatical ## Configuring your watch settings for an individual repository -You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of {% ifversion fpt or ghes > 3.0 or ghae-next %}certain event types such as {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository) {% else %}new releases{% endif %}, or completely ignore an individual repository. +You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of {% ifversion fpt or ghes > 3.0 or ghae-next or ghec %}certain event types such as {% data reusables.notifications-v2.custom-notification-types %} (if enabled for the repository) {% else %}new releases{% endif %}, or completely ignore an individual repository. {% data reusables.repositories.navigate-to-repo %} 2. In the upper-right corner, select the "Watch" drop-down menu to click a watch option. -{% ifversion fpt or ghes > 3.0 or ghae-issue-4910 %} +{% ifversion fpt or ghes > 3.0 or ghae-issue-4910 or ghec %} ![Watch options in a drop-down menu for a repository](/assets/images/help/notifications-v2/watch-repository-options-custom.png) The **Custom** option allows you to further customize notifications so that you're only notified when specific events happen in the repository, in addition to participating and @mentions. {% else %} ![Watch options in a drop-down menu for a repository](/assets/images/help/notifications-v2/watch-repository-options.png){% endif %} -{% ifversion fpt or ghes > 3.0 or ghae-issue-4910 %} +{% ifversion fpt or ghes > 3.0 or ghae-issue-4910 or ghec %} ![Custom watch options in a drop-down menu for a repository](/assets/images/help/notifications-v2/watch-repository-options-custom2-dotcom.png) If you select "Issues", you will be notified about, and subscribed to, updates on every issue (including those that existed prior to you selecting this option) in the repository. If you're @mentioned in a pull request in this repository, you'll receive notifications for that too, and you'll be subscribed to updates on that specific pull request, in addition to being notified about issues. {% endif %} @@ -187,7 +188,7 @@ If you belong to an organization, you can choose the email account you want noti ### Customizing email routes per organization -If you are a member of more than one organization, you can configure each one to send notifications to any of{% ifversion fpt %} your verified email addresses{% else %} the email addressed you've added to your {% data variables.product.product_name %} account{% endif %}. {% ifversion fpt %} For more information, see "[Verifying your email address](/articles/verifying-your-email-address)."{% endif %} +If you are a member of more than one organization, you can configure each one to send notifications to any of{% ifversion fpt or ghec %} your verified email addresses{% else %} the email addresses for your account{% endif %}. {% ifversion fpt or ghec %} For more information, see "[Verifying your email address](/articles/verifying-your-email-address)."{% endif %} {% data reusables.notifications.access_notifications %} {% data reusables.notifications-v2.manage-notifications %} @@ -198,17 +199,17 @@ If you are a member of more than one organization, you can configure each one to 5. Select one of your verified email addresses, then click **Save**. ![Switching your per-org email address](/assets/images/help/notifications/notifications_switching_org_email.gif) -{% ifversion fpt or ghes or ghae-issue-4864 %} +{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} ## {% data variables.product.prodname_dependabot_alerts %} notification options {% data reusables.notifications.vulnerable-dependency-notification-enable %} {% data reusables.notifications.vulnerable-dependency-notification-delivery-method-customization2 %} {% data reusables.notifications.vulnerable-dependency-notification-options %} -For more information about the notification delivery methods available to you, and advice on optimizing your notifications for {% ifversion fpt or ghes %}{% data variables.product.prodname_dependabot_alerts %}{% else %}security alerts{% endif %}, see "[Configuring notifications for vulnerable dependencies](/github/managing-security-vulnerabilities/configuring-notifications-for-vulnerable-dependencies)." +For more information about the notification delivery methods available to you, and advice on optimizing your notifications for {% ifversion fpt or ghes or ghec %}{% data variables.product.prodname_dependabot_alerts %}{% else %}security alerts{% endif %}, see "[Configuring notifications for vulnerable dependencies](/github/managing-security-vulnerabilities/configuring-notifications-for-vulnerable-dependencies)." {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## {% data variables.product.prodname_actions %} notification options Choose how you want to receive workflow run updates for repositories that you are watching that are set up with {% data variables.product.prodname_actions %}. You can also choose to only receive notifications for failed workflow runs. @@ -217,7 +218,7 @@ Choose how you want to receive workflow run updates for repositories that you ar {% endif %} -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} ## Managing your notification settings with {% data variables.product.prodname_mobile %} When you install {% data variables.product.prodname_mobile %}, you will automatically be opted into web notifications. Within the app, you can enable push notifications for the following events. @@ -246,7 +247,7 @@ You can also schedule when {% data variables.product.prodname_mobile %} will sen ## Configuring your watch settings for an individual repository with {% data variables.product.prodname_mobile %} -You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of {% ifversion fpt %}certain event types such as issues, pull requests, discussions (if enabled for the repository) and {% endif %}new releases, or completely ignore an individual repository. +You can choose whether to watch or unwatch an individual repository. You can also choose to only be notified of {% ifversion fpt or ghec %}certain event types such as issues, pull requests, discussions (if enabled for the repository) and {% endif %}new releases, or completely ignore an individual repository. 1. On {% data variables.product.prodname_mobile %}, navigate to the main page of the repository. 2. Tap **Watch**. diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/index.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/index.md index ed16d2050bad..46171eca39ac 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/index.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications children: diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/customizing-a-workflow-for-triaging-your-notifications.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/customizing-a-workflow-for-triaging-your-notifications.md index 176d38e46810..3af3954a9b81 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/customizing-a-workflow-for-triaging-your-notifications.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/customizing-a-workflow-for-triaging-your-notifications.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications redirect_from: diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/index.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/index.md index b1aec9df23f0..9a980a948964 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/index.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications children: diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md index 4df6d439edbc..4c7df2652884 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/managing-notifications-from-your-inbox.md @@ -1,6 +1,6 @@ --- title: Managing notifications from your inbox -intro: 'Use your inbox to quickly triage and sync your notifications across email{% ifversion fpt or ghes > 2.22 %} and mobile{% endif %}.' +intro: 'Use your inbox to quickly triage and sync your notifications across email{% ifversion fpt or ghes > 2.22 or ghec %} and mobile{% endif %}.' redirect_from: - /articles/marking-notifications-as-read - /articles/saving-notifications-for-later @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications shortTitle: Manage from your inbox @@ -20,7 +21,7 @@ shortTitle: Manage from your inbox ## About your inbox -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} {% data reusables.notifications-v2.notifications-inbox-required-setting %} For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#choosing-your-notification-settings)." {% endif %} @@ -97,7 +98,7 @@ Custom filters do not currently support: These are the types of filters that you can use: - Filter by repository with `repo:` - Filter by discussion type with `is:` - - Filter by notification reason with `reason:`{% ifversion fpt %} + - Filter by notification reason with `reason:`{% ifversion fpt or ghec %} - Filter by notification author with `author:` - Filter by organization with `org:`{% endif %} @@ -107,20 +108,20 @@ To add a `repo:` filter, you must include the owner of the repository in the que ### Supported `is:` queries -To filter notifications for specific activity on {% data variables.product.product_name %}, you can use the `is` query. For example, to only see repository invitation updates, use `is:repository-invitation`{% ifversion not ghae %}, and to only see {% ifversion fpt or ghes %}{% data variables.product.prodname_dependabot %}{% else %} security{% endif %} alerts, use `is:repository-vulnerability-alert`.{% endif %} +To filter notifications for specific activity on {% data variables.product.product_location %}, you can use the `is` query. For example, to only see repository invitation updates, use `is:repository-invitation`{% ifversion not ghae %}, and to only see {% ifversion fpt or ghes or ghec %}{% data variables.product.prodname_dependabot %}{% else %} security{% endif %} alerts, use `is:repository-vulnerability-alert`.{% endif %} - `is:check-suite` - `is:commit` - `is:gist` - `is:issue-or-pull-request` - `is:release` -- `is:repository-invitation`{% ifversion fpt or ghes or ghae-issue-4864 %} -- `is:repository-vulnerability-alert`{% endif %}{% ifversion fpt %} +- `is:repository-invitation`{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} +- `is:repository-vulnerability-alert`{% endif %}{% ifversion fpt or ghec %} - `is:repository-advisory`{% endif %} -- `is:team-discussion`{% ifversion fpt %} +- `is:team-discussion`{% ifversion fpt or ghec %} - `is:discussion`{% endif %} -{% ifversion fpt or ghes or ghae-issue-4864 %} +{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} For information about reducing noise from notifications for {% data variables.product.prodname_dependabot_alerts %}, see "[Configuring notifications for vulnerable dependencies](/github/managing-security-vulnerabilities/configuring-notifications-for-vulnerable-dependencies)." {% endif %} @@ -144,13 +145,13 @@ To filter notifications by why you've received an update, you can use the `reaso | `reason:invitation` | When you're invited to a team, organization, or repository. | `reason:manual` | When you click **Subscribe** on an issue or pull request you weren't already subscribed to. | `reason:mention` | You were directly @mentioned. -| `reason:review-requested` | You or a team you're on have been requested to review a pull request.{% ifversion fpt or ghes or ghae-issue-4864 %} +| `reason:review-requested` | You or a team you're on have been requested to review a pull request.{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} | `reason:security-alert` | When a security alert is issued for a repository.{% endif %} | `reason:state-change` | When the state of a pull request or issue is changed. For example, an issue is closed or a pull request is merged. | `reason:team-mention` | When a team you're a member of is @mentioned. | `reason:ci-activity` | When a repository has a CI update, such as a new workflow run status. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Supported `author:` queries To filter notifications by user, you can use the `author:` query. An author is the original author of the thread (issue, pull request, gist, discussions, and so on) for which you are being notified. For example, to see notifications for threads created by the Octocat user, use `author:octocat`. @@ -163,10 +164,10 @@ For example, to see notifications from the octo-org organization, use `org:octo- {% endif %} -{% ifversion fpt or ghes or ghae-issue-4864 %} +{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} ## {% data variables.product.prodname_dependabot %} custom filters -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you use {% data variables.product.prodname_dependabot %} to keep your dependencies up-to-date, you can use and save these custom filters: - `is:repository_vulnerability_alert` to show notifications for {% data variables.product.prodname_dependabot_alerts %}. - `reason:security_alert` to show notifications for {% data variables.product.prodname_dependabot_alerts %} and security update pull requests. diff --git a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/triaging-a-single-notification.md b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/triaging-a-single-notification.md index 1be5142518de..1eb322503728 100644 --- a/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/triaging-a-single-notification.md +++ b/content/account-and-profile/managing-subscriptions-and-notifications-on-github/viewing-and-triaging-notifications/triaging-a-single-notification.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Notifications redirect_from: diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md index ba768003a5fd..079a7e07b2ce 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-organizations-profile.md @@ -10,15 +10,16 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles shortTitle: Organization's profile --- You can optionally choose to add a description, location, website, and email address for your organization, and pin important repositories.{% ifversion not ghes and not ghae %} You can customize your organization's profile by adding a README.md file. For more information, see "[Customizing your organization's profile](/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile)."{% endif %} -{% ifversion fpt %}To confirm your organization's identity and display a "Verified" badge on your organization profile page, you must verify your organization's domains with {% data variables.product.product_name %}. For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)."{% endif %} +{% ifversion fpt or ghec %}To confirm your organization's identity and display a "Verified" badge on your organization profile page, you must verify your organization's domains with {% data variables.product.product_name %}. For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)."{% endif %} -{% ifversion fpt or ghes > 3.2 %} +{% ifversion fpt or ghes > 3.2 or ghec %} ![Sample organization profile page](/assets/images/help/organizations/org_profile_with_overview.png) {% else %} ![Sample organization profile page](/assets/images/help/profile/org_profile.png) diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-profile.md index bc85fb51ad88..c3c7d3b294d9 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-profile.md @@ -11,12 +11,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles --- You can add personal information about yourself in your bio, like previous places you've worked, projects you've contributed to, or interests you have that other people may like to know about. For more information, see "[Adding a bio to your profile](/articles/personalizing-your-profile/#adding-a-bio-to-your-profile)." -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% data reusables.profile.profile-readme %} @@ -28,9 +29,9 @@ People who visit your profile see a timeline of your contribution activity, like People who visit your profile can also see the following information. -- Repositories and gists you own or contribute to. {% ifversion fpt or ghes %}You can showcase your best work by pinning repositories and gists to your profile. For more information, see "[Pinning items to your profile](/github/setting-up-and-managing-your-github-profile/pinning-items-to-your-profile)."{% endif %} +- Repositories and gists you own or contribute to. {% ifversion fpt or ghes or ghec %}You can showcase your best work by pinning repositories and gists to your profile. For more information, see "[Pinning items to your profile](/github/setting-up-and-managing-your-github-profile/pinning-items-to-your-profile)."{% endif %} - Repositories you've starred. For more information, see "[Saving repositories with stars](/articles/saving-repositories-with-stars/)." -- An overview of your activity in organizations, repositories, and teams you're most active in. For more information, see "[Showing an overview of your activity on your profile](/articles/showing-an-overview-of-your-activity-on-your-profile)."{% ifversion fpt %} +- An overview of your activity in organizations, repositories, and teams you're most active in. For more information, see "[Showing an overview of your activity on your profile](/articles/showing-an-overview-of-your-activity-on-your-profile)."{% ifversion fpt or ghec %} - Badges that show if you use {% data variables.product.prodname_pro %} or participate in programs like the {% data variables.product.prodname_arctic_vault %}, {% data variables.product.prodname_sponsors %}, or the {% data variables.product.company_short %} Developer Program. For more information, see "[Personalizing your profile](/github/setting-up-and-managing-your-github-profile/personalizing-your-profile#displaying-badges-on-your-profile)."{% endif %} You can also set a status on your profile to provide information about your availability. For more information, see "[Setting a status](/articles/personalizing-your-profile/#setting-a-status)." diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md index 8ce62c0cc563..3576bc0ffa27 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles children: diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md index 080087ad6010..788ddb15e5f3 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/managing-your-profile-readme.md @@ -4,6 +4,7 @@ intro: 'You can add a README to your {% data variables.product.prodname_dotcom % versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Profiles redirect_from: @@ -13,7 +14,7 @@ shortTitle: Your profile README --- ## About your profile README -You can share information about yourself with the community on {% data variables.product.prodname_dotcom %} by creating a profile README. {% data variables.product.prodname_dotcom %} shows your profile README at the top of your profile page. +You can share information about yourself with the community on {% data variables.product.product_location %} by creating a profile README. {% data variables.product.prodname_dotcom %} shows your profile README at the top of your profile page. You decide what information to include in your profile README, so you have full control over how you present yourself on {% data variables.product.prodname_dotcom %}. Here are some examples of information that visitors may find interesting, fun, or useful in your profile README. diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md index ce47f6accf1f..2873ccf5e1b4 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/personalizing-your-profile.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles shortTitle: Personalize @@ -52,7 +53,7 @@ When you sign up for an account, {% data variables.product.product_name %} provi You can change the name that is displayed on your profile. This name may also be displayed next to comments you make on private repositories owned by an organization. For more information, see "[Managing the display of member names in your organization](/articles/managing-the-display-of-member-names-in-your-organization)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** If you're a member of an {% data variables.product.prodname_emu_enterprise %}, any changes to your profile name must be made through your identity provider instead of {% data variables.product.prodname_dotcom_the_website %}. {% data reusables.enterprise-accounts.emu-more-info-account %} @@ -68,7 +69,7 @@ You can change the name that is displayed on your profile. This name may also be Add a bio to your profile to share information about yourself with other {% data variables.product.product_name %} users. With the help of [@mentions](/articles/basic-writing-and-formatting-syntax) and emoji, you can include information about where you currently or have previously worked, what type of work you do, or even what kind of coffee you drink. -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} For a longer-form and more prominent way of displaying customized information about yourself, you can also use a profile README. For more information, see "[Managing your profile README](/github/setting-up-and-managing-your-github-profile/managing-your-profile-readme)." @@ -110,7 +111,7 @@ When you set your status, you can also let people know that you have limited ava If you select the "Busy" option, when people @mention your username, assign you an issue or pull request, or request a pull request review from you, a note next to your username will show that you're busy. You will also be excluded from automatic review assignment for pull requests assigned to any teams you belong to. For more information, see "[Managing code review assignment for your team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team)." -1. In the top right corner of {% data variables.product.product_name %}, click your profile photo, then click **Set your status** or, if you already have a status set, click your current status. +1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Set your status** or, if you already have a status set, click your current status. ![Button on profile to set your status](/assets/images/help/profile/set-status-on-profile.png) 2. To add custom text to your status, click in the text field and type a status message. ![Field to type a status message](/assets/images/help/profile/type-a-status-message.png) @@ -125,7 +126,7 @@ If you select the "Busy" option, when people @mention your username, assign you 7. Click **Set status**. ![Button to set status](/assets/images/help/profile/set-status-button.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Displaying badges on your profile When you participate in certain programs, {% data variables.product.prodname_dotcom %} automatically displays a badge on your profile. @@ -135,7 +136,7 @@ When you participate in certain programs, {% data variables.product.prodname_dot | ![Mars 2020 Helicopter Contributor badge icon](/assets/images/help/profile/badge-mars-2020-small.png) | **Mars 2020 Helicopter Contributor** | If you authored any commit(s) present in the commit history for the relevant tag of an open source library used in the Mars 2020 Helicopter Mission, you'll get a Mars 2020 Helicopter Contributor badge on your profile. Hovering over the badge shows you several of the repositories you contributed to that were used in the mission. For the full list of repositories that will qualify you for the badge, see "[List of qualifying repositories for Mars 2020 Helicopter Contributor badge](/github/setting-up-and-managing-your-github-profile/personalizing-your-profile#list-of-qualifying-repositories-for-mars-2020-helicopter-contributor-badge)." | | ![Arctic Code Vault Contributor badge icon](/assets/images/help/profile/badge-arctic-code-vault-small.png) | **{% data variables.product.prodname_arctic_vault %} Contributor** | If you authored any commit(s) on the default branch of a repository that was archived in the 2020 Arctic Vault program, you'll get an {% data variables.product.prodname_arctic_vault %} Contributor badge on your profile. Hovering over the badge shows you several of the repositories you contributed to that were part of the program. For more information on the program, see [{% data variables.product.prodname_archive %}](https://archiveprogram.github.com). | | ![{% data variables.product.prodname_dotcom %} Sponsor badge icon](/assets/images/help/profile/badge-sponsors-small.png) | **{% data variables.product.prodname_dotcom %} Sponsor** | If you sponsored an open source contributor through {% data variables.product.prodname_sponsors %} you'll get a {% data variables.product.prodname_dotcom %} Sponsor badge on your profile. Clicking the badge takes you to the **Sponsoring** tab of your profile. For more information, see "[Sponsoring open source contributors](/github/supporting-the-open-source-community-with-github-sponsors/sponsoring-open-source-contributors)." | -| {% octicon "cpu" aria-label="The Developer Program icon" %} | **Developer Program Member** | If you're a registered member of the {% data variables.product.prodname_dotcom %} Developer Program, building an app with the {% data variables.product.prodname_dotcom %} API, you'll get a Developer Program Member badge on your profile. For more information on the {% data variables.product.prodname_dotcom %} Developer Program, see [GitHub Developer](/program/). | +| {% octicon "cpu" aria-label="The Developer Program icon" %} | **Developer Program Member** | If you're a registered member of the {% data variables.product.prodname_dotcom %} Developer Program, building an app with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, you'll get a Developer Program Member badge on your profile. For more information on the {% data variables.product.prodname_dotcom %} Developer Program, see [GitHub Developer](/program/). | | {% octicon "star-fill" aria-label="The star icon" %} | **Pro** | If you use {% data variables.product.prodname_pro %} you'll get a PRO badge on your profile. For more information about {% data variables.product.prodname_pro %}, see "[{% data variables.product.prodname_dotcom %}'s products](/github/getting-started-with-github/githubs-products#github-pro)." | | {% octicon "lock" aria-label="The lock icon" %} | **Security Bug Bounty Hunter** | If you helped out hunting down security vulnerabilities, you'll get a Security Bug Bounty Hunter badge on your profile. For more information about the {% data variables.product.prodname_dotcom %} Security program, see [{% data variables.product.prodname_dotcom %} Security](https://bounty.github.com/). | | {% octicon "mortar-board" aria-label="The mortar-board icon" %} | **Github Campus Expert** | If you participate in the {% data variables.product.prodname_dotcom %} Campus Program you'll get a {% data variables.product.prodname_dotcom %} Campus Expert badge on your profile. For more information about the Campus Experts program, see [Campus Experts](https://education.github.com/experts). | diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/pinning-items-to-your-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/pinning-items-to-your-profile.md index 741bea22dd11..b6a0fa6432ad 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/pinning-items-to-your-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/pinning-items-to-your-profile.md @@ -9,6 +9,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Profiles shortTitle: Pin items diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/index.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/index.md index fa28fbe7b4b3..43a6f3ca47f7 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles children: diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/index.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/index.md index 11dd5764dec5..ef6c86431697 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles children: diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/publicizing-or-hiding-your-private-contributions-on-your-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/publicizing-or-hiding-your-private-contributions-on-your-profile.md index 00ee26800731..1bbb5cf677dd 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/publicizing-or-hiding-your-private-contributions-on-your-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/publicizing-or-hiding-your-private-contributions-on-your-profile.md @@ -1,6 +1,6 @@ --- title: Publicizing or hiding your private contributions on your profile -intro: 'Your {% data variables.product.product_name %} profile shows a graph of your repository contributions over the past year. You can choose to show anonymized activity from {% ifversion fpt or ghes %}private and internal{% else %}private{% endif %} repositories{% ifversion fpt or ghes %} in addition to the activity from public repositories{% endif %}.' +intro: 'Your {% data variables.product.product_name %} profile shows a graph of your repository contributions over the past year. You can choose to show anonymized activity from {% ifversion fpt or ghes or ghec %}private and internal{% else %}private{% endif %} repositories{% ifversion fpt or ghes or ghec %} in addition to the activity from public repositories{% endif %}.' redirect_from: - /articles/publicizing-or-hiding-your-private-contributions-on-your-profile - /github/setting-up-and-managing-your-github-profile/publicizing-or-hiding-your-private-contributions-on-your-profile @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles shortTitle: Private contributions @@ -18,7 +19,7 @@ If you publicize your private contributions, people without access to the privat {% note %} -**Note:** {% ifversion fpt or ghes %}On {% ifversion fpt %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_name %}{% endif %}, public contributions on your profile are visible {% ifversion fpt %}to anyone in the world who can access {% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}only to other users of {% data variables.product.product_location%}{% endif %}.{% elsif ghae %}On {% data variables.product.prodname_ghe_managed %}, only other members of your enterprise can see the contributions on your profile.{% endif %} +**Note:** {% ifversion fpt or ghes or ghec %}On {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_name %}{% endif %}, public contributions on your profile are visible {% ifversion fpt or ghec %}to anyone in the world who can access {% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}only to other users of {% data variables.product.product_location%}{% endif %}.{% elsif ghae %}On {% data variables.product.prodname_ghe_managed %}, only other members of your enterprise can see the contributions on your profile.{% endif %} {% endnote %} diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile.md index f7c8b356fce0..47c7e5a66022 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile.md @@ -10,7 +10,8 @@ redirect_from: versions: fpt: '*' ghes: '*' - ghae: 'next' + ghae: next + ghec: '*' topics: - Profiles shortTitle: Send enterprise contributions @@ -18,7 +19,7 @@ shortTitle: Send enterprise contributions ## About enterprise contributions on your {% data variables.product.prodname_dotcom_the_website %} profile -Your {% data variables.product.prodname_dotcom_the_website %} profile shows {% ifversion fpt %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} contribution counts from the past 90 days. {% data reusables.github-connect.sync-frequency %} Contribution counts from {% data variables.product.prodname_enterprise %} are considered private contributions. The commit details will only show the contribution counts and that these contributions were made in a {% data variables.product.prodname_enterprise %} environment outside of {% data variables.product.prodname_dotcom_the_website %}. +Your {% data variables.product.prodname_dotcom_the_website %} profile shows {% ifversion fpt or ghec %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} contribution counts from the past 90 days. {% data reusables.github-connect.sync-frequency %} Contribution counts from {% data variables.product.prodname_enterprise %} are considered private contributions. The commit details will only show the contribution counts and that these contributions were made in a {% data variables.product.prodname_enterprise %} environment outside of {% data variables.product.prodname_dotcom_the_website %}. You can decide whether to show counts for private contributions on your profile. For more information, see "[Publicizing or hiding your private contributions on your profile](/articles/publicizing-or-hiding-your-private-contributions-on-your-profile/)." @@ -29,15 +30,15 @@ For more information about how contributions are calculated, see "[Managing cont **Notes:** - The connection between your accounts is governed by
GitHub's Privacy Statement and users enabling the connection agree to the GitHub's Terms of Service. -- Before you can connect your {% ifversion fpt %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} profile to your {% data variables.product.prodname_dotcom_the_website %} profile, your enterprise owner must enable {% data variables.product.prodname_github_connect %} and enable contribution sharing between the environments. For more information, contact your enterprise owner. +- Before you can connect your {% ifversion fpt or ghec %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} profile to your {% data variables.product.prodname_dotcom_the_website %} profile, your enterprise owner must enable {% data variables.product.prodname_github_connect %} and enable contribution sharing between the environments. For more information, contact your enterprise owner. {% endnote %} -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ## Sending your enterprise contributions to your {% data variables.product.prodname_dotcom_the_website %} profile -{% ifversion fpt %} +{% ifversion fpt or ghec %} - To send enterprise contributions from {% data variables.product.prodname_ghe_server %} to your {% data variables.product.prodname_dotcom_the_website %} profile, see "[Sending enterprise contributions to your {% data variables.product.prodname_dotcom_the_website %} profile](/enterprise-server/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile)" in the {% data variables.product.prodname_ghe_server %} documentation.{% ifversion ghae-next %} - To send enterprise contributions from {% data variables.product.prodname_ghe_managed %} to your {% data variables.product.prodname_dotcom_the_website %} profile, see "[Sending enterprise contributions to your {% data variables.product.prodname_dotcom_the_website %} profile](/github-ae@latest/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile)" in the {% data variables.product.prodname_ghe_managed %} documentation.{% endif %} @@ -65,4 +66,4 @@ For more information about how contributions are calculated, see "[Managing cont {% endif %} -{% endif %} \ No newline at end of file +{% endif %} diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/showing-an-overview-of-your-activity-on-your-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/showing-an-overview-of-your-activity-on-your-profile.md index 88000d2ed237..c6e9fa3cfcd6 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/showing-an-overview-of-your-activity-on-your-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/showing-an-overview-of-your-activity-on-your-profile.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles shortTitle: Show an overview diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/troubleshooting-commits-on-your-timeline.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/troubleshooting-commits-on-your-timeline.md index 589e96588980..878dd5213bb7 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/troubleshooting-commits-on-your-timeline.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/troubleshooting-commits-on-your-timeline.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles shortTitle: Troubleshoot commits diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/viewing-contributions-on-your-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/viewing-contributions-on-your-profile.md index 67d9c62cdc10..75796df81d03 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/viewing-contributions-on-your-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/viewing-contributions-on-your-profile.md @@ -1,6 +1,6 @@ --- title: Viewing contributions on your profile -intro: 'Your {% data variables.product.product_name %} profile shows off {% ifversion fpt or ghes %}your pinned repositories as well as{% endif %} a graph of your repository contributions over the past year.' +intro: 'Your {% data variables.product.product_name %} profile shows off {% ifversion fpt or ghes or ghec %}your pinned repositories as well as{% endif %} a graph of your repository contributions over the past year.' redirect_from: - /articles/viewing-contributions/ - /articles/viewing-contributions-on-your-profile-page/ @@ -11,11 +11,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles shortTitle: View contributions --- -{% ifversion fpt or ghes %}Your contribution graph shows activity from public repositories. {% endif %}You can choose to show activity from {% ifversion fpt or ghes %}both public and {% endif %}private repositories, with specific details of your activity in private repositories anonymized. For more information, see "[Publicizing or hiding your private contributions on your profile](/articles/publicizing-or-hiding-your-private-contributions-on-your-profile)." +{% ifversion fpt or ghes or ghec %}Your contribution graph shows activity from public repositories. {% endif %}You can choose to show activity from {% ifversion fpt or ghes or ghec %}both public and {% endif %}private repositories, with specific details of your activity in private repositories anonymized. For more information, see "[Publicizing or hiding your private contributions on your profile](/articles/publicizing-or-hiding-your-private-contributions-on-your-profile)." {% note %} @@ -39,11 +40,11 @@ On your profile page, certain actions count as contributions: ## Popular repositories -This section displays your repositories with the most watchers. {% ifversion fpt or ghes %}Once you [pin repositories to your profile](/articles/pinning-repositories-to-your-profile), this section will change to "Pinned repositories."{% endif %} +This section displays your repositories with the most watchers. {% ifversion fpt or ghes or ghec %}Once you [pin repositories to your profile](/articles/pinning-repositories-to-your-profile), this section will change to "Pinned repositories."{% endif %} ![Popular repositories](/assets/images/help/profile/profile_popular_repositories.png) -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Pinned repositories @@ -82,7 +83,7 @@ Timestamps are calculated differently for commits and pull requests: ![Activity overview section on profile](/assets/images/help/profile/activity-overview-section.png) -The organizations featured in the activity overview are prioritized according to how active you are in the organization. If you @mention an organization in your profile bio, and you’re an organization member, then that organization is prioritized first in the activity overview. For more information, see "[Mentioning people and teams](/articles/basic-writing-and-formatting-syntax/#mentioning-people-and-teams)” or "[Adding a bio to your profile](/articles/adding-a-bio-to-your-profile/)." +The organizations featured in the activity overview are prioritized according to how active you are in the organization. If you @mention an organization in your profile bio, and you’re an organization member, then that organization is prioritized first in the activity overview. For more information, see "[Mentioning people and teams](/articles/basic-writing-and-formatting-syntax/#mentioning-people-and-teams)" or "[Adding a bio to your profile](/articles/adding-a-bio-to-your-profile/)." ## Contribution activity @@ -90,11 +91,11 @@ The contribution activity section includes a detailed timeline of your work, inc ![Contribution activity time filter](/assets/images/help/profile/contributions_activity_time_filter.png) -{% ifversion fpt or ghes or ghae-next %} +{% ifversion fpt or ghes or ghae-next or ghec %} ## Viewing contributions from {% data variables.product.prodname_enterprise %} on {% data variables.product.prodname_dotcom_the_website %} -If you use {% ifversion fpt %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} and your enterprise owner enables {% data variables.product.prodname_unified_contributions %}, you can send enterprise contribution counts from to your {% data variables.product.prodname_dotcom_the_website %} profile. For more information, see "[Sending enterprise contributions to your {% data variables.product.prodname_dotcom_the_website %} profile](/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile)." +If you use {% ifversion fpt or ghec %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} and your enterprise owner enables {% data variables.product.prodname_unified_contributions %}, you can send enterprise contribution counts from to your {% data variables.product.prodname_dotcom_the_website %} profile. For more information, see "[Sending enterprise contributions to your {% data variables.product.prodname_dotcom_the_website %} profile](/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/sending-enterprise-contributions-to-your-githubcom-profile)." {% endif %} diff --git a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/why-are-my-contributions-not-showing-up-on-my-profile.md b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/why-are-my-contributions-not-showing-up-on-my-profile.md index fe0f38543d9a..4d8e8fa20681 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/why-are-my-contributions-not-showing-up-on-my-profile.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/why-are-my-contributions-not-showing-up-on-my-profile.md @@ -1,6 +1,6 @@ --- title: Why are my contributions not showing up on my profile? -intro: 'Learn common reasons that contributions may be missing from your contributions graph.' +intro: Learn common reasons that contributions may be missing from your contributions graph. redirect_from: - /articles/why-are-my-contributions-not-showing-up-on-my-profile - /github/setting-up-and-managing-your-github-profile/why-are-my-contributions-not-showing-up-on-my-profile @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profiles shortTitle: Missing contributions @@ -16,7 +17,7 @@ shortTitle: Missing contributions ## About your contribution graph -Your profile contributions graph is a record of contributions you've made to {% data variables.product.product_name %} repositories. Contributions are timestamped according to Coordinated Universal Time (UTC) rather than your local time zone. Contributions are only counted if they meet certain criteria. In some cases, we may need to rebuild your graph in order for contributions to appear. +Your profile contributions graph is a record of contributions you've made to repositories {% ifversion ghae %}owned by{% else %}on{% endif %} {% data variables.product.product_location %}. Contributions are timestamped according to Coordinated Universal Time (UTC) rather than your local time zone. Contributions are only counted if they meet certain criteria. In some cases, we may need to rebuild your graph in order for contributions to appear. ## Contributions that are counted @@ -26,7 +27,7 @@ Issues, pull requests and discussions will appear on your contribution graph if ### Commits Commits will appear on your contributions graph if they meet **all** of the following conditions: -- The email address used for the commits is associated with your {% data variables.product.product_name %} account. +- The email address used for the commits is associated with your account on {% data variables.product.product_location %}. - The commits were made in a standalone repository, not a fork. - The commits were made: - In the repository's default branch @@ -50,7 +51,7 @@ After making a commit that meets the requirements to count as a contribution, yo ### Your local Git commit email isn't connected to your account -Commits must be made with an email address that is connected to your account on {% data variables.product.product_name %}{% ifversion fpt %}, or the {% data variables.product.product_name %}-provided `noreply` email address provided to you in your email settings,{% endif %} in order to appear on your contributions graph.{% ifversion fpt %} For more information about `noreply` email addresses, see "[Setting your commit email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#about-commit-email-addresses)."{% endif %} +Commits must be made with an email address that is connected to your account on {% data variables.product.product_location %}{% ifversion fpt or ghec %}, or the {% data variables.product.prodname_dotcom %}-provided `noreply` email address provided to you in your email settings,{% endif %} in order to appear on your contributions graph.{% ifversion fpt or ghec %} For more information about `noreply` email addresses, see "[Setting your commit email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#about-commit-email-addresses)."{% endif %} You can check the email address used for a commit by adding `.patch` to the end of a commit URL, e.g. https://github.com/octocat/octocat.github.io/commit/67c0afc1da354d8571f51b6f0af8f2794117fd10.patch: @@ -63,11 +64,11 @@ Subject: [PATCH] updated index for better welcome message The email address in the `From:` field is the address that was set in the [local git config settings](/articles/set-up-git). In this example, the email address used for the commit is `octocat@nowhere.com`. -If the email address used for the commit is not connected to your account on {% data variables.product.product_name %}, {% ifversion ghae %}change the email address used to author commits in Git. For more information, see "[Setting your commit email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#setting-your-commit-email-address-in-git)."{% else %}you must [add the email address](/articles/adding-an-email-address-to-your-github-account) to your {% data variables.product.product_name %} account. Your contributions graph will be rebuilt automatically when you add the new address.{% endif %} +If the email address used for the commit is not connected to your account on {% data variables.product.product_location %}, {% ifversion ghae %}change the email address used to author commits in Git. For more information, see "[Setting your commit email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#setting-your-commit-email-address-in-git)."{% else %}you must [add the email address](/articles/adding-an-email-address-to-your-github-account) to your account on {% data variables.product.product_location %}. Your contributions graph will be rebuilt automatically when you add the new address.{% endif %} {% warning %} -Generic email addresses--such as `jane@computer.local`--cannot be added to {% data variables.product.product_name %} accounts. If you use such an email for your commits, the commits will not be linked to your {% data variables.product.product_name %} profile and will not show up in your contributions graph. +**Warning**: Generic email addresses, such as `jane@computer.local`, cannot be added to {% data variables.product.prodname_dotcom %} accounts. If you use such an email for your commits, the commits will not be linked to your {% data variables.product.prodname_dotcom %} profile and will not show up in your contribution graph. {% endwarning %} @@ -81,7 +82,7 @@ If your commits are in a non-default or non-`gh-pages` branch and you'd like the {% warning %} -Changing the default branch of the repository will change it for all repository collaborators. Only do this if you want the new branch to become the base against which all future pull requests and commits will be made. +**Warning**: Changing the default branch of the repository will change it for all repository collaborators. Only do this if you want the new branch to become the base against which all future pull requests and commits will be made. {% endwarning %} @@ -89,7 +90,7 @@ Changing the default branch of the repository will change it for all repository Commits made in a fork will not count toward your contributions. To make them count, you must do one of the following: - [Open a pull request](/articles/creating-a-pull-request) to have your changes merged into the parent repository. -- To detach the fork and turn it into a standalone repository on {% data variables.product.product_name %}, contact {% data variables.contact.contact_support %}. If the fork has forks of its own, let {% data variables.contact.github_support %} know if the forks should move with your repository into a new network or remain in the current network. For more information, see "[About forks](/articles/about-forks/)." +- To detach the fork and turn it into a standalone repository on {% data variables.product.product_location %}, contact {% data variables.contact.contact_support %}. If the fork has forks of its own, let {% data variables.contact.contact_support %} know if the forks should move with your repository into a new network or remain in the current network. For more information, see "[About forks](/articles/about-forks/)." ## Further reading diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/index.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/index.md index 88a95eb1a19d..4d289090104f 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts children: diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/index.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/index.md index 0c8055d319a2..32822ee3b9ef 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - Repositories diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository.md index 11bd36148ce3..2e97a9734313 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository.md @@ -1,27 +1,28 @@ --- title: Inviting collaborators to a personal repository -intro: 'You can {% ifversion fpt %}invite users to become{% else %}add users as{% endif %} collaborators to your personal repository.' +intro: 'You can {% ifversion fpt or ghec %}invite users to become{% else %}add users as{% endif %} collaborators to your personal repository.' redirect_from: - /articles/how-do-i-add-a-collaborator/ - /articles/adding-collaborators-to-a-personal-repository/ - /articles/inviting-collaborators-to-a-personal-repository - /github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository - /github/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository -product: '{% data reusables.gated-features.user-repo-collaborators %}' +product: '{% ifversion fpt %}{% data reusables.gated-features.user-repo-collaborators %}{% endif %}' versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - Repositories shortTitle: Invite collaborators --- -Repositories owned by an organization can grant more granular access. For more information, see "[Access permissions on {% data variables.product.product_name %}](/articles/access-permissions-on-github)." +Repositories owned by an organization can grant more granular access. For more information, see "[Access permissions on {% data variables.product.prodname_dotcom %}](/articles/access-permissions-on-github)." {% data reusables.organizations.org-invite-expiration %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you're a member of an {% data variables.product.prodname_emu_enterprise %}, you can only invite other members of your enterprise to collaborate with you. {% data reusables.enterprise-accounts.emu-more-info-account %} @@ -33,10 +34,10 @@ If you're a member of an {% data variables.product.prodname_emu_enterprise %}, y {% endif %} -1. Ask for the username of the person you're inviting as a collaborator.{% ifversion fpt %} If they don't have a username yet, they can sign up for {% data variables.product.prodname_dotcom %} For more information, see "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/articles/signing-up-for-a-new-github-account)".{% endif %} +1. Ask for the username of the person you're inviting as a collaborator.{% ifversion fpt or ghec %} If they don't have a username yet, they can sign up for {% data variables.product.prodname_dotcom %} For more information, see "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/articles/signing-up-for-a-new-github-account)".{% endif %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.navigate-to-manage-access %} 1. Click **Invite a collaborator**. !["Invite a collaborator" button](/assets/images/help/repository/invite-a-collaborator-button.png) @@ -53,7 +54,7 @@ If you're a member of an {% data variables.product.prodname_emu_enterprise %}, y 8. Click **Add collaborator**. !["Add collaborator" button](/assets/images/help/repository/repo-settings-collab-add.png) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 9. The user will receive an email inviting them to the repository. Once they accept your invitation, they will have collaborator access to your repository. {% endif %} diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-user-accounts-repositories.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-user-accounts-repositories.md index b43646e64a47..bb515b2e0bf4 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-user-accounts-repositories.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/maintaining-ownership-continuity-of-your-user-accounts-repositories.md @@ -3,6 +3,7 @@ title: Maintaining ownership continuity of your user account's repositories intro: You can invite someone to manage your user owned repositories if you are not able to. versions: fpt: '*' + ghec: '*' topics: - Accounts - Repositories @@ -21,7 +22,7 @@ We recommend inviting another {% data variables.product.company_short %} user to Successors cannot log into your account. -An appointed successor can manage your public repositories after presenting a death certificate then waiting for 7 days or presenting an obituary then waiting for 21 days. For more information, see “[{% data variables.product.company_short %} Deceased User Policy](/github/site-policy/github-deceased-user-policy)." +An appointed successor can manage your public repositories after presenting a death certificate then waiting for 7 days or presenting an obituary then waiting for 21 days. For more information, see "[{% data variables.product.company_short %} Deceased User Policy](/free-pro-team@latest/github/site-policy/github-deceased-user-policy)." To request access to manage repositories as a successor, contact [GitHub Support](https://support.github.com/contact?tags=docs-accounts). diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-a-collaborator-from-a-personal-repository.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-a-collaborator-from-a-personal-repository.md index c6e186178c1f..3cfc5b62dd3b 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-a-collaborator-from-a-personal-repository.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-a-collaborator-from-a-personal-repository.md @@ -15,6 +15,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - Repositories @@ -28,7 +29,7 @@ While forks of private repositories are deleted when a collaborator is removed, {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.navigate-to-manage-access %} 4. To the right of the collaborator you want to remove, click {% octicon "trash" aria-label="The trash icon" %}. ![Button to remove collaborator](/assets/images/help/repository/collaborator-remove.png) diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-yourself-from-a-collaborators-repository.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-yourself-from-a-collaborators-repository.md index 5be9ba0faf6a..2c61cec16900 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-yourself-from-a-collaborators-repository.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-access-to-your-personal-repositories/removing-yourself-from-a-collaborators-repository.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - Repositories diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/adding-an-email-address-to-your-github-account.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/adding-an-email-address-to-your-github-account.md index 5c8b66fc13fd..02920b3ba88f 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/adding-an-email-address-to-your-github-account.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/adding-an-email-address-to-your-github-account.md @@ -8,12 +8,13 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Accounts - Notifications shortTitle: Add an email address --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/blocking-command-line-pushes-that-expose-your-personal-email-address.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/blocking-command-line-pushes-that-expose-your-personal-email-address.md index e891e2003cfd..248494559ade 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/blocking-command-line-pushes-that-expose-your-personal-email-address.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/blocking-command-line-pushes-that-expose-your-personal-email-address.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/managing-email-preferences/blocking-command-line-pushes-that-expose-your-personal-email-address versions: fpt: '*' + ghec: '*' topics: - Accounts - Notifications diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/changing-your-primary-email-address.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/changing-your-primary-email-address.md index 2ecbfe815952..12ecacb74f70 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/changing-your-primary-email-address.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/changing-your-primary-email-address.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Accounts - Notifications @@ -26,10 +27,6 @@ shortTitle: Primary email address 4. Under "Primary email address", use the drop-down menu to click the email address you'd like to set as your primary email address, and click **Save**. ![Set as primary button](/assets/images/help/settings/set_as_primary_email.png) 5. To remove the old email address from your account, next to the old email, click {% octicon "trash" aria-label="The trash symbol" %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %} 6. Verify your new primary email address. Without a verified email address, you won't be able to use all of {% data variables.product.product_name %}'s features. For more information, see "[Verifying your email address](/articles/verifying-your-email-address)." {% endif %} - -## Further reading - -- "[Managing email preferences](/articles/managing-email-preferences/)" diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/index.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/index.md index 5f9fb35a8718..5db5961c8b74 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/index.md @@ -1,6 +1,6 @@ --- title: Managing email preferences -intro: 'You can add or change the email addresses associated with your {% data variables.product.product_name %} account. You can also manage emails you receive from {% data variables.product.product_name %}.' +intro: 'You can add or change the email addresses associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. You can also manage emails you receive from {% data variables.product.product_name %}.' redirect_from: - /categories/managing-email-preferences/ - /articles/managing-email-preferences @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - Notifications diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/managing-marketing-emails-from-github.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/managing-marketing-emails-from-github.md index f11d7f3c83ee..63cb6d0c90a4 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/managing-marketing-emails-from-github.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/managing-marketing-emails-from-github.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/managing-email-preferences/managing-marketing-emails-from-github versions: fpt: '*' + ghec: '*' topics: - Accounts - Notifications diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/remembering-your-github-username-or-email.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/remembering-your-github-username-or-email.md index 6c5a31e86e09..b7c3eaa701c4 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/remembering-your-github-username-or-email.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/remembering-your-github-username-or-email.md @@ -10,6 +10,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Accounts - Notifications @@ -67,7 +68,7 @@ origin https://{% data variables.command_line.codeblock %}/YOUR_USERNAMEID+username@users.noreply.github.com. If you created your {% data variables.product.product_name %} account _prior to_ July 18, 2017, your {% data variables.product.product_name %}-provided `no-reply` email address is your username in the form of username@users.noreply.github.com. You can get an ID-based {% data variables.product.product_name %}-provided `no-reply` email address by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings. +**Note:** If you created your account on {% data variables.product.product_location %} _after_ July 18, 2017, your `no-reply` email address for {% data variables.product.product_name %} is a seven-digit ID number and your username in the form of ID+username@users.noreply.github.com. If you created your account on {% data variables.product.product_location %} _prior to_ July 18, 2017, your `no-reply` email address from {% data variables.product.product_name %} is username@users.noreply.github.com. You can get an ID-based `no-reply` email address for {% data variables.product.product_name %} by selecting (or deselecting and reselecting) **Keep my email address private** in your email settings. {% endnote %} -If you use your {% data variables.product.product_name %}-provided `noreply` email address to make commits and then [change your username](/articles/changing-your-github-username), those commits will not be associated with your {% data variables.product.product_name %} account. This does not apply if you're using the ID-based {% data variables.product.product_name %}-provided `noreply` address. For more information, see "[Changing your {% data variables.product.prodname_dotcom %} username](/articles/changing-your-github-username)."{% endif %} +If you use your `noreply` email address for {% data variables.product.product_name %} to make commits and then [change your username](/articles/changing-your-github-username), those commits will not be associated with your account on {% data variables.product.product_location %}. This does not apply if you're using the ID-based `noreply` address from {% data variables.product.product_name %}. For more information, see "[Changing your {% data variables.product.prodname_dotcom %} username](/articles/changing-your-github-username)."{% endif %} ## Setting your commit email address on {% data variables.product.prodname_dotcom %} @@ -62,12 +63,12 @@ If you use your {% data variables.product.product_name %}-provided `noreply` ema {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.emails %} {% data reusables.user_settings.add_and_verify_email %} -{% data reusables.user_settings.select_primary_email %}{% ifversion fpt %} +{% data reusables.user_settings.select_primary_email %}{% ifversion fpt or ghec %} {% data reusables.user_settings.keeping_your_email_address_private %}{% endif %} ## Setting your commit email address in Git -You can use the `git config` command to change the email address you associate with your Git commits. The new email address you set will be visible in any future commits you push to {% data variables.product.product_name %} from the command line. Any commits you made prior to changing your commit email address are still associated with your previous email address. +You can use the `git config` command to change the email address you associate with your Git commits. The new email address you set will be visible in any future commits you push to {% data variables.product.product_location %} from the command line. Any commits you made prior to changing your commit email address are still associated with your previous email address. ### Setting your email address for every repository on your computer @@ -85,7 +86,7 @@ You can use the `git config` command to change the email address you associate w ### Setting your email address for a single repository -{% data variables.product.product_name %} uses the email address set in your local Git configuration to associate commits pushed from the command line with your {% data variables.product.product_name %} account. +{% data variables.product.product_name %} uses the email address set in your local Git configuration to associate commits pushed from the command line with your account on {% data variables.product.product_location %}. You can change the email address associated with commits you make in a single repository. This will override your global Git config settings in this one repository, but will not affect any other repositories. diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/types-of-emails-github-sends.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/types-of-emails-github-sends.md index a8b49422ae40..30ef5eb5d317 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/types-of-emails-github-sends.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences/types-of-emails-github-sends.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/managing-email-preferences/types-of-emails-github-sends versions: fpt: '*' + ghec: '*' topics: - Accounts - Notifications diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/about-your-personal-dashboard.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/about-your-personal-dashboard.md index 427d399d3352..0eb7cae0e9dd 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/about-your-personal-dashboard.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/about-your-personal-dashboard.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts shortTitle: Your personal dashboard @@ -43,10 +44,10 @@ In the "All activity" section of your news feed, you can view updates from repos You'll see updates in your news feed when a user you follow: - Stars a repository. -- Follows another user.{% ifversion fpt or ghes %} +- Follows another user.{% ifversion fpt or ghes or ghec %} - Creates a public repository.{% endif %} - Opens an issue or pull request with "help wanted" or "good first issue" label on a repository you're watching. -- Pushes commits to a repository you watch.{% ifversion fpt or ghes %} +- Pushes commits to a repository you watch.{% ifversion fpt or ghes or ghec %} - Forks a public repository.{% endif %} - Publishes a new release. @@ -54,7 +55,7 @@ For more information about starring repositories and following people, see "[Sav ## Exploring recommended repositories -In the "Explore repositories" section on the right side of your dashboard, you can explore recommended repositories in your communities. Recommendations are based on repositories you've starred or visited, the people you follow, and activity within repositories that you have access to.{% ifversion fpt %} For more information, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)."{% endif %} +In the "Explore repositories" section on the right side of your dashboard, you can explore recommended repositories in your communities. Recommendations are based on repositories you've starred or visited, the people you follow, and activity within repositories that you have access to.{% ifversion fpt or ghec %} For more information, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)."{% endif %} ## Further reading diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company.md index d1c631c63648..b1295c2cf211 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company versions: fpt: '*' + ghec: '*' topics: - Accounts shortTitle: Leaving your company @@ -15,7 +16,7 @@ Before you leave your company, make sure you update the following information in - Unverify your company email address by [deleting it in your Email settings](/articles/changing-your-primary-email-address). You can then re-add it without verifying to keep any associated commits linked to your account. - [Change your primary email address](/articles/changing-your-primary-email-address) from your company email to your personal email. -{% ifversion fpt %} +{% ifversion fpt or ghec %} - [Verify your new primary email address](/articles/verifying-your-email-address). {% endif %} - [Change your GitHub username](/articles/changing-your-github-username) to remove any references to your company or organization, if necessary. diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/changing-your-github-username.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/changing-your-github-username.md index f23763b20956..942e40414347 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/changing-your-github-username.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/changing-your-github-username.md @@ -1,6 +1,6 @@ --- title: Changing your GitHub username -intro: 'You can change your {% data variables.product.product_name %} username at any time.' +intro: 'You can change the username for your account on {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_location %} if your instance uses built-in authentication{% endif %}.' redirect_from: - /articles/how-to-change-your-username/ - /articles/changing-your-github-user-name/ @@ -12,15 +12,35 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Accounts shortTitle: Change your username --- + +{% ifversion ghec or ghes %} + +{% note %} + +{% ifversion ghec %} + +**Note**: Members of an {% data variables.product.prodname_emu_enterprise %} cannot change usernames. Your enterprise's IdP administrator controls your username for {% data variables.product.product_name %}. For more information, see "[About {% data variables.product.prodname_emus %}](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." + +{% elsif ghes %} + +**Note**: If you sign into {% data variables.product.product_location %} with LDAP credentials or single sign-on (SSO), only your local administrator can change your username. For more information about authentication methods for {% data variables.product.product_name %}, see "[Authenticating users for {% data variables.product.product_location %}](/admin/authentication/authenticating-users-for-your-github-enterprise-server-instance)." + +{% endif %} + +{% endnote %} + +{% endif %} + ## About username changes -You can change your username to another username that is not currently in use.{% ifversion fpt %} If the username you want is not available, consider other names or unique variations. Using a number, hyphen, or an alternative spelling might help you find a similar username that's still available. +You can change your username to another username that is not currently in use.{% ifversion fpt or ghec %} If the username you want is not available, consider other names or unique variations. Using a number, hyphen, or an alternative spelling might help you find a similar username that's still available. -If you hold a trademark for the username, you can find more information about making a trademark complaint on our [Trademark Policy](/articles/github-trademark-policy/) page. +If you hold a trademark for the username, you can find more information about making a trademark complaint on our [Trademark Policy](/free-pro-team@latest/github/site-policy/github-trademark-policy) page. If you do not hold a trademark for the name, you can choose another username or keep your current username. {% data variables.contact.github_support %} cannot release the unavailable username for you. For more information, see "[Changing your username](#changing-your-username)."{% endif %} @@ -30,7 +50,7 @@ After changing your username, your old username becomes available for anyone els - [@mentions](/articles/basic-writing-and-formatting-syntax/#mentioning-people-and-teams) using your old username - Links to [gists](/articles/creating-gists) that include your old username -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you're a member of an {% data variables.product.prodname_emu_enterprise %}, you cannot make changes to your username. {% data reusables.enterprise-accounts.emu-more-info-account %} @@ -46,18 +66,18 @@ If the new owner of your old username creates a repository with the same name as ## Links to your previous profile page -After changing your username, links to your previous profile page, such as `https://{% data variables.command_line.backticks %}/previoususername`, will return a 404 error. We recommend updating any links to your {% data variables.product.product_name %} account from elsewhere{% ifversion fpt %}, such as your LinkedIn or Twitter profile{% endif %}. +After changing your username, links to your previous profile page, such as `https://{% data variables.command_line.backticks %}/previoususername`, will return a 404 error. We recommend updating any links to your account on {% data variables.product.product_location %} from elsewhere{% ifversion fpt or ghec %}, such as your LinkedIn or Twitter profile{% endif %}. ## Your Git commits -{% ifversion fpt %}Git commits that were associated with your {% data variables.product.product_name %}-provided `noreply` email address won't be attributed to your new username and won't appear in your contributions graph.{% endif %} If your Git commits are associated with another email address you've [added to your GitHub account](/articles/adding-an-email-address-to-your-github-account), {% ifversion fpt %}including the ID-based {% data variables.product.product_name %}-provided `noreply` email address, {% endif %}they'll continue to be attributed to you and appear in your contributions graph after you've changed your username. For more information on setting your email address, see "[Setting your commit email address](/articles/setting-your-commit-email-address)." +{% ifversion fpt or ghec %}Git commits that were associated with your {% data variables.product.product_name %}-provided `noreply` email address won't be attributed to your new username and won't appear in your contributions graph.{% endif %} If your Git commits are associated with another email address you've [added to your GitHub account](/articles/adding-an-email-address-to-your-github-account), {% ifversion fpt or ghec %}including the ID-based {% data variables.product.product_name %}-provided `noreply` email address, {% endif %}they'll continue to be attributed to you and appear in your contributions graph after you've changed your username. For more information on setting your email address, see "[Setting your commit email address](/articles/setting-your-commit-email-address)." ## Changing your username {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.account_settings %} 3. In the "Change username" section, click **Change username**. - ![Change Username button](/assets/images/help/settings/settings-change-username.png){% ifversion fpt %} + ![Change Username button](/assets/images/help/settings/settings-change-username.png){% ifversion fpt or ghec %} 4. Read the warnings about changing your username. If you still want to change your username, click **I understand, let's change my username**. ![Change Username warning button](/assets/images/help/settings/settings-change-username-warning-button.png) 5. Type a new username. @@ -68,5 +88,5 @@ After changing your username, links to your previous profile page, such as `http ## Further reading -- "[Why are my commits linked to the wrong user?](/articles/why-are-my-commits-linked-to-the-wrong-user)"{% ifversion fpt %} -- "[{% data variables.product.prodname_dotcom %} Username Policy](/articles/github-username-policy)"{% endif %} +- "[Why are my commits linked to the wrong user?](/articles/why-are-my-commits-linked-to-the-wrong-user)"{% ifversion fpt or ghec %} +- "[{% data variables.product.prodname_dotcom %} Username Policy](/free-pro-team@latest/github/site-policy/github-username-policy)"{% endif %} diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization.md index 9e97e1f04b19..27634c528ff3 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization.md @@ -10,6 +10,7 @@ intro: You can convert your user account into an organization. This allows more versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Accounts shortTitle: User into an organization @@ -40,7 +41,7 @@ If you want your organization to have the same name that you are currently using You can also convert your personal user account directly into an organization. Converting your account: - Preserves the repositories as they are without the need to transfer them to another account manually - Automatically invites collaborators to teams with permissions equivalent to what they had before - {% ifversion fpt %}- For user accounts on {% data variables.product.prodname_pro %}, automatically transitions billing to [the paid {% data variables.product.prodname_team %}](/articles/about-billing-for-github-accounts) without the need to re-enter payment information, adjust your billing cycle, or double pay at any time{% endif %} + {% ifversion fpt or ghec %}- For user accounts on {% data variables.product.prodname_pro %}, automatically transitions billing to [the paid {% data variables.product.prodname_team %}](/articles/about-billing-for-github-accounts) without the need to re-enter payment information, adjust your billing cycle, or double pay at any time{% endif %} 1. Create a new personal account, which you'll use to sign into GitHub and access the organization and your repositories after you convert. 2. [Leave any organizations](/articles/removing-yourself-from-an-organization) the user account you're converting has joined. @@ -64,5 +65,5 @@ You can also convert your personal user account directly into an organization. C ## Further reading - "[Setting up teams](/articles/setting-up-teams)" -{% ifversion fpt %}- "[Inviting users to join your organization](/articles/inviting-users-to-join-your-organization)"{% endif %} +{% ifversion fpt or ghec %}- "[Inviting users to join your organization](/articles/inviting-users-to-join-your-organization)"{% endif %} - "[Accessing an organization](/articles/accessing-an-organization)" diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account.md index c43d4e1d6847..115bc0b1ec57 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account.md @@ -9,13 +9,14 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Accounts shortTitle: Delete your user account --- -Deleting your user account removes all repositories, forks of private repositories, wikis, issues, pull requests, and pages owned by your account. {% ifversion fpt %} Issues and pull requests you've created and comments you've made in repositories owned by other users will not be deleted - instead, they'll be associated with our [Ghost user](https://github.com/ghost).{% else %}Issues and pull requests you've created and comments you've made in repositories owned by other users will not be deleted.{% endif %} +Deleting your user account removes all repositories, forks of private repositories, wikis, issues, pull requests, and pages owned by your account. {% ifversion fpt or ghec %} Issues and pull requests you've created and comments you've made in repositories owned by other users will not be deleted - instead, they'll be associated with our [Ghost user](https://github.com/ghost).{% else %}Issues and pull requests you've created and comments you've made in repositories owned by other users will not be deleted.{% endif %} -{% ifversion fpt %} The account name also becomes available to anyone else to use on a new account, and we stop billing you. The email address associated with the account becomes available for use with a different {% data variables.product.product_name %} account. {% endif %} +{% ifversion fpt or ghec %} The account name also becomes available to anyone else to use on a new account, and we stop billing you. The email address associated with the account becomes available for use with a different account on {% data variables.product.product_location %}. {% endif %} If you’re the only owner of an organization, you must transfer ownership to another person or delete the organization before you can delete your user account. If there are other owners in the organization, you must remove yourself from the organization before you can delete your user account. @@ -44,7 +45,7 @@ Before you delete your user account, make a copy of all repositories, private fo ![Account deletion button](/assets/images/help/settings/settings-account-delete.png) 4. In the "Make sure you want to do this" dialog box, complete the steps to confirm you understand what happens when your account is deleted: ![Delete account confirmation dialog](/assets/images/help/settings/settings-account-deleteconfirm.png) - {% ifversion fpt %}- Recall that all repositories, forks of private repositories, wikis, issues, pull requests and pages owned by your account will be deleted, your billing will end, and your username will be available to anyone for use on {% data variables.product.product_name %}. + {% ifversion fpt or ghec %}- Recall that all repositories, forks of private repositories, wikis, issues, pull requests and pages owned by your account will be deleted, your billing will end, and your username will be available to anyone for use on {% data variables.product.product_name %}. {% else %}- Recall that all repositories, forks of private repositories, wikis, issues, pull requests and pages owned by your account will be deleted, and your username will be available for use on {% data variables.product.product_name %}. {% endif %}- In the first field, type your {% data variables.product.product_name %} username or email. - In the second field, type the phrase from the prompt. diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/index.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/index.md index 0d56da15cc5c..ee9bf9b124ec 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts children: diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-access-to-your-user-accounts-project-boards.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-access-to-your-user-accounts-project-boards.md index 3a7c30e69be9..68438aea89fc 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-access-to-your-user-accounts-project-boards.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-access-to-your-user-accounts-project-boards.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts shortTitle: Manage access project boards diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-security-and-analysis-settings-for-your-user-account.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-security-and-analysis-settings-for-your-user-account.md index 8618a24de01a..a2c2eb3e6326 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-security-and-analysis-settings-for-your-user-account.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-security-and-analysis-settings-for-your-user-account.md @@ -3,6 +3,7 @@ title: Managing security and analysis settings for your user account intro: 'You can control features that secure and analyze the code in your projects on {% data variables.product.prodname_dotcom %}.' versions: fpt: '*' + ghec: '*' topics: - Accounts redirect_from: @@ -46,4 +47,4 @@ For an overview of repository-level security, see "[Securing your repository](/c - "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)" - "[Managing vulnerabilities in your project's dependencies](/github/managing-security-vulnerabilities/managing-vulnerabilities-in-your-projects-dependencies)" -{% ifversion fpt %}- "[Keeping your dependencies updated automatically](/github/administering-a-repository/keeping-your-dependencies-updated-automatically)"{% endif %} +{% ifversion fpt or ghec %}- "[Keeping your dependencies updated automatically](/github/administering-a-repository/keeping-your-dependencies-updated-automatically)"{% endif %} diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-the-default-branch-name-for-your-repositories.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-the-default-branch-name-for-your-repositories.md index b0c856b3fc73..9c1cf42a1d35 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-the-default-branch-name-for-your-repositories.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-the-default-branch-name-for-your-repositories.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Accounts redirect_from: diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-tab-size-rendering-preference.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-tab-size-rendering-preference.md index a6bc1aee343a..f8d0d23570ba 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-tab-size-rendering-preference.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-tab-size-rendering-preference.md @@ -3,6 +3,7 @@ title: Managing your tab size rendering preference intro: 'You can manage the number of spaces a tab is equal to for your user account.' versions: fpt: '*' + ghec: '*' topics: - Accounts shortTitle: Managing your tab size diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings.md index a9d064cbe8d5..b2135a16d00e 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings.md @@ -3,8 +3,9 @@ title: Managing your theme settings intro: 'You can manage how {% data variables.product.product_name %} looks to you by setting a theme preference that either follows your system settings or always uses a light or dark mode.' versions: fpt: '*' - ghae: 'next' + ghae: next ghes: '>=3.2' + ghec: '*' topics: - Accounts redirect_from: @@ -17,7 +18,7 @@ For choice and flexibility in how and when you use {% data variables.product.pro You may want to use a dark theme to reduce power consumption on certain devices, to reduce eye strain in low-light conditions, or because you prefer how the theme looks. -{% ifversion fpt or ghae-issue-4618 %} If you have low vision, you may benefit from a high contrast theme, with greater contrast between foreground and background elements.{% endif %}{% ifversion fpt or ghae-issue-4619 %} If you have colorblindness, you may benefit from our light and dark colorblind themes. +{% ifversion fpt or ghae-issue-4618 or ghec %} If you have low vision, you may benefit from a high contrast theme, with greater contrast between foreground and background elements.{% endif %}{% ifversion fpt or ghae-issue-4619 or ghec %} If you have colorblindness, you may benefit from our light and dark colorblind themes. {% note %} @@ -32,10 +33,10 @@ You may want to use a dark theme to reduce power consumption on certain devices, ![Drop-down menu under "Theme mode" for selection of theme preference](/assets/images/help/settings/theme-mode-drop-down-menu.png) 3. Click the theme you'd like to use. - If you chose a single theme, click a theme. - {% ifversion fpt or ghae-issue-4618 %}![Radio buttons for the choice of a single theme](/assets/images/help/settings/theme-choose-a-single-theme-highcontrast.png){% else %}![Radio buttons for the choice of a single theme](/assets/images/help/settings/theme-choose-a-single-theme.png){% endif %} + {% ifversion fpt or ghae-issue-4618 or ghec %}![Radio buttons for the choice of a single theme](/assets/images/help/settings/theme-choose-a-single-theme-highcontrast.png){% else %}![Radio buttons for the choice of a single theme](/assets/images/help/settings/theme-choose-a-single-theme.png){% endif %} - If you chose to follow your system settings, click a day theme and a night theme. - {% ifversion fpt or ghae-issue-4618 %}![Buttons for the choice of a theme to sync with the system setting](/assets/images/help/settings/theme-choose-a-day-and-night-theme-to-sync-highcontrast.png){% else %}![Buttons for the choice of a theme to sync with the system setting](/assets/images/help/settings/theme-choose-a-day-and-night-theme-to-sync.png){% endif %} - {% ifversion fpt or ghae-issue-4619 %} + {% ifversion fpt or ghae-issue-4618 or ghec %}![Buttons for the choice of a theme to sync with the system setting](/assets/images/help/settings/theme-choose-a-day-and-night-theme-to-sync-highcontrast.png){% else %}![Buttons for the choice of a theme to sync with the system setting](/assets/images/help/settings/theme-choose-a-day-and-night-theme-to-sync.png){% endif %} + {% ifversion fpt or ghae-issue-4619 or ghec %} - If you would like to choose a theme which is currently in public beta, you will first need to enable it with feature preview. For more information, see "[Exploring early access releases with feature preview](/get-started/using-github/exploring-early-access-releases-with-feature-preview)."{% endif %} ## Further reading diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts.md index 4bde11803bd1..37b9b51d71a0 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts versions: fpt: '*' + ghec: '*' topics: - Accounts shortTitle: Merge multiple user accounts diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-a-user-account-repository.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-a-user-account-repository.md index 085fe9349a88..e49f3c537b6b 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-a-user-account-repository.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-a-user-account-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts shortTitle: Permission user repositories @@ -17,7 +18,7 @@ shortTitle: Permission user repositories Repositories owned by user accounts have one owner. Ownership permissions can't be shared with another user account. -You can also {% ifversion fpt %}invite{% else %}add{% endif %} users on {% data variables.product.product_name %} to your repository as collaborators. For more information, see "[Inviting collaborators to a personal repository](/github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository)." +You can also {% ifversion fpt or ghec %}invite{% else %}add{% endif %} users on {% data variables.product.product_name %} to your repository as collaborators. For more information, see "[Inviting collaborators to a personal repository](/github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository)." {% tip %} @@ -31,26 +32,26 @@ The repository owner has full control of the repository. In addition to the acti | Action | More information | | :- | :- | -| {% ifversion fpt %}Invite collaborators{% else %}Add collaborators{% endif %} | "[Inviting collaborators to a personal repository](/github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository)" | -| Change the visibility of the repository | "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)" |{% ifversion fpt %} -| Limit interactions with the repository | "[Limiting interactions in your repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)" |{% endif %}{% ifversion fpt or ghes > 3.0 or ghae-next %} +| {% ifversion fpt or ghec %}Invite collaborators{% else %}Add collaborators{% endif %} | "[Inviting collaborators to a personal repository](/github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository)" | +| Change the visibility of the repository | "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)" |{% ifversion fpt or ghec %} +| Limit interactions with the repository | "[Limiting interactions in your repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)" |{% endif %}{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} | Rename a branch, including the default branch | "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)" |{% endif %} | Merge a pull request on a protected branch, even if there are no approving reviews | "[About protected branches](/github/administering-a-repository/about-protected-branches)" | | Delete the repository | "[Deleting a repository](/github/administering-a-repository/deleting-a-repository)" | -| Manage the repository's topics | "[Classifying your repository with topics](/github/administering-a-repository/classifying-your-repository-with-topics)" |{% ifversion fpt %} -| Manage security and analysis settings for the repository | "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)" |{% endif %}{% ifversion fpt %} -| Enable the dependency graph for a private repository | "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository#enabling-and-disabling-the-dependency-graph-for-a-private-repository)" |{% endif %}{% ifversion fpt or ghes > 3.0 %} +| Manage the repository's topics | "[Classifying your repository with topics](/github/administering-a-repository/classifying-your-repository-with-topics)" |{% ifversion fpt or ghec %} +| Manage security and analysis settings for the repository | "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)" |{% endif %}{% ifversion fpt or ghec %} +| Enable the dependency graph for a private repository | "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository#enabling-and-disabling-the-dependency-graph-for-a-private-repository)" |{% endif %}{% ifversion fpt or ghes > 3.0 or ghec %} | Delete and restore packages | "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" |{% endif %}{% ifversion ghes = 2.22 or ghes = 3.0 or ghae %} | Delete packages | "[Deleting packages](/packages/learn-github-packages/deleting-a-package)" |{% endif %} | Customize the repository's social media preview | "[Customizing your repository's social media preview](/github/administering-a-repository/customizing-your-repositorys-social-media-preview)" | -| Create a template from the repository | "[Creating a template repository](/github/creating-cloning-and-archiving-repositories/creating-a-template-repository)" |{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} -| Control access to {% data variables.product.prodname_dependabot_alerts %} alerts for vulnerable dependencies | "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)" |{% endif %}{% ifversion fpt %} +| Create a template from the repository | "[Creating a template repository](/github/creating-cloning-and-archiving-repositories/creating-a-template-repository)" |{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} +| Control access to {% data variables.product.prodname_dependabot_alerts %} alerts for vulnerable dependencies | "[Managing security and analysis settings for your repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)" |{% endif %}{% ifversion fpt or ghec %} | Dismiss {% data variables.product.prodname_dependabot_alerts %} in the repository | "[Viewing and updating vulnerable dependencies in your repository](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository)" | | Manage data use for a private repository | "[Managing data use settings for your private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository)"|{% endif %} | Define code owners for the repository | "[About code owners](/github/creating-cloning-and-archiving-repositories/about-code-owners)" | -| Archive the repository | "[Archiving repositories](/repositories/archiving-a-github-repository/archiving-repositories)" |{% ifversion fpt %} +| Archive the repository | "[Archiving repositories](/repositories/archiving-a-github-repository/archiving-repositories)" |{% ifversion fpt or ghec %} | Create security advisories | "[About {% data variables.product.prodname_security_advisories %}](/github/managing-security-vulnerabilities/about-github-security-advisories)" | -| Display a sponsor button | "[Displaying a sponsor button in your repository](/github/administering-a-repository/displaying-a-sponsor-button-in-your-repository)" |{% endif %}{% ifversion fpt or ghae or ghes > 3.0 %} +| Display a sponsor button | "[Displaying a sponsor button in your repository](/github/administering-a-repository/displaying-a-sponsor-button-in-your-repository)" |{% endif %}{% ifversion fpt or ghae or ghes > 3.0 or ghec %} | Allow or disallow auto-merge for pull requests | "[Managing auto-merge for pull requests in your repository](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository)" | {% endif %} ## Collaborator access for a repository owned by a user account @@ -67,21 +68,21 @@ Collaborators can also perform the following actions. | Action | More information | | :- | :- | -| Fork the repository | "[About forks](/github/collaborating-with-issues-and-pull-requests/about-forks)" |{% ifversion fpt or ghes > 3.1 or ghae-next %} +| Fork the repository | "[About forks](/github/collaborating-with-issues-and-pull-requests/about-forks)" |{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} | Rename a branch other than the default branch | "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)" |{% endif %} | Create, edit, and delete comments on commits, pull requests, and issues in the repository |
  • "[About issues](/github/managing-your-work-on-github/about-issues)"
  • "[Commenting on a pull request](/github/collaborating-with-issues-and-pull-requests/commenting-on-a-pull-request)"
  • "[Managing disruptive comments](/communities/moderating-comments-and-conversations/managing-disruptive-comments)"
| | Create, assign, close, and re-open issues in the repository | "[Managing your work with issues](/github/managing-your-work-on-github/managing-your-work-with-issues)" | | Manage labels for issues and pull requests in the repository | "[Labeling issues and pull requests](/github/managing-your-work-on-github/labeling-issues-and-pull-requests)" | | Manage milestones for issues and pull requests in the repository | "[Creating and editing milestones for issues and pull requests](/github/managing-your-work-on-github/creating-and-editing-milestones-for-issues-and-pull-requests)" | | Mark an issue or pull request in the repository as a duplicate | "[About duplicate issues and pull requests](/github/managing-your-work-on-github/about-duplicate-issues-and-pull-requests)" | -| Create, merge, and close pull requests in the repository | "[Proposing changes to your work with pull requests](/github/collaborating-with-issues-and-pull-requests/proposing-changes-to-your-work-with-pull-requests)" |{% ifversion fpt or ghae or ghes > 3.0 %} +| Create, merge, and close pull requests in the repository | "[Proposing changes to your work with pull requests](/github/collaborating-with-issues-and-pull-requests/proposing-changes-to-your-work-with-pull-requests)" |{% ifversion fpt or ghae or ghes > 3.0 or ghec %} | Enable and disable auto-merge for a pull request | "[Automatically merging a pull request](/github/collaborating-with-issues-and-pull-requests/automatically-merging-a-pull-request)"{% endif %} | Apply suggested changes to pull requests in the repository |"[Incorporating feedback in your pull request](/github/collaborating-with-issues-and-pull-requests/incorporating-feedback-in-your-pull-request)" | | Create a pull request from a fork of the repository | "[Creating a pull request from a fork](/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork)" | | Submit a review on a pull request that affects the mergeability of the pull request | "[Reviewing proposed changes in a pull request](/github/collaborating-with-issues-and-pull-requests/reviewing-proposed-changes-in-a-pull-request)" | | Create and edit a wiki for the repository | "[About wikis](/communities/documenting-your-project-with-wikis/about-wikis)" | | Create and edit releases for the repository | "[Managing releases in a repository](/github/administering-a-repository/managing-releases-in-a-repository)" | -| Act as a code owner for the repository | "[About code owners](/articles/about-code-owners)" |{% ifversion fpt or ghae %} +| Act as a code owner for the repository | "[About code owners](/articles/about-code-owners)" |{% ifversion fpt or ghae or ghec %} | Publish, view, or install packages | "[Publishing and managing packages](/github/managing-packages-with-github-packages/publishing-and-managing-packages)" |{% endif %} | Remove themselves as collaborators on the repository | "[Removing yourself from a collaborator's repository](/github/setting-up-and-managing-your-github-user-account/removing-yourself-from-a-collaborators-repository)" | diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-user-owned-project-boards.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-user-owned-project-boards.md index 92ff9b5ef711..df83878dc8ec 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-user-owned-project-boards.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/permission-levels-for-user-owned-project-boards.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts shortTitle: Permission user project boards diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/what-does-the-available-for-hire-checkbox-do.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/what-does-the-available-for-hire-checkbox-do.md index 6d002bd75b95..9c9db285e623 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/what-does-the-available-for-hire-checkbox-do.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/what-does-the-available-for-hire-checkbox-do.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/what-does-the-available-for-hire-checkbox-do versions: fpt: '*' + ghec: '*' topics: - Accounts shortTitle: Available for hire checkbox diff --git a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-your-membership-in-organizations/about-organization-membership.md b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-your-membership-in-organizations/about-organization-membership.md index 1442525b30e9..94afe65a4ccd 100644 --- a/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-your-membership-in-organizations/about-organization-membership.md +++ b/content/account-and-profile/setting-up-and-managing-your-github-user-account/managing-your-membership-in-organizations/about-organization-membership.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts shortTitle: Organization membership @@ -37,9 +38,9 @@ For more information, see the 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Configuring a custom artifact retention period You can define a custom retention period for individual artifacts created by a workflow. When using a workflow to create a new artifact, you can use `retention-days` with the `upload-artifact` action. This example demonstrates how to set a custom retention period of 5 days for the artifact named `my-artifact`: @@ -165,11 +166,11 @@ You can also download all artifacts in a workflow run by not specifying a name. If you download all a workflow run's artifacts, a directory for each artifact is created using its name. -For more information on syntax, see the {% ifversion fpt %}[actions/download-artifact](https://github.com/actions/download-artifact) action{% else %} `actions/download-artifact` action on {% data variables.product.product_location %}{% endif %}. +For more information on syntax, see the {% ifversion fpt or ghec %}[actions/download-artifact](https://github.com/actions/download-artifact) action{% else %} `actions/download-artifact` action on {% data variables.product.product_location %}{% endif %}. ## Passing data between jobs in a workflow -You can use the `upload-artifact` and `download-artifact` actions to share data between jobs in a workflow. This example workflow illustrates how to pass data between jobs in the same workflow. For more information, see the {% ifversion fpt %}[actions/upload-artifact](https://github.com/actions/upload-artifact) and [download-artifact](https://github.com/actions/download-artifact) actions{% else %} `actions/upload-artifact` and `download-artifact` actions on {% data variables.product.product_location %}{% endif %}. +You can use the `upload-artifact` and `download-artifact` actions to share data between jobs in a workflow. This example workflow illustrates how to pass data between jobs in the same workflow. For more information, see the {% ifversion fpt or ghec %}[actions/upload-artifact](https://github.com/actions/upload-artifact) and [download-artifact](https://github.com/actions/download-artifact) actions{% else %} `actions/upload-artifact` and `download-artifact` actions on {% data variables.product.product_location %}{% endif %}. Jobs that are dependent on a previous job's artifacts must wait for the dependent job to complete successfully. This workflow uses the `needs` keyword to ensure that `job_1`, `job_2`, and `job_3` run sequentially. For example, `job_2` requires `job_1` using the `needs: job_1` syntax. @@ -243,13 +244,13 @@ jobs: ``` The workflow run will archive any artifacts that it generated. For more information on downloading archived artifacts, see "[Downloading workflow artifacts](/actions/managing-workflow-runs/downloading-workflow-artifacts)." -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Workflow that passes data between jobs to perform math](/assets/images/help/repository/passing-data-between-jobs-in-a-workflow-updated.png) {% else %} ![Workflow that passes data between jobs to perform math](/assets/images/help/repository/passing-data-between-jobs-in-a-workflow.png) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading diff --git a/content/actions/advanced-guides/using-github-cli-in-workflows.md b/content/actions/advanced-guides/using-github-cli-in-workflows.md index 3ce6312847be..28cf32811647 100644 --- a/content/actions/advanced-guides/using-github-cli-in-workflows.md +++ b/content/actions/advanced-guides/using-github-cli-in-workflows.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '>=2.22' ghae: '*' + ghec: '*' topics: - CLI - Workflows diff --git a/content/actions/automating-builds-and-tests/about-continuous-integration.md b/content/actions/automating-builds-and-tests/about-continuous-integration.md index 9ce93bd3aa39..41fd4bcf32e6 100644 --- a/content/actions/automating-builds-and-tests/about-continuous-integration.md +++ b/content/actions/automating-builds-and-tests/about-continuous-integration.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - CI @@ -36,7 +37,7 @@ Building and testing your code requires a server. You can build and test updates {% else %} CI using {% data variables.product.prodname_actions %} offers workflows that can build the code in your repository and run your tests. Workflows can run on {% data variables.product.prodname_dotcom %}-hosted virtual machines, or on machines that you host yourself. For more information, see "[Virtual environments for {% data variables.product.prodname_dotcom %}-hosted runners](/actions/automating-your-workflow-with-github-actions/virtual-environments-for-github-hosted-runners)" and "[About self-hosted runners](/actions/automating-your-workflow-with-github-actions/about-self-hosted-runners)." {% endif %} -You can configure your CI workflow to run when a {% data variables.product.product_name %} event occurs (for example, when new code is pushed to your repository), on a set schedule, or when an external event occurs using the repository dispatch webhook. +You can configure your CI workflow to run when a {% data variables.product.prodname_dotcom %} event occurs (for example, when new code is pushed to your repository), on a set schedule, or when an external event occurs using the repository dispatch webhook. {% data variables.product.product_name %} runs your CI tests and provides the results of each test in the pull request, so you can see whether the change in your branch introduces an error. When all CI tests in a workflow pass, the changes you pushed are ready to be reviewed by a team member or merged. When a test fails, one of your changes may have caused the failure. @@ -52,10 +53,10 @@ For a definition of common terms, see "[Core concepts for {% data variables.prod {% data variables.product.product_name %} offers CI workflow templates for a variety of languages and frameworks. -Browse the complete list of CI workflow templates offered by {% data variables.product.product_name %} in the {% ifversion fpt %}[actions/starter-workflows](https://github.com/actions/starter-workflows/tree/main/ci) repository{% else %} `actions/starter-workflows` repository on {% data variables.product.product_location %}{% endif %}. +Browse the complete list of CI workflow templates offered by {% data variables.product.company_short %} in the {% ifversion fpt or ghec %}[actions/starter-workflows](https://github.com/actions/starter-workflows/tree/main/ci) repository{% else %} `actions/starter-workflows` repository on {% data variables.product.product_location %}{% endif %}. ## Further reading -{% ifversion fpt %} +{% ifversion fpt or ghec %} - "[Managing billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions)" {% endif %} diff --git a/content/actions/automating-builds-and-tests/building-and-testing-java-with-ant.md b/content/actions/automating-builds-and-tests/building-and-testing-java-with-ant.md index d727d74490ac..08624e0d1a52 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-java-with-ant.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-java-with-ant.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CI diff --git a/content/actions/automating-builds-and-tests/building-and-testing-java-with-gradle.md b/content/actions/automating-builds-and-tests/building-and-testing-java-with-gradle.md index 834516e0baad..9bb25ab21936 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-java-with-gradle.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-java-with-gradle.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CI diff --git a/content/actions/automating-builds-and-tests/building-and-testing-java-with-maven.md b/content/actions/automating-builds-and-tests/building-and-testing-java-with-maven.md index 0ee11553bd4c..658a965e27dd 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-java-with-maven.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-java-with-maven.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CI diff --git a/content/actions/automating-builds-and-tests/building-and-testing-net.md b/content/actions/automating-builds-and-tests/building-and-testing-net.md index 7a7f6ccda0ad..469a3d73e5c7 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-net.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-net.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Build & test .NET --- @@ -129,7 +130,7 @@ steps: ``` {% endraw %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Caching dependencies @@ -239,7 +240,7 @@ on: jobs: deploy: - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: packages: write contents: read{% endif %} diff --git a/content/actions/automating-builds-and-tests/building-and-testing-nodejs-or-python.md b/content/actions/automating-builds-and-tests/building-and-testing-nodejs-or-python.md index 865a967134ee..a421fbcbeeb9 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-nodejs-or-python.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-nodejs-or-python.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=2.22' ghae: '*' + ghec: '*' type: tutorial topics: - CI diff --git a/content/actions/automating-builds-and-tests/building-and-testing-nodejs.md b/content/actions/automating-builds-and-tests/building-and-testing-nodejs.md index 4c1170443b77..4e2133f120ab 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-nodejs.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-nodejs.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial hidden: true topics: diff --git a/content/actions/automating-builds-and-tests/building-and-testing-powershell.md b/content/actions/automating-builds-and-tests/building-and-testing-powershell.md index e810f79f7575..a1505306f9af 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-powershell.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-powershell.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' authors: - potatoqualitee type: tutorial @@ -73,7 +74,7 @@ jobs: * `run: Test-Path resultsfile.log` - Check whether a file called `resultsfile.log` is present in the repository's root directory. * `Should -Be $true` - Uses Pester to define an expected result. If the result is unexpected, then {% data variables.product.prodname_actions %} flags this as a failed test. For example: - {% ifversion fpt or ghes > 3.0 or ghae %} + {% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Failed Pester test](/assets/images/help/repository/actions-failed-pester-test-updated.png) {% else %} ![Failed Pester test](/assets/images/help/repository/actions-failed-pester-test.png) diff --git a/content/actions/automating-builds-and-tests/building-and-testing-python.md b/content/actions/automating-builds-and-tests/building-and-testing-python.md index 8e7649dd9bbc..e44d4049da0b 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-python.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-python.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial hidden: true topics: diff --git a/content/actions/automating-builds-and-tests/building-and-testing-ruby.md b/content/actions/automating-builds-and-tests/building-and-testing-ruby.md index 70339ed67c18..d7890a092f59 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-ruby.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-ruby.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CI @@ -284,7 +285,7 @@ on: jobs: build: name: Build + Publish - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: packages: write contents: read{% endif %} diff --git a/content/actions/automating-builds-and-tests/building-and-testing-swift.md b/content/actions/automating-builds-and-tests/building-and-testing-swift.md index 6c21b41a22d5..904e2d02802f 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-swift.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-swift.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CI diff --git a/content/actions/automating-builds-and-tests/building-and-testing-xamarin-applications.md b/content/actions/automating-builds-and-tests/building-and-testing-xamarin-applications.md index ff0776243b01..f51ee48b898d 100644 --- a/content/actions/automating-builds-and-tests/building-and-testing-xamarin-applications.md +++ b/content/actions/automating-builds-and-tests/building-and-testing-xamarin-applications.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CI diff --git a/content/actions/automating-builds-and-tests/index.md b/content/actions/automating-builds-and-tests/index.md index 0bdbd864bce3..1a62c58803cb 100644 --- a/content/actions/automating-builds-and-tests/index.md +++ b/content/actions/automating-builds-and-tests/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' redirect_from: - /actions/building-and-testing-code-with-continuous-integration - /actions/language-and-framework-guides diff --git a/content/actions/creating-actions/about-custom-actions.md b/content/actions/creating-actions/about-custom-actions.md index 3f141b6e5113..09d701543f45 100644 --- a/content/actions/creating-actions/about-custom-actions.md +++ b/content/actions/creating-actions/about-custom-actions.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - Action development @@ -26,7 +27,7 @@ topics: You can create actions by writing custom code that interacts with your repository in any way you'd like, including integrating with {% data variables.product.prodname_dotcom %}'s APIs and any publicly available third-party API. For example, an action can publish npm modules, send SMS alerts when urgent issues are created, or deploy production-ready code. -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can write your own actions to use in your workflow or share the actions you build with the {% data variables.product.prodname_dotcom %} community. To share actions you've built, your repository must be public. {% endif %} @@ -66,15 +67,15 @@ A _composite_ action allows you to combine multiple workflow steps within one ac If you're developing an action for other people to use, we recommend keeping the action in its own repository instead of bundling it with other application code. This allows you to version, track, and release the action just like any other software. -{% ifversion fpt %} +{% ifversion fpt or ghec %} Storing an action in its own repository makes it easier for the {% data variables.product.prodname_dotcom %} community to discover the action, narrows the scope of the code base for developers fixing issues and extending the action, and decouples the action's versioning from the versioning of other application code. {% endif %} -{% ifversion fpt %}If you're building an action that you don't plan to make available to the public, you {% else %} You{% endif %} can store the action's files in any location in your repository. If you plan to combine action, workflow, and application code in a single repository, we recommend storing actions in the `.github` directory. For example, `.github/actions/action-a` and `.github/actions/action-b`. +{% ifversion fpt or ghec %}If you're building an action that you don't plan to make available to the public, you {% else %} You{% endif %} can store the action's files in any location in your repository. If you plan to combine action, workflow, and application code in a single repository, we recommend storing actions in the `.github` directory. For example, `.github/actions/action-a` and `.github/actions/action-b`. ## Compatibility with {% data variables.product.prodname_ghe_server %} -To ensure that your action is compatible with {% data variables.product.prodname_ghe_server %}, you should make sure that you do not use any hard-coded references to {% data variables.product.prodname_dotcom %} API URLs. You should instead use environment variables to refer to the {% data variables.product.prodname_dotcom %} API: +To ensure that your action is compatible with {% data variables.product.prodname_ghe_server %}, you should make sure that you do not use any hard-coded references to {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API URLs. You should instead use environment variables to refer to the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API: - For the REST API, use the `GITHUB_API_URL` environment variable. - For GraphQL, use the `GITHUB_GRAPHQL_URL` environment variable. @@ -128,7 +129,7 @@ steps: ### Using a commit's SHA for release management -Each Git commit receives a calculated SHA value, which is unique and immutable. Your action's users might prefer to rely on a commit's SHA value, as this approach can be more reliable than specifying a tag, which could be deleted or moved. However, this means that users will not receive further updates made to the action. {% ifversion fpt or ghes > 3.0 or ghae %}You must use a commit's full SHA value, and not an abbreviated value.{% else %}Using a commit's full SHA value instead of the abbreviated value can help prevent people from using a malicious commit that uses the same abbreviation.{% endif %} +Each Git commit receives a calculated SHA value, which is unique and immutable. Your action's users might prefer to rely on a commit's SHA value, as this approach can be more reliable than specifying a tag, which could be deleted or moved. However, this means that users will not receive further updates made to the action. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}You must use a commit's full SHA value, and not an abbreviated value.{% else %}Using a commit's full SHA value instead of the abbreviated value can help prevent people from using a malicious commit that uses the same abbreviation.{% endif %} ```yaml steps: diff --git a/content/actions/creating-actions/creating-a-composite-action.md b/content/actions/creating-actions/creating-a-composite-action.md index 98d79eecd39c..59115653b896 100644 --- a/content/actions/creating-actions/creating-a-composite-action.md +++ b/content/actions/creating-actions/creating-a-composite-action.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Action development @@ -28,7 +29,7 @@ Once you complete this project, you should understand how to build your own comp ## Prerequisites -Before you begin, you'll create a {% data variables.product.product_name %} repository. +Before you begin, you'll create a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. 1. Create a new public repository on {% data variables.product.product_location %}. You can choose any repository name, or use the following `hello-world-composite-action` example. You can add these files after your project has been pushed to {% data variables.product.product_name %}. For more information, see "[Create a new repository](/articles/creating-a-new-repository)." diff --git a/content/actions/creating-actions/creating-a-docker-container-action.md b/content/actions/creating-actions/creating-a-docker-container-action.md index e586f612aecc..a3f75fd0b204 100644 --- a/content/actions/creating-actions/creating-a-docker-container-action.md +++ b/content/actions/creating-actions/creating-a-docker-container-action.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Action development @@ -186,7 +187,7 @@ Now you're ready to test your action out in a workflow. When an action is in a p ### Example using a public action -The following workflow code uses the completed _hello world_ action in the public [`actions/hello-world-docker-action`](https://github.com/actions/hello-world-docker-action) repository. Copy the following workflow example code into a `.github/workflows/main.yml` file, but replace the `actions/hello-world-docker-action` with your repository and action name. You can also replace the `who-to-greet` input with your name. {% ifversion fpt %}Public actions can be used even if they're not published to {% data variables.product.prodname_marketplace %}. For more information, see "[Publishing an action](/actions/creating-actions/publishing-actions-in-github-marketplace#publishing-an-action)." {% endif %} +The following workflow code uses the completed _hello world_ action in the public [`actions/hello-world-docker-action`](https://github.com/actions/hello-world-docker-action) repository. Copy the following workflow example code into a `.github/workflows/main.yml` file, but replace the `actions/hello-world-docker-action` with your repository and action name. You can also replace the `who-to-greet` input with your name. {% ifversion fpt or ghec %}Public actions can be used even if they're not published to {% data variables.product.prodname_marketplace %}. For more information, see "[Publishing an action](/actions/creating-actions/publishing-actions-in-github-marketplace#publishing-an-action)." {% endif %} {% raw %} **.github/workflows/main.yml** @@ -211,7 +212,7 @@ jobs: ### Example using a private action -Copy the following example workflow code into a `.github/workflows/main.yml` file in your action's repository. You can also replace the `who-to-greet` input with your name. {% ifversion fpt %}This private action can't be published to {% data variables.product.prodname_marketplace %}, and can only be used in this repository.{% endif %} +Copy the following example workflow code into a `.github/workflows/main.yml` file in your action's repository. You can also replace the `who-to-greet` input with your name. {% ifversion fpt or ghec %}This private action can't be published to {% data variables.product.prodname_marketplace %}, and can only be used in this repository.{% endif %} {% raw %} **.github/workflows/main.yml** @@ -238,9 +239,9 @@ jobs: ``` {% endraw %} -From your repository, click the **Actions** tab, and select the latest workflow run. {% ifversion fpt or ghes > 3.0 or ghae %}Under **Jobs** or in the visualization graph, click **A job to say hello**. {% endif %}You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log. +From your repository, click the **Actions** tab, and select the latest workflow run. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}Under **Jobs** or in the visualization graph, click **A job to say hello**. {% endif %}You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![A screenshot of using your action in a workflow](/assets/images/help/repository/docker-action-workflow-run-updated.png) {% else %} ![A screenshot of using your action in a workflow](/assets/images/help/repository/docker-action-workflow-run.png) diff --git a/content/actions/creating-actions/creating-a-javascript-action.md b/content/actions/creating-actions/creating-a-javascript-action.md index 3c0d253a3485..178d82ee48f5 100644 --- a/content/actions/creating-actions/creating-a-javascript-action.md +++ b/content/actions/creating-actions/creating-a-javascript-action.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Action development @@ -271,9 +272,9 @@ jobs: ``` {% endraw %} -From your repository, click the **Actions** tab, and select the latest workflow run. {% ifversion fpt or ghes > 3.0 or ghae %}Under **Jobs** or in the visualization graph, click **A job to say hello**. {% endif %}You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log. +From your repository, click the **Actions** tab, and select the latest workflow run. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}Under **Jobs** or in the visualization graph, click **A job to say hello**. {% endif %}You should see "Hello Mona the Octocat" or the name you used for the `who-to-greet` input and the timestamp printed in the log. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![A screenshot of using your action in a workflow](/assets/images/help/repository/javascript-action-workflow-run-updated-2.png) {% elsif ghes > 2.22 %} ![A screenshot of using your action in a workflow](/assets/images/help/repository/javascript-action-workflow-run-updated.png) diff --git a/content/actions/creating-actions/developing-a-third-party-cli-action.md b/content/actions/creating-actions/developing-a-third-party-cli-action.md index 273f2d46bf78..7c981e4f3f0e 100644 --- a/content/actions/creating-actions/developing-a-third-party-cli-action.md +++ b/content/actions/creating-actions/developing-a-third-party-cli-action.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.actions %}' redirect_from: [] versions: fpt: '*' + ghec: '*' type: tutorial topics: - Actions diff --git a/content/actions/creating-actions/dockerfile-support-for-github-actions.md b/content/actions/creating-actions/dockerfile-support-for-github-actions.md index 749bf9ab4594..8e7ff1c4b041 100644 --- a/content/actions/creating-actions/dockerfile-support-for-github-actions.md +++ b/content/actions/creating-actions/dockerfile-support-for-github-actions.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: reference --- diff --git a/content/actions/creating-actions/index.md b/content/actions/creating-actions/index.md index 37632f9e1370..4e695cf613fa 100644 --- a/content/actions/creating-actions/index.md +++ b/content/actions/creating-actions/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-custom-actions - /creating-a-docker-container-action diff --git a/content/actions/creating-actions/metadata-syntax-for-github-actions.md b/content/actions/creating-actions/metadata-syntax-for-github-actions.md index 3155c98d4244..560a4ec40f63 100644 --- a/content/actions/creating-actions/metadata-syntax-for-github-actions.md +++ b/content/actions/creating-actions/metadata-syntax-for-github-actions.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: reference --- @@ -215,7 +216,7 @@ For example, this `cleanup.js` will only run on Linux-based runners: ### `runs.steps` -{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 or ghec %} **Required** The steps that you plan to run in this action. These can be either `run` steps or `uses` steps. {% else %} **Required** The steps that you plan to run in this action. @@ -223,7 +224,7 @@ For example, this `cleanup.js` will only run on Linux-based runners: #### `runs.steps[*].run` -{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 or ghec %} **Optional** The command you want to run. This can be inline or a script in your action repository: {% else %} **Required** The command you want to run. This can be inline or a script in your action repository: @@ -253,7 +254,7 @@ For more information, see "[`github context`](/actions/reference/context-and-exp #### `runs.steps[*].shell` -{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 or ghec %} **Optional** The shell where you want to run the command. You can use any of the shells listed [here](/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell). Required if `run` is set. {% else %} **Required** The shell where you want to run the command. You can use any of the shells listed [here](/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell). Required if `run` is set. @@ -269,13 +270,13 @@ For more information, see "[`github context`](/actions/reference/context-and-exp #### `runs.steps[*].env` -**Optional** Sets a `map` of environment variables for only that step. If you want to modify the environment variable stored in the workflow, use {% ifversion fpt or ghes > 2.22 or ghae %}`echo "{name}={value}" >> $GITHUB_ENV`{% else %}`echo "::set-env name={name}::{value}"`{% endif %} in a composite step. +**Optional** Sets a `map` of environment variables for only that step. If you want to modify the environment variable stored in the workflow, use {% ifversion fpt or ghes > 2.22 or ghae or ghec %}`echo "{name}={value}" >> $GITHUB_ENV`{% else %}`echo "::set-env name={name}::{value}"`{% endif %} in a composite step. #### `runs.steps[*].working-directory` **Optional** Specifies the working directory where the command is run. -{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4853 or ghec %} #### `runs.steps[*].uses` **Optional** Selects an action to run as part of a step in your job. An action is a reusable unit of code. You can use an action defined in the same repository as the workflow, a public repository, or in a [published Docker container image](https://hub.docker.com/). diff --git a/content/actions/creating-actions/publishing-actions-in-github-marketplace.md b/content/actions/creating-actions/publishing-actions-in-github-marketplace.md index db6bcc1bd4e6..7508c6cab84c 100644 --- a/content/actions/creating-actions/publishing-actions-in-github-marketplace.md +++ b/content/actions/creating-actions/publishing-actions-in-github-marketplace.md @@ -8,6 +8,7 @@ redirect_from: - /actions/building-actions/publishing-actions-in-github-marketplace versions: fpt: '*' + ghec: '*' type: how_to shortTitle: Publish in GitHub Marketplace --- diff --git a/content/actions/creating-actions/setting-exit-codes-for-actions.md b/content/actions/creating-actions/setting-exit-codes-for-actions.md index 0efd791107df..41e776f1ae7a 100644 --- a/content/actions/creating-actions/setting-exit-codes-for-actions.md +++ b/content/actions/creating-actions/setting-exit-codes-for-actions.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: how_to --- diff --git a/content/actions/deployment/about-continuous-deployment.md b/content/actions/deployment/about-continuous-deployment.md index a29ec4802ec8..43ba7c8e602d 100644 --- a/content/actions/deployment/about-continuous-deployment.md +++ b/content/actions/deployment/about-continuous-deployment.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - CD @@ -28,19 +29,19 @@ You can set up a {% data variables.product.prodname_actions %} workflow to deplo You can configure your CD workflow to run when a {% data variables.product.product_name %} event occurs (for example, when new code is pushed to the default branch of your repository), on a set schedule, manually, or when an external event occurs using the repository dispatch webhook. For more information about when your workflow can run, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)." -{% ifversion fpt or ghae or ghes > 3.0 %} -{% data variables.product.prodname_actions %} provides features that give you more control over deployments. For example, you can use environments to require approval for a job to proceed, restrict which branches can trigger a workflow, or limit access to secrets. {% ifversion fpt or ghae-next or ghes > 3.1 %}You can use concurrency to limit your CD pipeline to a maximum of one in-progress deployment and one pending deployment. {% endif %}For more information about these features, see "[Deploying with GitHub Actions](/actions/deployment/deploying-with-github-actions)" and "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)."{% endif %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %} +{% data variables.product.prodname_actions %} provides features that give you more control over deployments. For example, you can use environments to require approval for a job to proceed, restrict which branches can trigger a workflow, or limit access to secrets. {% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can use concurrency to limit your CD pipeline to a maximum of one in-progress deployment and one pending deployment. {% endif %}For more information about these features, see "[Deploying with GitHub Actions](/actions/deployment/deploying-with-github-actions)" and "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)."{% endif %} ## Workflow templates and third party actions {% data reusables.actions.cd-templates-actions %} -{% ifversion fpt or ghae or ghes > 3.0 %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %} ## Further reading - [Deploying with GitHub Actions](/actions/deployment/deploying-with-github-actions) -- [Using environments for deployment](/actions/deployment/using-environments-for-deployment){% ifversion fpt %} +- [Using environments for deployment](/actions/deployment/using-environments-for-deployment){% ifversion fpt or ghec %} - "[Managing billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions)"{% endif %} {% endif %} diff --git a/content/actions/deployment/deploying-to-amazon-elastic-container-service.md b/content/actions/deployment/deploying-to-amazon-elastic-container-service.md index 67df12b66762..09c6fda9cb19 100644 --- a/content/actions/deployment/deploying-to-amazon-elastic-container-service.md +++ b/content/actions/deployment/deploying-to-amazon-elastic-container-service.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CD @@ -68,7 +69,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you See the documentation for each action used below for the recommended IAM policies for the IAM user, and methods for handling the access key credentials. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} 5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %} {% endif %} diff --git a/content/actions/deployment/deploying-to-azure-app-service.md b/content/actions/deployment/deploying-to-azure-app-service.md index aef08c802437..0a5328b4e4e9 100644 --- a/content/actions/deployment/deploying-to-azure-app-service.md +++ b/content/actions/deployment/deploying-to-azure-app-service.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CD @@ -70,7 +71,7 @@ Before creating your {% data variables.product.prodname_actions %} workflow, you 4. For Linux apps, add an app setting called `WEBSITE_WEBDEPLOY_USE_SCM` and set it to true in your app. For more information, see "[Configure apps in the portal](https://docs.microsoft.com/en-us/azure/app-service/configure-common#configure-app-settings)" in the Azure documentation. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} 5. Optionally, configure a deployment environment. {% data reusables.actions.about-environments %} {% endif %} diff --git a/content/actions/deployment/deploying-to-google-kubernetes-engine.md b/content/actions/deployment/deploying-to-google-kubernetes-engine.md index 0be960241028..c7fb7c270911 100644 --- a/content/actions/deployment/deploying-to-google-kubernetes-engine.md +++ b/content/actions/deployment/deploying-to-google-kubernetes-engine.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CD @@ -106,7 +107,7 @@ Store the name of your project as a secret named `GKE_PROJECT`. For more informa ### (Optional) Configuring kustomize Kustomize is an optional tool used for managing YAML specs. After creating a _kustomization_ file, the workflow below can be used to dynamically set fields of the image and pipe in the result to `kubectl`. For more information, see [kustomize usage](https://github.com/kubernetes-sigs/kustomize#usage). -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ### (Optional) Configure a deployment environment {% data reusables.actions.about-environments %} diff --git a/content/actions/deployment/deploying-with-github-actions.md b/content/actions/deployment/deploying-with-github-actions.md index 8dadca8f3591..d10947f6972b 100644 --- a/content/actions/deployment/deploying-with-github-actions.md +++ b/content/actions/deployment/deploying-with-github-actions.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: '*' + ghec: '*' type: overview topics: - CD @@ -143,17 +144,17 @@ You can also view the logs of each workflow run and the history of workflow runs ## Tracking deployments through apps -{% ifversion fpt %} -If your {% data variables.product.product_name %} personal account or organization is integrated with Microsoft Teams or Slack, you can track deployments that use environments through Microsoft Teams or Slack. For example, you can receive notifications through the app when a deployment is pending approval, when a deployment is approved, or when the deployment status changes. For more information about integrating Microsoft Teams or Slack, see "[GitHub extensions and integrations](/github/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations#team-communication-tools)." +{% ifversion fpt or ghec %} +If your personal account or organization on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} is integrated with Microsoft Teams or Slack, you can track deployments that use environments through Microsoft Teams or Slack. For example, you can receive notifications through the app when a deployment is pending approval, when a deployment is approved, or when the deployment status changes. For more information about integrating Microsoft Teams or Slack, see "[GitHub extensions and integrations](/github/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations#team-communication-tools)." {% endif %} You can also build an app that uses deployment and deployment status webhooks to track deployments. {% data reusables.actions.environment-deployment-event %} For more information, see "[Apps](/developers/apps)" and "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#deployment)." -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Choosing a runner -You can run your deployment workflow on {% data variables.product.product_name %}-hosted runners or on self-hosted runners. Traffic from {% data variables.product.product_name %}-hosted runners can come from a [wide range of network addresses](/rest/reference/meta#get-github-meta-information). If you are deploying to an internal environment and your company restricts external traffic into private networks, {% data variables.product.prodname_actions %} workflows running on {% data variables.product.product_name %}-hosted runners may not be communicate with your internal services or resources. To overcome this, you can host your own runners. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners)" and "[About GitHub-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners)." +You can run your deployment workflow on {% data variables.product.company_short %}-hosted runners or on self-hosted runners. Traffic from {% data variables.product.company_short %}-hosted runners can come from a [wide range of network addresses](/rest/reference/meta#get-github-meta-information). If you are deploying to an internal environment and your company restricts external traffic into private networks, {% data variables.product.prodname_actions %} workflows running on {% data variables.product.company_short %}-hosted runners may not be communicate with your internal services or resources. To overcome this, you can host your own runners. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners)" and "[About GitHub-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners)." {% endif %} diff --git a/content/actions/deployment/index.md b/content/actions/deployment/index.md index 18e84bfadb0f..b1639715257a 100644 --- a/content/actions/deployment/index.md +++ b/content/actions/deployment/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-continuous-deployment - /deploying-with-github-actions diff --git a/content/actions/deployment/installing-an-apple-certificate-on-macos-runners-for-xcode-development.md b/content/actions/deployment/installing-an-apple-certificate-on-macos-runners-for-xcode-development.md index bf2d15646fde..a6ccf205b19d 100644 --- a/content/actions/deployment/installing-an-apple-certificate-on-macos-runners-for-xcode-development.md +++ b/content/actions/deployment/installing-an-apple-certificate-on-macos-runners-for-xcode-development.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CI diff --git a/content/actions/deployment/using-environments-for-deployment.md b/content/actions/deployment/using-environments-for-deployment.md index 834dc7887847..0d725262d6fc 100644 --- a/content/actions/deployment/using-environments-for-deployment.md +++ b/content/actions/deployment/using-environments-for-deployment.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: '*' + ghec: '*' --- {% data reusables.actions.ae-beta %} @@ -21,7 +22,7 @@ Environments are used to describe a general deployment target like `production`, You can configure environments with protection rules and secrets. When a workflow job references an environment, the job won't start until all of the environment's protection rules pass. A job also cannot access secrets that are defined in an environment until all the environment protection rules pass. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** If you don't use {% data variables.product.prodname_ghe_cloud %} and convert a repository from public to private, any configured protection rules or environment secrets will be ignored, and you will not be able to configure any environments. If you convert your repository back to public, you will have access to any previously configured protection rules and environment secrets. {% data reusables.enterprise.link-to-ghec-trial %} @@ -31,7 +32,7 @@ You can configure environments with protection rules and secrets. When a workflo ## Environment protection rules -Environment protection rules require specific conditions to pass before a job referencing the environment can proceed. {% ifversion fpt or ghae-next or ghes > 3.1 %}You can use environment protection rules to require a manual approval, delay a job, or restrict the environment to certain branches.{% else %}You can use environment protection rules to require a manual approval or delay a job.{% endif %} +Environment protection rules require specific conditions to pass before a job referencing the environment can proceed. {% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can use environment protection rules to require a manual approval, delay a job, or restrict the environment to certain branches.{% else %}You can use environment protection rules to require a manual approval or delay a job.{% endif %} ### Required reviewers @@ -43,7 +44,7 @@ For more information on reviewing jobs that reference an environment with requir Use a wait timer to delay a job for a specific amount of time after the job is initially triggered. The time (in minutes) must be an integer between 0 and 43,200 (30 days). -{% ifversion fpt or ghae-next or ghes > 3.1 %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} ### Deployment branches Use deployment branches to restrict which branches can deploy to the environment. Below are the options for deployment branches for an environment: @@ -90,7 +91,7 @@ Secrets stored in an environment are only available to workflow jobs that refere 1. Enter the secret value. 1. Click **Add secret**. -{% ifversion fpt or ghae-next or ghes > 3.1 %}You can also create and configure environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)" and "[Secrets](/rest/reference/actions#secrets)."{% endif %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can also create and configure environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)" and "[Secrets](/rest/reference/actions#secrets)."{% endif %} Running a workflow that references an environment that does not exist will create an environment with the referenced name. The newly created environment will not have any protection rules or secrets configured. Anyone that can edit workflows in the repository can create environments via a workflow file, but only repository admins can configure the environment. @@ -114,13 +115,13 @@ Deleting an environment will delete all secrets and protection rules associated 1. Next to the environment that you want to delete, click {% octicon "trash" aria-label="The trash icon" %}. 2. Click **I understand, delete this environment**. -{% ifversion fpt or ghae-next or ghes > 3.1 %}You can also delete environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)."{% endif %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can also delete environments through the REST API. For more information, see "[Environments](/rest/reference/repos#environments)."{% endif %} ## How environments relate to deployments {% data reusables.actions.environment-deployment-event %} -You can access these objects through the REST API or GraphQL API. You can also subscribe to these webhook events. For more information, see "[Repositories](/rest/reference/repos#deployments)" (REST API), "[Objects](/graphql/reference/objects#deployment)" (GraphQL API), or "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#deployment)." +You can access these objects through the REST API or GraphQL API. You can also subscribe to these webhook events. For more information, see "[Repositories](/rest/reference/repos#deployments)" (REST API), "[Objects]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#deployment)" (GraphQL API), or "[Webhook events and payloads](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#deployment)." ## Next steps diff --git a/content/actions/deployment/viewing-deployment-history.md b/content/actions/deployment/viewing-deployment-history.md index 515a2835ad20..aad9d98b88bc 100644 --- a/content/actions/deployment/viewing-deployment-history.md +++ b/content/actions/deployment/viewing-deployment-history.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: View deployment history @@ -14,7 +15,7 @@ redirect_from: {% data reusables.actions.ae-beta %} -You can deliver deployments through {% ifversion fpt or ghae or ghes > 3.0 %}{% data variables.product.prodname_actions %} and environments or with {% endif %}the REST API and third party apps. {% ifversion fpt or ghae ghes > 3.0 %}For more information about using environments to deploy with {% data variables.product.prodname_actions %}, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)." {% endif %}For more information about deployments with the REST API, see "[Repositories](/rest/reference/repos#deployments)." +You can deliver deployments through {% ifversion fpt or ghae or ghes > 3.0 or ghec %}{% data variables.product.prodname_actions %} and environments or with {% endif %}the REST API and third party apps. {% ifversion fpt or ghae ghes > 3.0 or ghec %}For more information about using environments to deploy with {% data variables.product.prodname_actions %}, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)." {% endif %}For more information about deployments with the REST API, see "[Repositories](/rest/reference/repos#deployments)." To view current and past deployments, click **Environments** on the home page of your repository. {% ifversion ghae or ghes < 3.0 %} diff --git a/content/actions/guides.md b/content/actions/guides.md index d02ed0b24c3d..9c6031f5bb5a 100644 --- a/content/actions/guides.md +++ b/content/actions/guides.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' learningTracks: - getting_started - continuous_integration diff --git a/content/actions/hosting-your-own-runners/about-self-hosted-runners.md b/content/actions/hosting-your-own-runners/about-self-hosted-runners.md index 84c0a927196f..99321bd11ccd 100644 --- a/content/actions/hosting-your-own-runners/about-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/about-self-hosted-runners.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview --- @@ -57,7 +58,7 @@ You can use any machine as a self-hosted runner as long at it meets these requir * The machine has enough hardware resources for the type of workflows you plan to run. The self-hosted runner application itself only requires minimal resources. * If you want to run workflows that use Docker container actions or service containers, you must use a Linux machine and Docker must be installed. -{% ifversion fpt or ghes > 3.2 %} +{% ifversion fpt or ghes > 3.2 or ghec %} ## Autoscaling your self-hosted runners You can automatically increase or decrease the number of self-hosted runners in your environment in response to the webhook events you receive. For more information, see "[Autoscaling with self-hosted runners](/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners)." @@ -134,7 +135,7 @@ For example, if your instance name is `octoghae`, then you will need to allow th If you use an IP address allow list for your {% data variables.product.prodname_dotcom %} organization or enterprise account, you must add your self-hosted runner's IP address to the allow list. For more information, see "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} You must ensure that the machine has the appropriate network access to communicate with the {% data variables.product.prodname_dotcom %} URLs listed below. @@ -158,7 +159,7 @@ pkg-containers-az.githubusercontent.com *.blob.core.windows.net ``` -If you use an IP address allow list for your {% data variables.product.prodname_dotcom %} organization or enterprise account, you must add your self-hosted runner's IP address to the allow list. For more information, see "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list)" or "[Enforcing security settings in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-security-settings-in-your-enterprise-account#using-github-actions-with-an-ip-allow-list)". +If you use an IP address allow list for your {% data variables.product.prodname_dotcom %} organization or enterprise account, you must add your self-hosted runner's IP address to the allow list. For more information, see "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list)" or "[Enforcing policies for security settings in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise)". {% else %} diff --git a/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md b/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md index 2b720a299a99..e53e41204ea4 100644 --- a/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial shortTitle: Add self-hosted runners --- @@ -37,7 +38,7 @@ For more information, see "[About self-hosted runners](/github/automating-your-w You can add self-hosted runners to a single repository. To add a self-hosted runner to a user repository, you must be the repository owner. For an organization repository, you must be an organization owner or have admin access to the repository. For information about how to add a self-hosted runner with the REST API, see "[Self-hosted runners](/rest/reference/actions#self-hosted-runners)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.github-actions.settings-sidebar-actions %} @@ -49,7 +50,7 @@ You can add self-hosted runners to a single repository. To add a self-hosted run {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.github-actions.settings-sidebar-actions-runners %} -1. Under {% ifversion fpt or ghes > 3.1 or ghae %}"Runners"{% else %}"Self-hosted runners"{% endif %}, click **Add runner**. +1. Under {% ifversion fpt or ghes > 3.1 or ghae or ghec %}"Runners"{% else %}"Self-hosted runners"{% endif %}, click **Add runner**. {% data reusables.github-actions.self-hosted-runner-configure %} {% endif %} {% data reusables.github-actions.self-hosted-runner-check-installation-success %} @@ -58,7 +59,7 @@ You can add self-hosted runners to a single repository. To add a self-hosted run You can add self-hosted runners at the organization level, where they can be used to process jobs for multiple repositories in an organization. To add a self-hosted runner to an organization, you must be an organization owner. For information about how to add a self-hosted runner with the REST API, see "[Self-hosted runners](/rest/reference/actions#self-hosted-runners)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.organizations.navigate-to-org %} {% data reusables.organizations.org_settings %} {% data reusables.github-actions.settings-sidebar-actions %} @@ -70,7 +71,7 @@ You can add self-hosted runners at the organization level, where they can be use {% data reusables.organizations.navigate-to-org %} {% data reusables.organizations.org_settings %} {% data reusables.github-actions.settings-sidebar-actions-runners %} -1. Under {% ifversion fpt or ghes > 3.1 or ghae %}"Runners"{% else %}"Self-hosted runners"{% endif %}, click **Add runner**. +1. Under {% ifversion fpt or ghes > 3.1 or ghae or ghec %}"Runners"{% else %}"Self-hosted runners"{% endif %}, click **Add runner**. {% data reusables.github-actions.self-hosted-runner-configure %} {% endif %} @@ -84,7 +85,7 @@ You can add self-hosted runners to an enterprise, where they can be assigned to New runners are assigned to the default group. You can modify the runner's group after you've registered the runner. For more information, see "[Managing access to self-hosted runners](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} To add a self-hosted runner to an enterprise account, you must be an enterprise owner. For information about how to add a self-hosted runner with the REST API, see the [Enterprise Administration GitHub Actions APIs](/rest/reference/enterprise-admin#github-actions). {% data reusables.enterprise-accounts.access-enterprise %} diff --git a/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md b/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md index 82a3ace9c42a..46e2d76a65e2 100644 --- a/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/autoscaling-with-self-hosted-runners.md @@ -2,8 +2,9 @@ title: Autoscaling with self-hosted runners intro: 'You can automatically scale your self-hosted runners in response to webhook events.' versions: - free-pro-team: '*' - enterprise-server: '>3.2' + fpt: '*' + ghec: '*' + ghes: '>3.2' type: 'overview' --- diff --git a/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md b/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md index be2584a4df5c..0dff02b048b7 100644 --- a/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md +++ b/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial defaultPlatform: linux shortTitle: Run runner app on startup diff --git a/content/actions/hosting-your-own-runners/index.md b/content/actions/hosting-your-own-runners/index.md index f253267a0430..259e9b7351bc 100644 --- a/content/actions/hosting-your-own-runners/index.md +++ b/content/actions/hosting-your-own-runners/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-self-hosted-runners - /adding-self-hosted-runners diff --git a/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md b/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md index 911f4f0d84ab..0e7f65a3c4bd 100644 --- a/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md +++ b/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial shortTitle: Manage runner groups --- @@ -18,7 +19,7 @@ shortTitle: Manage runner groups ## About self-hosted runner groups -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** All organizations have a single default self-hosted runner group. Only enterprise accounts and organizations owned by enterprise accounts can create and manage additional self-hosted runner groups. @@ -40,7 +41,7 @@ Self-hosted runners are automatically assigned to the default group when created When creating a group, you must choose a policy that defines which repositories have access to the runner group. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.organizations.navigate-to-org %} {% data reusables.organizations.org_settings %} {% data reusables.github-actions.settings-sidebar-actions-runner-groups %} @@ -90,7 +91,7 @@ Self-hosted runners are automatically assigned to the default group when created When creating a group, you must choose a policy that defines which organizations have access to the runner group. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.actions-tab %} @@ -119,7 +120,7 @@ When creating a group, you must choose a policy that defines which organizations ![Add runner group](/assets/images/help/settings/actions-enterprise-account-add-runner-group.png) 1. Enter a name for your runner group, and assign a policy for organization access. - {% ifversion fpt or ghes > 2.22 or ghae %} You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise. By default, only private repositories can access runners in a runner group, but you can override this. This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.{% elsif ghes = 2.22 %}You can configure a runner group to be accessible to all organizations in the enterprise or choose specific organizations.{% endif %} + {% ifversion fpt or ghes > 2.22 or ghae or ghec %} You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise. By default, only private repositories can access runners in a runner group, but you can override this. This setting can't be overridden if configuring an organization's runner group that was shared by an enterprise.{% elsif ghes = 2.22 %}You can configure a runner group to be accessible to all organizations in the enterprise or choose specific organizations.{% endif %} {% warning %} @@ -138,7 +139,7 @@ When creating a group, you must choose a policy that defines which organizations ## Changing the access policy of a self-hosted runner group You can update the access policy of a runner group, or rename a runner group. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.github-actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} {% data reusables.github-actions.settings-sidebar-actions-runner-groups-selection %} 1. Modify the access options, or change the runner group name. @@ -173,7 +174,7 @@ Could not find any self-hosted runner group named "rg-runnergroup". ## Moving a self-hosted runner to a group If you don't specify a runner group during the registration process, your new self-hosted runners are automatically assigned to the default group, and can then be moved to another group. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} {% data reusables.github-actions.self-hosted-runner-navigate-to-repo-org-enterprise %} 1. In the "Runners" list, click the runner that you want to configure. 1. Select the Runner group dropdown menu. @@ -190,7 +191,7 @@ If you don't specify a runner group during the registration process, your new se Self-hosted runners are automatically returned to the default group when their group is removed. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} {% data reusables.github-actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} 1. In the list of groups, to the right of the group you want to delete, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}. 1. To remove the group, click **Remove group**. diff --git a/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md b/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md index a228eb4a51d7..ef4fa168c637 100644 --- a/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial defaultPlatform: linux shortTitle: Monitor & troubleshoot @@ -25,7 +26,7 @@ shortTitle: Monitor & troubleshoot {% data reusables.github-actions.self-hosted-runner-navigate-repo-and-org %} {% data reusables.github-actions.settings-sidebar-actions-runners %} -1. Under {% ifversion fpt or ghes > 3.1 or ghae-next %}"Runners"{% else %}"Self-hosted runners"{% endif %}, you can view a list of registered runners, including the runner's name, labels, and status. +1. Under {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}"Runners"{% else %}"Self-hosted runners"{% endif %}, you can view a list of registered runners, including the runner's name, labels, and status. The status can be one of the following: diff --git a/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md b/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md index 3d41d2fac4b3..b492e034f7eb 100644 --- a/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/removing-self-hosted-runners.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial shortTitle: Remove self-hosted runners --- @@ -30,7 +31,7 @@ shortTitle: Remove self-hosted runners To remove a self-hosted runner from a user repository you must be the repository owner. For an organization repository, you must be an organization owner or have admin access to the repository. We recommend that you also have access to the self-hosted runner machine. For information about how to remove a self-hosted runner with the REST API, see "[Self-hosted runners](/rest/reference/actions#self-hosted-runners)." {% data reusables.github-actions.self-hosted-runner-reusing %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.github-actions.settings-sidebar-actions %} @@ -57,7 +58,7 @@ To remove a self-hosted runner from a user repository you must be the repository To remove a self-hosted runner from an organization, you must be an organization owner. We recommend that you also have access to the self-hosted runner machine. For information about how to remove a self-hosted runner with the REST API, see "[Self-hosted runners](/rest/reference/actions#self-hosted-runners)." {% data reusables.github-actions.self-hosted-runner-reusing %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} {% data reusables.organizations.navigate-to-org %} {% data reusables.organizations.org_settings %} {% data reusables.github-actions.settings-sidebar-actions %} @@ -81,7 +82,7 @@ To remove a self-hosted runner from an organization, you must be an organization {% endnote %} {% data reusables.github-actions.self-hosted-runner-reusing %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} To remove a self-hosted runner from an enterprise account, you must be an enterprise owner. We recommend that you also have access to the self-hosted runner machine. For information about how to add a self-hosted runner with the REST API, see the [Enterprise Administration GitHub Actions APIs](/rest/reference/enterprise-admin#github-actions). {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} diff --git a/content/actions/hosting-your-own-runners/using-a-proxy-server-with-self-hosted-runners.md b/content/actions/hosting-your-own-runners/using-a-proxy-server-with-self-hosted-runners.md index b068d0d60535..7bec46029bfc 100644 --- a/content/actions/hosting-your-own-runners/using-a-proxy-server-with-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/using-a-proxy-server-with-self-hosted-runners.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial shortTitle: Proxy servers --- diff --git a/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md b/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md index 34ef600344b2..70ad72c22cc3 100644 --- a/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md +++ b/content/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial shortTitle: Label runners --- @@ -19,7 +20,7 @@ For information on how to use labels to route jobs to specific types of self-hos {% data reusables.github-actions.self-hosted-runner-management-permissions-required %} ## Creating a custom label -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.github-actions.self-hosted-runner-navigate-to-repo-org-enterprise %} {% data reusables.github-actions.settings-sidebar-actions-runner-selection %} 1. In the "Labels" section, click {% octicon "gear" aria-label="The Gear icon" %}. @@ -37,7 +38,7 @@ For information on how to use labels to route jobs to specific types of self-hos The custom label is created and assigned to the self-hosted runner. Custom labels can be removed from self-hosted runners, but they currently can't be manually deleted. {% data reusables.github-actions.actions-unused-labels %} {% endif %} ## Assigning a label to a self-hosted runner -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.github-actions.self-hosted-runner-navigate-to-repo-org-enterprise %} {% data reusables.github-actions.settings-sidebar-actions-runner-selection %} {% data reusables.github-actions.runner-label-settings %} @@ -51,7 +52,7 @@ The custom label is created and assigned to the self-hosted runner. Custom label 1. Click on a label to assign it to your self-hosted runner. {% endif %} ## Removing a custom label from a self-hosted runner -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.github-actions.self-hosted-runner-navigate-to-repo-org-enterprise %} {% data reusables.github-actions.settings-sidebar-actions-runner-selection %} {% data reusables.github-actions.runner-label-settings %} diff --git a/content/actions/hosting-your-own-runners/using-self-hosted-runners-in-a-workflow.md b/content/actions/hosting-your-own-runners/using-self-hosted-runners-in-a-workflow.md index 43ee7ba11aa3..3693578127f9 100644 --- a/content/actions/hosting-your-own-runners/using-self-hosted-runners-in-a-workflow.md +++ b/content/actions/hosting-your-own-runners/using-self-hosted-runners-in-a-workflow.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial shortTitle: Use runners in a workflow --- @@ -70,8 +71,8 @@ These labels operate cumulatively, so a self-hosted runner’s labels must match When routing a job to a self-hosted runner, {% data variables.product.prodname_dotcom %} looks for a runner that matches the job's `runs-on` labels: -{% ifversion fpt or ghes > 3.2 or ghae-next %} -- {% data variables.product.prodname_dotcom %} first searches for an online and idle runner at the repository level, then at the organization level, {% ifversion fpt %} and if the organization is part of an enterprise,{% endif %} then at the enterprise level. +{% ifversion fpt or ghes > 3.2 or ghae-next or ghec %} +- {% data variables.product.prodname_dotcom %} first searches for an online and idle runner at the repository level, then at the organization level, {% ifversion fpt or ghec %} and if the organization is part of an enterprise,{% endif %} then at the enterprise level. - If {% data variables.product.prodname_dotcom %} finds an online and idle runner at a certain level that matches the job's `runs-on` labels, the job is then assigned and sent to the runner. - If the runner doesn't pick up the assigned job within 60 seconds, the job is queued at all levels and waits for a matching runner from any level to come online and pick up the job. - If {% data variables.product.prodname_dotcom %} doesn't find an online and idle runner at any level, the job is queued to all levels and waits for a matching runner from any level to come online and pick up the job. diff --git a/content/actions/index.md b/content/actions/index.md index 91e911ace5df..46deb9cbc68d 100644 --- a/content/actions/index.md +++ b/content/actions/index.md @@ -43,6 +43,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /quickstart - /learn-github-actions diff --git a/content/actions/learn-github-actions/contexts.md b/content/actions/learn-github-actions/contexts.md index 2ddc3f0cefe7..40423176e112 100644 --- a/content/actions/learn-github-actions/contexts.md +++ b/content/actions/learn-github-actions/contexts.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' miniTocMaxHeadingLevel: 3 --- diff --git a/content/actions/learn-github-actions/creating-workflow-templates.md b/content/actions/learn-github-actions/creating-workflow-templates.md index 3f0c888ef7df..a070d2a627a2 100644 --- a/content/actions/learn-github-actions/creating-workflow-templates.md +++ b/content/actions/learn-github-actions/creating-workflow-templates.md @@ -1,13 +1,14 @@ --- title: Creating workflow templates shortTitle: Creating templates -intro: 'Learn how you can create workflow templates to help people in your team add new workflows more easily.' +intro: Learn how you can create workflow templates to help people in your team add new workflows more easily. redirect_from: - /actions/configuring-and-managing-workflows/sharing-workflow-templates-within-your-organization versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows @@ -26,7 +27,7 @@ topics: Workflow templates can be created by users with write access to the organization's `.github` repository. The templates can then be used by organization members who have permission to create workflows. You can share workflow templates if your organization's repository is public or if the repository is private and on an Enterprise plan. -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} {% note %} **Note:** To avoid duplication in workflows created from a template you can call reusable workflows from within a workflow template. This can help make your workflows easier to maintain. For more information, see "[Reusing workflows](/actions/learn-github-actions/reusing-workflows)." diff --git a/content/actions/learn-github-actions/environment-variables.md b/content/actions/learn-github-actions/environment-variables.md index 4447dfac9e05..03fef5028ca1 100644 --- a/content/actions/learn-github-actions/environment-variables.md +++ b/content/actions/learn-github-actions/environment-variables.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -45,7 +46,7 @@ To use the value of an environment variable in a workflow file, you should use t If you use the workflow file's `run` key to read environment variables from within the runner operating system (as shown in the example above), the variable is substituted in the runner operating system after the job is sent to the runner. For other parts of a workflow file, you must use the `env` context to read environment variables; this is because workflow keys (such as `if`) require the variable to be substituted during workflow processing before it is sent to the runner. -You can also use the {% ifversion fpt or ghes > 2.22 or ghae %}`GITHUB_ENV` environment file{% else %} `set-env` workflow command{% endif %} to set an environment variable that the following steps in a job can use. The {% ifversion fpt or ghes > 2.22 or ghae %}environment file{% else %} `set-env` command{% endif %} can be used directly by an action or as a shell command in a workflow file using the `run` keyword. For more information, see "[Workflow commands for {% data variables.product.prodname_actions %}](/actions/reference/workflow-commands-for-github-actions/#setting-an-environment-variable)." +You can also use the {% ifversion fpt or ghes > 2.22 or ghae or ghec %}`GITHUB_ENV` environment file{% else %} `set-env` workflow command{% endif %} to set an environment variable that the following steps in a job can use. The {% ifversion fpt or ghes > 2.22 or ghae or ghec %}environment file{% else %} `set-env` command{% endif %} can be used directly by an action or as a shell command in a workflow file using the `run` keyword. For more information, see "[Workflow commands for {% data variables.product.prodname_actions %}](/actions/reference/workflow-commands-for-github-actions/#setting-an-environment-variable)." ## Default environment variables diff --git a/content/actions/learn-github-actions/essential-features-of-github-actions.md b/content/actions/learn-github-actions/essential-features-of-github-actions.md index de2b670750ba..42092ec96240 100644 --- a/content/actions/learn-github-actions/essential-features-of-github-actions.md +++ b/content/actions/learn-github-actions/essential-features-of-github-actions.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - Fundamentals diff --git a/content/actions/learn-github-actions/events-that-trigger-workflows.md b/content/actions/learn-github-actions/events-that-trigger-workflows.md index 104f0c4f4674..7a813c159ef6 100644 --- a/content/actions/learn-github-actions/events-that-trigger-workflows.md +++ b/content/actions/learn-github-actions/events-that-trigger-workflows.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Events that trigger workflows --- @@ -100,11 +101,11 @@ You can manually trigger workflow runs. To trigger specific workflows in a repos You can configure custom-defined input properties, default input values, and required inputs for the event directly in your workflow. When the workflow runs, you can access the input values in the `github.event.inputs` context. For more information, see "[Contexts](/actions/learn-github-actions/contexts)." -You can manually trigger a workflow run using the {% data variables.product.product_name %} API and from {% data variables.product.product_name %}. For more information, see "[Manually running a workflow](/actions/managing-workflow-runs/manually-running-a-workflow)." +You can manually trigger a workflow run using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API and from {% data variables.product.product_name %}. For more information, see "[Manually running a workflow](/actions/managing-workflow-runs/manually-running-a-workflow)." When you trigger the event on {% data variables.product.prodname_dotcom %}, you can provide the `ref` and any `inputs` directly on {% data variables.product.prodname_dotcom %}. For more information, see "[Using inputs and outputs with an action](/actions/learn-github-actions/finding-and-customizing-actions#using-inputs-and-outputs-with-an-action)." - To trigger the custom `workflow_dispatch` webhook event using the REST API, you must send a `POST` request to a {% data variables.product.prodname_dotcom %} API endpoint and provide the `ref` and any required `inputs`. For more information, see the "[Create a workflow dispatch event](/rest/reference/actions/#create-a-workflow-dispatch-event)" REST API endpoint. + To trigger the custom `workflow_dispatch` webhook event using the REST API, you must send a `POST` request to a {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API endpoint and provide the `ref` and any required `inputs`. For more information, see the "[Create a workflow dispatch event](/rest/reference/actions/#create-a-workflow-dispatch-event)" REST API endpoint. #### Example @@ -151,9 +152,9 @@ jobs: {% data reusables.github-actions.branch-requirement %} -You can use the {% data variables.product.product_name %} API to trigger a webhook event called [`repository_dispatch`](/webhooks/event-payloads/#repository_dispatch) when you want to trigger a workflow for activity that happens outside of {% data variables.product.prodname_dotcom %}. For more information, see "[Create a repository dispatch event](/rest/reference/repos#create-a-repository-dispatch-event)." +You can use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API to trigger a webhook event called [`repository_dispatch`](/webhooks/event-payloads/#repository_dispatch) when you want to trigger a workflow for activity that happens outside of {% data variables.product.prodname_dotcom %}. For more information, see "[Create a repository dispatch event](/rest/reference/repos#create-a-repository-dispatch-event)." -To trigger the custom `repository_dispatch` webhook event, you must send a `POST` request to a {% data variables.product.product_name %} API endpoint and provide an `event_type` name to describe the activity type. To trigger a workflow run, you must also configure your workflow to use the `repository_dispatch` event. +To trigger the custom `repository_dispatch` webhook event, you must send a `POST` request to a {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API endpoint and provide an `event_type` name to describe the activity type. To trigger a workflow run, you must also configure your workflow to use the `repository_dispatch` event. #### Example @@ -165,7 +166,7 @@ on: types: [opened, deleted] ``` -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} ## Workflow reuse events `workflow_call` is a keyword used as the value of `on` in a workflow, in the same way as an event. It indicates that a workflow can be called from another workflow. For more information see, "[Reusing workflows](/actions/learn-github-actions/reusing-workflows)." @@ -305,10 +306,10 @@ on: {% endnote %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `discussion` -Runs your workflow anytime the `discussion` event occurs. {% data reusables.developer-site.multiple_activity_types %} For information about the GraphQL API, see "[Discussions](/graphql/guides/using-the-graphql-api-for-discussions)." +Runs your workflow anytime the `discussion` event occurs. {% data reusables.developer-site.multiple_activity_types %} For information about the GraphQL API, see "[Discussions]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-the-graphql-api-for-discussions)." {% data reusables.github-actions.branch-requirement %} @@ -328,7 +329,7 @@ on: ### `discussion_comment` -Runs your workflow anytime the `discussion_comment` event occurs. {% data reusables.developer-site.multiple_activity_types %} For information about the GraphQL API, see "[Discussions](/graphql/guides/using-the-graphql-api-for-discussions)." +Runs your workflow anytime the `discussion_comment` event occurs. {% data reusables.developer-site.multiple_activity_types %} For information about the GraphQL API, see "[Discussions]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-the-graphql-api-for-discussions)." {% data reusables.github-actions.branch-requirement %} @@ -598,7 +599,7 @@ Runs your workflow anytime the `pull_request` event occurs. {% data reusables.de | Webhook event payload | Activity types | `GITHUB_SHA` | `GITHUB_REF` | | --------------------- | -------------- | ------------ | -------------| -| [`pull_request`](/webhooks/event-payloads/#pull_request) | - `assigned`
- `unassigned`
- `labeled`
- `unlabeled`
- `opened`
- `edited`
- `closed`
- `reopened`
- `synchronize`
- `converted_to_draft`
- `ready_for_review`
- `locked`
- `unlocked`
- `review_requested`
- `review_request_removed`{% ifversion fpt or ghes > 3.0 or ghae %}
- `auto_merge_enabled`
- `auto_merge_disabled`{% endif %} | Last merge commit on the `GITHUB_REF` branch | PR merge branch `refs/pull/:prNumber/merge` | +| [`pull_request`](/webhooks/event-payloads/#pull_request) | - `assigned`
- `unassigned`
- `labeled`
- `unlabeled`
- `opened`
- `edited`
- `closed`
- `reopened`
- `synchronize`
- `converted_to_draft`
- `ready_for_review`
- `locked`
- `unlocked`
- `review_requested`
- `review_request_removed`{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
- `auto_merge_enabled`
- `auto_merge_disabled`{% endif %} | Last merge commit on the `GITHUB_REF` branch | PR merge branch `refs/pull/:prNumber/merge` | You extend or limit the default activity types using the `types` keyword. For more information, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/articles/workflow-syntax-for-github-actions#onevent_nametypes)." @@ -652,7 +653,7 @@ on: {% data reusables.developer-site.pull_request_forked_repos_link %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ### `pull_request_target` @@ -666,7 +667,7 @@ This event runs in the context of the base of the pull request, rather than in t | Webhook event payload | Activity types | `GITHUB_SHA` | `GITHUB_REF` | | --------------------- | -------------- | ------------ | -------------| -| [`pull_request_target`](/webhooks/event-payloads/#pull_request) | - `assigned`
- `unassigned`
- `labeled`
- `unlabeled`
- `opened`
- `edited`
- `closed`
- `reopened`
- `synchronize`
- `converted_to_draft`
- `ready_for_review`
- `locked`
- `unlocked`
- `review_requested`
- `review_request_removed`{% ifversion fpt or ghes > 3.0 or ghae %}
- `auto_merge_enabled`
- `auto_merge_disabled`{% endif %} | Last commit on the PR base branch | PR base branch | +| [`pull_request_target`](/webhooks/event-payloads/#pull_request) | - `assigned`
- `unassigned`
- `labeled`
- `unlabeled`
- `opened`
- `edited`
- `closed`
- `reopened`
- `synchronize`
- `converted_to_draft`
- `ready_for_review`
- `locked`
- `unlocked`
- `review_requested`
- `review_request_removed`{% ifversion fpt or ghes > 3.0 or ghae or ghec %}
- `auto_merge_enabled`
- `auto_merge_disabled`{% endif %} | Last commit on the PR base branch | PR base branch | By default, a workflow only runs when a `pull_request_target`'s activity type is `opened`, `synchronize`, or `reopened`. To trigger workflows for more activity types, use the `types` keyword. For more information, see "[Workflow syntax for {% data variables.product.prodname_actions %}](/articles/workflow-syntax-for-github-actions#onevent_nametypes)." @@ -786,7 +787,7 @@ on: types: [started] ``` -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ### `workflow_run` diff --git a/content/actions/learn-github-actions/expressions.md b/content/actions/learn-github-actions/expressions.md index 43d39016198f..44507732c278 100644 --- a/content/actions/learn-github-actions/expressions.md +++ b/content/actions/learn-github-actions/expressions.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' miniTocMaxHeadingLevel: 3 --- diff --git a/content/actions/learn-github-actions/finding-and-customizing-actions.md b/content/actions/learn-github-actions/finding-and-customizing-actions.md index f5532d5c77b0..ed8b6f1ee4fc 100644 --- a/content/actions/learn-github-actions/finding-and-customizing-actions.md +++ b/content/actions/learn-github-actions/finding-and-customizing-actions.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: how_to topics: - Fundamentals @@ -28,11 +29,11 @@ The actions you use in your workflow can be defined in: - The same repository where your workflow file references the action - A published Docker container image on Docker Hub -{% data variables.product.prodname_marketplace %} is a central location for you to find actions created by the {% data variables.product.prodname_dotcom %} community.{% ifversion fpt %} [{% data variables.product.prodname_marketplace %} page](https://github.com/marketplace/actions/) enables you to filter for actions by category. {% endif %} +{% data variables.product.prodname_marketplace %} is a central location for you to find actions created by the {% data variables.product.prodname_dotcom %} community.{% ifversion fpt or ghec %} [{% data variables.product.prodname_marketplace %} page](https://github.com/marketplace/actions/) enables you to filter for actions by category. {% endif %} {% data reusables.actions.enterprise-marketplace-actions %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Browsing Marketplace actions in the workflow editor @@ -81,7 +82,7 @@ steps: ### Using SHAs -If you need more reliable versioning, you should use the SHA value associated with the version of the action. SHAs are immutable and therefore more reliable than tags or branches. However this approach means you will not automatically receive updates for an action, including important bug fixes and security updates. {% ifversion fpt or ghes > 3.0 or ghae %}You must use a commit's full SHA value, and not an abbreviated value. {% endif %}This example targets an action's SHA: +If you need more reliable versioning, you should use the SHA value associated with the version of the action. SHAs are immutable and therefore more reliable than tags or branches. However this approach means you will not automatically receive updates for an action, including important bug fixes and security updates. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}You must use a commit's full SHA value, and not an abbreviated value. {% endif %}This example targets an action's SHA: ```yaml steps: diff --git a/content/actions/learn-github-actions/index.md b/content/actions/learn-github-actions/index.md index 927efdf86a1a..00623427df99 100644 --- a/content/actions/learn-github-actions/index.md +++ b/content/actions/learn-github-actions/index.md @@ -27,6 +27,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /understanding-github-actions - /finding-and-customizing-actions diff --git a/content/actions/learn-github-actions/managing-complex-workflows.md b/content/actions/learn-github-actions/managing-complex-workflows.md index 8b60cc801225..b1f8e0565c0d 100644 --- a/content/actions/learn-github-actions/managing-complex-workflows.md +++ b/content/actions/learn-github-actions/managing-complex-workflows.md @@ -1,11 +1,12 @@ --- title: Managing complex workflows shortTitle: Managing complex workflows -intro: 'This guide shows you how to use the advanced features of {% data variables.product.prodname_actions %}, with secret management, dependent jobs, caching, build matrices,{% ifversion fpt or ghes > 3.0 or ghae %} environments,{% endif %} and labels.' +intro: 'This guide shows you how to use the advanced features of {% data variables.product.prodname_actions %}, with secret management, dependent jobs, caching, build matrices,{% ifversion fpt or ghes > 3.0 or ghae or ghec %} environments,{% endif %} and labels.' versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: how_to topics: - Workflows @@ -88,7 +89,7 @@ jobs: For more information, see [`jobs..strategy.matrix`](/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstrategymatrix). -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Caching dependencies {% data variables.product.prodname_dotcom %}-hosted runners are started as fresh environments for each job, so if your jobs regularly reuse dependencies, you can consider caching these files to help improve performance. Once the cache is created, it is available to all workflows in the same repository. @@ -172,7 +173,7 @@ To learn more about {% data variables.product.prodname_dotcom %}-hosted runner l {% data reusables.actions.reusable-workflows %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} ## Using environments diff --git a/content/actions/learn-github-actions/reusing-workflows.md b/content/actions/learn-github-actions/reusing-workflows.md index e727072d2cd2..cf043c8544fa 100644 --- a/content/actions/learn-github-actions/reusing-workflows.md +++ b/content/actions/learn-github-actions/reusing-workflows.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '>=3.4' ghae: 'issue-4757' + ghec: '*' type: how_to topics: - Workflows diff --git a/content/actions/learn-github-actions/sharing-workflows-secrets-and-runners-with-your-organization.md b/content/actions/learn-github-actions/sharing-workflows-secrets-and-runners-with-your-organization.md index 6588c5bf2615..69eaf46fc4ff 100644 --- a/content/actions/learn-github-actions/sharing-workflows-secrets-and-runners-with-your-organization.md +++ b/content/actions/learn-github-actions/sharing-workflows-secrets-and-runners-with-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: how_to --- diff --git a/content/actions/learn-github-actions/understanding-github-actions.md b/content/actions/learn-github-actions/understanding-github-actions.md index 10f31effb0ac..dd27f71ed85e 100644 --- a/content/actions/learn-github-actions/understanding-github-actions.md +++ b/content/actions/learn-github-actions/understanding-github-actions.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - Fundamentals @@ -36,7 +37,7 @@ Below is a list of the multiple {% data variables.product.prodname_actions %} co ### Workflows -The workflow is an automated procedure that you add to your repository. Workflows are made up of one or more jobs and can be scheduled or triggered by an event. The workflow can be used to build, test, package, release, or deploy a project on {% data variables.product.prodname_dotcom %}. {% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %}You can reference a workflow within another workflow, see "[Reusing workflows](/actions/learn-github-actions/reusing-workflows)."{% endif %} +The workflow is an automated procedure that you add to your repository. Workflows are made up of one or more jobs and can be scheduled or triggered by an event. The workflow can be used to build, test, package, release, or deploy a project on {% data variables.product.prodname_dotcom %}. {% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %}You can reference a workflow within another workflow, see "[Reusing workflows](/actions/learn-github-actions/reusing-workflows)."{% endif %} ### Events @@ -215,7 +216,7 @@ In this diagram, you can see the workflow file you just created and how the {% d ## Viewing the job's activity -Once your job has started running, you can {% ifversion fpt or ghes > 3.0 or ghae %}see a visualization graph of the run's progress and {% endif %}view each step's activity on {% data variables.product.prodname_dotcom %}. +Once your job has started running, you can {% ifversion fpt or ghes > 3.0 or ghae or ghec %}see a visualization graph of the run's progress and {% endif %}view each step's activity on {% data variables.product.prodname_dotcom %}. {% data reusables.repositories.navigate-to-repo %} 1. Under your repository name, click **Actions**. @@ -224,11 +225,11 @@ Once your job has started running, you can {% ifversion fpt or ghes > 3.0 or gha ![Screenshot of workflow results](/assets/images/help/images/learn-github-actions-workflow.png) 1. Under "Workflow runs", click the name of the run you want to see. ![Screenshot of workflow runs](/assets/images/help/images/learn-github-actions-run.png) -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} 1. Under **Jobs** or in the visualization graph, click the job you want to see. ![Select job](/assets/images/help/images/overview-actions-result-navigate.png) {% endif %} -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} 1. View the results of each step. ![Screenshot of workflow run details](/assets/images/help/images/overview-actions-result-updated-2.png) {% elsif ghes > 2.22 %} diff --git a/content/actions/learn-github-actions/usage-limits-billing-and-administration.md b/content/actions/learn-github-actions/usage-limits-billing-and-administration.md index d8147cbc83db..dcc812f90d9d 100644 --- a/content/actions/learn-github-actions/usage-limits-billing-and-administration.md +++ b/content/actions/learn-github-actions/usage-limits-billing-and-administration.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Billing shortTitle: Workflow billing & limits @@ -20,7 +21,7 @@ shortTitle: Workflow billing & limits ## About billing for {% data variables.product.prodname_actions %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.github-actions.actions-billing %} For more information, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)." {% else %} GitHub Actions usage is free for {% data variables.product.prodname_ghe_server %}s that use self-hosted runners. @@ -28,7 +29,7 @@ GitHub Actions usage is free for {% data variables.product.prodname_ghe_server % ## Usage limits -{% ifversion fpt %} +{% ifversion fpt or ghec %} There are some limits on {% data variables.product.prodname_actions %} usage when using {% data variables.product.prodname_dotcom %}-hosted runners. These limits are subject to change. {% note %} @@ -55,19 +56,19 @@ There are some limits on {% data variables.product.prodname_actions %} usage whe Usage limits apply to self-hosted runners. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Usage policy -In addition to the usage limits, you must ensure that you use {% data variables.product.prodname_actions %} within the [GitHub Terms of Service](/articles/github-terms-of-service/). For more information on {% data variables.product.prodname_actions %}-specific terms, see the [GitHub Additional Product Terms](/github/site-policy/github-additional-product-terms#a-actions-usage). +In addition to the usage limits, you must ensure that you use {% data variables.product.prodname_actions %} within the [GitHub Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service/). For more information on {% data variables.product.prodname_actions %}-specific terms, see the [GitHub Additional Product Terms](/free-pro-team@latest/github/site-policy/github-additional-product-terms#a-actions-usage). {% endif %} -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} ## Billing for reusable workflows If you reuse a workflow, billing is always associated with the caller workflow. For more information see, "[Reusing workflows](/actions/learn-github-actions/reusing-workflows)." {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Artifact and log retention policy You can configure the artifact and log retention period for your repository, organization, or enterprise account. @@ -78,7 +79,7 @@ For more information, see: - "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-repository)" - "[Configuring the retention period for {% data variables.product.prodname_actions %} for artifacts and logs in your organization](/organizations/managing-organization-settings/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-organization)" -- "[Configuring the retention period for {% data variables.product.prodname_actions %} for artifacts and logs in your enterprise](/github/setting-up-and-managing-your-enterprise/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account)" +- "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-artifact-and-log-retention-in-your-enterprise)" {% endif %} ## Disabling or limiting {% data variables.product.prodname_actions %} for your repository or organization @@ -87,10 +88,10 @@ For more information, see: For more information, see: - "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository)" -- "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization)"{% ifversion fpt %} -- "[Enforcing {% data variables.product.prodname_actions %} policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account)" for {% data variables.product.prodname_ghe_cloud %}{% endif %} +- "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization)" +- "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise#enforcing-a-policy-for-artifact-and-log-retention-in-your-enterprise)" -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Disabling and enabling workflows You can enable and disable individual workflows in your repository on {% data variables.product.prodname_dotcom %}. diff --git a/content/actions/learn-github-actions/using-workflow-templates.md b/content/actions/learn-github-actions/using-workflow-templates.md index 7955d06da634..6b7a2b6499b0 100644 --- a/content/actions/learn-github-actions/using-workflow-templates.md +++ b/content/actions/learn-github-actions/using-workflow-templates.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows @@ -50,6 +51,6 @@ Anyone with write permission to a repository can set up {% data variables.produc - "[Managing workflow runs](/actions/managing-workflow-runs)" - "[About monitoring and troubleshooting](/actions/monitoring-and-troubleshooting-workflows/about-monitoring-and-troubleshooting)" - "[Learn {% data variables.product.prodname_actions %}](/actions/learn-github-actions)" -{% ifversion fpt %} +{% ifversion fpt or ghec %} - "[Managing billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions)" {% endif %} diff --git a/content/actions/learn-github-actions/workflow-commands-for-github-actions.md b/content/actions/learn-github-actions/workflow-commands-for-github-actions.md index 05a4745f5350..523de0eca656 100644 --- a/content/actions/learn-github-actions/workflow-commands-for-github-actions.md +++ b/content/actions/learn-github-actions/workflow-commands-for-github-actions.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -24,7 +25,7 @@ versions: Actions can communicate with the runner machine to set environment variables, output values used by other actions, add debug messages to the output logs, and other tasks. -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} Most workflow commands use the `echo` command in a specific format, while others are invoked by writing to a file. For more information, see ["Environment files".](#environment-files) {% else %} Workflow commands use the `echo` command in a specific format. @@ -70,12 +71,12 @@ The following table shows which toolkit functions are available within a workflo | Toolkit function | Equivalent workflow command | | ----------------- | ------------- | -| `core.addPath` | {% ifversion fpt or ghes > 2.22 or ghae %}Accessible using environment file `GITHUB_PATH`{% else %} `add-path` {% endif %} | -| `core.debug` | `debug` |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 %} +| `core.addPath` | {% ifversion fpt or ghes > 2.22 or ghae or ghec %}Accessible using environment file `GITHUB_PATH`{% else %} `add-path` {% endif %} | +| `core.debug` | `debug` |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 or ghec %} | `core.notice` | `notice` |{% endif %} | `core.error` | `error` | | `core.endGroup` | `endgroup` | -| `core.exportVariable` | {% ifversion fpt or ghes > 2.22 or ghae %}Accessible using environment file `GITHUB_ENV`{% else %} `set-env` {% endif %} | +| `core.exportVariable` | {% ifversion fpt or ghes > 2.22 or ghae or ghec %}Accessible using environment file `GITHUB_ENV`{% else %} `set-env` {% endif %} | | `core.getInput` | Accessible using environment variable `INPUT_{NAME}` | | `core.getState` | Accessible using environment variable `STATE_{NAME}` | | `core.isDebug` | Accessible using environment variable `RUNNER_DEBUG` | @@ -148,7 +149,7 @@ Prints a debug message to the log. You must create a secret named `ACTIONS_STEP_ echo "::debug::Set the Octocat variable" ``` -{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 or ghec %} ## Setting a notice message @@ -302,7 +303,7 @@ The `STATE_processID` variable is then exclusively available to the cleanup scri console.log("The running PID from the main action is: " + process.env.STATE_processID); ``` -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Environment Files During the execution of a workflow, the runner generates temporary files that can be used to perform certain actions. The path to these files are exposed via environment variables. You will need to use UTF-8 encoding when writing to these files to ensure proper processing of the commands. Multiple commands can be written to the same file, separated by newlines. diff --git a/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md b/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md index 77fb2f2c42ad..a493ef14750d 100644 --- a/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md +++ b/content/actions/learn-github-actions/workflow-syntax-for-github-actions.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -184,7 +185,7 @@ Diffs are limited to 300 files. If there are files changed that aren't matched i For more information, see "[About comparing branches in pull requests](/articles/about-comparing-branches-in-pull-requests)." -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} ## `on.workflow_call.inputs` When using the `workflow_call` keyword, you can optionally specify inputs that are passed to the called workflow from the caller workflow. Inputs for reusable workflows are specified with the same format as action inputs. For more information about inputs, see "[Metadata syntax for GitHub Actions](/actions/creating-actions/metadata-syntax-for-github-actions#inputs)." For more information about the `workflow_call` keyword, see "[Events that trigger workflows](/actions/learn-github-actions/events-that-trigger-workflows#workflow-reuse-events)." @@ -291,7 +292,7 @@ The triggered workflow receives the inputs in the `github.event.inputs` context. For more information about cron syntax, see "[Events that trigger workflows](/actions/automating-your-workflow-with-github-actions/events-that-trigger-workflows#scheduled-events)." -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## `permissions` You can modify the default permissions granted to the `GITHUB_TOKEN`, adding or removing access as required, so that you only allow the minimum required access. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)." @@ -351,7 +352,7 @@ defaults: working-directory: scripts ``` -{% ifversion fpt or ghae-next or ghes > 3.1 %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} ## `concurrency` Concurrency ensures that only a single job or workflow using the same concurrency group will run at a time. A concurrency group can be any string or expression. The expression can only use the [`github` context](/actions/learn-github-actions/contexts#github-context). For more information about expressions, see "[Expressions](/actions/learn-github-actions/expressions)." @@ -369,7 +370,7 @@ Each job runs in a runner environment specified by `runs-on`. You can run an unlimited number of jobs as long as you are within the workflow usage limits. For more information, see "[Usage limits and billing](/actions/reference/usage-limits-billing-and-administration)" for {% data variables.product.prodname_dotcom %}-hosted runners and "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)" for self-hosted runner usage limits. -If you need to find the unique identifier of a job running in a workflow run, you can use the {% data variables.product.prodname_dotcom %} API. For more information, see "[Workflow Jobs](/rest/reference/actions#workflow-jobs)." +If you need to find the unique identifier of a job running in a workflow run, you can use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API. For more information, see "[Workflow Jobs](/rest/reference/actions#workflow-jobs)." ## `jobs.` @@ -477,7 +478,7 @@ runs-on: [self-hosted, linux] For more information, see "[About self-hosted runners](/github/automating-your-workflow-with-github-actions/about-self-hosted-runners)" and "[Using self-hosted runners in a workflow](/github/automating-your-workflow-with-github-actions/using-self-hosted-runners-in-a-workflow)." -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## `jobs..permissions` You can modify the default permissions granted to the `GITHUB_TOKEN`, adding or removing access as required, so that you only allow the minimum required access. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)." @@ -505,7 +506,7 @@ jobs: ``` {% endif %} -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ## `jobs..environment` The environment that the job references. All environment protection rules must pass before a job referencing the environment is sent to a runner. For more information, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)." @@ -540,7 +541,7 @@ environment: {% endif %} -{% ifversion fpt or ghae-next or ghes > 3.1 %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} ## `jobs..concurrency` {% note %} @@ -792,7 +793,7 @@ jobs: uses: docker://alpine:3.8 ``` -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Example: Using the {% data variables.product.prodname_registry %} {% data variables.product.prodname_container_registry %} `docker://{host}/{image}:{tag}` @@ -1274,7 +1275,7 @@ jobs: The Docker image to use as the container to run the action. The value can be the Docker Hub image name or a {% ifversion ghes < 3.0 %}public{% endif %} registry name. -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## `jobs..container.credentials` @@ -1364,7 +1365,7 @@ services: The Docker image to use as the service container to run the action. The value can be the Docker Hub image name or a {% ifversion ghes < 3.0 %}public{% endif %} registry name. -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## `jobs..services..credentials` @@ -1426,7 +1427,7 @@ Additional Docker container resource options. For a list of options, see "[`dock {% endwarning %} -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} ## `jobs..uses` The location and version of a reusable workflow file to run as a job. diff --git a/content/actions/managing-issues-and-pull-requests/adding-labels-to-issues.md b/content/actions/managing-issues-and-pull-requests/adding-labels-to-issues.md index e41824775439..8a1ded7723dd 100644 --- a/content/actions/managing-issues-and-pull-requests/adding-labels-to-issues.md +++ b/content/actions/managing-issues-and-pull-requests/adding-labels-to-issues.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows @@ -41,7 +42,7 @@ In the tutorial, you will first make a workflow file that uses the [`andymckay/l - opened jobs: label_issues: - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: issues: write{% endif %} steps: diff --git a/content/actions/managing-issues-and-pull-requests/closing-inactive-issues.md b/content/actions/managing-issues-and-pull-requests/closing-inactive-issues.md index 157c95649174..e314ec383568 100644 --- a/content/actions/managing-issues-and-pull-requests/closing-inactive-issues.md +++ b/content/actions/managing-issues-and-pull-requests/closing-inactive-issues.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows @@ -38,7 +39,7 @@ In the tutorial, you will first make a workflow file that uses the [`actions/sta jobs: close-issues: - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: issues: write pull-requests: write{% endif %} diff --git a/content/actions/managing-issues-and-pull-requests/commenting-on-an-issue-when-a-label-is-added.md b/content/actions/managing-issues-and-pull-requests/commenting-on-an-issue-when-a-label-is-added.md index 30e7c8d36551..d2e1ee205767 100644 --- a/content/actions/managing-issues-and-pull-requests/commenting-on-an-issue-when-a-label-is-added.md +++ b/content/actions/managing-issues-and-pull-requests/commenting-on-an-issue-when-a-label-is-added.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows @@ -42,7 +43,7 @@ In the tutorial, you will first make a workflow file that uses the [`peter-evans jobs: add-comment: if: github.event.label.name == 'help-wanted' - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: issues: write{% endif %} steps: diff --git a/content/actions/managing-issues-and-pull-requests/index.md b/content/actions/managing-issues-and-pull-requests/index.md index 0fd0528f8c0d..faffad9f15a7 100644 --- a/content/actions/managing-issues-and-pull-requests/index.md +++ b/content/actions/managing-issues-and-pull-requests/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /using-github-actions-for-project-management - /adding-labels-to-issues diff --git a/content/actions/managing-issues-and-pull-requests/moving-assigned-issues-on-project-boards.md b/content/actions/managing-issues-and-pull-requests/moving-assigned-issues-on-project-boards.md index 9de3db5d73be..3c94ae28ec11 100644 --- a/content/actions/managing-issues-and-pull-requests/moving-assigned-issues-on-project-boards.md +++ b/content/actions/managing-issues-and-pull-requests/moving-assigned-issues-on-project-boards.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows diff --git a/content/actions/managing-issues-and-pull-requests/removing-a-label-when-a-card-is-added-to-a-project-board-column.md b/content/actions/managing-issues-and-pull-requests/removing-a-label-when-a-card-is-added-to-a-project-board-column.md index 3dd92eac354e..320242940350 100644 --- a/content/actions/managing-issues-and-pull-requests/removing-a-label-when-a-card-is-added-to-a-project-board-column.md +++ b/content/actions/managing-issues-and-pull-requests/removing-a-label-when-a-card-is-added-to-a-project-board-column.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows @@ -43,7 +44,7 @@ In the tutorial, you will first make a workflow file that uses the [`andymckay/l jobs: remove_labels: if: github.event.project_card.column_id == '12345678' - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: issues: write pull-requests: write{% endif %} diff --git a/content/actions/managing-issues-and-pull-requests/scheduling-issue-creation.md b/content/actions/managing-issues-and-pull-requests/scheduling-issue-creation.md index a108deec74c7..112e7dfa7778 100644 --- a/content/actions/managing-issues-and-pull-requests/scheduling-issue-creation.md +++ b/content/actions/managing-issues-and-pull-requests/scheduling-issue-creation.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Workflows @@ -41,7 +42,7 @@ In the tutorial, you will first make a workflow file that uses the [`imjohnbo/is jobs: create_issue: name: Create team sync issue - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: issues: write{% endif %} steps: diff --git a/content/actions/managing-issues-and-pull-requests/using-github-actions-for-project-management.md b/content/actions/managing-issues-and-pull-requests/using-github-actions-for-project-management.md index 7e83faf7578c..257760d4b0d9 100644 --- a/content/actions/managing-issues-and-pull-requests/using-github-actions-for-project-management.md +++ b/content/actions/managing-issues-and-pull-requests/using-github-actions-for-project-management.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - Project management diff --git a/content/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks.md b/content/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks.md index 4a03ed477dd9..8cda19622b80 100644 --- a/content/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks.md +++ b/content/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks.md @@ -4,6 +4,7 @@ intro: 'When an outside contributor submits a pull request to a public repositor product: '{% data reusables.gated-features.actions %}' versions: fpt: '*' + ghec: '*' shortTitle: Approve public fork runs --- @@ -11,7 +12,7 @@ shortTitle: Approve public fork runs {% data reusables.actions.workflow-run-approve-public-fork %} -You can configure workflow approval requirements for a [repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-required-approval-for-workflows-from-public-forks), [organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#configuring-required-approval-for-workflows-from-public-forks), or [enterprise](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account#configuring-required-approval-for-workflows-from-public-forks). +You can configure workflow approval requirements for a [repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-required-approval-for-workflows-from-public-forks), [organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#configuring-required-approval-for-workflows-from-public-forks), or [enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-fork-pull-requests-in-your-enterprise). Workflow runs that have been awaiting approval for more than 30 days are automatically deleted. diff --git a/content/actions/managing-workflow-runs/canceling-a-workflow.md b/content/actions/managing-workflow-runs/canceling-a-workflow.md index 24da634fe75f..c689b5828c80 100644 --- a/content/actions/managing-workflow-runs/canceling-a-workflow.md +++ b/content/actions/managing-workflow-runs/canceling-a-workflow.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -22,7 +23,7 @@ versions: 1. From the list of workflow runs, click the name of the `queued` or `in progress` run that you want to cancel. ![Name of workflow run](/assets/images/help/repository/in-progress-run.png) 1. In the upper-right corner of the workflow, click **Cancel workflow**. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Cancel check suite button](/assets/images/help/repository/cancel-check-suite-updated.png) {% else %} ![Cancel check suite button](/assets/images/help/repository/cancel-check-suite.png) diff --git a/content/actions/managing-workflow-runs/deleting-a-workflow-run.md b/content/actions/managing-workflow-runs/deleting-a-workflow-run.md index 1bcb1d4e20f2..a8342dc0b2d2 100644 --- a/content/actions/managing-workflow-runs/deleting-a-workflow-run.md +++ b/content/actions/managing-workflow-runs/deleting-a-workflow-run.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} diff --git a/content/actions/managing-workflow-runs/disabling-and-enabling-a-workflow.md b/content/actions/managing-workflow-runs/disabling-and-enabling-a-workflow.md index 52156410910c..19b5f77bacaa 100644 --- a/content/actions/managing-workflow-runs/disabling-and-enabling-a-workflow.md +++ b/content/actions/managing-workflow-runs/disabling-and-enabling-a-workflow.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' shortTitle: Disable & enable a workflow --- diff --git a/content/actions/managing-workflow-runs/downloading-workflow-artifacts.md b/content/actions/managing-workflow-runs/downloading-workflow-artifacts.md index fb3accb468cd..de540c92dab3 100644 --- a/content/actions/managing-workflow-runs/downloading-workflow-artifacts.md +++ b/content/actions/managing-workflow-runs/downloading-workflow-artifacts.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Download workflow artifacts --- @@ -13,7 +14,7 @@ shortTitle: Download workflow artifacts {% data reusables.actions.enterprise-github-hosted-runners %} {% data reusables.actions.ae-beta %} -{% ifversion fpt or ghes > 2.22 or ghae %} By default, {% data variables.product.product_name %} stores build logs and artifacts for 90 days, and you can customize this retention period, depending on the type of repository. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-repository)."{% endif %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} By default, {% data variables.product.product_name %} stores build logs and artifacts for 90 days, and you can customize this retention period, depending on the type of repository. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-repository)."{% endif %} {% ifversion ghes = 2.22 %} {% data variables.product.product_name %} stores full build logs and artifacts for 90 days.{% endif %} {% data reusables.repositories.permissions-statement-read %} @@ -27,7 +28,7 @@ shortTitle: Download workflow artifacts {% data reusables.repositories.navigate-to-workflow %} {% data reusables.repositories.view-run %} 1. Under **Artifacts**, click the artifact you want to download. - {% ifversion fpt or ghes > 3.0 or ghae %} + {% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Download artifact drop-down menu](/assets/images/help/repository/artifact-drop-down-updated.png) {% else %} ![Download artifact drop-down menu](/assets/images/help/repository/artifact-drop-down.png) diff --git a/content/actions/managing-workflow-runs/index.md b/content/actions/managing-workflow-runs/index.md index 9ce095d2b45b..92d5cb1b8e86 100644 --- a/content/actions/managing-workflow-runs/index.md +++ b/content/actions/managing-workflow-runs/index.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /manually-running-a-workflow - /re-running-workflows-and-jobs diff --git a/content/actions/managing-workflow-runs/manually-running-a-workflow.md b/content/actions/managing-workflow-runs/manually-running-a-workflow.md index d7f3c7d0cbfb..4ea951f97b51 100644 --- a/content/actions/managing-workflow-runs/manually-running-a-workflow.md +++ b/content/actions/managing-workflow-runs/manually-running-a-workflow.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Manually run a workflow --- diff --git a/content/actions/managing-workflow-runs/re-running-workflows-and-jobs.md b/content/actions/managing-workflow-runs/re-running-workflows-and-jobs.md index cf2d3da20743..2752d1802170 100644 --- a/content/actions/managing-workflow-runs/re-running-workflows-and-jobs.md +++ b/content/actions/managing-workflow-runs/re-running-workflows-and-jobs.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -28,7 +29,7 @@ Re-running a workflow uses the same `GITHUB_SHA` (commit SHA) and `GITHUB_REF` ( {% data reusables.repositories.actions-tab %} {% data reusables.repositories.navigate-to-workflow %} {% data reusables.repositories.view-run %} -{% ifversion fpt or ghes > 3.2 or ghae-issue-4721 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4721 or ghec %} 1. In the upper-right corner of the workflow, use the **Re-run jobs** drop-down menu, and select **Re-run all jobs** ![Rerun checks drop-down menu](/assets/images/help/repository/rerun-checks-drop-down.png) {% endif %} @@ -57,7 +58,7 @@ gh run watch {% endcli %} -{% ifversion fpt or ghes > 3.2 or ghae-issue-4721 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4721 or ghec %} ### Reviewing previous workflow runs You can view the results from your previous attempts at running a workflow. You can also view previous workflow runs using the API. For more information, see ["Get a workflow run"](/rest/reference/actions#get-a-workflow-run). diff --git a/content/actions/managing-workflow-runs/removing-workflow-artifacts.md b/content/actions/managing-workflow-runs/removing-workflow-artifacts.md index 12b20f20fc8a..6ccd5b7c39ea 100644 --- a/content/actions/managing-workflow-runs/removing-workflow-artifacts.md +++ b/content/actions/managing-workflow-runs/removing-workflow-artifacts.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Remove workflow artifacts --- @@ -30,13 +31,13 @@ shortTitle: Remove workflow artifacts {% data reusables.repositories.navigate-to-workflow %} {% data reusables.repositories.view-run %} 1. Under **Artifacts**, click {% octicon "trash" aria-label="The trash icon" %} next to the artifact you want to remove. - {% ifversion fpt or ghes > 3.0 or ghae %} + {% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Delete artifact drop-down menu](/assets/images/help/repository/actions-delete-artifact-updated.png) {% else %} ![Delete artifact drop-down menu](/assets/images/help/repository/actions-delete-artifact.png) {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Setting the retention period for an artifact Retention periods for artifacts and logs can be configured at the repository, organization, and enterprise level. For more information, see "[Usage limits, billing, and administration](/actions/reference/usage-limits-billing-and-administration#artifact-and-log-retention-policy)." diff --git a/content/actions/managing-workflow-runs/reviewing-deployments.md b/content/actions/managing-workflow-runs/reviewing-deployments.md index f293b837a7e9..bcd56889f5fd 100644 --- a/content/actions/managing-workflow-runs/reviewing-deployments.md +++ b/content/actions/managing-workflow-runs/reviewing-deployments.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: '*' + ghec: '*' --- {% data reusables.actions.ae-beta %} @@ -14,7 +15,7 @@ versions: Jobs that reference an environment configured with required reviewers will wait for an approval before starting. While a job is awaiting approval, it has a status of "Waiting". If a job is not approved within 30 days, the workflow run will be automatically canceled. -For more information about environments and required approvals, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)."{% ifversion fpt or ghae-next or ghes > 3.1 %} For information about how to review deployments with the REST API, see "[Workflow Runs](/rest/reference/actions#workflow-runs)."{% endif %} +For more information about environments and required approvals, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)."{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} For information about how to review deployments with the REST API, see "[Workflow Runs](/rest/reference/actions#workflow-runs)."{% endif %} ## Approving or rejecting a job diff --git a/content/actions/managing-workflow-runs/skipping-workflow-runs.md b/content/actions/managing-workflow-runs/skipping-workflow-runs.md index 6e4d0b74f0d3..93ff78423b23 100644 --- a/content/actions/managing-workflow-runs/skipping-workflow-runs.md +++ b/content/actions/managing-workflow-runs/skipping-workflow-runs.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: 'ghae-next' + ghec: '*' shortTitle: Skip workflow runs --- diff --git a/content/actions/migrating-to-github-actions/index.md b/content/actions/migrating-to-github-actions/index.md index fe9282d86c19..a5a35f02bde2 100644 --- a/content/actions/migrating-to-github-actions/index.md +++ b/content/actions/migrating-to-github-actions/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' redirect_from: - /actions/migrating-to-github-actions - /articles/migrating-github-actions-from-hcl-syntax-to-yaml-syntax/ diff --git a/content/actions/migrating-to-github-actions/migrating-from-azure-pipelines-to-github-actions.md b/content/actions/migrating-to-github-actions/migrating-from-azure-pipelines-to-github-actions.md index e7d75e2786b6..5ba35b49d770 100644 --- a/content/actions/migrating-to-github-actions/migrating-from-azure-pipelines-to-github-actions.md +++ b/content/actions/migrating-to-github-actions/migrating-from-azure-pipelines-to-github-actions.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Azure Pipelines diff --git a/content/actions/migrating-to-github-actions/migrating-from-circleci-to-github-actions.md b/content/actions/migrating-to-github-actions/migrating-from-circleci-to-github-actions.md index bd117f5c88e0..3f51e78100bd 100644 --- a/content/actions/migrating-to-github-actions/migrating-from-circleci-to-github-actions.md +++ b/content/actions/migrating-to-github-actions/migrating-from-circleci-to-github-actions.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - CircleCI diff --git a/content/actions/migrating-to-github-actions/migrating-from-gitlab-cicd-to-github-actions.md b/content/actions/migrating-to-github-actions/migrating-from-gitlab-cicd-to-github-actions.md index 8e5058f1f36a..bf9ce3252c0a 100644 --- a/content/actions/migrating-to-github-actions/migrating-from-gitlab-cicd-to-github-actions.md +++ b/content/actions/migrating-to-github-actions/migrating-from-gitlab-cicd-to-github-actions.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - GitLab diff --git a/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md b/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md index a84d687111d9..68f8847e4da9 100644 --- a/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md +++ b/content/actions/migrating-to-github-actions/migrating-from-jenkins-to-github-actions.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Jenkins diff --git a/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md b/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md index 4399b13810dd..d21dbc064047 100644 --- a/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md +++ b/content/actions/migrating-to-github-actions/migrating-from-travis-ci-to-github-actions.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Travis CI @@ -189,7 +190,7 @@ When migrating from Travis CI, consider the following key features in {% data va ### Storing secrets -{% data variables.product.prodname_actions %} allows you to store secrets and reference them in your jobs. {% data variables.product.prodname_actions %} organizations can limit which repositories can access organization secrets. {% ifversion fpt or ghes > 3.0 or ghae %}Environment protection rules can require manual approval for a workflow to access environment secrets. {% endif %}For more information, see "[Encrypted secrets](/actions/reference/encrypted-secrets)." +{% data variables.product.prodname_actions %} allows you to store secrets and reference them in your jobs. {% data variables.product.prodname_actions %} organizations can limit which repositories can access organization secrets. {% ifversion fpt or ghes > 3.0 or ghae or ghec %}Environment protection rules can require manual approval for a workflow to access environment secrets. {% endif %}For more information, see "[Encrypted secrets](/actions/reference/encrypted-secrets)." ### Sharing files between jobs and workflows diff --git a/content/actions/monitoring-and-troubleshooting-workflows/about-monitoring-and-troubleshooting.md b/content/actions/monitoring-and-troubleshooting-workflows/about-monitoring-and-troubleshooting.md index 1b397182b4fa..32eba5566120 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/about-monitoring-and-troubleshooting.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/about-monitoring-and-troubleshooting.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: About monitoring and troubleshooting miniTocMaxHeadingLevel: 3 --- @@ -16,7 +17,7 @@ miniTocMaxHeadingLevel: 3 ## Monitoring your workflows -{% ifversion fpt or ghae or ghes > 3.0 %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %} ### Using the visualization graph @@ -34,7 +35,7 @@ For more information, see "[Using the visualization graph](/actions/monitoring-a For more information, see "[Adding a workflow status badge](/actions/monitoring-and-troubleshooting-workflows/adding-a-workflow-status-badge)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Viewing job execution time To identify how long a job took to run, you can view its execution time. For example: diff --git a/content/actions/monitoring-and-troubleshooting-workflows/adding-a-workflow-status-badge.md b/content/actions/monitoring-and-troubleshooting-workflows/adding-a-workflow-status-badge.md index 5c909329a6ff..074a7462a314 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/adding-a-workflow-status-badge.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/adding-a-workflow-status-badge.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Add a status badge --- diff --git a/content/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging.md b/content/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging.md index 2b61c09cc53c..025a24a05f35 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/enabling-debug-logging.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -17,7 +18,7 @@ versions: These extra logs are enabled by setting secrets in the repository containing the workflow, so the same permissions requirements will apply: - {% data reusables.github-actions.permissions-statement-secrets-repository %} -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} - {% data reusables.github-actions.permissions-statement-secrets-environment %} {% endif %} - {% data reusables.github-actions.permissions-statement-secrets-organization %} diff --git a/content/actions/monitoring-and-troubleshooting-workflows/index.md b/content/actions/monitoring-and-troubleshooting-workflows/index.md index 01d646a0f1bc..04a60364e790 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/index.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-monitoring-and-troubleshooting - /using-the-visualization-graph diff --git a/content/actions/monitoring-and-troubleshooting-workflows/notifications-for-workflow-runs.md b/content/actions/monitoring-and-troubleshooting-workflows/notifications-for-workflow-runs.md index ead66ef86835..eb5b7355518a 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/notifications-for-workflow-runs.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/notifications-for-workflow-runs.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Notifications --- diff --git a/content/actions/monitoring-and-troubleshooting-workflows/using-the-visualization-graph.md b/content/actions/monitoring-and-troubleshooting-workflows/using-the-visualization-graph.md index a79ec5270cec..40836e793f3b 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/using-the-visualization-graph.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/using-the-visualization-graph.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: '*' + ghec: '*' shortTitle: Use the visualization graph --- diff --git a/content/actions/monitoring-and-troubleshooting-workflows/using-workflow-run-logs.md b/content/actions/monitoring-and-troubleshooting-workflows/using-workflow-run-logs.md index b5e7772048e2..9246e4cb09c7 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/using-workflow-run-logs.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/using-workflow-run-logs.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -47,9 +48,9 @@ You can search the build logs for a particular step. When you search logs, only {% data reusables.repositories.navigate-to-workflow-superlinter %} {% data reusables.repositories.view-run-superlinter %} {% data reusables.repositories.navigate-to-job-superlinter %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} 1. In the upper-right corner of the log output, in the **Search logs** search box, type a search query. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Search box to search logs](/assets/images/help/repository/search-log-box-updated-2.png) {% else %} ![Search box to search logs](/assets/images/help/repository/search-log-box-updated.png) @@ -70,9 +71,9 @@ You can download the log files from your workflow run. You can also download a w {% data reusables.repositories.navigate-to-workflow-superlinter %} {% data reusables.repositories.view-run-superlinter %} {% data reusables.repositories.navigate-to-job-superlinter %} -{% ifversion fpt or ghes > 2.22 or ghae %} -1. In the upper right corner, click {% ifversion fpt or ghes > 3.0 or ghae %}{% octicon "gear" aria-label="The gear icon" %}{% else %}{% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}{% endif %} and select **Download log archive**. - {% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} +1. In the upper right corner, click {% ifversion fpt or ghes > 3.0 or ghae or ghec %}{% octicon "gear" aria-label="The gear icon" %}{% else %}{% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}{% endif %} and select **Download log archive**. + {% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Download logs drop-down menu](/assets/images/help/repository/download-logs-drop-down-updated-2.png) {% else %} ![Download logs drop-down menu](/assets/images/help/repository/download-logs-drop-down-updated.png) @@ -90,15 +91,15 @@ You can delete the log files from your workflow run. {% data reusables.repositor {% data reusables.repositories.actions-tab %} {% data reusables.repositories.navigate-to-workflow-superlinter %} {% data reusables.repositories.view-run-superlinter %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} 1. In the upper right corner, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}. - {% ifversion fpt or ghes > 3.0 or ghae %} + {% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Kebab-horizontal icon](/assets/images/help/repository/workflow-run-kebab-horizontal-icon-updated-2.png) {% else %} ![Kebab-horizontal icon](/assets/images/help/repository/workflow-run-kebab-horizontal-icon-updated.png) {% endif %} 2. To delete the log files, click the **Delete all logs** button and review the confirmation prompt. - {% ifversion fpt or ghes > 3.0 or ghae %} + {% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Delete all logs](/assets/images/help/repository/delete-all-logs-updated-2.png) {% else %} ![Delete all logs](/assets/images/help/repository/delete-all-logs-updated.png) diff --git a/content/actions/monitoring-and-troubleshooting-workflows/viewing-job-execution-time.md b/content/actions/monitoring-and-troubleshooting-workflows/viewing-job-execution-time.md index 065a497c8a7c..08ac1549c4e8 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/viewing-job-execution-time.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/viewing-job-execution-time.md @@ -6,6 +6,7 @@ redirect_from: - /actions/managing-workflow-runs/viewing-job-execution-time versions: fpt: '*' + ghec: '*' shortTitle: View job execution time --- diff --git a/content/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history.md b/content/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history.md index 3afa27d30cff..861ca3e31b1a 100644 --- a/content/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history.md +++ b/content/actions/monitoring-and-troubleshooting-workflows/viewing-workflow-run-history.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: View workflow run history --- diff --git a/content/actions/publishing-packages/about-packaging-with-github-actions.md b/content/actions/publishing-packages/about-packaging-with-github-actions.md index 8d64b46b2486..250726bce1e8 100644 --- a/content/actions/publishing-packages/about-packaging-with-github-actions.md +++ b/content/actions/publishing-packages/about-packaging-with-github-actions.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - Packaging diff --git a/content/actions/publishing-packages/index.md b/content/actions/publishing-packages/index.md index 64487b292924..e1fdadcc4f30 100644 --- a/content/actions/publishing-packages/index.md +++ b/content/actions/publishing-packages/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' redirect_from: - /actions/publishing-packages-with-github-actions children: diff --git a/content/actions/publishing-packages/publishing-docker-images.md b/content/actions/publishing-packages/publishing-docker-images.md index 3abd97f8fcf8..efdd0bad3de7 100644 --- a/content/actions/publishing-packages/publishing-docker-images.md +++ b/content/actions/publishing-packages/publishing-docker-images.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Packaging @@ -37,7 +38,7 @@ We recommend that you have a basic understanding of workflow configuration optio You might also find it helpful to have a basic understanding of the following: - "[Encrypted secrets](/actions/reference/encrypted-secrets)" -- "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)"{% ifversion fpt %} +- "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)"{% ifversion fpt or ghec %} - "[Working with the {% data variables.product.prodname_container_registry %}](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)"{% else %} - "[Working with the Docker registry](/packages/working-with-a-github-packages-registry/working-with-the-docker-registry)"{% endif %} @@ -111,25 +112,25 @@ The above workflow checks out the {% data variables.product.prodname_dotcom %} r {% data reusables.github-actions.release-trigger-workflow %} -In the example workflow below, we use the Docker `login-action`{% ifversion fpt %}, `metadata-action`,{% endif %} and `build-push-action` actions to build the Docker image, and if the build succeeds, push the built image to {% data variables.product.prodname_registry %}. +In the example workflow below, we use the Docker `login-action`{% ifversion fpt or ghec %}, `metadata-action`,{% endif %} and `build-push-action` actions to build the Docker image, and if the build succeeds, push the built image to {% data variables.product.prodname_registry %}. The `login-action` options required for {% data variables.product.prodname_registry %} are: -* `registry`: Must be set to {% ifversion fpt %}`ghcr.io`{% else %}`docker.pkg.github.com`{% endif %}. +* `registry`: Must be set to {% ifversion fpt or ghec %}`ghcr.io`{% else %}`docker.pkg.github.com`{% endif %}. * `username`: You can use the {% raw %}`${{ github.actor }}`{% endraw %} context to automatically use the username of the user that triggered the workflow run. For more information, see "[Contexts](/actions/learn-github-actions/contexts#github-context)." * `password`: You can use the automatically-generated `GITHUB_TOKEN` secret for the password. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/automating-your-workflow-with-github-actions/authenticating-with-the-github_token)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} The `metadata-action` option required for {% data variables.product.prodname_registry %} is: * `images`: The namespace and name for the Docker image you are building. {% endif %} -The `build-push-action` options required for {% data variables.product.prodname_registry %} are:{% ifversion fpt %} +The `build-push-action` options required for {% data variables.product.prodname_registry %} are:{% ifversion fpt or ghec %} * `context`: Defines the build's context as the set of files located in the specified path.{% endif %} -* `push`: If set to `true`, the image will be pushed to the registry if it is built successfully.{% ifversion fpt %} +* `push`: If set to `true`, the image will be pushed to the registry if it is built successfully.{% ifversion fpt or ghec %} * `tags` and `labels`: These are populated by output from `metadata-action`.{% else %} * `tags`: Must be set in the format `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION`. For example, for an image named `octo-image` stored on {% data variables.product.prodname_dotcom %} at `http://github.com/octo-org/octo-repo`, the `tags` option should be set to `docker.pkg.github.com/octo-org/octo-repo/octo-image:latest`. You can set a single tag as shown below, or specify multiple tags in a list.{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.package_registry.publish-docker-image %} The above workflow if triggered by a push to the "release" branch. It checks out the GitHub repository, and uses the `login-action` to log in to the {% data variables.product.prodname_container_registry %}. It then extracts labels and tags for the Docker image. Finally, it uses the `build-push-action` action to build the image and publish it on the {% data variables.product.prodname_container_registry %}. @@ -146,7 +147,7 @@ on: jobs: push_to_registry: name: Push Docker image to GitHub Packages - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: packages: write contents: read{% endif %} @@ -192,7 +193,7 @@ on: jobs: push_to_registries: name: Push Docker image to multiple registries - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: packages: write contents: read{% endif %} @@ -206,10 +207,10 @@ jobs: username: {% raw %}${{ secrets.DOCKER_USERNAME }}{% endraw %} password: {% raw %}${{ secrets.DOCKER_PASSWORD }}{% endraw %} - - name: Log in to the {% ifversion fpt %}Container{% else %}Docker{% endif %} registry + - name: Log in to the {% ifversion fpt or ghec %}Container{% else %}Docker{% endif %} registry uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 with: - registry: {% ifversion fpt %}ghcr.io{% elsif ghae %}docker.YOUR-HOSTNAME.com{% else %}docker.pkg.github.com{% endif %} + registry: {% ifversion fpt or ghec %}ghcr.io{% elsif ghae %}docker.YOUR-HOSTNAME.com{% else %}docker.pkg.github.com{% endif %} username: {% raw %}${{ github.actor }}{% endraw %} password: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} @@ -219,7 +220,7 @@ jobs: with: images: | my-docker-hub-namespace/my-docker-hub-repository - {% ifversion fpt %}ghcr.io/{% raw %}${{ github.repository }}{% endraw %}{% elsif ghae %}{% raw %}docker.YOUR-HOSTNAME.com/${{ github.repository }}/my-image{% endraw %}{% else %}{% raw %}docker.pkg.github.com/${{ github.repository }}/my-image{% endraw %}{% endif %} + {% ifversion fpt or ghec %}ghcr.io/{% raw %}${{ github.repository }}{% endraw %}{% elsif ghae %}{% raw %}docker.YOUR-HOSTNAME.com/${{ github.repository }}/my-image{% endraw %}{% else %}{% raw %}docker.pkg.github.com/${{ github.repository }}/my-image{% endraw %}{% endif %} - name: Build and push Docker images uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc @@ -231,4 +232,4 @@ jobs: ``` The above workflow checks out the {% data variables.product.prodname_dotcom %} repository, uses the `login-action` twice to log in to both registries and generates tags and labels with the `metadata-action` action. -Then the `build-push-action` action builds and pushes the Docker image to Docker Hub and the {% ifversion fpt %}{% data variables.product.prodname_container_registry %}{% else %}Docker registry{% endif %}. +Then the `build-push-action` action builds and pushes the Docker image to Docker Hub and the {% ifversion fpt or ghec %}{% data variables.product.prodname_container_registry %}{% else %}Docker registry{% endif %}. diff --git a/content/actions/publishing-packages/publishing-java-packages-with-gradle.md b/content/actions/publishing-packages/publishing-java-packages-with-gradle.md index c485a9c6e559..bb06f017879e 100644 --- a/content/actions/publishing-packages/publishing-java-packages-with-gradle.md +++ b/content/actions/publishing-packages/publishing-java-packages-with-gradle.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Packaging @@ -153,7 +154,7 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: contents: read packages: write {% endif %} @@ -172,7 +173,7 @@ jobs: ``` {% data reusables.github-actions.gradle-workflow-steps %} -1. Runs the `gradle publish` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. {% ifversion fpt or ghes > 3.1 or ghae-next %}The `permissions` key specifies the access that the `GITHUB_TOKEN` secret will allow.{% endif %} +1. Runs the `gradle publish` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}The `permissions` key specifies the access that the `GITHUB_TOKEN` secret will allow.{% endif %} For more information about using secrets in your workflow, see "[Creating and using encrypted secrets](/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." @@ -229,7 +230,7 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: contents: read packages: write {% endif %} @@ -251,6 +252,6 @@ jobs: ``` {% data reusables.github-actions.gradle-workflow-steps %} -1. Runs the `gradle publish` command to publish to the `OSSRH` Maven repository and {% data variables.product.prodname_registry %}. The `MAVEN_USERNAME` environment variable will be set with the contents of your `OSSRH_USERNAME` secret, and the `MAVEN_PASSWORD` environment variable will be set with the contents of your `OSSRH_TOKEN` secret. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. {% ifversion fpt or ghes > 3.1 or ghae-next %}The `permissions` key specifies the access that the `GITHUB_TOKEN` secret will allow.{% endif %} +1. Runs the `gradle publish` command to publish to the `OSSRH` Maven repository and {% data variables.product.prodname_registry %}. The `MAVEN_USERNAME` environment variable will be set with the contents of your `OSSRH_USERNAME` secret, and the `MAVEN_PASSWORD` environment variable will be set with the contents of your `OSSRH_TOKEN` secret. The `GITHUB_TOKEN` environment variable will be set with the content of the `GITHUB_TOKEN` secret. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}The `permissions` key specifies the access that the `GITHUB_TOKEN` secret will allow.{% endif %} For more information about using secrets in your workflow, see "[Creating and using encrypted secrets](/actions/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets)." diff --git a/content/actions/publishing-packages/publishing-java-packages-with-maven.md b/content/actions/publishing-packages/publishing-java-packages-with-maven.md index 676827a59633..94bf2507c88e 100644 --- a/content/actions/publishing-packages/publishing-java-packages-with-maven.md +++ b/content/actions/publishing-packages/publishing-java-packages-with-maven.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Packaging @@ -146,7 +147,7 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: contents: read packages: write {% endif %} @@ -183,7 +184,7 @@ on: types: [created] jobs: publish: - runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: contents: read packages: write {% endif %} diff --git a/content/actions/publishing-packages/publishing-nodejs-packages.md b/content/actions/publishing-packages/publishing-nodejs-packages.md index 2f7c1aad9634..f4273ea6cfc8 100644 --- a/content/actions/publishing-packages/publishing-nodejs-packages.md +++ b/content/actions/publishing-packages/publishing-nodejs-packages.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Packaging @@ -129,7 +130,7 @@ on: types: [created] jobs: build: - runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: contents: read packages: write {% endif %} @@ -213,7 +214,7 @@ on: types: [created] jobs: build: - runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: contents: read packages: write {% endif %} diff --git a/content/actions/quickstart.md b/content/actions/quickstart.md index a4d14d7da9c5..c0e23bd7ca0d 100644 --- a/content/actions/quickstart.md +++ b/content/actions/quickstart.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: quick_start topics: - Fundamentals diff --git a/content/actions/security-guides/automatic-token-authentication.md b/content/actions/security-guides/automatic-token-authentication.md index e8249b6177e8..204cfca3ca30 100644 --- a/content/actions/security-guides/automatic-token-authentication.md +++ b/content/actions/security-guides/automatic-token-authentication.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Automatic token authentication --- @@ -30,9 +31,9 @@ The token is also available in the `github.token` context. For more information, ## Using the `GITHUB_TOKEN` in a workflow -You can use the `GITHUB_TOKEN` by using the standard syntax for referencing secrets: {%raw%}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. Examples of using the `GITHUB_TOKEN` include passing the token as an input to an action, or using it to make an authenticated {% data variables.product.prodname_dotcom %} API request. +You can use the `GITHUB_TOKEN` by using the standard syntax for referencing secrets: {%raw%}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. Examples of using the `GITHUB_TOKEN` include passing the token as an input to an action, or using it to make an authenticated {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API request. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} {% note %} **Important:** An action can access the `GITHUB_TOKEN` through the `github.token` context even if the workflow does not explicitly pass the `GITHUB_TOKEN` to the action. As a good security practice, you should always make sure that actions only have the minimum access they require by limiting the permissions granted to the `GITHUB_TOKEN`. For more information, see "[Permissions for the `GITHUB_TOKEN`](#permissions-for-the-github_token)." @@ -51,7 +52,7 @@ name: Pull request labeler on: [ pull_request_target ] -{% ifversion fpt or ghes > 3.1 or ghae-next %}permissions: +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}permissions: contents: read pull-requests: write @@ -76,7 +77,7 @@ on: [ push ] jobs: create_commit: - runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: issues: write {% endif %} steps: @@ -97,8 +98,8 @@ jobs: For information about the API endpoints {% data variables.product.prodname_github_apps %} can access with each permission, see "[{% data variables.product.prodname_github_app %} Permissions](/rest/reference/permissions-required-for-github-apps)." -{% ifversion fpt or ghes > 3.1 or ghae-next %} -The following table shows the permissions granted to the `GITHUB_TOKEN` by default. People with admin permissions to an {% ifversion not ghes %}enterprise, organization, or repository,{% else %}organization or repository{% endif %} can set the default permissions to be either permissive or restricted. For information on how to set the default permissions for the `GITHUB_TOKEN` for your {% ifversion not ghes %}enterprise, organization, or repository,{% else %}organization or repository,{% endif %} see {% ifversion not ghes %}"[Enforcing {% data variables.product.prodname_actions %} policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account#setting-the-permissions-of-the-github_token-for-your-enterprise)," {% endif %}"[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/github/setting-up-and-managing-organizations-and-teams/disabling-or-limiting-github-actions-for-your-organization#setting-the-permissions-of-the-github_token-for-your-organization)," or "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#setting-the-permissions-of-the-github_token-for-your-repository)." +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} +The following table shows the permissions granted to the `GITHUB_TOKEN` by default. People with admin permissions to an {% ifversion not ghes %}enterprise, organization, or repository,{% else %}organization or repository{% endif %} can set the default permissions to be either permissive or restricted. For information on how to set the default permissions for the `GITHUB_TOKEN` for your enterprise, organization, or repository, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise#enforcing-a-policy-for-workflow-permissions-in-your-enterprise)," "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/github/setting-up-and-managing-organizations-and-teams/disabling-or-limiting-github-actions-for-your-organization#setting-the-permissions-of-the-github_token-for-your-organization)," or "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#setting-the-permissions-of-the-github_token-for-your-repository)." | Scope | Default access
(permissive) | Default access
(restricted) | Maximum access
by forked repos | |---------------|-----------------------------|-----------------------------|--------------------------------| @@ -130,7 +131,7 @@ The following table shows the permissions granted to the `GITHUB_TOKEN` by defau {% data reusables.actions.workflow-runs-dependabot-note %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ### Modifying the permissions for the `GITHUB_TOKEN` You can modify the permissions for the `GITHUB_TOKEN` in individual workflow files. If the default permissions for the `GITHUB_TOKEN` are restrictive, you may have to elevate the permissions to allow some actions and commands to run successfully. If the default permissions are permissive, you can edit the workflow file to remove some permissions from the `GITHUB_TOKEN`. As a good security practice, you should grant the `GITHUB_TOKEN` the least required access. diff --git a/content/actions/security-guides/encrypted-secrets.md b/content/actions/security-guides/encrypted-secrets.md index f7976ed0d9fc..68926047dfee 100644 --- a/content/actions/security-guides/encrypted-secrets.md +++ b/content/actions/security-guides/encrypted-secrets.md @@ -1,6 +1,6 @@ --- title: Encrypted secrets -intro: 'Encrypted secrets allow you to store sensitive information in your organization{% ifversion fpt or ghes > 3.0 %}, repository, or repository environments{% else %} or repository{% endif %}.' +intro: 'Encrypted secrets allow you to store sensitive information in your organization{% ifversion fpt or ghes > 3.0 or ghec %}, repository, or repository environments{% else %} or repository{% endif %}.' product: '{% data reusables.gated-features.actions %}' redirect_from: - /github/automating-your-workflow-with-github-actions/creating-and-using-encrypted-secrets @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.actions.enterprise-beta %} @@ -20,11 +21,11 @@ versions: ## About encrypted secrets -Secrets are encrypted environment variables that you create in an organization{% ifversion fpt or ghes > 3.0 or ghae %}, repository, or repository environment{% else %} or repository{% endif %}. The secrets that you create are available to use in {% data variables.product.prodname_actions %} workflows. {% data variables.product.prodname_dotcom %} uses a [libsodium sealed box](https://libsodium.gitbook.io/doc/public-key_cryptography/sealed_boxes) to help ensure that secrets are encrypted before they reach {% data variables.product.prodname_dotcom %} and remain encrypted until you use them in a workflow. +Secrets are encrypted environment variables that you create in an organization{% ifversion fpt or ghes > 3.0 or ghae or ghec %}, repository, or repository environment{% else %} or repository{% endif %}. The secrets that you create are available to use in {% data variables.product.prodname_actions %} workflows. {% data variables.product.prodname_dotcom %} uses a [libsodium sealed box](https://libsodium.gitbook.io/doc/public-key_cryptography/sealed_boxes) to help ensure that secrets are encrypted before they reach {% data variables.product.prodname_dotcom %} and remain encrypted until you use them in a workflow. {% data reusables.github-actions.secrets-org-level-overview %} -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} For secrets stored at the environment level, you can enable required reviewers to control access to the secrets. A workflow job cannot access environment secrets until approval is granted by required approvers. {% endif %} @@ -32,9 +33,9 @@ For secrets stored at the environment level, you can enable required reviewers t {% data reusables.codespaces.secrets-naming %} - For example, {% ifversion fpt or ghes > 3.0 or ghae %}a secret created at the environment level must have a unique name in that environment, {% endif %}a secret created at the repository level must have a unique name in that repository, and a secret created at the organization level must have a unique name at that level. + For example, {% ifversion fpt or ghes > 3.0 or ghae or ghec %}a secret created at the environment level must have a unique name in that environment, {% endif %}a secret created at the repository level must have a unique name in that repository, and a secret created at the organization level must have a unique name at that level. - {% data reusables.codespaces.secret-precedence %}{% ifversion fpt or ghes > 3.0 or ghae %} Similarly, if an organization, repository, and environment all have a secret with the same name, the environment-level secret takes precedence.{% endif %} + {% data reusables.codespaces.secret-precedence %}{% ifversion fpt or ghes > 3.0 or ghae or ghec %} Similarly, if an organization, repository, and environment all have a secret with the same name, the environment-level secret takes precedence.{% endif %} To help ensure that {% data variables.product.prodname_dotcom %} redacts your secret in logs, avoid using structured data as the values of secrets. For example, avoid creating secrets that contain JSON or encoded Git blobs. @@ -50,7 +51,7 @@ You can use and read encrypted secrets in a workflow file if you have access to {% endwarning %} -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} Organization and repository secrets are read when a workflow run is queued, and environment secrets are read when a job referencing the environment starts. {% endif %} @@ -82,7 +83,7 @@ When generating credentials, we recommend that you grant the minimum permissions 1. Enter the value for your secret. 1. Click **Add secret**. -If your repository {% ifversion fpt or ghes > 3.0 or ghae %}has environment secrets or {% endif %}can access secrets from the parent organization, then those secrets are also listed on this page. +If your repository {% ifversion fpt or ghes > 3.0 or ghae or ghec %}has environment secrets or {% endif %}can access secrets from the parent organization, then those secrets are also listed on this page. {% endwebui %} @@ -106,7 +107,7 @@ To list all secrets for the repository, use the `gh secret list` subcommand. {% endcli %} -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ## Creating encrypted secrets for an environment @@ -281,13 +282,13 @@ steps: ## Limits for secrets -You can store up to 1,000 organization secrets{% ifversion fpt or ghes > 3.0 or ghae %}, 100 repository secrets, and 100 environment secrets{% else %} and 100 repository secrets{% endif %}. +You can store up to 1,000 organization secrets{% ifversion fpt or ghes > 3.0 or ghae or ghec %}, 100 repository secrets, and 100 environment secrets{% else %} and 100 repository secrets{% endif %}. A workflow created in a repository can access the following number of secrets: * All 100 repository secrets. * If the repository is assigned access to more than 100 organization secrets, the workflow can only use the first 100 organization secrets (sorted alphabetically by secret name). -{% ifversion fpt or ghes > 3.0 or ghae %}* All 100 environment secrets.{% endif %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %}* All 100 environment secrets.{% endif %} Secrets are limited to 64 KB in size. To use secrets that are larger than 64 KB, you can store encrypted secrets in your repository and save the decryption passphrase as a secret on {% data variables.product.prodname_dotcom %}. For example, you can use `gpg` to encrypt your credentials locally before checking the file in to your repository on {% data variables.product.prodname_dotcom %}. For more information, see the "[gpg manpage](https://www.gnupg.org/gph/de/manual/r1023.html)." diff --git a/content/actions/security-guides/index.md b/content/actions/security-guides/index.md index bc1c9203dcd7..d78297d77cc1 100644 --- a/content/actions/security-guides/index.md +++ b/content/actions/security-guides/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /security-hardening-for-github-actions - /encrypted-secrets diff --git a/content/actions/security-guides/security-hardening-for-github-actions.md b/content/actions/security-guides/security-hardening-for-github-actions.md index f0ac92e6a981..35c63adc9047 100644 --- a/content/actions/security-guides/security-hardening-for-github-actions.md +++ b/content/actions/security-guides/security-hardening-for-github-actions.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - Security @@ -26,7 +27,7 @@ This guide explains how to configure security hardening for certain {% data vari ## Using secrets -Sensitive values should never be stored as plaintext in workflow files, but rather as secrets. [Secrets](/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets) can be configured at the organization{% ifversion fpt or ghes > 3.0 or ghae %}, repository, or environment{% else %} or repository{% endif %} level, and allow you to store sensitive information in {% data variables.product.product_name %}. +Sensitive values should never be stored as plaintext in workflow files, but rather as secrets. [Secrets](/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets) can be configured at the organization{% ifversion fpt or ghes > 3.0 or ghae or ghec %}, repository, or environment{% else %} or repository{% endif %} level, and allow you to store sensitive information in {% data variables.product.product_name %}. Secrets use [Libsodium sealed boxes](https://libsodium.gitbook.io/doc/public-key_cryptography/sealed_boxes), so that they are encrypted before reaching {% data variables.product.product_name %}. This occurs when the secret is submitted [using the UI](/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets#creating-encrypted-secrets-for-a-repository) or through the [REST API](/rest/reference/actions#secrets). This client-side encryption helps minimize the risks related to accidental logging (for example, exception logs and request logs, among others) within {% data variables.product.product_name %}'s infrastructure. Once the secret is uploaded, {% data variables.product.product_name %} is then able to decrypt it so that it can be injected into the workflow runtime. @@ -41,12 +42,12 @@ To help prevent accidental disclosure, {% data variables.product.product_name %} - Audit how secrets are used, to help ensure they’re being handled as expected. You can do this by reviewing the source code of the repository executing the workflow, and checking any actions used in the workflow. For example, check that they’re not sent to unintended hosts, or explicitly being printed to log output. - View the run logs for your workflow after testing valid/invalid inputs, and check that secrets are properly redacted, or not shown. It's not always obvious how a command or tool you’re invoking will send errors to `STDOUT` and `STDERR`, and secrets might subsequently end up in error logs. As a result, it is good practice to manually review the workflow logs after testing valid and invalid inputs. - **Use credentials that are minimally scoped** - - Make sure the credentials being used within workflows have the least privileges required, and be mindful that any user with write access to your repository has read access to all secrets configured in your repository. {% ifversion fpt or ghes > 3.1 or ghae-next %} + - Make sure the credentials being used within workflows have the least privileges required, and be mindful that any user with write access to your repository has read access to all secrets configured in your repository. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} - Actions can use the `GITHUB_TOKEN` by accessing it from the `github.token` context. For more information, see "[Contexts](/actions/learn-github-actions/contexts#github-context)." You should therefore make sure that the `GITHUB_TOKEN` is granted the minimum required permissions. It's good security practice to set the default permission for the `GITHUB_TOKEN` to read access only for repository contents. The permissions can then be increased, as required, for individual jobs within the workflow file. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)." {% endif %} - **Audit and rotate registered secrets** - Periodically review the registered secrets to confirm they are still required. Remove those that are no longer needed. - Rotate secrets periodically to reduce the window of time during which a compromised secret is valid. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} - **Consider requiring review for access to secrets** - You can use required reviewers to protect environment secrets. A workflow job cannot access environment secrets until approval is granted by a reviewer. For more information about storing secrets in environments or requiring reviews for environments, see "[Encrypted secrets](/actions/reference/encrypted-secrets)" and "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)." {% endif %} @@ -183,7 +184,7 @@ You can help mitigate this risk by following these good practices: Although pinning to a commit SHA is the most secure option, specifying a tag is more convenient and is widely used. If you’d like to specify a tag, then be sure that you trust the action's creators. The ‘Verified creator’ badge on {% data variables.product.prodname_marketplace %} is a useful signal, as it indicates that the action was written by a team whose identity has been verified by {% data variables.product.prodname_dotcom %}. Note that there is risk to this approach even if you trust the author, because a tag can be moved or deleted if a bad actor gains access to the repository storing the action. -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} ## Reusing third-party workflows The same principles described above for using third-party actions also apply to using third-party workflows. You can help mitigate the risks associated with reusing workflows by following the same good practices outlined above. For more information, see "[Reusing workflows](/actions/learn-github-actions/reusing-workflows)." @@ -221,18 +222,18 @@ It is possible for an attacker to steal a job's `GITHUB_TOKEN`. The {% data vari ### Modifying the contents of a repository -The attacker server can use the {% data variables.product.prodname_dotcom %} API to [modify repository content](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token), including releases, if the assigned permissions of `GITHUB_TOKEN` [are not restricted](/actions/reference/authentication-in-a-workflow#modifying-the-permissions-for-the-github_token). +The attacker server can use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API to [modify repository content](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token), including releases, if the assigned permissions of `GITHUB_TOKEN` [are not restricted](/actions/reference/authentication-in-a-workflow#modifying-the-permissions-for-the-github_token). ## Considering cross-repository access -{% data variables.product.prodname_actions %} is intentionally scoped for a single repository at a time. The `GITHUB_TOKEN` grants the same level of access as a write-access user, because any write-access user can access this token by creating or modifying a workflow file{% ifversion fpt or ghes > 3.1 or ghae-next %}, elevating the permissions of the `GITHUB_TOKEN` if necessary{% endif %}. Users have specific permissions for each repository, so allowing the `GITHUB_TOKEN` for one repository to grant access to another would impact the {% data variables.product.prodname_dotcom %} permission model if not implemented carefully. Similarly, caution must be taken when adding {% data variables.product.prodname_dotcom %} authentication tokens to a workflow, because this can also affect the {% data variables.product.prodname_dotcom %} permission model by inadvertently granting broad access to collaborators. +{% data variables.product.prodname_actions %} is intentionally scoped for a single repository at a time. The `GITHUB_TOKEN` grants the same level of access as a write-access user, because any write-access user can access this token by creating or modifying a workflow file{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, elevating the permissions of the `GITHUB_TOKEN` if necessary{% endif %}. Users have specific permissions for each repository, so allowing the `GITHUB_TOKEN` for one repository to grant access to another would impact the {% data variables.product.prodname_dotcom %} permission model if not implemented carefully. Similarly, caution must be taken when adding {% data variables.product.prodname_dotcom %} authentication tokens to a workflow, because this can also affect the {% data variables.product.prodname_dotcom %} permission model by inadvertently granting broad access to collaborators. We have [a plan on the {% data variables.product.prodname_dotcom %} roadmap](https://github.com/github/roadmap/issues/74) to support a flow that allows cross-repository access within {% data variables.product.product_name %}, but this is not yet a supported feature. Currently, the only way to perform privileged cross-repository interactions is to place a {% data variables.product.prodname_dotcom %} authentication token or SSH key as a secret within the workflow. Because many authentication token types do not allow for granular access to specific resources, there is significant risk in using the wrong token type, as it can grant much broader access than intended. This list describes the recommended approaches for accessing repository data within a workflow, in descending order of preference: 1. **The `GITHUB_TOKEN`** - - This token is intentionally scoped to the single repository that invoked the workflow, and {% ifversion fpt or ghes > 3.1 or ghae-next %}can have {% else %}has {% endif %}the same level of access as a write-access user on the repository. The token is created before each job begins and expires when the job is finished. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." + - This token is intentionally scoped to the single repository that invoked the workflow, and {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}can have {% else %}has {% endif %}the same level of access as a write-access user on the repository. The token is created before each job begins and expires when the job is finished. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." - The `GITHUB_TOKEN` should be used whenever possible. 2. **Repository deploy key** - Deploy keys are one of the only credential types that grant read or write access to a single repository, and can be used to interact with another repository within a workflow. For more information, see "[Managing deploy keys](/developers/overview/managing-deploy-keys#deploy-keys)." @@ -251,7 +252,7 @@ This list describes the recommended approaches for accessing repository data wit **Self-hosted** runners on {% data variables.product.product_name %} do not have guarantees around running in ephemeral clean virtual machines, and can be persistently compromised by untrusted code in a workflow. -As a result, self-hosted runners should almost [never be used for public repositories](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories) on {% data variables.product.product_name %}, because any user can open pull requests against the repository and compromise the environment. Similarly, be cautious when using self-hosted runners on private repositories, as anyone who can fork the repository and open a pull request (generally those with read-access to the repository) are able to compromise the self-hosted runner environment, including gaining access to secrets and the `GITHUB_TOKEN` which{% ifversion fpt or ghes > 3.1 or ghae-next %}, depending on its settings, can grant {% else %} grants {% endif %}write-access permissions on the repository. Although workflows can control access to environment secrets by using environments and required reviews, these workflows are not run in an isolated environment and are still susceptible to the same risks when run on a self-hosted runner. +As a result, self-hosted runners should almost [never be used for public repositories](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories) on {% data variables.product.product_name %}, because any user can open pull requests against the repository and compromise the environment. Similarly, be cautious when using self-hosted runners on private repositories, as anyone who can fork the repository and open a pull request (generally those with read-access to the repository) are able to compromise the self-hosted runner environment, including gaining access to secrets and the `GITHUB_TOKEN` which{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, depending on its settings, can grant {% else %} grants {% endif %}write-access permissions on the repository. Although workflows can control access to environment secrets by using environments and required reviews, these workflows are not run in an isolated environment and are still susceptible to the same risks when run on a self-hosted runner. When a self-hosted runner is defined at the organization or enterprise level, {% data variables.product.product_name %} can schedule workflows from multiple repositories onto the same runner. Consequently, a security compromise of these environments can result in a wide impact. To help reduce the scope of a compromise, you can create boundaries by organizing your self-hosted runners into separate groups. For more information, see "[Managing access to self-hosted runners using groups](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups)." @@ -271,7 +272,7 @@ For example, you can use the audit log to track the `org.update_actions_secret` The following tables describe the {% data variables.product.prodname_actions %} events that you can find in the audit log. For more information on using the audit log, see "[Reviewing the audit log for your organization](/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization#searching-the-audit-log)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Events for environments | Action | Description @@ -282,7 +283,7 @@ The following tables describe the {% data variables.product.prodname_actions %} | `environment.update_actions_secret` | Triggered when a secret in an environment is updated. For more information, see ["Environment secrets](/actions/reference/environments#environment-secrets)." {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ### Events for configuration changes | Action | Description |------------------|------------------- @@ -304,19 +305,19 @@ The following tables describe the {% data variables.product.prodname_actions %} |------------------|------------------- | `enterprise.register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to an enterprise](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-enterprise)." | `enterprise.remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. -| `enterprise.runner_group_runners_updated` | Triggered when a runner group's member list is updated. For more information, see "[Set self-hosted runners in a group for an organization](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)."{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} +| `enterprise.runner_group_runners_updated` | Triggered when a runner group's member list is updated. For more information, see "[Set self-hosted runners in a group for an organization](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)."{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} | `enterprise.self_hosted_runner_online` | Triggered when the runner application is started. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)." | `enterprise.self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %} | `enterprise.self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI. This event is not included when you export the audit log as JSON data or a CSV file. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)" and "[Reviewing the audit log for your organization](/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization#exporting-the-audit-log)." | `org.register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to an organization](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-organization)." | `org.remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see [Removing a runner from an organization](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-organization). | `org.runner_group_runners_updated` | Triggered when a runner group's list of members is updated. For more information, see "[Set self-hosted runners in a group for an organization](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)." -| `org.runner_group_updated` | Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} +| `org.runner_group_updated` | Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} | `org.self_hosted_runner_online` | Triggered when the runner application is started. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)." | `org.self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %} | `org.self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)." | `repo.register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to a repository](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository)." -| `repo.remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from a repository](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)."{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} +| `repo.remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from a repository](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)."{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} | `repo.self_hosted_runner_online` | Triggered when the runner application is started. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)." | `repo.self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %} | `repo.self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)." @@ -327,12 +328,12 @@ The following tables describe the {% data variables.product.prodname_actions %} | `enterprise.runner_group_created` | Triggered when a self-hosted runner group is created. For more information, see "[Creating a self-hosted runner group for an enterprise](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-enterprise)." | `enterprise.runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)." | `enterprise.runner_group_runner_removed` | Triggered when the REST API is used to remove a self-hosted runner from a group. -| `enterprise.runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see "[Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)."{% ifversion fpt or ghes > 2.22 or ghae %} +| `enterprise.runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see "[Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)."{% ifversion fpt or ghes > 2.22 or ghae or ghec %} | `enterprise.runner_group_updated` |Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."{% endif %}{% ifversion ghes = 2.22 %} | `enterprise.runner_group_renamed` | Triggered when the self-hosted runner group is renamed. | `enterprise.runner_group_visiblity_updated` | Triggered when the visibility settings of the self-hosted runner group are changed.{% endif %} | `org.runner_group_created` | Triggered when a self-hosted runner group is created. For more information, see "[Creating a self-hosted runner group for an organization](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization)." -| `org.runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."{% ifversion fpt or ghes > 2.22 or ghae %} +| `org.runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."{% ifversion fpt or ghes > 2.22 or ghae or ghec %} | `org.runner_group_updated` | Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."{% endif %} | `org.runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see "[Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)." | `org.runner_group_runner_removed` | Triggered when the REST API is used to remove a self-hosted runner from a group. For more information, see "[Remove a self-hosted runner from a group for an organization](/rest/reference/actions#remove-a-self-hosted-runner-from-a-group-for-an-organization)."{% ifversion ghes = 2.22 %} diff --git a/content/actions/using-containerized-services/about-service-containers.md b/content/actions/using-containerized-services/about-service-containers.md index 6520b2687acd..8e12beb0f9e4 100644 --- a/content/actions/using-containerized-services/about-service-containers.md +++ b/content/actions/using-containerized-services/about-service-containers.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: overview topics: - Containers diff --git a/content/actions/using-containerized-services/creating-postgresql-service-containers.md b/content/actions/using-containerized-services/creating-postgresql-service-containers.md index 96cc9d677a74..eb1a8d1c3706 100644 --- a/content/actions/using-containerized-services/creating-postgresql-service-containers.md +++ b/content/actions/using-containerized-services/creating-postgresql-service-containers.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Containers diff --git a/content/actions/using-containerized-services/creating-redis-service-containers.md b/content/actions/using-containerized-services/creating-redis-service-containers.md index 88426c3f74e6..6e60b45ec97b 100644 --- a/content/actions/using-containerized-services/creating-redis-service-containers.md +++ b/content/actions/using-containerized-services/creating-redis-service-containers.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: tutorial topics: - Containers diff --git a/content/actions/using-containerized-services/index.md b/content/actions/using-containerized-services/index.md index 46ed6e77e766..6b3c7bbafbe6 100644 --- a/content/actions/using-containerized-services/index.md +++ b/content/actions/using-containerized-services/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' redirect_from: - /actions/automating-your-workflow-with-github-actions/using-databases-and-services - /actions/configuring-and-managing-workflows/using-databases-and-service-containers diff --git a/content/actions/using-github-hosted-runners/about-github-hosted-runners.md b/content/actions/using-github-hosted-runners/about-github-hosted-runners.md index af760a4b44a8..e46fc22c8dc1 100644 --- a/content/actions/using-github-hosted-runners/about-github-hosted-runners.md +++ b/content/actions/using-github-hosted-runners/about-github-hosted-runners.md @@ -13,6 +13,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' shortTitle: GitHub-hosted runners --- @@ -134,7 +135,7 @@ Actions that run in Docker containers have static directories under the `/github - `/github/workspace` - {% data reusables.repositories.action-root-user-required %} - `/github/workflow` -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading - "[Managing billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions)" diff --git a/content/actions/using-github-hosted-runners/customizing-github-hosted-runners.md b/content/actions/using-github-hosted-runners/customizing-github-hosted-runners.md index 36f42c981cb6..b915938f28f4 100644 --- a/content/actions/using-github-hosted-runners/customizing-github-hosted-runners.md +++ b/content/actions/using-github-hosted-runners/customizing-github-hosted-runners.md @@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.actions %}' versions: fpt: '*' ghes: '*' + ghec: '*' type: tutorial topics: - Workflows diff --git a/content/actions/using-github-hosted-runners/index.md b/content/actions/using-github-hosted-runners/index.md index e5755e04baef..08c111e56313 100644 --- a/content/actions/using-github-hosted-runners/index.md +++ b/content/actions/using-github-hosted-runners/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-github-hosted-runners - /customizing-github-hosted-runners diff --git a/content/admin/advanced-security/viewing-your-github-advanced-security-usage.md b/content/admin/advanced-security/viewing-your-github-advanced-security-usage.md index baca2303dbcb..9e7c1ef0c20b 100644 --- a/content/admin/advanced-security/viewing-your-github-advanced-security-usage.md +++ b/content/admin/advanced-security/viewing-your-github-advanced-security-usage.md @@ -5,8 +5,11 @@ permissions: 'Enterprise owners can view usage for {% data variables.product.pro product: '{% data reusables.gated-features.ghas %}' versions: ghes: '>=3.1' +type: how_to topics: + - Advanced Security - Enterprise + - Licensing shortTitle: View Advanced Security usage --- diff --git a/content/admin/authentication/index.md b/content/admin/authentication/index.md index 30916742de3e..269a99907e4c 100644 --- a/content/admin/authentication/index.md +++ b/content/admin/authentication/index.md @@ -1,9 +1,10 @@ --- title: Authentication -intro: 'You can configure how users sign into {% data variables.product.product_name %}.' +intro: 'You can configure how users access your enterprise.' redirect_from: - /enterprise/admin/authentication versions: + ghec: '*' ghes: '*' ghae: '*' topics: @@ -11,6 +12,7 @@ topics: children: - /authenticating-users-for-your-github-enterprise-server-instance - /managing-identity-and-access-for-your-enterprise + - /managing-your-enterprise-users-with-your-identity-provider - /configuring-authentication-and-provisioning-with-your-identity-provider --- diff --git a/content/admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise.md b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise.md index 9ed969143d6d..b156ed2cb445 100644 --- a/content/admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise.md +++ b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise.md @@ -1,9 +1,10 @@ --- title: About identity and access management for your enterprise shortTitle: About identity and access management -intro: 'You can use {% ifversion ghes %}{% data variables.product.prodname_ghe_server %}''s built-in authentication, or choose between CAS, LDAP, or SAML{% else %}SAML single sign-on (SSO) and System for Cross-domain Identity Management (SCIM){% endif %} to centrally manage access {% ifversion fpt %}to organizations owned by your enterprise on {% data variables.product.prodname_dotcom_the_website %}{% endif %}{% ifversion ghes or ghae %}to {% data variables.product.product_location %}{% endif %}.' +intro: 'You can use SAML single sign-on (SSO) and System for Cross-domain Identity Management (SCIM) to centrally manage access {% ifversion ghec %}to organizations owned by your enterprise on {% data variables.product.prodname_dotcom_the_website %}{% endif %}{% ifversion ghae %}to {% data variables.product.product_location %}{% endif %}.' product: '{% data reusables.gated-features.saml-sso %}' versions: + ghec: '*' ghae: '*' type: overview topics: @@ -14,10 +15,42 @@ topics: - Identity redirect_from: - /admin/authentication/about-identity-and-access-management-for-your-enterprise + - /github/setting-up-and-managing-your-enterprise/about-identity-and-access-management-for-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/about-identity-and-access-management-for-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/about-user-provisioning-for-organizations-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/configuring-saml-single-sign-on-and-scim-for-your-enterprise-account-using-okta --- ## About identity and access management for your enterprise -{% ifversion ghae %} +{% ifversion ghec %} + +{% data reusables.saml.dotcom-saml-explanation %} {% data reusables.saml.about-saml-enterprise-accounts %} For more information, see "[Configuring SAML single sign-on for your enterprise](/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." + +After you enable SAML SSO, depending on the IdP you use, you may be able to enable additional identity and access management features. {% data reusables.scim.enterprise-account-scim %} + +If you use Azure AD as your IDP, you can use team synchronization to manage team membership within each organization. {% data reusables.identity-and-permissions.about-team-sync %} For more information, see "[Managing team synchronization for organizations in your enterprise account](/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)." + +{% data reusables.saml.switching-from-org-to-enterprise %} For more information, see "[Switching your SAML configuration from an organization to an enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account)." + +## About {% data variables.product.prodname_emus %} + +{% data reusables.enterprise-accounts.emu-short-summary %} + +Configuring {% data variables.product.prodname_emus %} for SAML single-sign on and user provisioning involves following a different process than you would for an enterprise that isn't using {% data variables.product.prodname_managed_users %}. If your enterprise uses {% data variables.product.prodname_emus %}, see "[Configuring SAML single sign-on for Enterprise Managed Users](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users)." + +## Supported IdPs + +We test and officially support the following IdPs. For SAML SSO, we offer limited support for all identity providers that implement the SAML 2.0 standard. For more information, see the [SAML Wiki](https://wiki.oasis-open.org/security) on the OASIS website. + +IdP | SAML | Team synchronization | +--- | :--: | :-------: | +Active Directory Federation Services (AD FS) | {% octicon "check-circle-fill" aria-label= "The check icon" %} | | +Azure Active Directory (Azure AD) | {% octicon "check-circle-fill" aria-label="The check icon" %} | {% octicon "check-circle-fill" aria-label="The check icon" %} | +OneLogin | {% octicon "check-circle-fill" aria-label="The check icon" %} | | +PingOne | {% octicon "check-circle-fill" aria-label="The check icon" %} | | +Shibboleth | {% octicon "check-circle-fill" aria-label="The check icon" %} | | + +{% elsif ghae %} {% data reusables.saml.ae-uses-saml-sso %} {% data reusables.saml.ae-enable-saml-sso-during-bootstrapping %} @@ -32,5 +65,5 @@ To learn how to configure both authentication and user provisioning for {% data ## Further reading - [SAML Wiki](https://wiki.oasis-open.org/security) on the OASIS website -- [System for Cross-domain Identity Management: Protocol (RFC 7644)](https://tools.ietf.org/html/rfc7644) on the IETF website -- [Restricting network traffic to your enterprise](/admin/configuration/restricting-network-traffic-to-your-enterprise) +- [System for Cross-domain Identity Management: Protocol (RFC 7644)](https://tools.ietf.org/html/rfc7644) on the IETF website{% ifversion ghae %} +- [Restricting network traffic to your enterprise](/admin/configuration/restricting-network-traffic-to-your-enterprise){% endif %} diff --git a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta.md b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-using-okta.md similarity index 87% rename from content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta.md rename to content/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-using-okta.md index 0554aae2d042..19459440e47a 100644 --- a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta.md +++ b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-using-okta.md @@ -1,5 +1,5 @@ --- -title: Configuring SAML single sign-on for your enterprise account using Okta +title: Configuring SAML single sign-on for your enterprise using Okta intro: 'You can use Security Assertion Markup Language (SAML) single sign-on (SSO) with Okta to automatically manage access to your enterprise account on {% data variables.product.product_name %}.' product: '{% data reusables.gated-features.enterprise-accounts %}' redirect_from: @@ -8,9 +8,11 @@ redirect_from: - /github/setting-up-and-managing-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta versions: - fpt: '*' + ghec: '*' topics: + - Authentication - Enterprise +type: how_to shortTitle: Configure SAML with Okta --- {% data reusables.enterprise-accounts.user-provisioning-release-stage %} @@ -21,7 +23,7 @@ shortTitle: Configure SAML with Okta You can control access to your enterprise account in {% data variables.product.product_name %} and other web applications from one central interface by configuring the enterprise account to use SAML SSO with Okta, an Identity Provider (IdP). -SAML SSO controls and secures access to enterprise account resources like organizations, repositories, issues, and pull requests. For more information, see "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." +SAML SSO controls and secures access to enterprise account resources like organizations, repositories, issues, and pull requests. For more information, see "[Configuring SAML single sign-on for your enterprise](/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." {% data reusables.saml.switching-from-org-to-enterprise %} For more information, see "[Switching your SAML configuration from an organization to an enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account)." @@ -55,7 +57,7 @@ SAML SSO controls and secures access to enterprise account resources like organi 1. To the right of the drop-down menu, type `.*.*`. 1. Click **Save**. {% data reusables.saml.okta-view-setup-instructions %} -1. Enable SAML for your enterprise account using the information in the setup instructions. For more information, see "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." +1. Enable SAML for your enterprise account using the information in the setup instructions. For more information, see "[Configuring SAML single sign-on for your enterprise](/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." ## Creating groups in Okta diff --git a/content/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md index 01e8187eaacd..9911269003bf 100644 --- a/content/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md +++ b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise.md @@ -1,10 +1,11 @@ --- title: Configuring SAML single sign-on for your enterprise -shortTitle: Configuring SAML SSO -intro: 'You can configure SAML single sign-on (SSO) for your enterprise, which allows you to centrally control authentication for {% data variables.product.product_location %} using your identity provider (IdP).' +shortTitle: Configure SAML SSO +intro: "You can control and secure access to {% ifversion ghec %}resources like repositories, issues, and pull requests within your enterprise's organizations{% elsif ghae %}your enterprise on {% data variables.product.prodname_ghe_managed %}{% endif %} by {% ifversion ghec %}enforcing{% elsif ghae %}configuring{% endif %} SAML single sign-on (SSO) through your identity provider (IdP)." product: '{% data reusables.gated-features.saml-sso %}' permissions: 'Enterprise owners can configure SAML SSO for an enterprise on {% data variables.product.product_name %}.' versions: + ghec: '*' ghae: '*' type: how_to topics: @@ -15,10 +16,26 @@ topics: - SSO redirect_from: - /admin/authentication/configuring-saml-single-sign-on-for-your-enterprise + - /github/setting-up-and-managing-your-enterprise/enabling-saml-single-sign-on-for-organizations-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enabling-saml-single-sign-on-for-organizations-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account --- -## About SAML SSO -{% ifversion ghae %} +{% data reusables.enterprise-accounts.emu-saml-note %} + +## About SAML SSO for enterprise accounts + +{% ifversion ghec %} + +{% data reusables.saml.dotcom-saml-explanation %} For more information, see "[About identity and access management with SAML single sign-on](/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on)." + +{% data reusables.saml.about-saml-enterprise-accounts %} + +{% data reusables.saml.about-saml-access-enterprise-account %} For more information, see "[Viewing and managing a user's SAML access to your enterprise account](/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise)." + +{% data reusables.scim.enterprise-account-scim %} + +{% elsif ghae %} SAML SSO allows you to centrally control and secure access to {% data variables.product.product_location %} from your SAML IdP. When an unauthenticated user visits {% data variables.product.product_location %} in a browser, {% data variables.product.product_name %} will redirect the user to your SAML IdP to authenticate. After the user successfully authenticates with an account on the IdP, the IdP redirects the user back to {% data variables.product.product_location %}. {% data variables.product.product_name %} validates the response from your IdP, then grants access to the user. @@ -32,13 +49,41 @@ After a user successfully authenticates on your IdP, the user's SAML session for ## Supported identity providers -{% data variables.product.product_name %} supports SAML SSO with IdPs that implement the SAML 2.0 standard. For more information, see the [SAML Wiki](https://wiki.oasis-open.org/security) on the OASIS website. +{% data reusables.saml.saml-supported-idps %} -{% data variables.product.company_short %} has tested SAML SSO for {% data variables.product.product_name %} with the following IdPs. +{% ifversion ghec %} -{% ifversion ghae %} -- Azure AD -{% endif %} +## Enforcing SAML single-sign on for organizations in your enterprise account + +{% note %} + +**Notes:** + +- When you enforce SAML SSO for your enterprise, the enterprise configuration will override any existing organization-level SAML configurations. {% data reusables.saml.switching-from-org-to-enterprise %} For more information, see "[Switching your SAML configuration from an organization to an enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account)." +- When you enforce SAML SSO for an organization, {% data variables.product.company_short %} removes any members of the organization that have not authenticated successfully with your SAML IdP. When you require SAML SSO for your enterprise, {% data variables.product.company_short %} does not remove members of the enterprise that have not authenticated successfully with your SAML IdP. The next time a member accesses the enterprise's resources, the member must authenticate with your SAML IdP. + +{% endnote %} + +For more detailed information about how to enable SAML using Okta, see "[Configuring SAML single sign-on for your enterprise account using Okta](/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-using-okta)." + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +4. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. Under "SAML single sign-on", select **Require SAML authentication**. + ![Checkbox for enabling SAML SSO](/assets/images/help/business-accounts/enable-saml-auth-enterprise.png) +6. In the **Sign on URL** field, type the HTTPS endpoint of your IdP for single sign-on requests. This value is available in your IdP configuration. +![Field for the URL that members will be forwarded to when signing in](/assets/images/help/saml/saml_sign_on_url_business.png) +7. Optionally, in the **Issuer** field, type your SAML issuer URL to verify the authenticity of sent messages. +![Field for the SAML issuer's name](/assets/images/help/saml/saml_issuer.png) +8. Under **Public Certificate**, paste a certificate to verify SAML responses. +![Field for the public certificate from your identity provider](/assets/images/help/saml/saml_public_certificate.png) +9. To verify the integrity of the requests from your SAML issuer, click {% octicon "pencil" aria-label="The edit icon" %}. Then in the "Signature Method" and "Digest Method" drop-downs, choose the hashing algorithm used by your SAML issuer. +![Drop-downs for the Signature Method and Digest method hashing algorithms used by your SAML issuer](/assets/images/help/saml/saml_hashing_method.png) +10. Before enabling SAML SSO for your enterprise, click **Test SAML configuration** to ensure that the information you've entered is correct. ![Button to test SAML configuration before enforcing](/assets/images/help/saml/saml_test.png) +11. Click **Save**. + +{% elsif ghae %} ## Enabling SAML SSO @@ -117,3 +162,5 @@ If the details for your IdP change, you'll need to edit the SAML SSO configurati !["Save" button for SAML SSO configuration](/assets/images/help/saml/ae-saml-disabled-save.png) {% endif %} + +{% endif %} \ No newline at end of file diff --git a/content/admin/authentication/managing-identity-and-access-for-your-enterprise/index.md b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/index.md index f582e6da4e2f..377376193ec5 100644 --- a/content/admin/authentication/managing-identity-and-access-for-your-enterprise/index.md +++ b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/index.md @@ -1,12 +1,19 @@ --- title: Managing identity and access for your enterprise shortTitle: Managing identity and access -intro: 'You can centrally manage accounts and access to {% data variables.product.product_location %}.' +intro: "You can centrally manage {% ifversion ghae %}accounts and {% endif %}access to your {% ifversion ghae %}enterprise{% elsif ghec %}enterprise's resources{% endif %} on {% data variables.product.product_name %} with SAML single sign-on (SSO) and System for Cross-domain Identity Management (SCIM)." versions: + ghec: '*' ghae: '*' +redirect_from: + - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account children: - /about-identity-and-access-management-for-your-enterprise - /configuring-saml-single-sign-on-for-your-enterprise - /configuring-user-provisioning-for-your-enterprise + - /managing-team-synchronization-for-organizations-in-your-enterprise + - /configuring-saml-single-sign-on-for-your-enterprise-using-okta + - /switching-your-saml-configuration-from-an-organization-to-an-enterprise-account --- +{% data reusables.enterprise-accounts.emu-saml-note %} diff --git a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/managing-team-synchronization-for-organizations-in-your-enterprise-account.md b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise.md similarity index 86% rename from content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/managing-team-synchronization-for-organizations-in-your-enterprise-account.md rename to content/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise.md index 5d13c0faa0a6..1b9d0eb84b88 100644 --- a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/managing-team-synchronization-for-organizations-in-your-enterprise-account.md +++ b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise.md @@ -1,14 +1,19 @@ --- -title: Managing team synchronization for organizations in your enterprise account +title: Managing team synchronization for organizations in your enterprise intro: 'You can enable team synchronization between an identity provider (IdP) and {% data variables.product.product_name %} to allow organizations owned by your enterprise account to manage team membership through IdP groups.' product: '{% data reusables.gated-features.enterprise-accounts %}' permissions: Enterprise owners can manage team synchronization for an enterprise account. versions: - fpt: '*' + ghec: '*' +type: how_to topics: + - Accounts - Enterprise + - SSO + - Teams redirect_from: - /github/setting-up-and-managing-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/managing-team-synchronization-for-organizations-in-your-enterprise-account shortTitle: Manage team synchronization --- @@ -32,7 +37,7 @@ You can also configure and manage team synchronization for an individual organiz You or your Azure AD administrator must be a Global administrator or a Privileged Role administrator in Azure AD. -You must enforce SAML single sign-on for organizations in your enterprise account with your supported IdP. For more information, see "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." +You must enforce SAML single sign-on for organizations in your enterprise account with your supported IdP. For more information, see "[Configuring SAML single sign-on for your enterprise](/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." You must authenticate to your enterprise account using SAML SSO and the supported IdP. For more information, see "[Authenticating with SAML single sign-on](/articles/authenticating-with-saml-single-sign-on)." diff --git a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md similarity index 91% rename from content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md rename to content/admin/authentication/managing-identity-and-access-for-your-enterprise/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md index 8621a9c58a3e..170eecf40a29 100644 --- a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md +++ b/content/admin/authentication/managing-identity-and-access-for-your-enterprise/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account.md @@ -4,10 +4,15 @@ intro: 'Learn special considerations and best practices for replacing an organiz product: '{% data reusables.gated-features.enterprise-accounts %}' permissions: Enterprise owners can configure SAML single sign-on for an enterprise account. versions: - fpt: '*' + ghec: '*' topics: + - Authentication - Enterprise + - Organizations +type: how_to shortTitle: Switching from organization +redirect_from: + - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account --- {% data reusables.enterprise-accounts.emu-saml-note %} @@ -32,7 +37,7 @@ You are not required to remove any organization-level SAML configurations before ## Switching your SAML configuration from an organization to an enterprise account -1. Enforce SAML SSO for your enterprise account, making sure all organization members are assigned or given access to the IdP app being used for the enterprise account. For more information, see "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." +1. Enforce SAML SSO for your enterprise account, making sure all organization members are assigned or given access to the IdP app being used for the enterprise account. For more information, see "[Configuring SAML single sign-on for your enterprise](/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." 1. Optionally, remove any existing SAML configuration for organizations owned by the enterprise account. To help you decide whether to remove the configurations, see "[About SAML single sign-on for enterprise accounts](#about-saml-single-sign-on-for-enterprise-accounts)." 1. If you kept any organization-level SAML configurations in place, to prevent confusion, consider hiding the tile for the organization-level apps in your IdP. 1. Advise your enterprise members about the change. diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users.md b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users.md similarity index 97% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users.md rename to content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users.md index 206fd1e32bbc..421e5f1f3316 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users.md +++ b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users.md @@ -5,11 +5,15 @@ intro: You can centrally manage identity and access for your enterprise members product: '{% data reusables.gated-features.emus %}' redirect_from: - /early-access/github/articles/get-started-with-managed-users-for-your-enterprise + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users versions: - fpt: '*' + ghec: '*' +type: overview topics: - Accounts + - Authentication - Enterprise + - SSO --- ## About {% data variables.product.prodname_emus %} diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise.md b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise.md similarity index 90% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise.md rename to content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise.md index 6e27b1e111b1..3f60f631bca3 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise.md +++ b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise.md @@ -4,8 +4,10 @@ shortTitle: Auditing activity intro: 'You can audit the activity of the {% data variables.product.prodname_managed_users %} in your enterprise, viewing information about what actions were performed, by which user, and when they took place.' permissions: 'Enterprise owners can access the audit log.' product: '{% data reusables.gated-features.emus %}' +redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise versions: - fpt: '*' + ghec: '*' topics: - Accounts - Enterprise diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users.md b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users.md similarity index 97% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users.md rename to content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users.md index bc4d6bce8cd5..ee64b62e651b 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users.md +++ b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users.md @@ -3,11 +3,15 @@ title: Configuring SAML single sign-on for Enterprise Managed Users shortTitle: SAML for managed users intro: 'You can automatically manage access to your enterprise account on {% data variables.product.prodname_dotcom %} by configuring Security Assertion Markup Language (SAML) single sign-on (SSO).' product: '{% data reusables.gated-features.emus %}' +redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users versions: - fpt: '*' + ghec: '*' +type: tutorial topics: - - Accounts + - Authentication - Enterprise + - SSO --- ## About SAML single sign-on for {% data variables.product.prodname_emus %} diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md similarity index 96% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md rename to content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md index a9db9ff4065c..2c0d9882e792 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md +++ b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta.md @@ -4,12 +4,16 @@ shortTitle: Set up provisioning with Okta intro: 'You can provision new users and manage their membership of your enterprise and teams using Okta as your identity provider.' product: '{% data reusables.gated-features.emus %}' versions: - fpt: '*' + ghec: '*' redirect_from: - /early-access/github/articles/configuring-provisioning-for-managed-users-with-okta + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta +type: tutorial topics: - Accounts + - Authentication - Enterprise + - SSO --- ## About provisioning with Okta diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users.md b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users.md similarity index 96% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users.md rename to content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users.md index 46ae1252b167..5186f0ae314c 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users.md +++ b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users.md @@ -3,8 +3,10 @@ title: Configuring SCIM provisioning for Enterprise Managed Users shortTitle: Provisioning managed users intro: 'You can configure your identity provider to provision new users and manage their membership in your enterprise and teams.' product: '{% data reusables.gated-features.emus %}' +redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users versions: - fpt: '*' + ghec: '*' topics: - Accounts - Enterprise diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/index.md b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/index.md similarity index 83% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/index.md rename to content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/index.md index 7104779c1ffd..ec0417f490c6 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/index.md +++ b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/index.md @@ -3,8 +3,10 @@ title: Managing your enterprise users with your identity provider shortTitle: Manage users with your IdP product: '{% data reusables.gated-features.emus %}' intro: 'You can manage identity and access with your identity provider and provision accounts that can only contribute to your enterprise.' +redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/ versions: - fpt: '*' + ghec: '*' topics: - Enterprise - Accounts diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups.md b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups.md similarity index 96% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups.md rename to content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups.md index 7954cf5efeb4..04cd142bbbbb 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups.md +++ b/content/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups.md @@ -3,11 +3,16 @@ title: Managing team memberships with identity provider groups shortTitle: Manage teams with your IdP intro: You can manage team membership on {% data variables.product.product_name %} through your identity provider (IdP) by connecting IdP groups with your {% data variables.product.prodname_emu_enterprise %}. product: '{% data reusables.gated-features.emus %}' +redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups versions: - fpt: '*' + ghec: '*' +type: how_to topics: - Accounts - Enterprise + - SSO + - Teams --- ## About team management with {% data variables.product.prodname_emus %} diff --git a/content/admin/configuration/configuring-your-enterprise/index.md b/content/admin/configuration/configuring-your-enterprise/index.md index d302d0fe6e3a..b760e58eb7ce 100644 --- a/content/admin/configuration/configuring-your-enterprise/index.md +++ b/content/admin/configuration/configuring-your-enterprise/index.md @@ -9,6 +9,7 @@ redirect_from: - /enterprise/admin/installation/configuring-the-github-enterprise-server-appliance - /enterprise/admin/configuration/configuring-your-enterprise versions: + ghec: '*' ghes: '*' ghae: '*' topics: diff --git a/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md b/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md index e01cff790a39..40f97d05e093 100644 --- a/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md +++ b/content/admin/configuration/configuring-your-enterprise/initializing-github-ae.md @@ -13,7 +13,7 @@ redirect_from: Before you can initialize your enterprise, you must purchase {% data variables.product.product_name %}. For more information, contact {% data variables.contact.contact_enterprise_sales %}. -{% data reusables.github-ae.initialize-enterprise %} Make sure the information you provide matches the intended enterprise owner's information in the IdP. For more information about enterprise owners, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise#enterprise-owner)." +{% data reusables.github-ae.initialize-enterprise %} Make sure the information you provide matches the intended enterprise owner's information in the IdP. For more information about enterprise owners, see "[Roles in an enterprise](/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise#enterprise-owner)." {% note %} diff --git a/content/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise.md b/content/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise.md index b279624496bf..97c6ac84531d 100644 --- a/content/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise.md +++ b/content/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise.md @@ -1,8 +1,10 @@ --- title: Verifying or approving a domain for your enterprise +shortTitle: Verify or approve a domain intro: 'You can verify your ownership of domains with {% data variables.product.company_short %} to confirm the identity of organizations owned by your enterprise account. You can also approve domains where organization members can receive email notifications.' product: '{% data reusables.gated-features.verify-and-approve-domain %}' versions: + ghec: '*' ghes: '>=3.2' permissions: Enterprise owners can verify or approve a domain for an enterprise account. type: how_to @@ -12,25 +14,78 @@ topics: - Organizations - Policy redirect_from: + - /admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/verifying-or-approving-a-domain-for-your-enterprise-account - /admin/configuration/verifying-or-approving-a-domain-for-your-enterprise -shortTitle: Verify a domain + - /github/setting-up-and-managing-your-enterprise/verifying-your-enterprise-accounts-domain + - /github/articles/verifying-your-enterprise-accounts-domain + - /early-access/github/articles/verifying-your-enterprise-accounts-domain + - /github/setting-up-and-managing-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account --- + ## About verification of domains -{% data reusables.enterprise-accounts.domains-about-verification %} +You can confirm that the websites and email addresses listed on the profiles of any organization owned by your enterprise account are controlled by your enterprise by verifying the domains. Verified domains for an enterprise account apply to every organization owned by the enterprise account. + +After you verify ownership of your enterprise account's domains, a "Verified" badge will display on the profile of each organization that has the domain listed on its profile. {% data reusables.organizations.verified-domains-details %} + +Organization owners will be able to verify the identity of organization members by viewing each member's email address within the verified domain. + +After you verify domains for your enterprise account, you can restrict email notifications to verified domains for all the organizations owned by your enterprise account. For more information, see "[Restricting email notifications for your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)." + +Even if you don't restrict email notifications for the enterprise account, if an organization owner has restricted email notifications for the organization, organization members will be able to receive notifications at any domains verified or approved for the enterprise account, in addition to any domains verified or approved for the organization. For more information about restricting notifications for an organization, see "[Restricting email notifications for your organization](/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization)." + +Organization owners can also verify additional domains for their organizations. For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)." ## About approval of domains -{% data reusables.enterprise-accounts.domains-about-approval %} +{% data reusables.enterprise-accounts.approved-domains-beta-note %} + +{% data reusables.enterprise-accounts.approved-domains-about %} + +After you approve domains for your enterprise account, you can restrict email notifications for activity within your enterprise account to users with verified email addresses within verified or approved domains. For more information, see "[Restricting email notifications for your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)." + +{% ifversion ghec %}To receive email notifications, the owner of the user account must verify the email address on {% data variables.product.product_name %}. For more information, see "[Verifying your email address](/github/getting-started-with-github/verifying-your-email-address)."{% endif %} + +Organization owners cannot see the email address or which user account is associated with an email address from an approved domain. + +Organization owners can also approve additional domains for their organizations. For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)." ## Verifying a domain for your enterprise account -{% data reusables.enterprise-accounts.domains-verifying %} +To verify your enterprise account's domain, you must have access to modify domain records with your domain hosting service. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.verified-domains-tab %} +{% data reusables.enterprise-accounts.add-a-domain %} +{% data reusables.organizations.add-domain %} +{% data reusables.organizations.add-dns-txt-record %} +1. Wait for your DNS configuration to change, which may take up to 72 hours. You can confirm your DNS configuration has changed by running the `dig` command on the command line, replacing `ENTERPRISE-ACCOUNT` with the name of your enterprise account, and `example.com` with the domain you'd like to verify. You should see your new TXT record listed in the command output. + ```shell + dig _github-challenge-ENTERPRISE-ACCOUNT.example.com +nostats +nocomments +nocmd TXT + ``` +1. After confirming your TXT record is added to your DNS, follow steps one through four above to navigate to your enterprise account's approved and verified domains. +{% data reusables.enterprise-accounts.continue-verifying-domain %} +1. Optionally, after the "Verified" badge is visible on your organizations' profiles, delete the TXT entry from the DNS record at your domain hosting service. +![Verified badge](/assets/images/help/organizations/verified-badge.png) ## Approving a domain for your enterprise account -{% data reusables.enterprise-accounts.domains-approving %} +{% data reusables.enterprise-accounts.approved-domains-beta-note %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.verified-domains-tab %} +{% data reusables.enterprise-accounts.add-a-domain %} +{% data reusables.organizations.add-domain %} +{% data reusables.organizations.domains-approve-it-instead %} +{% data reusables.organizations.domains-approve-domain %} ## Removing an approved or verified domain -{% data reusables.enterprise-accounts.domains-removing %} +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.verified-domains-tab %} +1. To the right of the domain to remove, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Delete**. + !["Delete" for a domain](/assets/images/help/organizations/domains-delete.png) diff --git a/content/admin/configuration/index.md b/content/admin/configuration/index.md index 437316e845fc..ef17c6b79c66 100644 --- a/content/admin/configuration/index.md +++ b/content/admin/configuration/index.md @@ -5,6 +5,7 @@ intro: You can configure your enterprise to suit your organization's needs. redirect_from: - /enterprise/admin/configuration versions: + ghec: '*' ghes: '*' ghae: '*' topics: diff --git a/content/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom.md b/content/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom.md index 707e272a45d1..6658757d25f4 100644 --- a/content/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom.md +++ b/content/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom.md @@ -14,6 +14,7 @@ permissions: 'Enterprise owners who are also owners of the connected {% data var versions: ghes: '*' ghae: 'next' +type: how_to topics: - Enterprise - GitHub Connect diff --git a/content/admin/configuration/managing-connections-between-your-enterprise-accounts/index.md b/content/admin/configuration/managing-connections-between-your-enterprise-accounts/index.md index 0c74dbfd2362..7c56fe792dcd 100644 --- a/content/admin/configuration/managing-connections-between-your-enterprise-accounts/index.md +++ b/content/admin/configuration/managing-connections-between-your-enterprise-accounts/index.md @@ -12,6 +12,7 @@ redirect_from: versions: ghes: '*' ghae: 'next' +type: how_to topics: - Enterprise children: diff --git a/content/admin/enterprise-management/configuring-clustering/initializing-the-cluster.md b/content/admin/enterprise-management/configuring-clustering/initializing-the-cluster.md index 205825e59c97..421f0633d05b 100644 --- a/content/admin/enterprise-management/configuring-clustering/initializing-the-cluster.md +++ b/content/admin/enterprise-management/configuring-clustering/initializing-the-cluster.md @@ -29,7 +29,7 @@ topics: ## Initializing the cluster -To initialize the cluster, you need a cluster configuration file (`cluster.conf`). For more information, see “[About the cluster configuration file](/enterprise/{{ currentVersion }}/admin/guides/clustering/initializing-the-cluster/#about-the-cluster-configuration-file)". +To initialize the cluster, you need a cluster configuration file (`cluster.conf`). For more information, see "[About the cluster configuration file](/enterprise/{{ currentVersion }}/admin/guides/clustering/initializing-the-cluster/#about-the-cluster-configuration-file)". 1. From the first node that was configured, run `ghe-cluster-config-init`. This will initialize the cluster if there are nodes in the cluster configuration file that are not configured. 2. Run `ghe-cluster-config-apply`. This will validate the `cluster.conf` file, apply the configuration to each node file and bring up the configured services on each node. diff --git a/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md b/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md index 29ad0472d89a..06389c89112e 100644 --- a/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md +++ b/content/admin/github-actions/advanced-configuration-and-troubleshooting/troubleshooting-github-actions-for-your-enterprise.md @@ -4,8 +4,11 @@ intro: 'Troubleshooting common issues that occur when using {% data variables.pr permissions: 'Site administrators can troubleshoot {% data variables.product.prodname_actions %} issues and modify {% data variables.product.prodname_ghe_server %} configurations.' versions: ghes: '>=3.0' +type: how_to topics: + - Actions - Enterprise + - Troubleshooting redirect_from: - /admin/github-actions/troubleshooting-github-actions-for-your-enterprise shortTitle: Troubleshoot GitHub Actions diff --git a/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-amazon-s3-storage.md b/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-amazon-s3-storage.md index 105702453bf3..a8959667dfdf 100644 --- a/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-amazon-s3-storage.md +++ b/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-amazon-s3-storage.md @@ -4,8 +4,12 @@ intro: 'You can enable {% data variables.product.prodname_actions %} on {% data permissions: 'Site administrators can enable {% data variables.product.prodname_actions %} and configure enterprise settings.' versions: ghes: '>=3.0' +type: how_to topics: + - Actions - Enterprise + - Infrastructure + - Storage redirect_from: - /admin/github-actions/enabling-github-actions-with-amazon-s3-storage shortTitle: Amazon S3 storage diff --git a/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md b/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md index 8c2bc936a342..142fc38457e2 100644 --- a/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md +++ b/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-azure-blob-storage.md @@ -4,8 +4,12 @@ intro: 'You can enable {% data variables.product.prodname_actions %} on {% data permissions: 'Site administrators can enable {% data variables.product.prodname_actions %} and configure enterprise settings.' versions: ghes: '>=3.0' +type: how_to topics: + - Actions - Enterprise + - Infrastructure + - Storage redirect_from: - /admin/github-actions/enabling-github-actions-with-azure-blob-storage shortTitle: Azure Blob storage diff --git a/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-gateway-for-nas-storage.md b/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-gateway-for-nas-storage.md index a59304be4d0d..906753184918 100644 --- a/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-gateway-for-nas-storage.md +++ b/content/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enabling-github-actions-with-minio-gateway-for-nas-storage.md @@ -4,8 +4,12 @@ intro: 'You can enable {% data variables.product.prodname_actions %} on {% data permissions: 'Site administrators can enable {% data variables.product.prodname_actions %} and configure enterprise settings.' versions: ghes: '>=3.0' +type: how_to topics: + - Actions - Enterprise + - Infrastructure + - Storage redirect_from: - /admin/github-actions/enabling-github-actions-with-minio-gateway-for-nas-storage shortTitle: MinIO Gateway for NAS storage diff --git a/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md b/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md index ae28b1b86a26..b49a2f000b53 100644 --- a/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md +++ b/content/admin/github-actions/managing-access-to-actions-from-githubcom/manually-syncing-actions-from-githubcom.md @@ -7,7 +7,9 @@ redirect_from: versions: ghes: '*' ghae: 'next' +type: tutorial topics: + - Actions - Enterprise shortTitle: Manually sync actions --- diff --git a/content/admin/github-actions/managing-access-to-actions-from-githubcom/setting-up-the-tool-cache-on-self-hosted-runners-without-internet-access.md b/content/admin/github-actions/managing-access-to-actions-from-githubcom/setting-up-the-tool-cache-on-self-hosted-runners-without-internet-access.md index db58bbcd5f82..f17e759464b8 100644 --- a/content/admin/github-actions/managing-access-to-actions-from-githubcom/setting-up-the-tool-cache-on-self-hosted-runners-without-internet-access.md +++ b/content/admin/github-actions/managing-access-to-actions-from-githubcom/setting-up-the-tool-cache-on-self-hosted-runners-without-internet-access.md @@ -7,8 +7,12 @@ redirect_from: versions: ghes: '*' ghae: 'next' +type: tutorial topics: + - Actions - Enterprise + - Networking + - Storage shortTitle: Tool cache for offline runners --- {% data reusables.actions.enterprise-beta %} diff --git a/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md b/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md index 089d07fe19ac..3a8f9cbcafa0 100644 --- a/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md +++ b/content/admin/github-actions/managing-access-to-actions-from-githubcom/using-the-latest-version-of-the-official-bundled-actions.md @@ -4,8 +4,11 @@ intro: 'You can update the actions that are bundled with your enterprise, or use versions: ghes: '*' ghae: next +type: how_to topics: + - Actions - Enterprise + - GitHub Connect redirect_from: - /admin/github-actions/using-the-latest-version-of-the-official-bundled-actions shortTitle: Use the latest bundled actions diff --git a/content/admin/github-actions/using-github-actions-in-github-ae/using-actions-in-github-ae.md b/content/admin/github-actions/using-github-actions-in-github-ae/using-actions-in-github-ae.md index f3884e3e5763..9099422ce54f 100644 --- a/content/admin/github-actions/using-github-actions-in-github-ae/using-actions-in-github-ae.md +++ b/content/admin/github-actions/using-github-actions-in-github-ae/using-actions-in-github-ae.md @@ -3,6 +3,10 @@ title: Using actions in GitHub AE intro: '{% data variables.product.prodname_ghe_managed %} includes most of the {% data variables.product.prodname_dotcom %}-authored actions.' versions: ghae: '*' +type: how_to +topics: + - Actions + - Enterprise redirect_from: - /admin/github-actions/using-actions-in-github-ae shortTitle: Use actions diff --git a/content/admin/guides.md b/content/admin/guides.md index e50c48ea4833..f31b628aea4f 100644 --- a/content/admin/guides.md +++ b/content/admin/guides.md @@ -5,6 +5,7 @@ intro: 'Learn how to increase developer productivity and code quality with {% da allowTitleToDifferFromFilename: true layout: product-sublanding versions: + ghec: '*' ghes: '*' ghae: '*' learningTracks: @@ -15,12 +16,24 @@ learningTracks: - '{% ifversion ghes %}improve_security_of_your_instance{% endif %}' - '{% ifversion ghes > 2.22 %}configure_github_actions{% endif %}' - '{% ifversion ghes > 2.22 %}configure_github_advanced_security{% endif %}' + - '{% ifversion ghec %}get_started_with_your_enterprise_account{% endif %}' includeGuides: - /admin/authentication/allowing-built-in-authentication-for-users-outside-your-identity-provider - /admin/authentication/changing-authentication-methods - /admin/authentication/configuring-authentication-and-provisioning-for-your-enterprise-using-azure-ad - /admin/authentication/configuring-saml-single-sign-on-for-your-enterprise - /admin/authentication/configuring-user-provisioning-for-your-enterprise + - /admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise + - /admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise + - /admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-using-okta + - /admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise + - /admin/authentication/managing-identity-and-access-for-your-enterprise/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account + - /admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users + - /admin/authentication/managing-your-enterprise-users-with-your-identity-provider/auditing-activity-in-your-enterprise + - /admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users + - /admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users + - /admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users-with-okta + - /admin/authentication/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups - /admin/authentication/using-cas - /admin/authentication/using-ldap - /admin/authentication/using-saml @@ -35,6 +48,7 @@ includeGuides: - /admin/configuration/configuring-rate-limits - /admin/configuration/configuring-secret-scanning-for-your-appliance - /admin/configuration/configuring-tls + - /admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise - /admin/configuration/connecting-your-enterprise-account-to-github-enterprise-cloud - /admin/configuration/enabling-and-scheduling-maintenance-mode - /admin/configuration/enabling-automatic-user-license-sync-between-github-enterprise-server-and-github-enterprise-cloud @@ -61,13 +75,14 @@ includeGuides: - /admin/enterprise-management/upgrading-github-enterprise-server - /admin/enterprise-support/about-github-enterprise-support - /admin/github-actions/about-using-actions-in-your-enterprise - - /admin/github-actions/getting-started-with-github-actions-for-github-enterprise-server - - /admin/github-actions/enforcing-github-actions-policies-for-your-enterprise + - /admin/github-actions/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled - /admin/github-actions/enabling-automatic-access-to-githubcom-actions-using-github-connect + - /admin/github-actions/enforcing-github-actions-policies-for-your-enterprise + - /admin/github-actions/getting-started-with-github-actions-for-github-enterprise-server - /admin/github-actions/high-availability-for-github-actions - - /admin/github-actions/backing-up-and-restoring-github-enterprise-server-with-github-actions-enabled - /admin/github-actions/using-a-staging-environment - /admin/overview/about-data-residency + - /admin/overview/about-enterprise-accounts - /admin/overview/about-github-ae - /admin/overview/about-upgrades-to-new-releases - /admin/packages/configuring-package-ecosystem-support-for-your-enterprise @@ -75,30 +90,48 @@ includeGuides: - /admin/policies/about-pre-receive-hooks - /admin/policies/creating-a-pre-receive-hook-environment - /admin/policies/creating-a-pre-receive-hook-script + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-dependency-insights-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-team-policies-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise - /admin/policies/managing-pre-receive-hooks-on-the-github-enterprise-server-appliance - /admin/user-management/about-migrations - - /admin/user-management/audited-actions - /admin/user-management/adding-people-to-teams + - /admin/user-management/audited-actions - /admin/user-management/auditing-ssh-keys - /admin/user-management/auditing-users-across-your-enterprise - /admin/user-management/configuring-git-large-file-storage-for-your-enterprise - /admin/user-management/configuring-visibility-for-organization-membership - /admin/user-management/continuous-integration-using-jenkins - - /admin/user-management/disabling-git-ssh-access-on-your-enterprise - /admin/user-management/creating-teams + - /admin/user-management/disabling-git-ssh-access-on-your-enterprise - /admin/user-management/exporting-migration-data-from-githubcom - /admin/user-management/exporting-migration-data-from-your-enterprise - /admin/user-management/importing-data-from-third-party-version-control-systems - /admin/user-management/managing-dormant-users - /admin/user-management/managing-global-webhooks + - /admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise + - /admin/user-management/managing-organizations-in-your-enterprise/managing-unowned-organizations-in-your-enterprise + - /admin/user-management/managing-organizations-in-your-enterprise/streaming-the-audit-logs-for-organizations-in-your-enterprise-account + - /admin/user-management/managing-organizations-in-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise - /admin/user-management/managing-projects-using-jira - - /admin/user-management/removing-users-from-teams-and-organizations + - /admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise + - /admin/user-management/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise + - /admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise + - /admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise + - /admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise - /admin/user-management/migrating-data-to-your-enterprise - /admin/user-management/migrating-to-internal-repositories + - /admin/user-management/monitoring-activity-in-your-enterprise/managing-global-webhooks - /admin/user-management/placing-a-legal-hold-on-a-user-or-organization - /admin/user-management/preparing-to-migrate-data-to-your-enterprise - /admin/user-management/preventing-users-from-creating-organizations - /admin/user-management/rebuilding-contributions-data + - /admin/user-management/removing-users-from-teams-and-organizations - /admin/user-management/requiring-two-factor-authentication-for-an-organization - /admin/user-management/suspending-and-unsuspending-users --- diff --git a/content/admin/index.md b/content/admin/index.md index 1b75a4d41ea2..2b160096f328 100644 --- a/content/admin/index.md +++ b/content/admin/index.md @@ -1,8 +1,10 @@ --- title: Enterprise administrator documentation shortTitle: Enterprise administrators -intro: 'Documentation and guides for enterprise administrators, system administrators, and security specialists who {% ifversion ghes %}deploy, {% endif %}configure{% ifversion ghes %},{% endif %} and manage {% data variables.product.product_name %}.' +intro: 'Documentation and guides for enterprise administrators{% ifversion ghes %}, system administrators,{% endif %} and security specialists who {% ifversion ghes %}deploy, {% endif %}configure{% ifversion ghes %},{% endif %} and manage {% data variables.product.product_name %}.' redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise - /github/installing-and-configuring-github-insights/exploring-your-usage-of-github-enterprise - /github/installing-and-configuring-github-insights/metrics-available-with-github-insights - /github/installing-and-configuring-github-insights/key-metrics-for-collaboration-in-pull-requests @@ -64,7 +66,7 @@ redirect_from: - /insights/installing-and-configuring-github-insights/managing-data-in-github-insights/managing-repositories - /admin/configuration/configuring-your-enterprise/configuring-data-encryption-for-your-enterprise introLinks: - overview: '{% ifversion ghes %}/admin/overview/system-overview{% elsif ghae %}/admin/overview/about-github-ae{% endif %}' + overview: '{% ifversion ghes %}/admin/overview/system-overview{% elsif ghae %}/admin/overview/about-github-ae{% elsif ghec %}/admin/overview/about-enterprise-accounts{% endif %}' changelog: label: enterprise featuredLinks: @@ -75,6 +77,9 @@ featuredLinks: - '{% ifversion ghes %}/admin/configuration/configuring-backups-on-your-appliance{% endif %}' - '{% ifversion ghes %}/admin/enterprise-management/creating-a-high-availability-replica{% endif %}' - '{% ifversion ghes %}/admin/enterprise-management/upgrading-github-enterprise-server{% endif %}' + - '{% ifversion ghec %}/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise{% endif %}' + - '{% ifversion ghec %}/admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise{% endif %}' + - '{% ifversion ghec %}/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise{% endif %}' guideCards: - '{% ifversion ghes > 2.22 %} /admin/github-actions/getting-started-with-github-actions-for-github-enterprise-server {% elsif ghes < 3.0 %} /admin/enterprise-management/upgrading-github-enterprise-server {% endif %}' - '{% ifversion ghes > 2.22 %} /admin/packages/getting-started-with-github-packages-for-your-enterprise {% elsif ghes < 3.0 %} /admin/user-management/customizing-user-messages-for-your-enterprise {% endif %}' @@ -82,6 +87,9 @@ featuredLinks: - '{% ifversion ghae %}/admin/configuration/initializing-github-ae{% endif %}' - '{% ifversion ghae %}/admin/user-management/customizing-user-messages-for-your-enterprise{% endif %}' - '{% ifversion ghae %}/admin/github-actions/getting-started-with-github-actions-for-github-ae{% endif %}' + - '{% ifversion ghec %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise{% endif %}' + - '{% ifversion ghec %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise{% endif %}' + - '{% ifversion ghec %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise{% endif %}' popular: - '{% ifversion ghae %}/admin/release-notes{% endif %}' - '{% ifversion ghes %}/github/getting-started-with-github/setting-up-a-trial-of-github-enterprise-server{% endif %}' @@ -90,9 +98,13 @@ featuredLinks: - '{% ifversion ghae %}/admin/overview/about-upgrades-to-new-releases{% endif %}' - '{% ifversion ghes %}/billing/managing-your-license-for-github-enterprise{% endif %}' - '{% ifversion ghes %}/admin/configuration/command-line-utilities{% endif %}' + - '{% ifversion ghec %}/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise{% endif %}' + - '{% ifversion ghec %}/admin/user-management/managing-organizations-in-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise{% endif %}' + - '{% ifversion ghec %}/admin/user-management/monitoring-activity-in-your-enterprise/managing-global-webhooks{% endif %}' - /admin/enterprise-support/about-github-enterprise-support layout: product-landing versions: + ghec: '*' ghes: '*' ghae: '*' children: diff --git a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md index 4472e55f3139..b638b364c90d 100644 --- a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md +++ b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-aws.md @@ -7,8 +7,12 @@ redirect_from: - /admin/installation/installing-github-enterprise-server-on-aws versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Infrastructure + - Set up shortTitle: Install on AWS --- ## Prerequisites diff --git a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md index 76e8219b0a60..0c40cded69e3 100644 --- a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md +++ b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-azure.md @@ -7,8 +7,12 @@ redirect_from: - /admin/installation/installing-github-enterprise-server-on-azure versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Infrastructure + - Set up shortTitle: Install on Azure --- You can deploy {% data variables.product.prodname_ghe_server %} on global Azure or Azure Government. diff --git a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md index ac157f07085d..ce1a7d231b57 100644 --- a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md +++ b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-google-cloud-platform.md @@ -7,8 +7,12 @@ redirect_from: - /admin/installation/installing-github-enterprise-server-on-google-cloud-platform versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Infrastructure + - Set up shortTitle: Install on GCP --- ## Prerequisites diff --git a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-hyper-v.md b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-hyper-v.md index 60f1a2bcb56c..203eb656b909 100644 --- a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-hyper-v.md +++ b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-hyper-v.md @@ -7,8 +7,12 @@ redirect_from: - /admin/installation/installing-github-enterprise-server-on-hyper-v versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Infrastructure + - Set up shortTitle: Install on Hyper-V --- ## Prerequisites diff --git a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md index 14ee3760a20b..623ea61493ab 100644 --- a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md +++ b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-openstack-kvm.md @@ -7,8 +7,12 @@ redirect_from: - /admin/installation/installing-github-enterprise-server-on-openstack-kvm versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Infrastructure + - Set up shortTitle: Install on OpenStack --- ## Prerequisites diff --git a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md index 0837c013631e..8a1aa53b7b1e 100644 --- a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md +++ b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-vmware.md @@ -10,8 +10,12 @@ redirect_from: - /admin/installation/installing-github-enterprise-server-on-vmware versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Infrastructure + - Set up shortTitle: Install on VMware --- ## Prerequisites diff --git a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-xenserver.md b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-xenserver.md index fa9632b5b2a7..270b53ea8141 100644 --- a/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-xenserver.md +++ b/content/admin/installation/setting-up-a-github-enterprise-server-instance/installing-github-enterprise-server-on-xenserver.md @@ -7,8 +7,12 @@ redirect_from: - /admin/installation/installing-github-enterprise-server-on-xenserver versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Infrastructure + - Set up shortTitle: Install on XenServer --- diff --git a/content/admin/overview/about-enterprise-accounts.md b/content/admin/overview/about-enterprise-accounts.md index 7329d69801ba..25f5f0f12659 100644 --- a/content/admin/overview/about-enterprise-accounts.md +++ b/content/admin/overview/about-enterprise-accounts.md @@ -1,10 +1,16 @@ --- title: About enterprise accounts -intro: 'With {% data variables.product.product_name %}, you can use an enterprise account to give administrators a single point of visibility and management.' +intro: 'With {% data variables.product.product_name %}, you can use an enterprise account to {% ifversion ghec %}enable collaboration between your organizations, while giving{% elsif ghes or ghae %}give{% endif %} administrators a single point of visibility and management.' redirect_from: + - /articles/about-github-business-accounts/ + - /articles/about-enterprise-accounts - /enterprise/admin/installation/about-enterprise-accounts - /enterprise/admin/overview/about-enterprise-accounts + - /github/setting-up-and-managing-your-enterprise-account/about-enterprise-accounts + - /github/setting-up-and-managing-your-enterprise/about-enterprise-accounts + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts versions: + ghec: '*' ghes: '*' ghae: '*' type: overview @@ -14,4 +20,98 @@ topics: - Fundamentals --- -{% data reusables.enterprise-accounts.about-enterprise-accounts %} +## About enterprise accounts on {% ifversion ghec %}{% data variables.product.prodname_ghe_cloud %}{% else %}{% data variables.product.product_name %}{% endif %} + +{% ifversion ghec %} + +Your enterprise account on {% data variables.product.prodname_dotcom_the_website %} allows you to manage multiple organizations. Your enterprise account must have a handle, like an organization or personal account on {% data variables.product.prodname_dotcom %}. + +{% elsif ghes or ghae %} + +The enterprise account on {% ifversion ghes %}{% data variables.product.product_location_enterprise %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} allows you to manage the organizations{% ifversion ghes %} on{% elsif ghae %} owned by{% endif %} your {% ifversion ghes %}{% data variables.product.prodname_ghe_server %} instance{% elsif ghae %}enterprise{% endif %}. + +{% endif %} + +Organizations are shared accounts where enterprise members can collaborate across many projects at once. Organization owners can manage access to the organization's data and projects with sophisticated security and administrative features. For more information, see {% ifversion ghec %}"[About organizations](/organizations/collaborating-with-groups-in-organizations/about-organizations)."{% elsif ghes or ghae %}"[About organizations](/organizations/collaborating-with-groups-in-organizations/about-organizations)" and "[Managing users, organizations, and repositories](/admin/user-management)."{% endif %} + +{% ifversion ghec %} + +Enterprise owners can create organizations and link the organizations to the enterprise. After you add organizations to your enterprise account, you can manage and enforce policies for the organizations. Specific enforcement options vary by setting; generally, you can choose to enforce a single policy for every organization in your enterprise account or allow owners to set policy on the organization level. For more information, see "[Setting policies for your enterprise](/admin/policies)." + +{% elsif ghes or ghae %} + +For more information about the management of policies for your enterprise account, see "[Setting policies for your enterprise](/admin/policies)." + +{% endif %} + +## About administration of your enterprise account + +{% ifversion ghes or ghae %} + +From your enterprise account on {% ifversion ghae %}{% data variables.product.product_name %}{% elsif ghes %}a {% data variables.product.prodname_ghe_server %} instance{% endif %}, administrators can view enterprise membership and manage the following for the {% ifversion ghes %}{% data variables.product.prodname_ghe_server %} instance{% elsif ghae %}enterprise on {% data variables.product.prodname_ghe_managed %}{% endif %}. + +{% ifversion ghes %} +- License usage{% endif %} +- Security ({% ifversion ghae %}single sign-on, IP allow lists, {% endif %}SSH certificate authorities, two-factor authentication) +- Enterprise policies for organizations owned by the enterprise account + +{% endif %} + +{% ifversion ghes %} + +### About administration of your enterprise account on {% data variables.product.prodname_ghe_cloud %} + +{% endif %} + +{% ifversion ghec or ghes %}When you try or purchase {% data variables.product.prodname_enterprise %}, you can{% ifversion ghes %} also{% endif %} create an enterprise account for {% data variables.product.prodname_ghe_cloud %} on {% data variables.product.prodname_dotcom_the_website %}. Administrators for the enterprise account on {% data variables.product.prodname_dotcom_the_website %} can view membership and manage the following for the enterprise account{% ifversion ghes %} on {% data variables.product.prodname_dotcom_the_website %}{% endif %}. + +- Billing and usage (services on {% data variables.product.prodname_dotcom_the_website %}, {% data variables.product.prodname_GH_advanced_security %}, user licenses) +- Security (single sign-on, IP allow lists, SSH certificate authorities, two-factor authentication) +- Enterprise policies for organizations owned by the enterprise account + +If you use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}, you can also manage the following for {% data variables.product.prodname_ghe_server %} from your enterprise account on {% data variables.product.prodname_dotcom_the_website %}. + +- Billing and usage for {% data variables.product.prodname_ghe_server %} instances +- Requests and support bundle sharing with {% data variables.contact.enterprise_support %} + +You can also connect the enterprise account on {% data variables.product.product_location_enterprise %} to your enterprise account on {% data variables.product.prodname_dotcom_the_website %} to see license usage details for your {% data variables.product.prodname_enterprise %} subscription from {% data variables.product.prodname_dotcom_the_website %}. For more information, see {% ifversion ghec %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} + +For more information about the differences between {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}, see "[{% data variables.product.prodname_dotcom %}'s products](/get-started/learning-about-github/githubs-products)." {% data reusables.enterprise-accounts.to-upgrade-or-get-started %} + +{% endif %} + +{% ifversion ghec %} + +## About {% data variables.product.prodname_emus %} + +{% data reusables.enterprise-accounts.emu-short-summary %} + +{% endif %} + +## About billing for your enterprise account + +The bill for your enterprise account includes the monthly cost for each member of your enterprise. The bill includes {% ifversion ghec %}any paid licenses in organizations outside of your enterprise account, subscriptions to apps in {% data variables.product.prodname_marketplace %}, {% endif %}{% ifversion ghec or ghae %}additional paid services for your enterprise{% ifversion ghec %} like data packs for {% data variables.large_files.product_name_long %},{% endif %} and{% endif %} usage for {% data variables.product.prodname_GH_advanced_security %}. + +{% ifversion ghec %} + +For more information about billing for your {% data variables.product.prodname_ghe_cloud %} subscription, see "[Viewing the subscription and usage for your enterprise account](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)" and "[About billing for your enterprise](/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise)." + +{% elsif ghes %} + +{% data reusables.enterprise-accounts.enterprise-accounts-billing %} + +For more information about billing for {% ifversion ghec %}{% data variables.product.prodname_ghe_cloud %}{% else %}{% data variables.product.product_name %}{% endif %}, see "[About billing for your enterprise](/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise)." + +{% endif %} + +{% ifversion ghec or ghes %} + +{% ifversion ghec %} + +{% data variables.product.prodname_enterprise %} offers two deployment options. In addition to {% data variables.product.prodname_ghe_cloud %}, you can use {% data variables.product.prodname_ghe_server %} to host development work for your enterprise in your data center or supported cloud provider. {% endif %}Enterprise owners on {% data variables.product.prodname_dotcom_the_website %} can use an enterprise account to manage payment and licensing for {% data variables.product.prodname_ghe_server %} instances. For more information, see "[{% data variables.product.company_short %}'s products](/get-started/learning-about-github/githubs-products#github-enterprise)" and "[Managing your license for {% data variables.product.prodname_enterprise %}](/billing/managing-your-license-for-github-enterprise)." + +{% endif %} + +## Further reading + +- "[Enterprise accounts](/free-pro-team@latest/graphql/guides/managing-enterprise-accounts)" in the GraphQL API documentation diff --git a/content/admin/overview/index.md b/content/admin/overview/index.md index cd450137d9f0..8a627eb781f4 100644 --- a/content/admin/overview/index.md +++ b/content/admin/overview/index.md @@ -4,6 +4,7 @@ intro: 'You can learn about {% data variables.product.product_name %} and manage redirect_from: - /enterprise/admin/overview versions: + ghec: '*' ghes: '*' ghae: '*' children: diff --git a/content/admin/packages/enabling-github-packages-with-aws.md b/content/admin/packages/enabling-github-packages-with-aws.md index 9b77faa7ba6a..77d9e65e76cd 100644 --- a/content/admin/packages/enabling-github-packages-with-aws.md +++ b/content/admin/packages/enabling-github-packages-with-aws.md @@ -3,8 +3,12 @@ title: Enabling GitHub Packages with AWS intro: 'Set up {% data variables.product.prodname_registry %} with AWS as your external storage.' versions: ghes: '*' +type: tutorial topics: + - Administrator - Enterprise + - Packages + - Packages shortTitle: Enable Packages with AWS --- diff --git a/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md b/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md index c5c5bea01f9a..2da76a47d29d 100644 --- a/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md +++ b/content/admin/packages/enabling-github-packages-with-azure-blob-storage.md @@ -3,8 +3,11 @@ title: Enabling GitHub Packages with Azure Blob Storage intro: 'Set up {% data variables.product.prodname_registry %} with Azure Blob Storage as your external storage.' versions: ghes: '>=3.0' +type: tutorial topics: - Enterprise + - Packages + - Storage shortTitle: Enable Packages with Azure --- diff --git a/content/admin/packages/enabling-github-packages-with-minio.md b/content/admin/packages/enabling-github-packages-with-minio.md index a1d04210144e..549df9d2864f 100644 --- a/content/admin/packages/enabling-github-packages-with-minio.md +++ b/content/admin/packages/enabling-github-packages-with-minio.md @@ -3,8 +3,11 @@ title: Enabling GitHub Packages with MinIO intro: 'Set up {% data variables.product.prodname_registry %} with MinIO as your external storage.' versions: ghes: '*' +type: tutorial topics: - Enterprise + - Packages + - Storage shortTitle: Enable Packages with MinIO --- diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise.md deleted file mode 100644 index c7b737e3a839..000000000000 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Enforcing GitHub Actions policies for your enterprise -intro: 'Enterprise administrators can manage access to {% data variables.product.prodname_actions %} in an enterprise.' -redirect_from: - - /enterprise/admin/github-actions/enforcing-github-actions-policies-for-your-enterprise - - /admin/github-actions/enforcing-github-actions-policies-for-your-enterprise - - /admin/github-actions/enabling-github-actions-for-github-enterprise-server/enforcing-github-actions-policies-for-your-enterprise -versions: - ghes: '*' - ghae: '*' -type: how_to -topics: - - Actions - - Enterprise - - Policies -shortTitle: GitHub Actions policies ---- - -{% data reusables.actions.enterprise-beta %} -{% data reusables.actions.ae-beta %} - -## About {% data variables.product.prodname_actions %} permissions for your enterprise - -{% ifversion ghae %}{% else %}When you enable {% data variables.product.prodname_actions %} on {% data variables.product.prodname_ghe_server %}, it is enabled for all organizations in your enterprise. {% endif %}You can choose to disable {% data variables.product.prodname_actions %} for all organizations in your enterprise, or only allow specific organizations. You can also limit the use of public actions, so that people can only use local actions that exist in your enterprise. - -## Managing {% data variables.product.prodname_actions %} permissions for your enterprise - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -{% data reusables.actions.enterprise-actions-permissions %} - -{% ifversion ghes > 2.22 or ghae %} -## Allowing specific actions to run - -{% data reusables.actions.allow-specific-actions-intro %} - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -1. Under **Policies**, select **Allow select actions** and add your required actions to the list. - {%- ifversion ghes or ghae-issue-5094 %} - ![Add actions to allow list](/assets/images/help/organizations/enterprise-actions-policy-allow-list.png) - {%- elsif ghae %} - ![Add actions to allow list](/assets/images/enterprise/github-ae/enterprise-actions-policy-allow-list.png) - {%- endif %} -{% endif %} - -{% ifversion ghes > 2.22 or ghae %} -## Enabling workflows for private repository forks - -{% data reusables.github-actions.private-repository-forks-overview %} - -### Configuring the private fork policy for your enterprise - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -{% data reusables.github-actions.private-repository-forks-configure %} -{% endif %} diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise.md index ffe60b30ee0c..68cb38c3b108 100644 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise.md @@ -1,26 +1,34 @@ --- title: Enforcing policies for Advanced Security in your enterprise -intro: 'Enterprise owners can enforce policies to manage {% data variables.product.prodname_GH_advanced_security %} features for organizations on {% data variables.product.product_location %}.' +intro: "You can enforce policies to manage {% data variables.product.prodname_GH_advanced_security %} features within your enterprise's organizations, or allow policies to be set in each organization." +permissions: 'Enterprise owners can enforce policies for {% data variables.product.prodname_GH_advanced_security %} in an enterprise.' product: '{% data reusables.gated-features.ghas %}' versions: + ghec: '*' ghes: '>=3.1' ghae: next type: how_to topics: - Advanced Security - Code scanning + - Enterprise - Policies - Secret scanning - Security redirect_from: - /admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise + - /github/setting-up-and-managing-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-policies-for-advanced-security-in-your-enterprise-account shortTitle: Advanced Security policies --- -## About {% data variables.product.prodname_GH_advanced_security %} -{% data reusables.advanced-security.ghas-helps-developers %} +## About policies for {% data variables.product.prodname_GH_advanced_security %} in your enterprise -## Enforcing a policy for {% data variables.product.prodname_advanced_security %} features +{% data reusables.advanced-security.ghas-helps-developers %} For more information, see "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)." + +{% ifversion ghes or ghec %}If you purchase a license for {% data variables.product.prodname_GH_advanced_security %}, any{% else %}Any{% endif %} organization on {% data variables.product.product_location %} can use {% data variables.product.prodname_advanced_security %} features. You can enforce policies to control how members of your enterprise on {% data variables.product.product_name %} use {% data variables.product.prodname_advanced_security %}. + +## Enforcing a policy for the use of {% data variables.product.prodname_GH_advanced_security %} in your enterprise {% data reusables.advanced-security.about-ghas-organization-policy %} diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-dependency-insights-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-dependency-insights-in-your-enterprise.md new file mode 100644 index 000000000000..140240dea608 --- /dev/null +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-dependency-insights-in-your-enterprise.md @@ -0,0 +1,37 @@ +--- +title: Enforcing policies for dependency insights in your enterprise +intro: "You can enforce policies for dependency insights within your enterprise's organizations, or allow policies to be set in each organization." +permissions: 'Enterprise owners can enforce policies for dependency insights in an enterprise.' +product: '{% data reusables.gated-features.enterprise-accounts %}' +redirect_from: + - /articles/enforcing-a-policy-on-dependency-insights/ + - /articles/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise-account/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account +versions: + ghec: '*' +type: how_to +topics: + - Dependencies + - Enterprise + - Organizations + - Policies +shortTitle: Policies for dependency insights +--- + +## About policies for dependency insights in your enterprise + +Dependency insights show all packages that repositories within your enterprise's organizations depend on. Dependency insights include aggregated information about security advisories and licenses. For more information, see "[Viewing insights for your organization](/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization)." + +## Enforcing a policy for visibility of dependency insights + +Across all organizations owned by your enterprise, you can control whether organization members can view dependency insights. You can also allow owners to administer the setting on the organization level. For more information, see "[Changing the visibility of your organization's dependency insights](/organizations/managing-organization-settings/changing-the-visibility-of-your-organizations-dependency-insights)." + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +3. In the left sidebar, click **Organizations**. + ![Organizations tab in the enterprise sidebar](/assets/images/help/business-accounts/settings-policies-org-tab.png) +4. Under "Organization policies", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. Under "Organization policies", use the drop-down menu and choose a policy. + ![Drop-down menu with organization policies options](/assets/images/help/business-accounts/organization-policy-drop-down.png) diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md new file mode 100644 index 000000000000..263e8ba9ff99 --- /dev/null +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise.md @@ -0,0 +1,130 @@ +--- +title: Enforcing policies for GitHub Actions in your enterprise +intro: "You can enforce policies for {% data variables.product.prodname_actions %} within your enterprise's organizations, or allow policies to be set in each organization." +permissions: 'Enterprise owners can enforce policies for {% data variables.product.prodname_actions %} in an enterprise.' +product: '{% data reusables.gated-features.actions %}' +miniTocMaxHeadingLevel: 3 +redirect_from: + - /enterprise/admin/github-actions/enforcing-github-actions-policies-for-your-enterprise + - /admin/github-actions/enforcing-github-actions-policies-for-your-enterprise + - /admin/github-actions/enabling-github-actions-for-github-enterprise-server/enforcing-github-actions-policies-for-your-enterprise + - /github/setting-up-and-managing-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise + - /github/setting-up-and-managing-your-enterprise-account/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account +versions: + ghec: '*' + ghes: '*' + ghae: '*' +type: how_to +topics: + - Actions + - Enterprise + - Policies +shortTitle: GitHub Actions policies +--- + +{% data reusables.actions.enterprise-beta %} +{% data reusables.actions.ae-beta %} + +## About policies for {% data variables.product.prodname_actions %} in your enterprise + +{% data variables.product.prodname_actions %} helps members of your enterprise automate software development workflows on {% data variables.product.product_name %}. For more information, see "[Understanding {% data variables.product.prodname_actions %}](/actions/learn-github-actions/understanding-github-actions)." + +{% ifversion ghes %}If you enable {% data variables.product.prodname_actions %}, any{% else %}Any{% endif %} organization on {% data variables.product.product_location %} can use {% data variables.product.prodname_actions %}. You can enforce policies to control how members of your enterprise on {% data variables.product.product_name %} use {% data variables.product.prodname_actions %}. By default, organization owners can manage how members use {% data variables.product.prodname_actions %}. For more information, see "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization)." + +## Enforcing a policy to restrict the use of actions in your enterprise + +You can choose to disable {% data variables.product.prodname_actions %} for all organizations in your enterprise, or only allow specific organizations. You can also limit the use of public actions, so that people can only use local actions that exist in your enterprise. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.actions.enterprise-actions-permissions %} +1. Click **Save**. + +{% ifversion ghec or ghes > 2.22 or ghae %} + +### Allowing select actions to run + +{% data reusables.actions.allow-specific-actions-intro %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +1. Under **Policies**, select **Allow select actions** and add your required actions to the list. + {%- ifversion ghes or ghae-issue-5094 %} + ![Add actions to allow list](/assets/images/help/organizations/enterprise-actions-policy-allow-list.png) + {%- elsif ghae %} + ![Add actions to allow list](/assets/images/enterprise/github-ae/enterprise-actions-policy-allow-list.png) + {%- endif %} +{% endif %} + +{% ifversion ghec or ghes > 2.22 or ghae %} + +## Enforcing a policy for artifact and log retention in your enterprise + +{% data variables.product.prodname_actions %} can store artifact and log files. For more information, see "[Downloading workflow artifacts](/actions/managing-workflow-runs/downloading-workflow-artifacts)." + +{% data reusables.actions.about-artifact-log-retention %} + +{% data reusables.enterprise_site_admin_settings.access-settings %} +{% data reusables.enterprise_site_admin_settings.business %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.github-actions.change-retention-period-for-artifacts-logs %} + +{% endif %} + +## Enforcing a policy for fork pull requests in your enterprise + +You can enforce policies to control how {% data variables.product.prodname_actions %} behaves for {% data variables.product.product_location %} when members of your enterprise{% ifversion ghec %} or outside collaborators{% endif %} run workflows from forks. + +{% ifversion ghec %} + +### Enforcing a policy for approval of pull requests from outside collaborators + +{% data reusables.actions.workflow-run-approve-public-fork %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.github-actions.workflows-from-public-fork-setting %} + +{% data reusables.actions.workflow-run-approve-link %} + +{% endif %} + +{% ifversion ghec or ghes > 2.22 or ghae %} + +### Enforcing a policy for fork pull requests in private repositories + +{% data reusables.github-actions.private-repository-forks-overview %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.github-actions.private-repository-forks-configure %} + +{% endif %} + +{% ifversion ghec or ghes > 3.1 or ghae-next %} + +## Enforcing a policy for workflow permissions in your enterprise + +{% data reusables.github-actions.workflow-permissions-intro %} + +You can set the default permissions for the `GITHUB_TOKEN` in the settings for your enterprise, organizations, or repositories. If you choose the restricted option as the default in your enterprise settings, this prevents the more permissive setting being chosen in the organization or repository settings. + +{% data reusables.github-actions.workflow-permissions-modifying %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +1. Under **Workflow permissions**, choose whether you want the `GITHUB_TOKEN` to have read and write access for all scopes, or just read access for the `contents` scope. + ![Set GITHUB_TOKEN permissions for this enterprise](/assets/images/help/settings/actions-workflow-permissions-enterprise.png) +1. Click **Save** to apply the settings. + +{% endif %} \ No newline at end of file diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md similarity index 59% rename from content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account.md rename to content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md index cd6037130f9b..8536df47eaad 100644 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md @@ -1,6 +1,7 @@ --- -title: Enforcing security settings in your enterprise account -intro: Enterprise owners can enforce certain security policies for all organizations owned by an enterprise account. +title: Enforcing policies for security settings in your enterprise +intro: "You can enforce policies to manage security settings in your enterprise's organizations, or allow policies to be set in each organization." +permissions: 'Enterprise owners can enforce policies for security settings in an enterprise.' product: '{% data reusables.gated-features.enterprise-accounts %}' miniTocMaxHeadingLevel: 3 redirect_from: @@ -10,25 +11,38 @@ redirect_from: - /github/articles/managing-allowed-ip-addresses-for-organizations-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/enforcing-security-settings-in-your-enterprise-account + - github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account versions: - fpt: '*' + ghec: '*' + ghes: '*' + ghae: '*' +type: how_to topics: - Enterprise -shortTitle: Enforce security settings + - Policies + - Security +shortTitle: Policies for security settings --- -## Requiring two-factor authentication for organizations in your enterprise account -Enterprise owners can require that organization members, billing managers, and outside collaborators in all organizations owned by an enterprise account use two-factor authentication to secure their personal accounts. +## About policies for security settings in your enterprise -Before you can require 2FA for all organizations owned by your enterprise account, you must enable two-factor authentication for your own account. For more information, see "[Securing your account with two-factor authentication (2FA)](/articles/securing-your-account-with-two-factor-authentication-2fa/)." +You can enforce policies to control the security settings for organizations owned by your enterprise on {% data variables.product.product_name %}. By default, organization owners can manage security settings. For more information, see "[Keeping your organization secure](/organizations/keeping-your-organization-secure)." + +{% ifversion ghec or ghes %} + +## Requiring two-factor authentication for organizations in your enterprise + +Enterprise owners can require that organization members, billing managers, and outside collaborators in all organizations owned by an enterprise use two-factor authentication to secure their personal accounts. + +Before you can require 2FA for all organizations owned by your enterprise, you must enable two-factor authentication for your own account. For more information, see "[Securing your account with two-factor authentication (2FA)](/articles/securing-your-account-with-two-factor-authentication-2fa/)." {% warning %} **Warnings:** -- When you require two-factor authentication for your enterprise account, members, outside collaborators, and billing managers (including bot accounts) in all organizations owned by your enterprise account who do not use 2FA will be removed from the organization and lose access to its repositories. They will also lose access to their forks of the organization's private repositories. You can reinstate their access privileges and settings if they enable two-factor authentication for their personal account within three months of their removal from your organization. For more information, see "[Reinstating a former member of your organization](/articles/reinstating-a-former-member-of-your-organization)." -- Any organization owner, member, billing manager, or outside collaborator in any of the organizations owned by your enterprise account who disables 2FA for their personal account after you've enabled required two-factor authentication will automatically be removed from the organization. -- If you're the sole owner of a enterprise account that requires two-factor authentication, you won't be able to disable 2FA for your personal account without disabling required two-factor authentication for the enterprise account. +- When you require two-factor authentication for your enterprise, members, outside collaborators, and billing managers (including bot accounts) in all organizations owned by your enterprise who do not use 2FA will be removed from the organization and lose access to its repositories. They will also lose access to their forks of the organization's private repositories. You can reinstate their access privileges and settings if they enable two-factor authentication for their personal account within three months of their removal from your organization. For more information, see "[Reinstating a former member of your organization](/articles/reinstating-a-former-member-of-your-organization)." +- Any organization owner, member, billing manager, or outside collaborator in any of the organizations owned by your enterprise who disables 2FA for their personal account after you've enabled required two-factor authentication will automatically be removed from the organization. +- If you're the sole owner of a enterprise that requires two-factor authentication, you won't be able to disable 2FA for your personal account without disabling required two-factor authentication for the enterprise. {% endwarning %} @@ -40,13 +54,23 @@ Before you require use of two-factor authentication, we recommend notifying orga 4. Under "Two-factor authentication", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} 5. Under "Two-factor authentication", select **Require two-factor authentication for all organizations in your business**, then click **Save**. ![Checkbox to require two-factor authentication](/assets/images/help/business-accounts/require-2fa-checkbox.png) -6. If prompted, read the information about members and outside collaborators who will be removed from the organizations owned by your enterprise account. To confirm the change, type your enterprise account's name, then click **Remove members & require two-factor authentication**. +6. If prompted, read the information about members and outside collaborators who will be removed from the organizations owned by your enterprise. To confirm the change, type your enterprise's name, then click **Remove members & require two-factor authentication**. ![Confirm two-factor enforcement box](/assets/images/help/business-accounts/confirm-require-2fa.png) -7. Optionally, if any members or outside collaborators are removed from the organizations owned by your enterprise account, we recommend sending them an invitation to reinstate their former privileges and access to your organization. Each person must enable two-factor authentication before they can accept your invitation. +7. Optionally, if any members or outside collaborators are removed from the organizations owned by your enterprise, we recommend sending them an invitation to reinstate their former privileges and access to your organization. Each person must enable two-factor authentication before they can accept your invitation. + +{% endif %} + +{% ifversion ghec or ghae %} -## Managing allowed IP addresses for organizations in your enterprise account +## Managing allowed IP addresses for organizations in your enterprise -Enterprise owners can restrict access to assets owned by organizations in an enterprise account by configuring an allow list for specific IP addresses. {% data reusables.identity-and-permissions.ip-allow-lists-example-and-restrictions %} +{% ifversion ghae %} + +You can restrict network traffic to your enterprise on {% data variables.product.product_name %}. For more information, see "[Restricting network traffic to your enterprise](/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise)." + +{% elsif ghec %} + +Enterprise owners can restrict access to assets owned by organizations in an enterprise by configuring an allow list for specific IP addresses. {% data reusables.identity-and-permissions.ip-allow-lists-example-and-restrictions %} {% data reusables.identity-and-permissions.ip-allow-lists-cidr-notation %} @@ -98,11 +122,13 @@ You can also configure allowed IP addresses for an individual organization. For {% data reusables.github-actions.ip-allow-list-self-hosted-runners %} -## Managing your enterprise account's SSH certificate authorities +{% endif %} -Enterprise owners can add and delete an enterprise account's SSH certificate authorities (CA). +{% endif %} -By adding an SSH CA to your enterprise account, you can allow members of any organization owned by your enterprise account to access that organization's repositories using SSH certificates you provide. {% data reusables.organizations.can-require-ssh-cert %} For more information, see "[About SSH certificate authorities](/articles/about-ssh-certificate-authorities)." +## Managing SSH certificate authorities for your enterprise + +You can use a SSH certificate authorities (CA) to allow members of any organization owned by your enterprise to access that organization's repositories using SSH certificates you provide. {% data reusables.organizations.can-require-ssh-cert %} For more information, see "[About SSH certificate authorities](http://localhost:4000/en/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)." ### Adding an SSH certificate authority @@ -123,6 +149,10 @@ Deleting a CA cannot be undone. If you want to use the same CA in the future, yo {% data reusables.enterprise-accounts.security-tab %} {% data reusables.organizations.delete-ssh-ca %} +{% ifversion ghec or ghae %} + ## Further reading -- "[Configuring identity and access management for your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account)" +- "[About identity and access management for your enterprise](/admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise)" + +{% endif %} \ No newline at end of file diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-project-board-policies-in-your-enterprise-account.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise.md similarity index 57% rename from content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-project-board-policies-in-your-enterprise-account.md rename to content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise.md index 8f737054ac8f..6b3e701c954e 100644 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-project-board-policies-in-your-enterprise-account.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise.md @@ -1,6 +1,7 @@ --- -title: Enforcing project board policies in your enterprise account -intro: 'Enterprise owners can enforce certain project board policies for all organizations owned by an enterprise account, or allow policies to be set in each organization.' +title: Enforcing project board policies in your enterprise +intro: "You can enforce policies for projects within your enterprise's organizations, or allow policies to be set in each organization." +permissions: 'Enterprise owners can enforce policies for project boards in an enterprise.' product: '{% data reusables.gated-features.enterprise-accounts %}' redirect_from: - /articles/enforcing-project-board-settings-for-organizations-in-your-business-account/ @@ -8,17 +9,26 @@ redirect_from: - /articles/enforcing-project-board-policies-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise-account/enforcing-project-board-policies-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/enforcing-project-board-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-project-board-policies-in-your-enterprise-account versions: - fpt: '*' + ghec: '*' + ghes: '*' + ghae: '*' +type: how_to topics: - Enterprise -shortTitle: Policies for projects + - Policies + - Projects +shortTitle: Project board policies --- -For more information about types of project boards, see "[About project boards](/articles/about-project-boards)." + +## About policies for project boards in your enterprise + +You can enforce policies to control how members of your enterprise on {% data variables.product.product_name %} manage project boards. You can also allow organization owners to manage policies for project boards. For more information, see "[About project boards](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards)." ## Enforcing a policy for organization-wide project boards -Across all organizations owned by your enterprise account, you can enable or disable organization-wide project boards, or allow owners to administer the setting on the organization level. +Across all organizations owned by your enterprise, you can enable or disable organization-wide project boards, or allow owners to administer the setting on the organization level. {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} @@ -29,7 +39,7 @@ Across all organizations owned by your enterprise account, you can enable or dis ## Enforcing a policy for repository project boards -Across all organizations owned by your enterprise account, you can enable or disable repository-level project boards, or allow owners to administer the setting on the organization level. +Across all organizations owned by your enterprise, you can enable or disable repository-level project boards, or allow owners to administer the setting on the organization level. {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md index 27d0a73c1ecf..2634ae0a19ec 100644 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md @@ -1,6 +1,8 @@ --- title: Enforcing repository management policies in your enterprise -intro: 'Enterprise owners can enforce certain repository management policies for all organizations owned by an enterprise account, or allow policies to be set in each organization.' +intro: "You can enforce policies for repository management within your enterprise's organizations, or allow policies to be set in each organization." +permissions: 'Enterprise owners can enforce policies for repository management in an enterprise.' +product: '{% data reusables.gated-features.enterprise-accounts %}' redirect_from: - /enterprise/admin/installation/configuring-the-default-visibility-of-new-repositories-on-your-appliance - /enterprise/admin/guides/user-management/preventing-users-from-changing-a-repository-s-visibility @@ -26,19 +28,34 @@ redirect_from: - /enterprise/admin/developer-workflow/blocking-force-pushes - /enterprise/admin/policies/enforcing-repository-management-policies-in-your-enterprise - /admin/policies/enforcing-repository-management-policies-in-your-enterprise + - /articles/enforcing-repository-management-settings-for-organizations-in-your-business-account/ + - /articles/enforcing-repository-management-policies-for-organizations-in-your-enterprise-account/ + - /articles/enforcing-repository-management-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise-account/enforcing-repository-management-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/enforcing-repository-management-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-repository-management-policies-in-your-enterprise-account versions: + ghec: '*' ghes: '*' ghae: '*' type: how_to topics: - Enterprise - Policies + - Repositories - Security shortTitle: Repository management policies --- -## Configuring the default visibility of new repositories in your enterprise -Each time someone creates a new repository on your enterprise, that person must choose a visibility for the repository. When you configure a default visibility setting for the enterprise, you choose which visibility is selected by default. For more information on repository visibility, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." +## About policies for repository management in your enterprise + +You can enforce policies to control how members of your enterprise on {% data variables.product.product_name %} manage repositories. You can also allow organization owners to manage policies for repository management. For more information, see "[Creating and managing repositories](/repositories/creating-and-managing-repositories) and "[Organizations and teams](/organizations)." + +{% ifversion ghes or ghae %} + +## Configuring the default visibility of new repositories + +Each time someone creates a new repository within your enterprise, that person must choose a visibility for the repository. When you configure a default visibility setting for the enterprise, you choose which visibility is selected by default. For more information on repository visibility, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." If an enterprise owner disallows members from creating certain types of repositories, members will not be able to create that type of repository even if the visibility setting defaults to that type. For more information, see "[Setting a policy for repository creation](#setting-a-policy-for-repository-creation)." @@ -54,20 +71,26 @@ If an enterprise owner disallows members from creating certain types of reposito {% data reusables.enterprise_installation.image-urls-viewable-warning %} -## Setting a policy for changing a repository's visibility +{% endif %} -When you prevent members from changing repository visibility, only enterprise owners can change the visibility of a repository. +## Enforcing a policy for {% ifversion ghec or ghes > 3.1 or ghae-next %}base{% else %}default{% endif %} repository permissions -If an enterprise owner has restricted repository creation to organization owners only, then members will not be able to change repository visibility. If an enterprise owner has restricted member repository creation to private repositories only, then members will only be able to change the visibility of a repository to private. For more information, see "[Setting a policy for repository creation](#setting-a-policy-for-repository-creation)." +Across all organizations owned by your enterprise, you can set a {% ifversion ghec or ghes > 3.1 or ghae-next %}base{% else %}default{% endif %} repository permission level (none, read, write, or admin) for organization members, or allow owners to administer the setting on the organization level. {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} -5. Under "Repository visibility change", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +4. Under "{% ifversion ghec or ghes > 3.1 or ghae-next %}Base{% else %}Default{% endif %} permissions", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. Under "{% ifversion ghec or ghes > 3.1 or ghae-next %}Base{% else %}Default{% endif %} permissions", use the drop-down menu and choose a policy. + {% ifversion ghec or ghes > 3.1 or ghae-next %} + ![Drop-down menu with repository permissions policy options](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) + {% else %} + ![Drop-down menu with repository permissions policy options](/assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png) + {% endif %} -{% data reusables.enterprise-accounts.repository-visibility-policy %} +## Enforcing a policy for repository creation -## Setting a policy for repository creation +Across all organizations owned by your enterprise, you can allow members to create repositories, restrict repository creation to organization owners, or allow owners to administer the setting on the organization level. If you allow members to create repositories, you can choose whether members can create any combination of public, private, and internal repositories. {% data reusables.repositories.internal-repo-default %} For more information about internal repositories, see "[Creating an internal repository](/articles/creating-an-internal-repository)." {% data reusables.organizations.repo-creation-constants %} @@ -83,17 +106,65 @@ If an enterprise owner has restricted repository creation to organization owners ![Drop-down menu with repository creation policies](/assets/images/enterprise/site-admin-settings/repository-creation-drop-down.png) {% endif %} -## Enforcing a policy on forking private or internal repositories +## Enforcing a policy for forking private or internal repositories Across all organizations owned by your enterprise, you can allow people with access to a private or internal repository to fork the repository, never allow forking of private or internal repositories, or allow owners to administer the setting on the organization level. {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Repository forking", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +{% data reusables.enterprise-accounts.repositories-tab %} +3. Under "Repository forking", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} 4. Under "Repository forking", use the drop-down menu and choose a policy. ![Drop-down menu with repository forking policy options](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png) + +## Enforcing a policy for inviting{% ifversion ghec %} outside{% endif %} collaborators to repositories -## Setting a policy for repository deletion and transfer +Across all organizations owned by your enterprise, you can allow members to invite{% ifversion ghec %} outside{% endif %} collaborators to repositories, restrict {% ifversion ghec %}outside collaborator {% endif %}invitations to organization owners, or allow owners to administer the setting on the organization level. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.repositories-tab %} +3. Under "Repository {% ifversion ghec %}outside collaborators{% elsif ghes or ghae %}invitations{% endif %}", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +4. Under "Repository {% ifversion ghec %}outside collaborators{% elsif ghes or ghae %}invitations{% endif %}", use the drop-down menu and choose a policy. + {% ifversion ghec %} + ![Drop-down menu with outside collaborator invitation policy options](/assets/images/help/business-accounts/repository-invitation-policy-drop-down.png) + {% elsif ghes or ghae %} + ![Drop-down menu with invitation policy options](/assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png) + {% endif %} + +{% ifversion ghec or ghes > 2.22 or ghae %} + +## Enforcing a policy for the default branch name + +Across all organizations owned by your enterprise, you can set the default branch name for any new repositories that members create. You can choose to enforce that default branch name across all organizations or allow individual organizations to set a different one. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +3. On the **Repository policies** tab, under "Default branch name", enter the default branch name that new repositories should use. + ![Text box for entering default branch name](/assets/images/help/business-accounts/default-branch-name-text.png) +4. Optionally, to enforce the default branch name for all organizations in the enterprise, select **Enforce across this enterprise**. + ![Enforcement checkbox](/assets/images/help/business-accounts/default-branch-name-enforce.png) +5. Click **Update**. + ![Update button](/assets/images/help/business-accounts/default-branch-name-update.png) + +{% endif %} + +## Enforcing a policy for changes to repository visibility + +Across all organizations owned by your enterprise, you can allow members with admin access to change a repository's visibility, restrict repository visibility changes to organization owners, or allow owners to administer the setting on the organization level. When you prevent members from changing repository visibility, only enterprise owners can change the visibility of a repository. + +If an enterprise owner has restricted repository creation to organization owners only, then members will not be able to change repository visibility. If an enterprise owner has restricted member repository creation to private repositories only, then members will only be able to change the visibility of a repository to private. For more information, see "[Setting a policy for repository creation](#setting-a-policy-for-repository-creation)." + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.repositories-tab %} +5. Under "Repository visibility change", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} + +{% data reusables.enterprise-accounts.repository-visibility-policy %} + +## Enforcing a policy for repository deletion and transfer + +Across all organizations owned by your enterprise, you can allow members with admin permissions to delete or transfer a repository, restrict repository deletion and transfers to organization owners, or allow owners to administer the setting on the organization level. {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} @@ -102,28 +173,32 @@ Across all organizations owned by your enterprise, you can allow people with acc {% data reusables.enterprise-accounts.repository-deletion-policy %} -{% ifversion fpt or ghes %} +## Enforcing a policy for deleting issues -## Setting a policy for Git push limits +Across all organizations owned by your enterprise, you can allow members with admin access to delete issues in a repository, restrict issue deletion to organization owners, or allow owners to administer the setting on the organization level. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +3. On the **Repository policies** tab, under "Repository issue deletion", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +4. Under "Repository issue deletion", use the drop-down menu and choose a policy. + ![Drop-down menu with issue deletion policy options](/assets/images/help/business-accounts/repository-issue-deletion-policy-drop-down.png) + +{% ifversion ghes or ghae %} + +## Enforcing a policy for Git push limits To keep your repository size manageable and prevent performance issues, you can configure a file size limit for repositories in your enterprise. By default, when you enforce repository upload limits, people cannot add or update files larger than 100 MB. {% data reusables.enterprise-accounts.access-enterprise %} -{% ifversion ghes or ghae %} {% data reusables.enterprise-accounts.policies-tab %} -{% else %} -{% data reusables.enterprise-accounts.settings-tab %} -{% endif %} {% data reusables.enterprise-accounts.options-tab %} 4. Under "Repository upload limit", use the drop-down menu and click a maximum object size. ![Drop-down menu with maximum object size options](/assets/images/enterprise/site-admin-settings/repo-upload-limit-dropdown.png) 5. Optionally, to enforce a maximum upload limit for all repositories in your enterprise, select **Enforce on all repositories** ![Enforce maximum object size on all repositories option](/assets/images/enterprise/site-admin-settings/all-repo-upload-limit-option.png) -{% endif %} - ## Configuring the merge conflict editor for pull requests between repositories Requiring users to resolve merge conflicts locally on their computer can prevent people from inadvertently writing to an upstream repository from a fork. @@ -140,16 +215,12 @@ Requiring users to resolve merge conflicts locally on their computer can prevent ## Configuring force pushes -Each repository inherits a default force push setting from the settings of the user account or organization to which it belongs. Likewise, each organization and user account inherits a default force push setting from the force push setting for the enterprise. If you change the force push setting for the enterprise, it will change for all repositories owned by any user or organization. +Each repository inherits a default force push setting from the settings of the user account or organization that owns the repository. Each organization and user account inherits a default force push setting from the force push setting for the enterprise. If you change the force push setting for the enterprise, the policy applies to all repositories owned by any user or organization. -### Blocking all force pushes on your appliance +### Blocking force pushes to all repositories {% data reusables.enterprise-accounts.access-enterprise %} -{% ifversion ghes or ghae %} {% data reusables.enterprise-accounts.policies-tab %} -{% else %} -{% data reusables.enterprise-accounts.settings-tab %} -{% endif %} {% data reusables.enterprise-accounts.options-tab %} 4. Under "Force pushes", use the drop-down menu, and click **Allow**, **Block** or **Block to the default branch**. ![Force pushes dropdown](/assets/images/enterprise/site-admin-settings/force-pushes-dropdown.png) @@ -187,6 +258,8 @@ You can override the default inherited settings by configuring the settings for 6. Optionally, select **Enforce on all repositories** to override repository-specific settings. Note that this will **not** override an enterprise-wide policy. ![Block force pushes](/assets/images/enterprise/site-admin-settings/user/user-block-all-force-pushes.png) +{% endif %} + {% ifversion ghes %} ## Configuring anonymous Git read access @@ -232,16 +305,3 @@ If necessary, you can prevent repository administrators from changing anonymous ![Select checkbox to prevent repository admins from changing anonymous Git read access for this repository](/assets/images/enterprise/site-admin-settings/lock_anonymous_git_access_for_specific_repo.png) {% endif %} - -{% ifversion ghes > 2.22 or ghae %} -## Enforcing a policy on the default branch name - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Default branch name", enter the default branch name that new repositories should use. - ![Text box for entering default branch name](/assets/images/help/business-accounts/default-branch-name-text.png) -4. Optionally, to enforce the default branch name for all organizations in the enterprise, select **Enforce across this enterprise**. - ![Enforcement checkbox](/assets/images/help/business-accounts/default-branch-name-enforce.png) -5. Click **Update**. - ![Update button](/assets/images/help/business-accounts/default-branch-name-update.png) -{% endif %} diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-team-policies-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-team-policies-in-your-enterprise.md new file mode 100644 index 000000000000..3169e4cd34db --- /dev/null +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-team-policies-in-your-enterprise.md @@ -0,0 +1,39 @@ +--- +title: Enforcing team policies in your enterprise +intro: "You can enforce policies for teams in your enterprise's organizations, or allow policies to be set in each organization." +permissions: 'Enterprise owners can enforce policies for teams in an enterprise.' +product: '{% data reusables.gated-features.enterprise-accounts %}' +redirect_from: + - /articles/enforcing-team-settings-for-organizations-in-your-business-account/ + - /articles/enforcing-team-policies-for-organizations-in-your-enterprise-account/ + - /articles/enforcing-team-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise-account/enforcing-team-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/enforcing-team-policies-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-team-policies-in-your-enterprise-account +versions: + ghec: '*' + ghes: '*' + ghae: '*' +type: how_to +topics: + - Enterprise + - Policies + - Teams +shortTitle: Team policies +--- + +## About policies for teams in your enterprise + +You can enforce policies to control how members of your enterprise on {% data variables.product.product_name %} manage teams. You can also allow organization owners to manage policies for teams. For more information, see "[About teams](/organizations/organizing-members-into-teams/about-teams)." + +## Enforcing a policy for team discussions + +Across all organizations owned by your enterprise, you can enable or disable team discussions, or allow owners to administer the setting on the organization level. For more information, see "[About team discussions](/organizations/collaborating-with-your-team/about-team-discussions/)." + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +3. In the left sidebar, click **Teams**. + ![Teams tab in the enterprise sidebar](/assets/images/help/business-accounts/settings-teams-tab.png) +4. Under "Team discussions", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. Under "Team discussions", use the drop-down menu and choose a policy. + ![Drop-down menu with team discussion policy options](/assets/images/help/business-accounts/team-discussion-policy-drop-down.png) diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/index.md b/content/admin/policies/enforcing-policies-for-your-enterprise/index.md index f4cdf81f0087..e2bbdac69b5e 100644 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/index.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/index.md @@ -3,15 +3,23 @@ title: Enforcing policies for your enterprise intro: You can configure policies for organizations in your enterprise. redirect_from: - /enterprise/admin/policies/enforcing-policies-for-your-enterprise + - /articles/setting-policies-for-organizations-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise-account/setting-policies-for-organizations-in-your-enterprise-account versions: + ghec: '*' ghes: '*' ghae: '*' topics: - Enterprise + - Policies children: - /enforcing-repository-management-policies-in-your-enterprise + - /enforcing-team-policies-in-your-enterprise + - /enforcing-project-board-policies-in-your-enterprise - /restricting-email-notifications-for-your-enterprise - - /enforcing-github-actions-policies-for-your-enterprise + - /enforcing-policies-for-security-settings-in-your-enterprise + - /enforcing-policies-for-dependency-insights-in-your-enterprise + - /enforcing-policies-for-github-actions-in-your-enterprise - /enforcing-policies-for-advanced-security-in-your-enterprise shortTitle: Enforce policies --- diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise.md index 9619774e7aa8..d0ce79dc0ed7 100644 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise.md @@ -3,6 +3,7 @@ title: Restricting email notifications for your enterprise intro: You can prevent your enterprise's information from leaking into personal email accounts by restricting the domains where members can receive email notifications about activity in organizations owned by your enterprise. product: '{% data reusables.gated-features.restrict-email-domain %}' versions: + ghec: '*' ghes: '>=3.2' permissions: Enterprise owners can restrict email notifications for an enterprise. type: how_to @@ -10,15 +11,33 @@ topics: - Enterprise - Notifications - Organizations - - Policy + - Policies redirect_from: - /admin/policies/restricting-email-notifications-for-your-enterprise + - /github/setting-up-and-managing-your-enterprise/restricting-email-notifications-for-your-enterprise-account-to-approved-domains + - /github/setting-up-and-managing-your-enterprise/restricting-email-notifications-for-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/restricting-email-notifications-for-your-enterprise-account shortTitle: Restrict email notifications --- -## About email restrictions for your enterprise account -{% data reusables.enterprise-accounts.email-restrictions-about %} +## About email restrictions for your enterprise -## Restricting email notifications for your enterprise account +When you restrict email notifications, enterprise members can only use an email address in a verified or approved domain to receive email notifications about activity in organizations owned by your enterprise. -{% data reusables.enterprise-accounts.email-restrictions-restricting %} +{% data reusables.enterprise-accounts.approved-domains-beta-note %} + +The domains can be inherited from the enterprise or configured for the specific organization. For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)" and "[Restricting email notifications for your organization](/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization)." + +{% data reusables.notifications.email-restrictions-verification %} + +If email restrictions are enabled for an enterprise, organization owners cannot disable email restrictions for any organization owned by the enterprise. If changes occur that result in an organization having no verified or approved domains, either inherited from an enterprise that owns the organization or for the specific organization, email restrictions will be disabled for the organization. + +## Restricting email notifications for your enterprise + +Before you can restrict email notifications for your enterprise, you must verify or approve at least one domain for the enterprise. {% ifversion ghec %} For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.verified-domains-tab %} +{% data reusables.organizations.restrict-email-notifications %} +1. Click **Save**. diff --git a/content/admin/policies/index.md b/content/admin/policies/index.md index 82b8832ec223..a77df5b8787f 100644 --- a/content/admin/policies/index.md +++ b/content/admin/policies/index.md @@ -5,6 +5,7 @@ redirect_from: - /enterprise/admin/developer-workflow - /enterprise/admin/policies versions: + ghec: '*' ghes: '*' ghae: '*' topics: diff --git a/content/admin/user-management/index.md b/content/admin/user-management/index.md index e841bb9bb04e..b8d01a4f4d9e 100644 --- a/content/admin/user-management/index.md +++ b/content/admin/user-management/index.md @@ -9,6 +9,7 @@ redirect_from: - /enterprise/admin/clustering - /enterprise/admin/user-management versions: + ghec: '*' ghes: '*' ghae: '*' topics: diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/adding-organizations-to-your-enterprise-account.md b/content/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md similarity index 79% rename from content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/adding-organizations-to-your-enterprise-account.md rename to content/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md index 42670579b035..721da318c61a 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/adding-organizations-to-your-enterprise-account.md +++ b/content/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise.md @@ -1,24 +1,31 @@ --- -title: Adding organizations to your enterprise account -intro: You can create new organizations or invite existing organizations to manage within your enterprise account. +title: Adding organizations to your enterprise +intro: You can create new organizations to manage within your enterprise account. product: '{% data reusables.gated-features.enterprise-accounts %}' redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/adding-organizations-to-your-enterprise-account - /articles/adding-organizations-to-your-enterprise-account - /github/setting-up-and-managing-your-enterprise-account/adding-organizations-to-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/adding-organizations-to-your-enterprise-account versions: - fpt: '*' + ghec: '*' +type: how_to topics: + - Administrator - Enterprise + - Organizations shortTitle: Add organizations --- -Enterprise owners can create new organizations within an enterprise account's settings or invite existing organizations to join an enterprise account. -To add an organization to your enterprise account, you must create the organization from within the enterprise account settings. +## About organizations + +Your enterprise account can own organizations. Members of your enterprise can collaborate across related projects within an organization. For more information, see "[About organizations](/organizations/collaborating-with-groups-in-organizations/about-organizations)." + +Enterprise owners can create new organizations within an enterprise account's settings. If you want to transfer an existing organization to your enterprise account, contact your {% data variables.product.prodname_dotcom %} sales account representative. ## Creating an organization in your enterprise account -New organizations you create within your enterprise account settings are included in your enterprise account's {% data variables.product.prodname_ghe_cloud %} subscription. For more information on collaborating in organizations, see "[Setting up and managing organizations and teams](/categories/setting-up-and-managing-organizations-and-teams)." +New organizations you create within your enterprise account settings are included in your enterprise account's {% data variables.product.prodname_ghe_cloud %} subscription. Enterprise owners who create an organization owned by the enterprise account automatically become organization owners. For more information about organization owners, see "[Permission levels for an organization](/articles/permission-levels-for-an-organization)." diff --git a/content/admin/user-management/managing-organizations-in-your-enterprise/index.md b/content/admin/user-management/managing-organizations-in-your-enterprise/index.md index c267c20150b1..4a7f8f710125 100644 --- a/content/admin/user-management/managing-organizations-in-your-enterprise/index.md +++ b/content/admin/user-management/managing-organizations-in-your-enterprise/index.md @@ -5,18 +5,26 @@ redirect_from: - /enterprise/admin/categories/admin-bootcamp/ - /enterprise/admin/user-management/organizations-and-teams - /enterprise/admin/user-management/managing-organizations-in-your-enterprise + - /articles/managing-organizations-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise-account/managing-organizations-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account intro: 'Organizations are great for creating distinct groups of users within your company, such as divisions or groups working on similar projects. {% ifversion ghae %}Internal{% else %}Public and internal{% endif %} repositories that belong to an organization are accessible to members of other organizations in the enterprise, while private repositories are inaccessible to anyone but members of the organization that are granted access.' versions: + ghec: '*' ghes: '*' ghae: '*' topics: - Enterprise children: + - /adding-organizations-to-your-enterprise + - /managing-unowned-organizations-in-your-enterprise - /configuring-visibility-for-organization-membership - /preventing-users-from-creating-organizations - /requiring-two-factor-authentication-for-an-organization - /creating-teams - /adding-people-to-teams + - /viewing-the-audit-logs-for-organizations-in-your-enterprise + - /streaming-the-audit-logs-for-organizations-in-your-enterprise-account - /removing-users-from-teams-and-organizations - /managing-projects-using-jira - /continuous-integration-using-jenkins diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/managing-unowned-organizations-in-your-enterprise-account.md b/content/admin/user-management/managing-organizations-in-your-enterprise/managing-unowned-organizations-in-your-enterprise.md similarity index 80% rename from content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/managing-unowned-organizations-in-your-enterprise-account.md rename to content/admin/user-management/managing-organizations-in-your-enterprise/managing-unowned-organizations-in-your-enterprise.md index 9d5ee919e5fe..b902f6b4464a 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/managing-unowned-organizations-in-your-enterprise-account.md +++ b/content/admin/user-management/managing-organizations-in-your-enterprise/managing-unowned-organizations-in-your-enterprise.md @@ -1,17 +1,22 @@ --- -title: Managing unowned organizations in your enterprise account +title: Managing unowned organizations in your enterprise intro: You can become an owner of an organization in your enterprise account that currently has no owners. product: '{% data reusables.gated-features.enterprise-accounts %}' permissions: Enterprise owners can manage unowned organizations in an enterprise account. redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/managing-unowned-organizations-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise-account/managing-unowned-organizations-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/managing-unowned-organizations-in-your-enterprise-account versions: - fpt: '*' + ghec: '*' +type: how_to topics: + - Administrator - Enterprise + - Organizations shortTitle: Manage unowned organizations --- + {% data reusables.enterprise-accounts.access-enterprise %} 2. To the right of the search field, click **X unowned**. ![Button to view unowned organizations](/assets/images/help/business-accounts/unowned-organizations-button.png) diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/streaming-the-audit-logs-for-organizations-in-your-enterprise-account.md b/content/admin/user-management/managing-organizations-in-your-enterprise/streaming-the-audit-logs-for-organizations-in-your-enterprise-account.md similarity index 96% rename from content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/streaming-the-audit-logs-for-organizations-in-your-enterprise-account.md rename to content/admin/user-management/managing-organizations-in-your-enterprise/streaming-the-audit-logs-for-organizations-in-your-enterprise-account.md index 0a73b8525982..c163854f5c26 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/streaming-the-audit-logs-for-organizations-in-your-enterprise-account.md +++ b/content/admin/user-management/managing-organizations-in-your-enterprise/streaming-the-audit-logs-for-organizations-in-your-enterprise-account.md @@ -4,10 +4,16 @@ intro: Enterprise owners can stream audit and Git events data from {% data varia product: '{% data reusables.gated-features.enterprise-accounts %}' miniTocMaxHeadingLevel: 3 versions: - fpt: '*' + ghec: '*' +type: tutorial topics: + - Auditing - Enterprise + - Logging + - Organizations shortTitle: Stream organization audit logs +redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/streaming-the-audit-logs-for-organizations-in-your-enterprise-account --- {% note %} diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/viewing-the-audit-logs-for-organizations-in-your-enterprise-account.md b/content/admin/user-management/managing-organizations-in-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise.md similarity index 86% rename from content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/viewing-the-audit-logs-for-organizations-in-your-enterprise-account.md rename to content/admin/user-management/managing-organizations-in-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise.md index 7b97d77fb861..a7719a151e9d 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/viewing-the-audit-logs-for-organizations-in-your-enterprise-account.md +++ b/content/admin/user-management/managing-organizations-in-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise.md @@ -1,16 +1,21 @@ --- -title: Viewing the audit logs for organizations in your enterprise account +title: Viewing the audit logs for organizations in your enterprise intro: Enterprise owners can view aggregated actions from all of the organizations owned by an enterprise account in its audit log. product: '{% data reusables.gated-features.enterprise-accounts %}' redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/viewing-the-audit-logs-for-organizations-in-your-enterprise-account - /articles/viewing-the-audit-logs-for-organizations-in-your-business-account/ - /articles/viewing-the-audit-logs-for-organizations-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise-account/viewing-the-audit-logs-for-organizations-in-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise-account versions: - fpt: '*' + ghec: '*' +type: how_to topics: + - Auditing - Enterprise + - Logging + - Organizations shortTitle: View organization audit logs --- Each audit log entry shows applicable information about an event, such as: diff --git a/content/admin/user-management/managing-users-in-your-enterprise/index.md b/content/admin/user-management/managing-users-in-your-enterprise/index.md index 3b936ac75afe..bae4adf72ff4 100644 --- a/content/admin/user-management/managing-users-in-your-enterprise/index.md +++ b/content/admin/user-management/managing-users-in-your-enterprise/index.md @@ -2,18 +2,29 @@ title: Managing users in your enterprise intro: You can audit user activity and manage user settings. redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise - /enterprise/admin/guides/user-management/enabling-avatars-and-identicons/ - /enterprise/admin/user-management/basic-account-settings - /enterprise/admin/user-management/user-security - /enterprise/admin/user-management/managing-users-in-your-enterprise + - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise-account/managing-users-in-your-enterprise-account + - /articles/managing-users-in-your-enterprise-account + - /articles/managing-users-in-your-enterprise versions: + ghec: '*' ghes: '*' ghae: '*' topics: - Enterprise children: - - /promoting-or-demoting-a-site-administrator + - /roles-in-an-enterprise - /best-practices-for-user-security + - /inviting-people-to-manage-your-enterprise + - /promoting-or-demoting-a-site-administrator + - /managing-support-entitlements-for-your-enterprise + - /viewing-people-in-your-enterprise + - /viewing-and-managing-a-users-saml-access-to-your-enterprise - /auditing-users-across-your-enterprise - /managing-dormant-users - /suspending-and-unsuspending-users @@ -21,7 +32,6 @@ children: - /auditing-ssh-keys - /customizing-user-messages-for-your-enterprise - /rebuilding-contributions-data - - /managing-global-webhooks shortTitle: Manage users --- diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md b/content/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md similarity index 65% rename from content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md rename to content/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md index d7591a807bd7..40225fb3a973 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md +++ b/content/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise.md @@ -1,16 +1,18 @@ --- title: Inviting people to manage your enterprise -intro: 'You can {% ifversion fpt %}invite people to become enterprise owners or billing managers for{% elsif ghes %}add enterprise owners to{% endif %} your enterprise account. You can also remove enterprise owners {% ifversion fpt %}or billing managers {% endif %}who no longer need access to the enterprise account.' +intro: 'You can {% ifversion ghec %}invite people to become enterprise owners or billing managers for{% elsif ghes %}add enterprise owners to{% endif %} your enterprise account. You can also remove enterprise owners {% ifversion ghec %}or billing managers {% endif %}who no longer need access to the enterprise account.' product: '{% data reusables.gated-features.enterprise-accounts %}' -permissions: 'Enterprise owners can {% ifversion fpt %}invite other people to become{% elsif ghes %}add{% endif %} additional enterprise administrators.' +permissions: 'Enterprise owners can {% ifversion ghec %}invite other people to become{% elsif ghes %}add{% endif %} additional enterprise administrators.' redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise - /github/setting-up-and-managing-your-enterprise-account/inviting-people-to-manage-your-enterprise-account - /articles/inviting-people-to-collaborate-in-your-business-account/ - /articles/inviting-people-to-manage-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/inviting-people-to-manage-your-enterprise versions: - fpt: '*' + ghec: '*' ghes: '*' +type: how_to topics: - Administrator - Enterprise @@ -20,17 +22,17 @@ shortTitle: Invite people to manage ## About users who can manage your enterprise account -{% data reusables.enterprise-accounts.enterprise-administrators %} For more information, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise)." +{% data reusables.enterprise-accounts.enterprise-administrators %} For more information, see "[Roles in an enterprise](/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise)." {% ifversion ghes %} -If you want to manage owners and billing managers for an enterprise account on {% data variables.product.prodname_dotcom_the_website %}, see "[Inviting people to manage your enterprise](/free-pro-team@latest/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise)" in the {% data variables.product.prodname_dotcom_the_website %} documentation. +If you want to manage owners and billing managers for an enterprise account on {% data variables.product.prodname_dotcom_the_website %}, see "[Inviting people to manage your enterprise](/enterprise-cloud@latest/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise)" in the {% data variables.product.prodname_ghe_cloud %} documentation. {% endif %} -{% ifversion fpt %} +{% ifversion ghec %} -If your enterprise uses {% data variables.product.prodname_emus %}, enterprise owners can only be added or removed through your identity provider. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +If your enterprise uses {% data variables.product.prodname_emus %}, enterprise owners can only be added or removed through your identity provider. For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." {% endif %} @@ -40,22 +42,22 @@ If your enterprise uses {% data variables.product.prodname_emus %}, enterprise o {% endtip %} -## {% ifversion fpt %}Inviting{% elsif ghes %}Adding{% endif %} an enterprise administrator to your enterprise account +## {% ifversion ghec %}Inviting{% elsif ghes %}Adding{% endif %} an enterprise administrator to your enterprise account -{% ifversion fpt %}After you invite someone to join the enterprise account, they must accept the emailed invitation before they can access the enterprise account.{% endif %} +{% ifversion ghec %}After you invite someone to join the enterprise account, they must accept the emailed invitation before they can access the enterprise account.{% endif %} {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.people-tab %} 1. In the left sidebar, click **Administrators**. ![Administrators tab in the left sidebar](/assets/images/help/business-accounts/administrators-tab.png) -1. Above the list of administrators, click {% ifversion fpt %}**Invite admin**{% elsif ghes %}**Add owner**{% endif %}. - {% ifversion fpt %} +1. Above the list of administrators, click {% ifversion ghec %}**Invite admin**{% elsif ghes %}**Add owner**{% endif %}. + {% ifversion ghec %} !["Invite admin" button above the list of enterprise owners](/assets/images/help/business-accounts/invite-admin-button.png) {% elsif ghes %} !["Add owner" button above the list of enterprise owners](/assets/images/help/business-accounts/add-owner-button.png) {% endif %} 1. Type the username, full name, or email address of the person you want to invite to become an enterprise administrator, then select the appropriate person from the results. - ![Modal box with field to type a person's username, full name, or email address, and Invite button](/assets/images/help/business-accounts/invite-admins-modal-button.png){% ifversion fpt %} + ![Modal box with field to type a person's username, full name, or email address, and Invite button](/assets/images/help/business-accounts/invite-admins-modal-button.png){% ifversion ghec %} 1. Select **Owner** or **Billing Manager**. ![Modal box with role choices](/assets/images/help/business-accounts/invite-admins-roles.png) 1. Click **Send Invitation**. @@ -69,10 +71,10 @@ Only enterprise owners can remove other enterprise administrators from the enter {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.people-tab %} -1. Next to the username of the person you'd like to remove, click {% octicon "gear" aria-label="The Settings gear" %}, then click **Remove owner**{% ifversion fpt %} or **Remove billing manager**{% endif %}. - {% ifversion fpt %} +1. Next to the username of the person you'd like to remove, click {% octicon "gear" aria-label="The Settings gear" %}, then click **Remove owner**{% ifversion ghec %} or **Remove billing manager**{% endif %}. + {% ifversion ghec %} ![Settings gear with menu option to remove an enterprise administrator](/assets/images/help/business-accounts/remove-admin.png) {% elsif ghes %} ![Settings gear with menu option to remove an enterprise administrator](/assets/images/help/business-accounts/ghes-remove-owner.png) {% endif %} -1. Read the confirmation, then click **Remove owner**{% ifversion fpt %} or **Remove billing manager**{% endif %}. +1. Read the confirmation, then click **Remove owner**{% ifversion ghec %} or **Remove billing manager**{% endif %}. diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise.md b/content/admin/user-management/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise.md similarity index 93% rename from content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise.md rename to content/admin/user-management/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise.md index d665f06d3db0..691d68f39381 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise.md +++ b/content/admin/user-management/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise.md @@ -2,13 +2,16 @@ title: Managing support entitlements for your enterprise intro: You can grant enterprise members the ability to manage support tickets for your enterprise account. product: '{% data reusables.gated-features.enterprise-accounts %}' +redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise versions: - fpt: '*' + ghec: '*' topics: - Enterprise - Support shortTitle: Manage support entitlements --- + ## About support entitlements People with support entitlements for your enterprise account can use the support portal to open, view, and comment on support tickets associated with the enterprise account. diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise.md b/content/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise.md similarity index 80% rename from content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise.md rename to content/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise.md index 6fe43ebc5544..a6de8eee3c50 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise.md +++ b/content/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise.md @@ -3,27 +3,29 @@ title: Roles in an enterprise intro: 'Everyone in an enterprise is a member of the enterprise. To control access to your enterprise''s settings and data, you can assign different roles to members of your enterprise.' product: '{% data reusables.gated-features.enterprise-accounts %}' redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise - /github/setting-up-and-managing-your-enterprise-account/roles-for-an-enterprise-account - /articles/permission-levels-for-a-business-account/ - /articles/roles-for-an-enterprise-account - /github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise versions: - fpt: '*' + ghec: '*' ghes: '*' ghae: '*' topics: - Enterprise --- + ## About roles in an enterprise Everyone in an enterprise is a member of the enterprise. You can also assign administrative roles to members of your enterprise. Each administrator role maps to business functions and provides permissions to do specific tasks within the enterprise. {% data reusables.enterprise-accounts.enterprise-administrators %} -{% ifversion fpt %} +{% ifversion ghec %} If your enterprise does not use {% data variables.product.prodname_emus %}, you can invite someone to an administrative role using a user account on {% data variables.product.product_name %} that they control. For more information, see "[Inviting people to manage your enterprise](/github/setting-up-and-managing-your-enterprise/inviting-people-to-manage-your-enterprise)". -In an enterprise using {% data variables.product.prodname_emus %}, new owners and members must be provisioned through your identity provider. Enterprise owners and organization owners cannot add new members or owners to the enterprise using {% data variables.product.prodname_dotcom %}. You can select a member's enterprise role using your IdP and it cannot be changed on {% data variables.product.prodname_dotcom %}. You can select a member's role in an organization on {% data variables.product.prodname_dotcom %}. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +In an enterprise using {% data variables.product.prodname_emus %}, new owners and members must be provisioned through your identity provider. Enterprise owners and organization owners cannot add new members or owners to the enterprise using {% data variables.product.prodname_dotcom %}. You can select a member's enterprise role using your IdP and it cannot be changed on {% data variables.product.prodname_dotcom %}. You can select a member's role in an organization on {% data variables.product.prodname_dotcom %}. For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." {% else %} For more information about adding people to your enterprise, see "[Authentication](/admin/authentication)". @@ -33,26 +35,26 @@ For more information about adding people to your enterprise, see "[Authenticatio Enterprise owners have complete control over the enterprise and can take every action, including: - Managing administrators -- {% ifversion fpt %}Adding and removing {% elsif ghae or ghes %}Managing{% endif %} organizations {% ifversion fpt %}to and from {% elsif ghae or ghes %} in{% endif %} the enterprise +- {% ifversion ghec %}Adding and removing {% elsif ghae or ghes %}Managing{% endif %} organizations {% ifversion ghec %}to and from {% elsif ghae or ghes %} in{% endif %} the enterprise - Managing enterprise settings - Enforcing policy across organizations -{% ifversion fpt %}- Managing billing settings{% endif %} +{% ifversion ghec %}- Managing billing settings{% endif %} Enterprise owners cannot access organization settings or content unless they are made an organization owner or given direct access to an organization-owned repository. Similarly, owners of organizations in your enterprise do not have access to the enterprise itself unless you make them enterprise owners. -An enterprise owner will only consume a license if they are an owner or member of at least one organization within the enterprise. {% ifversion fpt %}Enterprise owners must have a personal account on {% data variables.product.prodname_dotcom %}.{% endif %} As a best practice, we recommend making only a few people in your company enterprise owners, to reduce the risk to your business. +An enterprise owner will only consume a license if they are an owner or member of at least one organization within the enterprise. {% ifversion ghec %}Enterprise owners must have a personal account on {% data variables.product.prodname_dotcom %}.{% endif %} As a best practice, we recommend making only a few people in your company enterprise owners, to reduce the risk to your business. ## Enterprise members -Members of organizations owned by your enterprise are also automatically members of the enterprise. Members can collaborate in organizations and may be organization owners, but members cannot access or configure enterprise settings{% ifversion fpt %}, including billing settings{% endif %}. +Members of organizations owned by your enterprise are also automatically members of the enterprise. Members can collaborate in organizations and may be organization owners, but members cannot access or configure enterprise settings{% ifversion ghec %}, including billing settings{% endif %}. -People in your enterprise may have different levels of access to the various organizations owned by your enterprise and to repositories within those organizations. You can view the resources that each person has access to. For more information, see "[Viewing people in your enterprise](/github/setting-up-and-managing-your-enterprise/viewing-people-in-your-enterprise)." +People in your enterprise may have different levels of access to the various organizations owned by your enterprise and to repositories within those organizations. You can view the resources that each person has access to. For more information, see "[Viewing people in your enterprise](/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise)." For more information about organization-level permissions, see "[Permission levels for an organization](/articles/permission-levels-for-an-organization)." People with outside collaborator access to repositories owned by your organization are also listed in your enterprise's People tab, but are not enterprise members and do not have any access to the enterprise. For more information about outside collaborators, see "[Permission levels for an organization](/articles/permission-levels-for-an-organization#outside-collaborators)." -{% ifversion fpt %} +{% ifversion ghec %} ## Billing manager @@ -69,6 +71,6 @@ Billing managers will only consume a license if they are an owner or member of a ## Further reading -- "[About enterprise accounts](/articles/about-enterprise-accounts)" +- "[About enterprise accounts](/admin/overview/about-enterprise-accounts)" {% endif %} diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise.md b/content/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise.md similarity index 86% rename from content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise.md rename to content/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise.md index 84e3c40071d2..d1577b81748d 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise.md +++ b/content/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise.md @@ -7,17 +7,18 @@ redirect_from: - /github/setting-up-and-managing-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise-account - /github/setting-up-and-managing-your-enterprise-account/viewing-and-managing-a-users-saml-access-to-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise + - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise versions: - fpt: '*' + ghec: '*' topics: - Enterprise shortTitle: View & manage SAML access --- ## About SAML access to your enterprise account -When you enable SAML single sign-on for your enterprise account, each enterprise member can link their external identity on your identity provider (IdP) to their existing {% data variables.product.product_name %} account. {% data reusables.saml.about-saml-access-enterprise-account %} +When you enable SAML single sign-on for your enterprise account, each enterprise member can link their external identity on your identity provider (IdP) to their existing account on {% data variables.product.product_location %}. {% data reusables.saml.about-saml-access-enterprise-account %} -If your enterprise is uses {% data variables.product.prodname_emus %}, your members will use accounts provisioned through your IdP. {% data variables.product.prodname_managed_users_caps %} will not use their existing user account on {% data variables.product.product_name %}. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +If your enterprise is uses {% data variables.product.prodname_emus %}, your members will use accounts provisioned through your IdP. {% data variables.product.prodname_managed_users_caps %} will not use their existing user account on {% data variables.product.product_name %}. For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." ## Viewing and revoking a linked identity diff --git a/content/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md b/content/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md new file mode 100644 index 000000000000..3a7bcd2c3157 --- /dev/null +++ b/content/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md @@ -0,0 +1,43 @@ +--- +title: Viewing people in your enterprise +intro: 'To audit access to enterprise-owned resources or user license usage, enterprise owners can view every administrator and member of the enterprise.' +product: '{% data reusables.gated-features.enterprise-accounts %}' +redirect_from: + - /github/setting-up-and-managing-your-enterprise-account/viewing-people-in-your-enterprise-account + - /articles/viewing-people-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/viewing-people-in-your-enterprise + - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-people-in-your-enterprise +versions: + ghec: '*' + ghes: '*' + ghae: '*' +topics: + - Enterprise +shortTitle: View people in your enterprise +--- +## Viewing enterprise owners{% ifversion ghec %} and billing managers{% endif %} + +You can view enterprise owners {% ifversion ghec %} and billing managers, {% endif %}as well as a list of pending invitations to become owners{% ifversion ghec %} and billing managers. You can filter the list of enterprise administrators by role{% endif %}. You can find a specific person by searching for their username or full name. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.people-tab %} +{% data reusables.enterprise-accounts.administrators-tab %} +{% ifversion ghec %}1. Optionally, to view a list of pending invitations, click **_NUMBER_ pending**. + !["NUMBER pending" button to the right of search and filter options](/assets/images/help/enterprises/administrators-pending.png){% endif %} + +## Viewing members and outside collaborators + +You can view the number of pending members and outside collaborators. You can filter the list of members by {% ifversion ghec %}deployment ({% data variables.product.prodname_ghe_cloud %} or {% data variables.product.prodname_ghe_server %}),{% endif %} role{% ifversion ghec %}, and{% else %} or {% endif %} organization. You can filter the list of outside collaborators by the visibility of the repositories the collaborator has access to. You can find a specific person by searching for their username or display name. + +You can view {% ifversion ghec %}all the {% data variables.product.prodname_ghe_cloud %} organizations and {% data variables.product.prodname_ghe_server %} instances that a member belongs to, and {% endif %}which repositories an outside collaborator has access to{% ifversion ghec %}, {% endif %} by clicking on the person's name. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.people-tab %} +1. Optionally, to view a list of outside collaborators rather than the list of members, click **Outside collaborators**. + ![Outside collaborators tab on the Organization members page](/assets/images/help/business-accounts/outside-collaborators-tab.png) +{% ifversion ghec %}1. Optionally, to view a list of pending invitations, click **_NUMBER_ pending**. + !["NUMBER pending" button to the right of search and filter options](/assets/images/help/enterprises/members-pending.png){% endif %} + +## Further reading + +- "[Roles in an enterprise](/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise)" diff --git a/content/admin/user-management/monitoring-activity-in-your-enterprise/index.md b/content/admin/user-management/monitoring-activity-in-your-enterprise/index.md index f68cd9be102f..1d0fa9f857d0 100644 --- a/content/admin/user-management/monitoring-activity-in-your-enterprise/index.md +++ b/content/admin/user-management/monitoring-activity-in-your-enterprise/index.md @@ -5,6 +5,7 @@ redirect_from: - /enterprise/admin/installation/monitoring-activity-on-your-github-enterprise-server-instance - /enterprise/admin/user-management/monitoring-activity-in-your-enterprise versions: + ghec: '*' ghes: '*' ghae: '*' topics: @@ -16,6 +17,7 @@ children: - /audited-actions - /viewing-push-logs - /log-forwarding + - /managing-global-webhooks shortTitle: Monitor your enterprise --- diff --git a/content/admin/user-management/managing-users-in-your-enterprise/managing-global-webhooks.md b/content/admin/user-management/monitoring-activity-in-your-enterprise/managing-global-webhooks.md similarity index 58% rename from content/admin/user-management/managing-users-in-your-enterprise/managing-global-webhooks.md rename to content/admin/user-management/monitoring-activity-in-your-enterprise/managing-global-webhooks.md index ae26f473efef..96029480d7dd 100644 --- a/content/admin/user-management/managing-users-in-your-enterprise/managing-global-webhooks.md +++ b/content/admin/user-management/monitoring-activity-in-your-enterprise/managing-global-webhooks.md @@ -1,11 +1,20 @@ --- title: Managing global webhooks -intro: 'Site administrators can view, add, edit, and delete global webhooks to track events for the enterprise.' +shortTitle: Manage global webhooks +intro: 'You can configure global webhooks to notify external web servers when events occur within your enterprise.' +permissions: 'Enterprise owners can manage global webhooks for an enterprise account.' redirect_from: - /enterprise/admin/user-management/about-global-webhooks - /enterprise/admin/user-management/managing-global-webhooks - /admin/user-management/managing-global-webhooks + - /admin/user-management/managing-users-in-your-enterprise/managing-global-webhooks + - /github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account + - /articles/configuring-webhooks-for-organization-events-in-your-business-account/ + - /articles/configuring-webhooks-for-organization-events-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account + - /github/setting-up-and-managing-your-enterprise/configuring-webhooks-for-organization-events-in-your-enterprise-account versions: + ghec: '*' ghes: '*' ghae: '*' type: how_to @@ -13,13 +22,12 @@ topics: - Enterprise - Webhooks --- + ## About global webhooks -You can use global webhooks to automatically monitor, respond to, or enforce rules for user and organization management for your enterprise. For example, you can configure your webhooks to execute whenever: -- A user account is created or deleted -- An organization is created or deleted -- A collaborator is added to or removed from a repository -- A repository is forked +You can use global webhooks to notify an external web server when events occur within your enterprise. You can configure the server to receive the webhook's payload, then run an application or code that monitors, responds to, or enforces rules for user and organization management for your enterprise. For more information, see "[Webhooks](/developers/webhooks-and-events/webhooks)." + +For example, you can configure {% data variables.product.product_location %} to send a webhook when someone creates, deletes, or modifies a repository or organization within your enterprise. You can configure the server to automatically perform a task after receiving the webhook. ![List of global webhooks](/assets/images/enterprise/site-admin-settings/list-of-global-webhooks.png) @@ -38,22 +46,26 @@ You can use global webhooks to automatically monitor, respond to, or enforce rul ![Drop-down menu listing content type options](/assets/images/enterprise/site-admin-settings/add-global-webhook-content-type-dropdown.png) 8. Optionally, in the **Secret** field, type a string to use as a `secret` key. ![Field to type a string to use as a secret key](/assets/images/enterprise/site-admin-settings/add-global-webhook-secret.png) -9. Optionally, if you would not like {% data variables.product.prodname_ghe_server %} to verify SSL certificates when delivering payloads, click **Disable SSL verification**. Read the information about SSL verification, then click **I understand my webhooks may not be secure**. - ![Button for disabling SSL verification](/assets/images/enterprise/site-admin-settings/add-global-webhook-disable-ssl-button.png) +9. Optionally, if your payload URL is HTTPS and you would not like {% data variables.product.prodname_ghe_server %} to verify SSL certificates when delivering payloads, select **Disable SSL verification**. Read the information about SSL verification, then click **I understand my webhooks may not be secure**. + ![Checkbox for disabling SSL verification](/assets/images/enterprise/site-admin-settings/add-global-webhook-disable-ssl-button.png) {% warning %} **Warning:** SSL verification helps ensure that hook payloads are delivered securely. We do not recommend disabling SSL verification. {% endwarning %} -10. Decide if you'd like this webhook to trigger for every event or for selected events: +10. Decide if you'd like this webhook to trigger for every event or for selected events. ![Radio buttons with options to receive payloads for every event or selected events](/assets/images/enterprise/site-admin-settings/add-global-webhook-select-events.png) - For every event, select **Send me everything**. - To choose specific events, select **Let me select individual events**. -11. If you chose to select individual events, select whether to trigger this webhook for organization or user activity. - ![Checkboxes for organization and user events](/assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events.png) -12. Confirm that the **Active** checkbox is selected (it is selected by default). - ![Selected Active checkbox](/assets/images/enterprise/site-admin-settings/add-global-webhook-active-checkbox.png) +11. If you chose to select individual events, select the events that will trigger the webhook. + {% ifversion ghec %} + ![Checkboxes for individual global webhook events](/assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events.png) + {% elsif ghes or ghae %} + ![Checkboxes for individual global webhook events](/assets/images/enterprise/site-admin-settings/add-global-webhook-select-individual-events-ghes-and-ae.png) + {% endif %} +12. Confirm that the **Active** checkbox is selected. + ![Selected Active checkbox](/assets/images/help/business-accounts/webhook-active.png) 13. Click **Add webhook**. ## Editing a global webhook diff --git a/content/authentication/authenticating-with-saml-single-sign-on/about-authentication-with-saml-single-sign-on.md b/content/authentication/authenticating-with-saml-single-sign-on/about-authentication-with-saml-single-sign-on.md index b492d4d09cf6..2cd458816739 100644 --- a/content/authentication/authenticating-with-saml-single-sign-on/about-authentication-with-saml-single-sign-on.md +++ b/content/authentication/authenticating-with-saml-single-sign-on/about-authentication-with-saml-single-sign-on.md @@ -1,6 +1,6 @@ --- title: About authentication with SAML single sign-on -intro: 'You can access {% ifversion ghae %}{% data variables.product.product_location %}{% elsif fpt %}an organization that uses SAML single sign-on (SSO){% endif %} by authenticating {% ifversion ghae %}with SAML single sign-on (SSO) {% endif %}through an identity provider (IdP).{% ifversion fpt %} After you authenticate with the IdP successfully from {% data variables.product.product_name %}, you must authorize any personal access token, SSH key, or {% data variables.product.prodname_oauth_app %} you would like to access the organization''s resources.{% endif %}' +intro: 'You can access {% ifversion ghae %}{% data variables.product.product_location %}{% elsif fpt %}an organization that uses SAML single sign-on (SSO){% endif %} by authenticating {% ifversion ghae %}with SAML single sign-on (SSO) {% endif %}through an identity provider (IdP).{% ifversion fpt or ghec %} After you authenticate with the IdP successfully from {% data variables.product.product_name %}, you must authorize any personal access token, SSH key, or {% data variables.product.prodname_oauth_app %} you would like to access the organization''s resources.{% endif %}' product: '{% data reusables.gated-features.saml-sso %}' redirect_from: - /articles/about-authentication-with-saml-single-sign-on @@ -9,6 +9,7 @@ redirect_from: versions: fpt: '*' ghae: '*' + ghec: '*' topics: - SSO shortTitle: SAML single sign-on @@ -25,7 +26,7 @@ If you can't access {% data variables.product.product_name %}, contact your loca {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.saml.dotcom-saml-explanation %} Organization owners can invite your user account on {% data variables.product.prodname_dotcom %} to join their organization that uses SAML SSO, which allows you to contribute to the organization and retain your existing identity and contributions on {% data variables.product.prodname_dotcom %}. @@ -56,5 +57,5 @@ After an enterprise or organization owner enables or enforces SAML SSO for an or ## Further reading -{% ifversion fpt %}- "[About identity and access management with SAML single sign-on](/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on)"{% endif %} +{% ifversion fpt or ghec %}- "[About identity and access management with SAML single sign-on](/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on)"{% endif %} {% ifversion ghae %}- "[About identity and access management for your enterprise](/admin/authentication/about-identity-and-access-management-for-your-enterprise)"{% endif %} diff --git a/content/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on.md b/content/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on.md index d70ff40dd003..680836daec97 100644 --- a/content/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on.md +++ b/content/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on.md @@ -8,6 +8,7 @@ redirect_from: - /github/authenticating-to-github/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on versions: fpt: '*' + ghec: '*' topics: - SSO shortTitle: PAT with SAML diff --git a/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md b/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md index 89e1906fe6ff..b8bfcee15a4a 100644 --- a/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md +++ b/content/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on.md @@ -8,6 +8,7 @@ redirect_from: - /github/authenticating-to-github/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on versions: fpt: '*' + ghec: '*' topics: - SSO shortTitle: SSH Key with SAML diff --git a/content/authentication/authenticating-with-saml-single-sign-on/index.md b/content/authentication/authenticating-with-saml-single-sign-on/index.md index bf7013840157..2eb03de42ee3 100644 --- a/content/authentication/authenticating-with-saml-single-sign-on/index.md +++ b/content/authentication/authenticating-with-saml-single-sign-on/index.md @@ -9,6 +9,7 @@ redirect_from: versions: fpt: '*' ghae: '*' + ghec: '*' topics: - SSO children: diff --git a/content/authentication/authenticating-with-saml-single-sign-on/viewing-and-managing-your-active-saml-sessions.md b/content/authentication/authenticating-with-saml-single-sign-on/viewing-and-managing-your-active-saml-sessions.md index f55acbf246f3..d2bc7955ff7f 100644 --- a/content/authentication/authenticating-with-saml-single-sign-on/viewing-and-managing-your-active-saml-sessions.md +++ b/content/authentication/authenticating-with-saml-single-sign-on/viewing-and-managing-your-active-saml-sessions.md @@ -7,6 +7,7 @@ redirect_from: - /github/authenticating-to-github/authenticating-with-saml-single-sign-on/viewing-and-managing-your-active-saml-sessions versions: fpt: '*' + ghec: '*' topics: - SSO shortTitle: Active SAML sessions diff --git a/content/authentication/connecting-to-github-with-ssh/about-ssh.md b/content/authentication/connecting-to-github-with-ssh/about-ssh.md index 602d606b2ab3..9cd7ba574779 100644 --- a/content/authentication/connecting-to-github-with-ssh/about-ssh.md +++ b/content/authentication/connecting-to-github-with-ssh/about-ssh.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH --- @@ -16,15 +17,15 @@ When you set up SSH, you will need to generate a new SSH key and add it to the s You can further secure your SSH key by using a hardware security key, which requires the physical hardware security key to be attached to your computer when the key pair is used to authenticate with SSH. You can also secure your SSH key by adding your key to the ssh-agent and using a passphrase. For more information, see "[Working with SSH key passphrases](/github/authenticating-to-github/working-with-ssh-key-passphrases)." -{% ifversion fpt %}To use your SSH key with a repository owned by an organization that uses SAML single sign-on, you must authorize the key. For more information, see "[Authorizing an SSH key for use with SAML single sign-on](/articles/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %} +{% ifversion fpt or ghec %}To use your SSH key with a repository owned by an organization that uses SAML single sign-on, you must authorize the key. For more information, see "[Authorizing an SSH key for use with SAML single sign-on](/articles/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %} To maintain account security, you can regularly review your SSH keys list and revoke any keys that are invalid or have been compromised. For more information, see "[Reviewing your SSH keys](/github/authenticating-to-github/reviewing-your-ssh-keys)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you haven't used your SSH key for a year, then {% data variables.product.prodname_dotcom %} will automatically delete your inactive SSH key as a security precaution. For more information, see "[Deleted or missing SSH keys](/articles/deleted-or-missing-ssh-keys)." {% endif %} -If you're a member of an organization that provides SSH certificates, you can use your certificate to access that organization's repositories without adding the certificate to your {% data variables.product.product_name %} account. For more information, see "[About SSH certificate authorities](/articles/about-ssh-certificate-authorities)." +If you're a member of an organization that provides SSH certificates, you can use your certificate to access that organization's repositories without adding the certificate to your account on {% data variables.product.product_location %}. For more information, see "[About SSH certificate authorities](/articles/about-ssh-certificate-authorities)." ## Further reading diff --git a/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md b/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md index e9a0c4a54442..b06c040b70e0 100644 --- a/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md +++ b/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md @@ -1,6 +1,6 @@ --- title: Adding a new SSH key to your GitHub account -intro: 'To configure your {% data variables.product.product_name %} account to use your new (or existing) SSH key, you''ll also need to add it to your {% data variables.product.product_name %} account.' +intro: 'To configure your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} to use your new (or existing) SSH key, you''ll also need to add the key to your account.' redirect_from: - /articles/adding-a-new-ssh-key-to-your-github-account - /github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account @@ -9,15 +9,16 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Add a new SSH key --- -Before adding a new SSH key to your {% data variables.product.product_name %} account, you should have: +Before adding a new SSH key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, you should have: * [Checked for existing SSH keys](/articles/checking-for-existing-ssh-keys) * [Generating a new SSH key and adding it to the ssh-agent](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) -After adding a new SSH key to your {% data variables.product.product_name %} account, you can reconfigure any local repositories to use SSH. For more information, see "[Switching remote URLs from HTTPS to SSH](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)." +After adding a new SSH key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, you can reconfigure any local repositories to use SSH. For more information, see "[Switching remote URLs from HTTPS to SSH](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)." {% data reusables.ssh.key-type-support %} @@ -148,7 +149,7 @@ gh ssh-key add key-file --title "personal laptop" {% endcli %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading - "[Authorizing an SSH key for use with SAML single sign-on](/articles/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)" diff --git a/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md b/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md index 4d0f52284e84..291407dc293b 100644 --- a/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md +++ b/content/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Check for existing SSH key diff --git a/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md b/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md index 68e922441c41..4244712fc4e7 100644 --- a/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md +++ b/content/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Generate new SSH key @@ -19,7 +20,7 @@ shortTitle: Generate new SSH key If you don't already have an SSH key, you must generate a new SSH key to use for authentication. If you're unsure whether you already have an SSH key, you can check for existing keys. For more information, see "[Checking for existing SSH keys](/github/authenticating-to-github/checking-for-existing-ssh-keys)." -{% ifversion fpt or ghae-next or ghes > 3.1 %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} If you want to use a hardware security key to authenticate to {% data variables.product.product_name %}, you must generate a new SSH key for your hardware security key. You must connect your hardware security key to your computer when you authenticate with the key pair. For more information, see the [OpenSSH 8.2 release notes](https://www.openssh.com/txt/release-8.2). @@ -187,7 +188,7 @@ Before adding a new SSH key to the ssh-agent to manage your keys, you should hav {% endlinux %} -{% ifversion fpt or ghae-next or ghes > 3.1 %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} ## Generating a new SSH key for a hardware security key If you are using macOS or Linux, you may need to update your SSH client or install a new SSH client prior to generating a new SSH key. For more information, see "[Error: Unknown key type](/github/authenticating-to-github/error-unknown-key-type)." diff --git a/content/authentication/connecting-to-github-with-ssh/index.md b/content/authentication/connecting-to-github-with-ssh/index.md index 6a417cdf7f9f..d586fbb62bf8 100644 --- a/content/authentication/connecting-to-github-with-ssh/index.md +++ b/content/authentication/connecting-to-github-with-ssh/index.md @@ -15,6 +15,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH children: diff --git a/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md b/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md index be4b73345276..2c357bec1371 100644 --- a/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md +++ b/content/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection.md @@ -1,6 +1,6 @@ --- title: Testing your SSH connection -intro: 'After you''ve set up your SSH key and added it to your {% data variables.product.product_name %} account, you can test your connection.' +intro: 'After you''ve set up your SSH key and added it to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, you can test your connection.' redirect_from: - /articles/testing-your-ssh-connection - /github/authenticating-to-github/testing-your-ssh-connection @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Test your SSH connection @@ -35,7 +36,7 @@ When you test your connection, you'll need to authenticate this action using you > Are you sure you want to continue connecting (yes/no)? ``` -3. Verify that the fingerprint in the message you see matches {% ifversion fpt %}[{% data variables.product.prodname_dotcom %}'s RSA public key fingerprint](/github/authenticating-to-github/githubs-ssh-key-fingerprints){% else %} your enterprise's public key fingerprint{% endif %}. If it does, then type `yes`: +3. Verify that the fingerprint in the message you see matches {% ifversion fpt or ghec %}[{% data variables.product.prodname_dotcom %}'s RSA public key fingerprint](/github/authenticating-to-github/githubs-ssh-key-fingerprints){% else %} your enterprise's public key fingerprint{% endif %}. If it does, then type `yes`: ```shell > Hi username! You've successfully authenticated, but GitHub does not > provide shell access. diff --git a/content/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases.md b/content/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases.md index d56e13765560..9e36321e37bf 100644 --- a/content/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases.md +++ b/content/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: SSH key passphrases diff --git a/content/authentication/index.md b/content/authentication/index.md index 253a1dc4f511..f2c78884e9ca 100644 --- a/content/authentication/index.md +++ b/content/authentication/index.md @@ -17,6 +17,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - 2FA - Identity diff --git a/content/authentication/keeping-your-account-and-data-secure/about-anonymized-urls.md b/content/authentication/keeping-your-account-and-data-secure/about-anonymized-urls.md index 4fdb07fb1c0e..733b9b098f56 100644 --- a/content/authentication/keeping-your-account-and-data-secure/about-anonymized-urls.md +++ b/content/authentication/keeping-your-account-and-data-secure/about-anonymized-urls.md @@ -9,6 +9,7 @@ redirect_from: - /github/authenticating-to-github/keeping-your-account-and-data-secure/about-anonymized-urls versions: fpt: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md b/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md index 9cf578258f40..5e59678b656d 100644 --- a/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md +++ b/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -27,8 +28,8 @@ You can access your resources in {% data variables.product.product_name %} in a You can authenticate to {% data variables.product.product_name %} in your browser {% ifversion ghae %}using your IdP. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)."{% else %}in different ways. -- {% ifversion fpt %} -If you're a member of an {% data variables.product.prodname_emu_enterprise %}, you will authenticate to {% data variables.product.product_name %} in your browser using your IdP. For more information, see "[Authenticating as a managed user](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users#authenticating-as-a-managed-user)". If you're not a member of an {% data variables.product.prodname_emu_enterprise %}, you will authenticate using your browser on {% data variables.product.prodname_dotcom_the_website %}. +{% ifversion fpt or ghec %} +- If you're a member of an {% data variables.product.prodname_emu_enterprise %}, you will authenticate to {% data variables.product.product_name %} in your browser using your IdP. For more information, see "[Authenticating as a managed user](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users#authenticating-as-a-managed-user)){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} If you're not a member of an {% data variables.product.prodname_emu_enterprise %}, you will authenticate using your browser on {% data variables.product.prodname_dotcom_the_website %}. {% endif %} - **Username and password only** @@ -69,15 +70,15 @@ If you authenticate without {% data variables.product.prodname_cli %}, you must You can work with all repositories on {% data variables.product.product_name %} over SSH, although firewalls and proxys might refuse to allow SSH connections. -If you authenticate with {% data variables.product.prodname_cli %}, the CLI will find SSH public keys on your machine and will prompt you to select one for upload. If {% data variables.product.prodname_cli %} does not find a SSH public key for upload, it can generate a new SSH public/private keypair and upload the public key to your {% data variables.product.product_name %} account. Then, you can either authenticate with a personal access token or via the web browser. For more information about authenticating with {% data variables.product.prodname_cli %}, see [`gh auth login`](https://cli.github.com/manual/gh_auth_login). +If you authenticate with {% data variables.product.prodname_cli %}, the CLI will find SSH public keys on your machine and will prompt you to select one for upload. If {% data variables.product.prodname_cli %} does not find a SSH public key for upload, it can generate a new SSH public/private keypair and upload the public key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. Then, you can either authenticate with a personal access token or via the web browser. For more information about authenticating with {% data variables.product.prodname_cli %}, see [`gh auth login`](https://cli.github.com/manual/gh_auth_login). -If you authenticate without {% data variables.product.prodname_cli %}, you will need to generate an SSH public/private keypair on your local machine and add the public key to your {% data variables.product.product_name %} account. For more information, see "[Generating a new SSH key and adding it to the ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)." Every time you use Git to authenticate with {% data variables.product.product_name %}, you'll be prompted to enter your SSH key passphrase, unless you've [stored the key](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#adding-your-ssh-key-to-the-ssh-agent). +If you authenticate without {% data variables.product.prodname_cli %}, you will need to generate an SSH public/private keypair on your local machine and add the public key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. For more information, see "[Generating a new SSH key and adding it to the ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)." Every time you use Git to authenticate with {% data variables.product.product_name %}, you'll be prompted to enter your SSH key passphrase, unless you've [stored the key](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#adding-your-ssh-key-to-the-ssh-agent). ### Authorizing for SAML single sign-on -{% ifversion fpt %}To use a personal access token or SSH key to access resources owned by an organization that uses SAML single sign-on, you must also authorize the personal token or SSH key. For more information, see "[Authorizing a personal access token for use with SAML single sign-on](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)" or "[Authorizing an SSH key for use with SAML single sign-on](/github/authenticating-to-github/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %} +{% ifversion fpt or ghec %}To use a personal access token or SSH key to access resources owned by an organization that uses SAML single sign-on, you must also authorize the personal token or SSH key. For more information, see "[Authorizing a personal access token for use with SAML single sign-on](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)" or "[Authorizing an SSH key for use with SAML single sign-on](/github/authenticating-to-github/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## {% data variables.product.company_short %}'s token formats diff --git a/content/authentication/keeping-your-account-and-data-secure/about-githubs-ip-addresses.md b/content/authentication/keeping-your-account-and-data-secure/about-githubs-ip-addresses.md index 41eb363234ce..4c9cbd861581 100644 --- a/content/authentication/keeping-your-account-and-data-secure/about-githubs-ip-addresses.md +++ b/content/authentication/keeping-your-account-and-data-secure/about-githubs-ip-addresses.md @@ -12,6 +12,7 @@ redirect_from: - /github/authenticating-to-github/keeping-your-account-and-data-secure/about-githubs-ip-addresses versions: fpt: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/authorizing-github-apps.md b/content/authentication/keeping-your-account-and-data-secure/authorizing-github-apps.md index 0b1095c39d4b..796fe99011e8 100644 --- a/content/authentication/keeping-your-account-and-data-secure/authorizing-github-apps.md +++ b/content/authentication/keeping-your-account-and-data-secure/authorizing-github-apps.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md b/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md index e57d61c34bba..496a5c86832c 100644 --- a/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md +++ b/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md @@ -9,13 +9,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management --- -When an {% data variables.product.prodname_oauth_app %} wants to identify you by your {% data variables.product.product_name %} account, you'll see a page with the app's developer contact information and a list of the specific data that's being requested. +When an {% data variables.product.prodname_oauth_app %} wants to identify you by your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, you'll see a page with the app's developer contact information and a list of the specific data that's being requested. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% tip %} @@ -72,7 +73,7 @@ When you want to use an {% data variables.product.prodname_oauth_app %} that int When {% data variables.product.prodname_oauth_apps %} request new access permissions, they will notify you of the differences between their current permissions and the new permissions. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## {% data variables.product.prodname_oauth_apps %} and organizations diff --git a/content/authentication/keeping-your-account-and-data-secure/connecting-with-third-party-applications.md b/content/authentication/keeping-your-account-and-data-secure/connecting-with-third-party-applications.md index 4671118a25b8..74e09f9565c2 100644 --- a/content/authentication/keeping-your-account-and-data-secure/connecting-with-third-party-applications.md +++ b/content/authentication/keeping-your-account-and-data-secure/connecting-with-third-party-applications.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md b/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md index 0fc069028f48..37929da7c00b 100644 --- a/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md +++ b/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -26,32 +27,32 @@ shortTitle: Create a PAT Personal access tokens (PATs) are an alternative to using passwords for authentication to {% data variables.product.product_name %} when using the [GitHub API](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens) or the [command line](#using-a-token-on-the-command-line). -{% ifversion fpt %}If you want to use a PAT to access resources owned by an organization that uses SAML SSO, you must authorize the PAT. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)" and "[Authorizing a personal access token for use with SAML single sign-on](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)."{% endif %} +{% ifversion fpt or ghec %}If you want to use a PAT to access resources owned by an organization that uses SAML SSO, you must authorize the PAT. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)" and "[Authorizing a personal access token for use with SAML single sign-on](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)."{% endif %} -{% ifversion fpt %}{% data reusables.user_settings.removes-personal-access-tokens %}{% endif %} +{% ifversion fpt or ghec %}{% data reusables.user_settings.removes-personal-access-tokens %}{% endif %} -A token with no assigned scopes can only access public information. To use your token to access repositories from the command line, select `repo`. For more information, see “[Available scopes](/apps/building-oauth-apps/scopes-for-oauth-apps#available-scopes)”. +A token with no assigned scopes can only access public information. To use your token to access repositories from the command line, select `repo`. For more information, see "[Available scopes](/apps/building-oauth-apps/scopes-for-oauth-apps#available-scopes)". ## Creating a token -{% ifversion fpt %}1. [Verify your email address](/github/getting-started-with-github/verifying-your-email-address), if it hasn't been verified yet.{% endif %} +{% ifversion fpt or ghec %}1. [Verify your email address](/github/getting-started-with-github/verifying-your-email-address), if it hasn't been verified yet.{% endif %} {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.developer_settings %} {% data reusables.user_settings.personal_access_tokens %} {% data reusables.user_settings.generate_new_token %} 5. Give your token a descriptive name. - ![Token description field](/assets/images/help/settings/token_description.png){% ifversion fpt or ghes > 3.2 or ghae-issue-4374 %} + ![Token description field](/assets/images/help/settings/token_description.png){% ifversion fpt or ghes > 3.2 or ghae-issue-4374 or ghec %} 6. To give your token an expiration, select the **Expiration** drop-down menu, then click a default or use the calendar picker. ![Token expiration field](/assets/images/help/settings/token_expiration.png){% endif %} 7. Select the scopes, or permissions, you'd like to grant this token. To use your token to access repositories from the command line, select **repo**. - {% ifversion fpt or ghes %} + {% ifversion fpt or ghes or ghec %} ![Selecting token scopes](/assets/images/help/settings/token_scopes.gif) {% elsif ghae %} ![Selecting token scopes](/assets/images/enterprise/github-ae/settings/access-token-scopes-for-ghae.png) {% endif %} 8. Click **Generate token**. ![Generate token button](/assets/images/help/settings/generate_token.png) - {% ifversion fpt %} + {% ifversion fpt or ghec %} ![Newly created token](/assets/images/help/settings/personal_access_tokens.png) {% elsif ghes > 3.1 or ghae-next %} ![Newly created token](/assets/images/help/settings/personal_access_tokens_ghe.png) @@ -64,7 +65,7 @@ A token with no assigned scopes can only access public information. To use your {% endwarning %} -{% ifversion fpt %}9. To use your token to authenticate to an organization that uses SAML SSO, [authorize the token for use with a SAML single-sign-on organization](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on).{% endif %} +{% ifversion fpt or ghec %}9. To use your token to authenticate to an organization that uses SAML SSO, [authorize the token for use with a SAML single-sign-on organization](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on).{% endif %} ## Using a token on the command line @@ -78,5 +79,5 @@ Instead of manually entering your PAT for every HTTPS Git operation, you can cac ## Further reading -- "[About authentication to GitHub](/github/authenticating-to-github/about-authentication-to-github)"{% ifversion fpt or ghae-issue-4374 or ghes > 3.2 %} +- "[About authentication to GitHub](/github/authenticating-to-github/about-authentication-to-github)"{% ifversion fpt or ghae-issue-4374 or ghes > 3.2 or ghec %} - "[Token expiration and revocation](/github/authenticating-to-github/keeping-your-account-and-data-secure/token-expiration-and-revocation)"{% endif %} diff --git a/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md b/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md index 26517c7b0333..f76bfeb214bb 100644 --- a/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md +++ b/content/authentication/keeping-your-account-and-data-secure/creating-a-strong-password.md @@ -1,6 +1,6 @@ --- title: Creating a strong password -intro: 'Secure your {% data variables.product.product_name %} account with a strong and unique password using a password manager.' +intro: 'Secure your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} with a strong and unique password using a password manager.' redirect_from: - /articles/what-is-a-strong-password/ - /articles/creating-a-strong-password @@ -9,18 +9,20 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Identity - Access management shortTitle: Create a strong password --- -You must choose or generate a password for your {% data variables.product.product_name %} account that is at least: +You must choose or generate a password for your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} that is at least: - {% ifversion ghes %}Seven{% else %}Eight{% endif %} characters long, if it includes a number and a lowercase letter, or - 15 characters long with any combination of characters To keep your account secure, we recommend you follow these best practices: - Use a password manager, such as [LastPass](https://lastpass.com/) or [1Password](https://1password.com/), to generate a password of at least 15 characters. -- Generate a unique password for {% data variables.product.product_name %}. If you use your {% data variables.product.product_name %} password elsewhere and that service is compromised, then attackers or other malicious actors could use that information to access your {% data variables.product.product_name %} account. +- Generate a unique password for {% data variables.product.product_name %}. If you use your {% data variables.product.product_name %} password elsewhere and that service is compromised, then attackers or other malicious actors could use that information to access your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. + - Configure two-factor authentication for your personal account. For more information, see "[About two-factor authentication](/articles/about-two-factor-authentication)." - Never share your password, even with a potential collaborator. Each person should use their own personal account on {% data variables.product.product_name %}. For more information on ways to collaborate, see: "[Inviting collaborators to a personal repository](/articles/inviting-collaborators-to-a-personal-repository)," "[About collaborative development models](/articles/about-collaborative-development-models/)," or "[Collaborating with groups in organizations](/organizations/collaborating-with-groups-in-organizations/)." @@ -28,7 +30,7 @@ To keep your account secure, we recommend you follow these best practices: You can only use your password to log on to {% data variables.product.product_name %} using your browser. When you authenticate to {% data variables.product.product_name %} with other means, such as the command line or API, you should use other credentials. For more information, see "[About authentication to {% data variables.product.prodname_dotcom %}](/github/authenticating-to-github/about-authentication-to-github)." -{% ifversion fpt %}{% data reusables.user_settings.password-authentication-deprecation %}{% endif %} +{% ifversion fpt or ghec %}{% data reusables.user_settings.password-authentication-deprecation %}{% endif %} ## Further reading diff --git a/content/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints.md b/content/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints.md index f8cb70f029a0..dd6c0c977793 100644 --- a/content/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints.md +++ b/content/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints.md @@ -9,6 +9,7 @@ redirect_from: - /github/authenticating-to-github/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints versions: fpt: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/index.md b/content/authentication/keeping-your-account-and-data-secure/index.md index 387873e159f5..750844b4cf04 100644 --- a/content/authentication/keeping-your-account-and-data-secure/index.md +++ b/content/authentication/keeping-your-account-and-data-secure/index.md @@ -1,6 +1,6 @@ --- title: Keeping your account and data secure -intro: 'To protect your personal information, you should keep both your {% data variables.product.product_name %} account and any associated data secure.' +intro: 'To protect your personal information, you should keep both your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} and any associated data secure.' redirect_from: - /articles/keeping-your-account-and-data-secure - /github/authenticating-to-github/keeping-your-account-and-data-secure/ @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md b/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md index 01ba65936997..90f5e263dc81 100644 --- a/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md +++ b/content/authentication/keeping-your-account-and-data-secure/preventing-unauthorized-access.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Identity - Access management @@ -19,7 +20,7 @@ After changing your password, you should perform these actions to make sure that - [Enable two-factor authentication](/articles/about-two-factor-authentication) on your account so that access requires more than just a password. - [Review your SSH keys](/articles/reviewing-your-ssh-keys), [deploy keys](/articles/reviewing-your-deploy-keys), and [authorized integrations](/articles/reviewing-your-authorized-integrations) and revoke unauthorized or unfamiliar access in your SSH and Applications settings. -{% ifversion fpt %} +{% ifversion fpt or ghec %} - [Verify all your email addresses](/articles/verifying-your-email-address). If an attacker added their email address to your account, it could allow them to force an unintended password reset. {% endif %} - [Review your account's security log](/github/authenticating-to-github/reviewing-your-security-log). This provides an overview on various configurations made to your repositories. For example, you can ensure that no private repositories were turned public, or that no repositories were transferred. diff --git a/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md b/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md index 070e336197ae..47ab5ebb21ef 100644 --- a/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md +++ b/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -23,7 +24,7 @@ You can remove the file from the latest commit with `git rm`. For information on {% warning %} -This article tells you how to make commits with sensitive data unreachable from any branches or tags in your {% data variables.product.product_name %} repository. However, it's important to note that those commits may still be accessible in any clones or forks of your repository, directly via their SHA-1 hashes in cached views on {% data variables.product.product_name %}, and through any pull requests that reference them. You cannot remove sensitive data from other users' clones or forks of your repository, but you can permanently remove cached views and references to the sensitive data in pull requests on {% data variables.product.product_name %} by contacting {% data variables.contact.contact_support %}. +This article tells you how to make commits with sensitive data unreachable from any branches or tags in your repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. However, it's important to note that those commits may still be accessible in any clones or forks of your repository, directly via their SHA-1 hashes in cached views on {% data variables.product.product_name %}, and through any pull requests that reference them. You cannot remove sensitive data from other users' clones or forks of your repository, but you can permanently remove cached views and references to the sensitive data in pull requests on {% data variables.product.product_name %} by contacting {% data variables.contact.contact_support %}. **Warning: Once you have pushed a commit to {% data variables.product.product_name %}, you should consider any sensitive data in the commit compromised.** If you committed a password, change it! If you committed a key, generate a new one. Removing the compromised data doesn't resolve its initial exposure, especially in existing clones or forks of your repository. Consider these limitations in your decision to rewrite your repository's history. @@ -123,7 +124,7 @@ To illustrate how `git filter-repo` works, we'll show you how to remove your fil > 1 files changed, 1 insertions(+), 0 deletions(-) ``` 6. Double-check that you've removed everything you wanted to from your repository's history, and that all of your branches are checked out. -7. Once you're happy with the state of your repository, force-push your local changes to overwrite your {% data variables.product.product_name %} repository, as well as all the branches you've pushed up: +7. Once you're happy with the state of your repository, force-push your local changes to overwrite your repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, as well as all the branches you've pushed up: ```shell $ git push origin --force --all > Counting objects: 1074, done. @@ -183,5 +184,5 @@ There are a few simple tricks to avoid committing things you don't want committe ## Further reading - [`git filter-repo` man page](https://htmlpreview.github.io/?https://github.com/newren/git-filter-repo/blob/docs/html/git-filter-repo.html) -- [Pro Git: Git Tools - Rewriting History](https://git-scm.com/book/en/Git-Tools-Rewriting-History){% ifversion fpt or ghae or ghes > 2.22 %} +- [Pro Git: Git Tools - Rewriting History](https://git-scm.com/book/en/Git-Tools-Rewriting-History){% ifversion fpt or ghae or ghes > 2.22 or ghec %} - "[About Secret scanning](/code-security/secret-security/about-secret-scanning)"{% endif %} diff --git a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-applications-oauth.md b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-applications-oauth.md index 84c3611f94f8..1f0c96763ed5 100644 --- a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-applications-oauth.md +++ b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-applications-oauth.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -20,6 +21,6 @@ shortTitle: Review OAuth apps {% data reusables.user_settings.review-oauth-apps %} ## Further reading -{% ifversion fpt %} +{% ifversion fpt or ghec %} - "[About integrations](/articles/about-integrations)"{% endif %} - "[Reviewing your authorized integrations](/articles/reviewing-your-authorized-integrations)" diff --git a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-integrations.md b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-integrations.md index bd4cf2252c92..289e4aff4518 100644 --- a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-integrations.md +++ b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-authorized-integrations.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -31,6 +32,6 @@ shortTitle: Authorized integrations ![List of authorized {% data variables.product.prodname_github_app %}](/assets/images/help/settings/revoke-github-app.png) ## Further reading -{% ifversion fpt %} +{% ifversion fpt or ghec %} - "[About integrations](/articles/about-integrations)"{% endif %} - "[Reviewing your authorized applications (OAuth)](/articles/reviewing-your-authorized-applications-oauth)" diff --git a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md index 04956652a7bf..fad96d0b4f89 100644 --- a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md +++ b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md index 740cc668af98..071e5ae9d278 100644 --- a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md +++ b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-security-log.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -20,7 +21,7 @@ shortTitle: Security log The security log lists all actions performed within the last 90 days. {% data reusables.user_settings.access_settings %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} 2. In the user settings sidebar, click **Security log**. ![Security log tab](/assets/images/help/settings/audit-log-tab.png) {% else %} @@ -31,7 +32,7 @@ The security log lists all actions performed within the last 90 days. ![Security log](/assets/images/help/settings/user_security_history_action.png) {% endif %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} ## Searching your security log {% data reusables.audit_log.audit-log-search %} @@ -44,24 +45,24 @@ The security log lists all actions performed within the last 90 days. The events listed in your security log are triggered by your actions. Actions are grouped into the following categories: | Category name | Description -|------------------|-------------------{% ifversion fpt %} +|------------------|-------------------{% ifversion fpt or ghec %} | [`account_recovery_token`](#account_recovery_token-category-actions) | Contains all activities related to [adding a recovery token](/articles/configuring-two-factor-authentication-recovery-methods). | [`billing`](#billing-category-actions) | Contains all activities related to your billing information. | [`codespaces`](#codespaces-category-actions) | Contains all activities related to {% data variables.product.prodname_codespaces %}. For more information, see "[About {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/about-codespaces)." | [`marketplace_agreement_signature`](#marketplace_agreement_signature-category-actions) | Contains all activities related to signing the {% data variables.product.prodname_marketplace %} Developer Agreement. | [`marketplace_listing`](#marketplace_listing-category-actions) | Contains all activities related to listing apps in {% data variables.product.prodname_marketplace %}.{% endif %} -| [`oauth_access`](#oauth_access-category-actions) | Contains all activities related to [{% data variables.product.prodname_oauth_apps %}](/github/authenticating-to-github/keeping-your-account-and-data-secure/authorizing-oauth-apps) you've connected with.{% ifversion fpt %} +| [`oauth_access`](#oauth_access-category-actions) | Contains all activities related to [{% data variables.product.prodname_oauth_apps %}](/github/authenticating-to-github/keeping-your-account-and-data-secure/authorizing-oauth-apps) you've connected with.{% ifversion fpt or ghec %} | [`payment_method`](#payment_method-category-actions) | Contains all activities related to paying for your {% data variables.product.prodname_dotcom %} subscription.{% endif %} | [`profile_picture`](#profile_picture-category-actions) | Contains all activities related to your profile picture. | [`project`](#project-category-actions) | Contains all activities related to project boards. | [`public_key`](#public_key-category-actions) | Contains all activities related to [your public SSH keys](/articles/adding-a-new-ssh-key-to-your-github-account). -| [`repo`](#repo-category-actions) | Contains all activities related to the repositories you own.{% ifversion fpt %} +| [`repo`](#repo-category-actions) | Contains all activities related to the repositories you own.{% ifversion fpt or ghec %} | [`sponsors`](#sponsors-category-actions) | Contains all events related to {% data variables.product.prodname_sponsors %} and sponsor buttons (see "[About {% data variables.product.prodname_sponsors %}](/sponsors/getting-started-with-github-sponsors/about-github-sponsors)" and "[Displaying a sponsor button in your repository](/articles/displaying-a-sponsor-button-in-your-repository)"){% endif %}{% ifversion ghes or ghae %} | [`team`](#team-category-actions) | Contains all activities related to teams you are a part of.{% endif %}{% ifversion not ghae %} | [`two_factor_authentication`](#two_factor_authentication-category-actions) | Contains all activities related to [two-factor authentication](/articles/securing-your-account-with-two-factor-authentication-2fa).{% endif %} | [`user`](#user-category-actions) | Contains all activities related to your account. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Exporting your security log @@ -74,7 +75,7 @@ The events listed in your security log are triggered by your actions. Actions ar An overview of some of the most common actions that are recorded as events in the security log. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `account_recovery_token` category actions @@ -124,9 +125,9 @@ An overview of some of the most common actions that are recorded as events in th | Action | Description |------------------|------------------- | `create` | Triggered when you [grant access to an {% data variables.product.prodname_oauth_app %}](/github/authenticating-to-github/keeping-your-account-and-data-secure/authorizing-oauth-apps). -| `destroy` | Triggered when you [revoke an {% data variables.product.prodname_oauth_app %}'s access to your account](/articles/reviewing-your-authorized-integrations){% ifversion fpt or ghae-issue-4374 or ghes > 3.2 %} and when [authorizations are revoked or expire](/github/authenticating-to-github/keeping-your-account-and-data-secure/token-expiration-and-revocation).{% else %}.{% endif %} +| `destroy` | Triggered when you [revoke an {% data variables.product.prodname_oauth_app %}'s access to your account](/articles/reviewing-your-authorized-integrations){% ifversion fpt or ghae-issue-4374 or ghes > 3.2 or ghec %} and when [authorizations are revoked or expire](/github/authenticating-to-github/keeping-your-account-and-data-secure/token-expiration-and-revocation).{% else %}.{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `payment_method` category actions @@ -161,15 +162,15 @@ An overview of some of the most common actions that are recorded as events in th | Action | Description |------------------|------------------- -| `create` | Triggered when you [add a new public SSH key to your {% data variables.product.product_name %} account](/articles/adding-a-new-ssh-key-to-your-github-account). -| `delete` | Triggered when you [remove a public SSH key to your {% data variables.product.product_name %} account](/articles/reviewing-your-ssh-keys). +| `create` | Triggered when you [add a new public SSH key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}](/articles/adding-a-new-ssh-key-to-your-github-account). +| `delete` | Triggered when you [remove a public SSH key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}](/articles/reviewing-your-ssh-keys). ### `repo` category actions | Action | Description |------------------|------------------- | `access` | Triggered when you a repository you own is [switched from "private" to "public"](/articles/making-a-private-repository-public) (or vice versa). -| `add_member` | Triggered when a {% data variables.product.product_name %} user is {% ifversion fpt %}[invited to have collaboration access](/articles/inviting-collaborators-to-a-personal-repository){% else %}[given collaboration access](/articles/inviting-collaborators-to-a-personal-repository){% endif %} to a repository. +| `add_member` | Triggered when a {% data variables.product.product_name %} user is {% ifversion fpt or ghec %}[invited to have collaboration access](/articles/inviting-collaborators-to-a-personal-repository){% else %}[given collaboration access](/articles/inviting-collaborators-to-a-personal-repository){% endif %} to a repository. | `add_topic` | Triggered when a repository owner [adds a topic](/articles/classifying-your-repository-with-topics) to a repository. | `archived` | Triggered when a repository owner [archives a repository](/articles/about-archiving-repositories).{% ifversion ghes %} | `config.disable_anonymous_git_access` | Triggered when [anonymous Git read access is disabled](/enterprise/{{ currentVersion }}/user/articles/enabling-anonymous-git-read-access-for-a-repository) in a public repository. @@ -177,8 +178,8 @@ An overview of some of the most common actions that are recorded as events in th | `config.lock_anonymous_git_access` | Triggered when a repository's [anonymous Git read access setting is locked](/enterprise/{{ currentVersion }}/admin/guides/user-management/preventing-users-from-changing-anonymous-git-read-access). | `config.unlock_anonymous_git_access` | Triggered when a repository's [anonymous Git read access setting is unlocked](/enterprise/{{ currentVersion }}/admin/guides/user-management/preventing-users-from-changing-anonymous-git-read-access).{% endif %} | `create` | Triggered when [a new repository is created](/articles/creating-a-new-repository). -| `destroy` | Triggered when [a repository is deleted](/articles/deleting-a-repository).{% ifversion fpt %} -| `disable` | Triggered when a repository is disabled (e.g., for [insufficient funds](/articles/unlocking-a-locked-account)).{% endif %}{% ifversion fpt %} +| `destroy` | Triggered when [a repository is deleted](/articles/deleting-a-repository).{% ifversion fpt or ghec %} +| `disable` | Triggered when a repository is disabled (e.g., for [insufficient funds](/articles/unlocking-a-locked-account)).{% endif %}{% ifversion fpt or ghec %} | `enable` | Triggered when a repository is re-enabled.{% endif %} | `remove_member` | Triggered when a {% data variables.product.product_name %} user is [removed from a repository as a collaborator](/articles/removing-a-collaborator-from-a-personal-repository). | `remove_topic` | Triggered when a repository owner removes a topic from a repository. @@ -187,7 +188,7 @@ An overview of some of the most common actions that are recorded as events in th | `transfer_start` | Triggered when a repository transfer is about to occur. | `unarchived` | Triggered when a repository owner unarchives a repository. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `sponsors` category actions | Action | Description @@ -211,7 +212,7 @@ An overview of some of the most common actions that are recorded as events in th | `waitlist_join` | Triggered when you join the waitlist to become a sponsored developer (see "[Setting up {% data variables.product.prodname_sponsors %} for your user account](/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-user-account)") {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `successor_invitation` category actions | Action | Description @@ -251,7 +252,7 @@ An overview of some of the most common actions that are recorded as events in th | Action | Description |--------------------|--------------------- -| `add_email` | Triggered when you {% ifversion not ghae %}[add a new email address](/articles/changing-your-primary-email-address){% else %}add a new email address{% endif %}.{% ifversion fpt %} +| `add_email` | Triggered when you {% ifversion not ghae %}[add a new email address](/articles/changing-your-primary-email-address){% else %}add a new email address{% endif %}.{% ifversion fpt or ghec %} | `codespaces_trusted_repo_access_granted` | Triggered when you [allow the codespaces you create for a repository to access other repositories owned by your user account](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces. | `codespaces_trusted_repo_access_revoked` | Triggered when you [disallow the codespaces you create for a repository to access other repositories owned by your user account](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces. {% endif %} | `create` | Triggered when you create a new user account.{% ifversion not ghae %} @@ -262,7 +263,7 @@ An overview of some of the most common actions that are recorded as events in th `mandatory_message_viewed` | Triggered when you view a mandatory message (see "[Customizing user messages](/admin/user-management/customizing-user-messages-for-your-enterprise)" for details) | {% endif %} | `failed_login` | Triggered when you failed to log in successfully. | `remove_email` | Triggered when you remove an email address. -| `rename` | Triggered when you rename your account.{% ifversion fpt %} +| `rename` | Triggered when you rename your account.{% ifversion fpt or ghec %} | `report_content` | Triggered when you [report an issue or pull request, or a comment on an issue, pull request, or commit](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam).{% endif %} | `show_private_contributions_count` | Triggered when you [publicize private contributions on your profile](/articles/publicizing-or-hiding-your-private-contributions-on-your-profile).{% ifversion not ghae %} | `two_factor_requested` | Triggered when {% data variables.product.product_name %} asks you for [your two-factor authentication code](/articles/accessing-github-using-two-factor-authentication).{% endif %} diff --git a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md index 1ec368af642f..953788c93fee 100644 --- a/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md +++ b/content/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys.md @@ -1,6 +1,6 @@ --- title: Reviewing your SSH keys -intro: 'To keep your credentials secure, you should regularly audit your SSH keys, deploy keys, and review authorized applications that access your {% data variables.product.product_name %} account.' +intro: 'To keep your credentials secure, you should regularly audit your SSH keys, deploy keys, and review authorized applications that access your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}.' redirect_from: - /articles/keeping-your-application-access-tokens-safe/ - /articles/keeping-your-ssh-keys-and-application-access-tokens-safe/ @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md b/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md index 8d60809715dd..b4744b1bb41a 100644 --- a/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md +++ b/content/authentication/keeping-your-account-and-data-secure/sudo-mode.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md b/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md index 001498e11157..d2ac91676c1a 100644 --- a/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md +++ b/content/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -13,7 +14,7 @@ redirect_from: - /github/authenticating-to-github/keeping-your-account-and-data-secure/token-expiration-and-revocation --- -When a token {% ifversion fpt or ghae-issue-4374 or ghes > 3.2 %}has expired or {% endif %} has been revoked, it can no longer be used to authenticate Git and API requests. It is not possible to restore an expired or revoked token, you or the application will need to create a new token. +When a token {% ifversion fpt or ghae-issue-4374 or ghes > 3.2 or ghec %}has expired or {% endif %} has been revoked, it can no longer be used to authenticate Git and API requests. It is not possible to restore an expired or revoked token, you or the application will need to create a new token. This article explains the possible reasons your {% data variables.product.product_name %} token might be revoked or expire. @@ -23,13 +24,13 @@ This article explains the possible reasons your {% data variables.product.produc {% endnote %} -{% ifversion fpt or ghae-issue-4374 or ghes > 3.2 %} +{% ifversion fpt or ghae-issue-4374 or ghes > 3.2 or ghec %} ## Token revoked after reaching its expiration date When you create a personal access token, we recommend that you set an expiration for your token. Upon reaching your token's expiration date, the token is automatically revoked. For more information, see "[Creating a personal access token](/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Token revoked when pushed to a public repository or public gist If a valid OAuth token, {% data variables.product.prodname_github_app %} token, or personal access token is pushed to a public repository or public gist, the token will be automatically revoked. @@ -37,7 +38,7 @@ If a valid OAuth token, {% data variables.product.prodname_github_app %} token, OAuth tokens and personal access tokens pushed to public repositories and public gists will only be revoked if the token has scopes. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Token expired due to lack of use {% data variables.product.product_name %} will automatically revoke an OAuth token or personal access token when the token hasn't been used in one year. @@ -47,7 +48,7 @@ OAuth tokens and personal access tokens pushed to public repositories and public You can revoke your authorization of a {% data variables.product.prodname_github_app %} or {% data variables.product.prodname_oauth_app %} from your account settings which will revoke any tokens associated with the app. For more information, see "[Reviewing your authorized integrations](/github/authenticating-to-github/keeping-your-account-and-data-secure/reviewing-your-authorized-integrations)" and "[Reviewing your authorized applications (OAuth)](/github/authenticating-to-github/keeping-your-account-and-data-secure/reviewing-your-authorized-applications-oauth)." -Once an authorization is revoked, any tokens associated with the authorization will be revoked as well. To re-authorize an application, follow the instructions from the third-party application or website to connect your {% data variables.product.product_name %} account again. +Once an authorization is revoked, any tokens associated with the authorization will be revoked as well. To re-authorize an application, follow the instructions from the third-party application or website to connect your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} again. ## Token revoked by the {% data variables.product.prodname_oauth_app %} diff --git a/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md b/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md index 21bc55877a4f..e1b972b591d1 100644 --- a/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md +++ b/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -19,14 +20,14 @@ shortTitle: Update access credentials {% ifversion not ghae %} ## Requesting a new password -1. To request a new password, visit {% ifversion fpt %}https://{% data variables.product.product_url %}/password_reset{% else %}`https://{% data variables.product.product_url %}/password_reset`{% endif %}. -2. Enter the email address associated with your personal {% data variables.product.product_name %} account, then click **Send password reset email.** The email will be sent to the backup email address if you have one configured. +1. To request a new password, visit {% ifversion fpt or ghec %}https://{% data variables.product.product_url %}/password_reset{% else %}`https://{% data variables.product.product_url %}/password_reset`{% endif %}. +2. Enter the email address associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, then click **Send password reset email.** The email will be sent to the backup email address if you have one configured. ![Password reset email request dialog](/assets/images/help/settings/password-recovery-email-request.png) 3. We'll email you a link that will allow you to reset your password. You must click on this link within 3 hours of receiving the email. If you didn't receive an email from us, make sure to check your spam folder. 4. If you have enabled two-factor authentication, you will be prompted for your 2FA credentials. Type your 2FA credentials or one of your 2FA recovery codes and click **Verify**. ![Two-factor authentication prompt](/assets/images/help/2fa/2fa-password-reset.png) 5. Type a new password, confirm your new password, and click **Change password**. For help creating a strong password, see "[Creating a strong password](/articles/creating-a-strong-password)." - {% ifversion fpt %}![Password recovery box](/assets/images/help/settings/password-recovery-page.png){% else %} + {% ifversion fpt or ghec %}![Password recovery box](/assets/images/help/settings/password-recovery-page.png){% else %} ![Password recovery box](/assets/images/enterprise/settings/password-recovery-page.png){% endif %} {% tip %} diff --git a/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md b/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md index 64c7dc6a7c1d..59f11c363162 100644 --- a/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md +++ b/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -18,11 +19,11 @@ shortTitle: Commit signature verification --- ## About commit signature verification -You can sign commits and tags locally, to give other people confidence about the origin of a change you have made. If a commit or tag has a GPG or S/MIME signature that is cryptographically verifiable, GitHub marks the commit or tag {% ifversion fpt %}"Verified" or "Partially verified."{% else %}"Verified."{% endif %} +You can sign commits and tags locally, to give other people confidence about the origin of a change you have made. If a commit or tag has a GPG or S/MIME signature that is cryptographically verifiable, GitHub marks the commit or tag {% ifversion fpt or ghec %}"Verified" or "Partially verified."{% else %}"Verified."{% endif %} ![Verified commit](/assets/images/help/commits/verified-commit.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} Commits and tags have the following verification statuses, depending on whether you have enabled vigilant mode. By default vigilant mode is not enabled. For information on how to enable vigilant mode, see "[Displaying verification statuses for all of your commits](/github/authenticating-to-github/displaying-verification-statuses-for-all-of-your-commits)." {% data reusables.identity-and-permissions.vigilant-mode-beta-note %} @@ -47,7 +48,7 @@ Repository administrators can enforce required commit signing on a branch to blo {% data reusables.identity-and-permissions.verification-status-check %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data variables.product.product_name %} will automatically use GPG to sign commits you make using the {% data variables.product.product_name %} web interface, except for when you squash and merge a pull request that you are not the author of. Commits signed by {% data variables.product.product_name %} will have a verified status on {% data variables.product.product_name %}. You can verify the signature locally using the public key available at https://github.com/web-flow.gpg. The full fingerprint of the key is `5DE3 E050 9C47 EA3C F04A 42D3 4AEE 18F8 3AFD EB23`. You can optionally choose to have {% data variables.product.product_name %} sign commits you make in {% data variables.product.prodname_codespaces %}. For more information about enabling GPG verification for your codespaces, see "[Managing GPG verification for {% data variables.product.prodname_codespaces %}](/github/developing-online-with-codespaces/managing-gpg-verification-for-codespaces)." {% endif %} @@ -55,7 +56,7 @@ Repository administrators can enforce required commit signing on a branch to blo You can use GPG to sign commits with a GPG key that you generate yourself. -{% data variables.product.product_name %} uses OpenPGP libraries to confirm that your locally signed commits and tags are cryptographically verifiable against a public key you have added to your {% data variables.product.product_name %} account. +{% data variables.product.product_name %} uses OpenPGP libraries to confirm that your locally signed commits and tags are cryptographically verifiable against a public key you have added to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. To sign commits using GPG and have those commits verified on {% data variables.product.product_name %}, follow these steps: @@ -82,7 +83,7 @@ To sign commits using S/MIME and have those commits verified on {% data variable You don't need to upload your public key to {% data variables.product.product_name %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Signature verification for bots Organizations and {% data variables.product.prodname_github_apps %} that require commit signing can use bots to sign commits. If a commit or tag has a bot signature that is cryptographically verifiable, {% data variables.product.product_name %} marks the commit or tag as verified. diff --git a/content/authentication/managing-commit-signature-verification/adding-a-new-gpg-key-to-your-github-account.md b/content/authentication/managing-commit-signature-verification/adding-a-new-gpg-key-to-your-github-account.md index c8e40c140cea..f737d129f95d 100644 --- a/content/authentication/managing-commit-signature-verification/adding-a-new-gpg-key-to-your-github-account.md +++ b/content/authentication/managing-commit-signature-verification/adding-a-new-gpg-key-to-your-github-account.md @@ -1,6 +1,6 @@ --- title: Adding a new GPG key to your GitHub account -intro: 'To configure your {% data variables.product.product_name %} account to use your new (or existing) GPG key, you''ll also need to add it to your {% data variables.product.product_name %} account.' +intro: 'To configure your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} to use your new (or existing) GPG key, you''ll also need the key to your account.' redirect_from: - /articles/adding-a-new-gpg-key-to-your-github-account - /github/authenticating-to-github/adding-a-new-gpg-key-to-your-github-account @@ -9,12 +9,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management shortTitle: Add a new GPG key --- -Before adding a new GPG key to your {% data variables.product.product_name %} account, you should have: +Before adding a new GPG key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, you should have: - [Checked for existing GPG keys](/articles/checking-for-existing-gpg-keys) - [Generated and copied a new GPG key](/articles/generating-a-new-gpg-key) diff --git a/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md b/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md index 4b5cc780ea35..53019bf434b5 100644 --- a/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md +++ b/content/authentication/managing-commit-signature-verification/associating-an-email-with-your-gpg-key.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -16,7 +17,7 @@ shortTitle: Associate email with GPG key --- {% note %} -If you're using a GPG key that matches your committer identity and your verified email address associated with your {% data variables.product.product_name %} account, then you can begin signing commits and signing tags. +If you're using a GPG key that matches your committer identity and your verified email address associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, then you can begin signing commits and signing tags. {% endnote %} @@ -31,7 +32,7 @@ If you're using a GPG key that matches your committer identity and your verified ```shell $ gpg> adduid ``` -6. Follow the prompts to supply your real name, email address, and any comments. You can modify your entries by choosing `N`, `C`, or `E`. {% data reusables.gpg.private-email %} {% ifversion fpt %} For more information, see "[Setting your commit email address](/articles/setting-your-commit-email-address)."{% endif %} +6. Follow the prompts to supply your real name, email address, and any comments. You can modify your entries by choosing `N`, `C`, or `E`. {% data reusables.gpg.private-email %} {% ifversion fpt or ghec %} For more information, see "[Setting your commit email address](/articles/setting-your-commit-email-address)."{% endif %} ```shell Real Name: Octocat Email address: octocat@github.com diff --git a/content/authentication/managing-commit-signature-verification/checking-for-existing-gpg-keys.md b/content/authentication/managing-commit-signature-verification/checking-for-existing-gpg-keys.md index 509ce7a8749c..b450c4bce764 100644 --- a/content/authentication/managing-commit-signature-verification/checking-for-existing-gpg-keys.md +++ b/content/authentication/managing-commit-signature-verification/checking-for-existing-gpg-keys.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md b/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md index 640147d9497f..7956116ea5e4 100644 --- a/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md +++ b/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md @@ -4,6 +4,7 @@ shortTitle: Displaying verification for all commits intro: You can enable vigilant mode for commit signature verification to mark all of your commits and tags with a signature verification status. versions: fpt: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md b/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md index a2e70513cabf..7153df810e50 100644 --- a/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md +++ b/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -19,7 +20,7 @@ topics: {% note %} -**Note:** Before generating a new GPG key, make sure you've verified your email address. If you haven't verified your email address, you won't be able to sign commits and tags with GPG.{% ifversion fpt %} For more information, see "[Verifying your email address](/articles/verifying-your-email-address)."{% endif %} +**Note:** Before generating a new GPG key, make sure you've verified your email address. If you haven't verified your email address, you won't be able to sign commits and tags with GPG.{% ifversion fpt or ghec %} For more information, see "[Verifying your email address](/articles/verifying-your-email-address)."{% endif %} {% endnote %} @@ -42,7 +43,7 @@ topics: {% note %} - **Note:** When asked to enter your email address, ensure that you enter the verified email address for your GitHub account. {% data reusables.gpg.private-email %} {% ifversion fpt %} For more information, see "[Verifying your email address](/articles/verifying-your-email-address)" and "[Setting your commit email address](/articles/setting-your-commit-email-address)."{% endif %} + **Note:** When asked to enter your email address, ensure that you enter the verified email address for your GitHub account. {% data reusables.gpg.private-email %} {% ifversion fpt or ghec %} For more information, see "[Verifying your email address](/articles/verifying-your-email-address)" and "[Setting your commit email address](/articles/setting-your-commit-email-address)."{% endif %} {% endnote %} diff --git a/content/authentication/managing-commit-signature-verification/index.md b/content/authentication/managing-commit-signature-verification/index.md index 1faf980e6617..ee520e190f22 100644 --- a/content/authentication/managing-commit-signature-verification/index.md +++ b/content/authentication/managing-commit-signature-verification/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/managing-commit-signature-verification/signing-commits.md b/content/authentication/managing-commit-signature-verification/signing-commits.md index 05d878b79e57..235fdd82fa44 100644 --- a/content/authentication/managing-commit-signature-verification/signing-commits.md +++ b/content/authentication/managing-commit-signature-verification/signing-commits.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/managing-commit-signature-verification/signing-tags.md b/content/authentication/managing-commit-signature-verification/signing-tags.md index cb8401561cf2..4781a9c471c2 100644 --- a/content/authentication/managing-commit-signature-verification/signing-tags.md +++ b/content/authentication/managing-commit-signature-verification/signing-tags.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md b/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md index a21ee55a9bed..d56867dcdc42 100644 --- a/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md +++ b/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -19,7 +20,7 @@ shortTitle: Tell Git your signing key ## Telling Git about your GPG key -If you're using a GPG key that matches your committer identity and your verified email address associated with your {% data variables.product.product_name %} account, then you can begin signing commits and signing tags. +If you're using a GPG key that matches your committer identity and your verified email address associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, then you can begin signing commits and signing tags. {% note %} @@ -52,7 +53,7 @@ If you have multiple GPG keys, you need to tell Git which one to use. ## Telling Git about your GPG key -If you're using a GPG key that matches your committer identity and your verified email address associated with your {% data variables.product.product_name %} account, then you can begin signing commits and signing tags. +If you're using a GPG key that matches your committer identity and your verified email address associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, then you can begin signing commits and signing tags. {% note %} @@ -75,7 +76,7 @@ If you have multiple GPG keys, you need to tell Git which one to use. ## Telling Git about your GPG key -If you're using a GPG key that matches your committer identity and your verified email address associated with your {% data variables.product.product_name %} account, then you can begin signing commits and signing tags. +If you're using a GPG key that matches your committer identity and your verified email address associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, then you can begin signing commits and signing tags. {% note %} diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md index 6ca535e0998a..e0a5f58353f4 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication.md @@ -8,11 +8,12 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - 2FA shortTitle: About 2FA --- -For {% data variables.product.product_name %}, the second form of authentication is a code that's generated by an application on your mobile device{% ifversion fpt %} or sent as a text message (SMS){% endif %}. After you enable 2FA, {% data variables.product.product_name %} generates an authentication code any time someone attempts to sign into your {% data variables.product.product_name %} account. The only way someone can sign into your account is if they know both your password and have access to the authentication code on your phone. +For {% data variables.product.product_name %}, the second form of authentication is a code that's generated by an application on your mobile device{% ifversion fpt or ghec %} or sent as a text message (SMS){% endif %}. After you enable 2FA, {% data variables.product.product_name %} generates an authentication code any time someone attempts to sign into your account on {% data variables.product.product_location %}. The only way someone can sign into your account is if they know both your password and have access to the authentication code on your phone. {% data reusables.two_fa.after-2fa-add-security-key %} @@ -26,7 +27,7 @@ For more information, see "[Accessing {% data variables.product.prodname_dotcom {% data reusables.two_fa.about-recovery-codes %} For more information, see "[Recovering your account if you lose your 2FA credentials](/articles/recovering-your-account-if-you-lose-your-2fa-credentials)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% warning %} @@ -38,6 +39,6 @@ For more information, see "[Accessing {% data variables.product.prodname_dotcom ## Requiring two-factor authentication in your organization -Organization owners can require that organization members{% ifversion fpt %}, billing managers,{% endif %} and outside collaborators use two-factor authentication to secure their personal accounts. For more information, see "[Requiring two-factor authentication in your organization](/articles/requiring-two-factor-authentication-in-your-organization)." +Organization owners can require that organization members{% ifversion fpt or ghec %}, billing managers,{% endif %} and outside collaborators use two-factor authentication to secure their personal accounts. For more information, see "[Requiring two-factor authentication in your organization](/articles/requiring-two-factor-authentication-in-your-organization)." {% data reusables.two_fa.auth_methods_2fa %} diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md index c7c8279150ed..02b84cbdc057 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md @@ -11,6 +11,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - 2FA shortTitle: Access GitHub with 2FA @@ -19,7 +20,7 @@ With two-factor authentication enabled, you'll need to provide an authentication ## Providing a 2FA code when signing in to the website -After you sign in to {% data variables.product.product_name %} using your password, you'll be prompted to provide an authentication code from {% ifversion fpt %}a text message or{% endif %} your TOTP app. +After you sign in to {% data variables.product.product_name %} using your password, you'll be prompted to provide an authentication code from {% ifversion fpt or ghec %}a text message or{% endif %} your TOTP app. {% data variables.product.product_name %} will only ask you to provide your 2FA authentication code again if you've logged out, are using a new device, or your session expires. @@ -29,7 +30,7 @@ If you chose to set up two-factor authentication using a TOTP application on you If you delete the mobile application after configuring two-factor authentication, you'll need to provide your recovery code to get access to your account. For more information, see "[Recovering your account if you lose your two-factor authentication credentials](/articles/recovering-your-account-if-you-lose-your-2fa-credentials)" -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Receiving a text message diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/changing-two-factor-authentication-delivery-methods-for-your-mobile-device.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/changing-two-factor-authentication-delivery-methods-for-your-mobile-device.md index c0a27c23ae6a..f829ec285de1 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/changing-two-factor-authentication-delivery-methods-for-your-mobile-device.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/changing-two-factor-authentication-delivery-methods-for-your-mobile-device.md @@ -8,6 +8,7 @@ redirect_from: - /github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa/changing-two-factor-authentication-delivery-methods-for-your-mobile-device versions: fpt: '*' + ghec: '*' topics: - 2FA shortTitle: Change 2FA delivery method diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication-recovery-methods.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication-recovery-methods.md index feac3bce3311..74cb493413fb 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication-recovery-methods.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication-recovery-methods.md @@ -13,6 +13,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - 2FA shortTitle: Configure 2FA recovery @@ -52,7 +53,7 @@ Once you use a recovery code to regain access to your account, it cannot be reus You can set up a security key as a secondary two-factor authentication method, and use the security key to regain access to your account. For more information, see "[Configuring two-factor authentication](/articles/configuring-two-factor-authentication#configuring-two-factor-authentication-using-a-security-key)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Setting a fallback authentication number diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md index ab544c93fc11..19166815e580 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md @@ -11,23 +11,24 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - 2FA shortTitle: Configure 2FA --- -You can configure two-factor authentication using a mobile app{% ifversion fpt %} or via text message{% endif %}. You can also add a security key. +You can configure two-factor authentication using a mobile app{% ifversion fpt or ghec %} or via text message{% endif %}. You can also add a security key. -We strongly recommend using a time-based one-time password (TOTP) application to configure 2FA.{% ifversion fpt %} TOTP applications are more reliable than SMS, especially for locations outside the United States.{% endif %} TOTP apps support the secure backup of your authentication codes in the cloud and can be restored if you lose access to your device. +We strongly recommend using a time-based one-time password (TOTP) application to configure 2FA.{% ifversion fpt or ghec %} TOTP applications are more reliable than SMS, especially for locations outside the United States.{% endif %} TOTP apps support the secure backup of your authentication codes in the cloud and can be restored if you lose access to your device. {% warning %} **Warning:** -- If you're a member{% ifversion fpt %}, billing manager,{% endif %} or outside collaborator to a private repository of an organization that requires two-factor authentication, you must leave the organization before you can disable 2FA on {% data variables.product.product_location %}. +- If you're a member{% ifversion fpt or ghec %}, billing manager,{% endif %} or outside collaborator to a private repository of an organization that requires two-factor authentication, you must leave the organization before you can disable 2FA on {% data variables.product.product_location %}. - If you disable 2FA, you will automatically lose access to the organization and any private forks you have of the organization's private repositories. To regain access to the organization and your forks, re-enable two-factor authentication and contact an organization owner. {% endwarning %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you're a member of an {% data variables.product.prodname_emu_enterprise %}, you cannot configure 2FA for your {% data variables.product.prodname_managed_user %} account. 2FA should be configured through your identity provider. @@ -57,7 +58,7 @@ A time-based one-time password (TOTP) application automatically generates an aut - Scan the QR code with your mobile device's app. After scanning, the app displays a six-digit code that you can enter on {% data variables.product.product_name %}. - If you can't scan the QR code, click **enter this text code** to see a code that you can manually enter in your TOTP app instead. ![Click enter this code](/assets/images/help/2fa/2fa_wizard_app_click_code.png) -7. The TOTP mobile application saves your {% data variables.product.product_name %} account and generates a new authentication code every few seconds. On {% data variables.product.product_name %}, type the code into the field under "Enter the six-digit code from the application". If your recovery codes are not automatically displayed, click **Continue**. +7. The TOTP mobile application saves your account on {% data variables.product.product_location %} and generates a new authentication code every few seconds. On {% data variables.product.product_name %}, type the code into the field under "Enter the six-digit code from the application". If your recovery codes are not automatically displayed, click **Continue**. ![TOTP enter code field](/assets/images/help/2fa/2fa_wizard_app_enter_code.png) {% data reusables.two_fa.save_your_recovery_codes_during_2fa_setup %} {%- else %} @@ -72,12 +73,12 @@ A time-based one-time password (TOTP) application automatically generates an aut - Scan the QR code with your mobile device's app. After scanning, the app displays a six-digit code that you can enter on {% data variables.product.product_name %}. - If you can't scan the QR code, click **enter this text code** to see a code you can copy and manually enter on {% data variables.product.product_name %} instead. ![Click enter this code](/assets/images/help/2fa/totp-click-enter-code.png) -9. The TOTP mobile application saves your {% data variables.product.product_name %} account and generates a new authentication code every few seconds. On {% data variables.product.product_name %}, on the 2FA page, type the code and click **Enable**. +9. The TOTP mobile application saves your account on {% data variables.product.product_location %} and generates a new authentication code every few seconds. On {% data variables.product.product_name %}, on the 2FA page, type the code and click **Enable**. ![TOTP Enable field](/assets/images/help/2fa/totp-enter-code.png) {%- endif %} {% data reusables.two_fa.test_2fa_immediately %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Configuring two-factor authentication using text messages @@ -113,9 +114,9 @@ Before using this method, be sure that you can receive text messages. Carrier ra On most devices and browsers, you can use a physical security key over USB or NFC. Some browsers can use the fingerprint reader, facial recognition, or password/PIN on your device as a security key. -Authentication with a security key is *secondary* to authentication with a TOTP application{% ifversion fpt %} or a text message{% endif %}. If you lose your security key, you'll still be able to use your phone's code to sign in. +Authentication with a security key is *secondary* to authentication with a TOTP application{% ifversion fpt or ghec %} or a text message{% endif %}. If you lose your security key, you'll still be able to use your phone's code to sign in. -1. You must have already configured 2FA via a TOTP mobile app{% ifversion fpt %} or via SMS{% endif %}. +1. You must have already configured 2FA via a TOTP mobile app{% ifversion fpt or ghec %} or via SMS{% endif %}. 2. Ensure that you have a WebAuthn compatible security key inserted into your computer. {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.security %} diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md index 4e7a0134143d..8a1985960c73 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported.md @@ -7,6 +7,7 @@ redirect_from: - /github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa/countries-where-sms-authentication-is-supported versions: fpt: '*' + ghec: '*' topics: - 2FA shortTitle: Countries supporting SMS diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/disabling-two-factor-authentication-for-your-personal-account.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/disabling-two-factor-authentication-for-your-personal-account.md index 5e93dabe4544..56e2deb7d3ad 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/disabling-two-factor-authentication-for-your-personal-account.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/disabling-two-factor-authentication-for-your-personal-account.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - 2FA shortTitle: Disable 2FA @@ -16,7 +17,7 @@ We strongly recommend using two-factor authentication to secure your account. If {% warning %} -**Warning:** If you're a member{% ifversion fpt %}, billing manager,{% endif %} or outside collaborator to a public repository of an organization that requires two-factor authentication and you disable 2FA, you'll be automatically removed from the organization, and you'll lose your access to their repositories. To regain access to the organization, re-enable two-factor authentication and contact an organization owner. +**Warning:** If you're a member{% ifversion fpt or ghec %}, billing manager,{% endif %} or outside collaborator to a public repository of an organization that requires two-factor authentication and you disable 2FA, you'll be automatically removed from the organization, and you'll lose your access to their repositories. To regain access to the organization, re-enable two-factor authentication and contact an organization owner. {% endwarning %} diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md index b77bd0a04e32..92b4805d9b50 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/index.md @@ -1,6 +1,6 @@ --- title: Securing your account with two-factor authentication (2FA) -intro: 'You can set up your {% data variables.product.product_name %} account to require an authentication code in addition to your password when you sign in.' +intro: 'You can set up your account on {% data variables.product.product_location %} to require an authentication code in addition to your password when you sign in.' redirect_from: - /categories/84/articles/ - /categories/two-factor-authentication-2fa/ @@ -9,6 +9,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - 2FA children: diff --git a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md index a0da49e8b1df..9978b188ca10 100644 --- a/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md +++ b/content/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials.md @@ -10,11 +10,12 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - 2FA shortTitle: Recover an account with 2FA --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% warning %} @@ -28,7 +29,7 @@ shortTitle: Recover an account with 2FA Use one of your recovery codes to automatically regain entry into your account. You may have saved your recovery codes to a password manager or your computer's downloads folder. The default filename for recovery codes is `github-recovery-codes.txt`. For more information about recovery codes, see "[Configuring two-factor authentication recovery methods](/articles/configuring-two-factor-authentication-recovery-methods#downloading-your-two-factor-authentication-recovery-codes)." -{% data reusables.two_fa.username-password %}{% ifversion fpt %} +{% data reusables.two_fa.username-password %}{% ifversion fpt or ghec %} 2. Under "Having Problems?", click **Enter a two-factor recovery code**. ![Link to use a recovery code](/assets/images/help/2fa/2fa-recovery-code-link.png){% else %} 2. On the 2FA page, under "Don't have your phone?", click **Enter a two-factor recovery code**. @@ -36,7 +37,7 @@ Use one of your recovery codes to automatically regain entry into your account. 3. Type one of your recovery codes, then click **Verify**. ![Field to type a recovery code and Verify button](/assets/images/help/2fa/2fa-type-verify-recovery-code.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Authenticating with a fallback number If you lose access to your primary TOTP app or phone number, you can provide a two-factor authentication code sent to your fallback number to automatically regain access to your account. @@ -46,7 +47,7 @@ If you lose access to your primary TOTP app or phone number, you can provide a t If you configured two-factor authentication using a security key, you can use your security key as a secondary authentication method to automatically regain access to your account. For more information, see "[Configuring two-factor authentication](/articles/configuring-two-factor-authentication#configuring-two-factor-authentication-using-a-security-key)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Authenticating with a verified device, SSH token, or personal access token If you know your {% data variables.product.product_name %} password but don't have the two-factor authentication credentials or your two-factor authentication recovery codes, you can have a one-time password sent to your verified email address to begin the verification process and regain access to your account. @@ -84,7 +85,7 @@ You can use your two-factor authentication credentials or two-factor authenticat {% endwarning %} -If you lose access to the two-factor authentication methods for your {% data variables.product.product_name %} account, you can retrieve your account recovery token from a partner recovery provider and ask {% data variables.product.prodname_dotcom %} Support to review it. +If you lose access to the two-factor authentication methods for your account on {% data variables.product.product_location %}, you can retrieve your account recovery token from a partner recovery provider and ask {% data variables.product.prodname_dotcom %} Support to review it. If you don't have access to your two-factor authentication methods or recovery codes and you've stored an account recovery token with Facebook using Recover Accounts Elsewhere, you may be able to use your token to regain access to your account. @@ -99,7 +100,7 @@ If you're unable to regain access to your account, generate a one-time password 1. On Facebook, navigate to your [Security Settings](https://www.facebook.com/settings?tab=security), then click **Recover Accounts Elsewhere**. ![Facebook security settings page with Recover Accounts Elsewhere link](/assets/images/help/settings/security-facebook-security-settings-page.png) -2. Click the recovery token associated with your {% data variables.product.product_name %} account. +2. Click the recovery token associated with your account on {% data variables.product.product_location %}. ![List of recovery tokens stored on Facebook](/assets/images/help/settings/security-github-rae-token-on-facebook.png) 3. To redeem your account recovery token, click **Recover This Account**. A new window will open, returning you to {% data variables.product.product_name %}. ![Modal box with information about your recovery token and Recover This Account button](/assets/images/help/settings/security-recover-account-facebook.png) diff --git a/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md b/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md index 9b2d39cd2d36..e643302eb52e 100644 --- a/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md +++ b/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management @@ -19,9 +20,9 @@ shortTitle: Check verification status 1. On {% data variables.product.product_name %}, navigate to your pull request. {% data reusables.repositories.review-pr-commits %} -3. Next to your commit's abbreviated commit hash, there is a box that shows whether your commit signature is verified{% ifversion fpt %}, partially verified,{% endif %} or unverified. +3. Next to your commit's abbreviated commit hash, there is a box that shows whether your commit signature is verified{% ifversion fpt or ghec %}, partially verified,{% endif %} or unverified. ![Signed commit](/assets/images/help/commits/gpg-signed-commit-verified-without-details.png) -4. To view more detailed information about the commit signature, click **Verified**{% ifversion fpt %}, **Partially verified**,{% endif %} or **Unverified**. +4. To view more detailed information about the commit signature, click **Verified**{% ifversion fpt or ghec %}, **Partially verified**,{% endif %} or **Unverified**. ![Verified signed commit](/assets/images/help/commits/gpg-signed-commit_verified_details.png) ## Checking your tag signature verification status @@ -30,9 +31,9 @@ shortTitle: Check verification status {% data reusables.repositories.releases %} 2. At the top of the Releases page, click **Tags**. ![Tags page](/assets/images/help/releases/tags-list.png) -3. Next to your tag description, there is a box that shows whether your tag signature is verified{% ifversion fpt %}, partially verified,{% endif %} or unverified. +3. Next to your tag description, there is a box that shows whether your tag signature is verified{% ifversion fpt or ghec %}, partially verified,{% endif %} or unverified. ![verified tag signature](/assets/images/help/commits/gpg-signed-tag-verified.png) -4. To view more detailed information about the tag signature, click **Verified**{% ifversion fpt %}, **Partially verified**,{% endif %} or **Unverified**. +4. To view more detailed information about the tag signature, click **Verified**{% ifversion fpt or ghec %}, **Partially verified**,{% endif %} or **Unverified**. ![Verified signed tag](/assets/images/help/commits/gpg-signed-tag-verified-details.png) ## Further reading diff --git a/content/authentication/troubleshooting-commit-signature-verification/index.md b/content/authentication/troubleshooting-commit-signature-verification/index.md index 72958651db90..7d4c3126b850 100644 --- a/content/authentication/troubleshooting-commit-signature-verification/index.md +++ b/content/authentication/troubleshooting-commit-signature-verification/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/troubleshooting-commit-signature-verification/updating-an-expired-gpg-key.md b/content/authentication/troubleshooting-commit-signature-verification/updating-an-expired-gpg-key.md index 8bb851b96a81..6af925988cac 100644 --- a/content/authentication/troubleshooting-commit-signature-verification/updating-an-expired-gpg-key.md +++ b/content/authentication/troubleshooting-commit-signature-verification/updating-an-expired-gpg-key.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management diff --git a/content/authentication/troubleshooting-commit-signature-verification/using-a-verified-email-address-in-your-gpg-key.md b/content/authentication/troubleshooting-commit-signature-verification/using-a-verified-email-address-in-your-gpg-key.md index 7e62270da404..d478bc085715 100644 --- a/content/authentication/troubleshooting-commit-signature-verification/using-a-verified-email-address-in-your-gpg-key.md +++ b/content/authentication/troubleshooting-commit-signature-verification/using-a-verified-email-address-in-your-gpg-key.md @@ -9,12 +9,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Identity - Access management shortTitle: Use verified email in GPG key --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you need to verify your GitHub email address, see "[Verifying your email address](/articles/verifying-your-email-address/)." {% endif %}If you need to update or add an email address to your GPG key, see "[Associating an email with your GPG key](/articles/associating-an-email-with-your-gpg-key)." Commits and tags may contain several email addresses. For commits, there is the author — the person who wrote the code — and the committer — the person who added the commit to the tree. When signing a commit with Git, whether it be during a merge, cherry-pick, or normal `git commit`, the committer email address will be yours, even if the author email address isn't. Tags are more simple: The tagger email address is always the user who created the tag. diff --git a/content/authentication/troubleshooting-ssh/deleted-or-missing-ssh-keys.md b/content/authentication/troubleshooting-ssh/deleted-or-missing-ssh-keys.md index 93ba91d79f6c..f95d6d7f9946 100644 --- a/content/authentication/troubleshooting-ssh/deleted-or-missing-ssh-keys.md +++ b/content/authentication/troubleshooting-ssh/deleted-or-missing-ssh-keys.md @@ -7,6 +7,7 @@ redirect_from: - /github/authenticating-to-github/troubleshooting-ssh/deleted-or-missing-ssh-keys versions: fpt: '*' + ghec: '*' topics: - SSH shortTitle: Deleted or missing SSH keys diff --git a/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md b/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md index ff2a5f952e13..812c79ca2d46 100644 --- a/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md +++ b/content/authentication/troubleshooting-ssh/error-agent-admitted-failure-to-sign.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Agent failure to sign diff --git a/content/authentication/troubleshooting-ssh/error-bad-file-number.md b/content/authentication/troubleshooting-ssh/error-bad-file-number.md index 301d6f5706ad..5232b994dc32 100644 --- a/content/authentication/troubleshooting-ssh/error-bad-file-number.md +++ b/content/authentication/troubleshooting-ssh/error-bad-file-number.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH --- @@ -42,7 +43,7 @@ $ git clone https://{% data variables.command_line.codeblock %}/username~/.ssh/id_rsa git@{% data variables.command_line.codeblock > provide shell access. ``` -The *username* in the response is the {% data variables.product.product_name %} account that the key is currently attached to. If the response looks something like "username/repo", the key has been attached to a repository as a [*deploy key*](/guides/managing-deploy-keys#deploy-keys). +The *username* in the response is the account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} that the key is currently attached to. If the response looks something like "username/repo", the key has been attached to a repository as a [*deploy key*](/guides/managing-deploy-keys#deploy-keys). To force SSH to use only the key provided on the command line, use `-o` to add the `IdentitiesOnly=yes` option: diff --git a/content/authentication/troubleshooting-ssh/error-permission-denied-publickey.md b/content/authentication/troubleshooting-ssh/error-permission-denied-publickey.md index d3c3416dfef9..407565963fee 100644 --- a/content/authentication/troubleshooting-ssh/error-permission-denied-publickey.md +++ b/content/authentication/troubleshooting-ssh/error-permission-denied-publickey.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Permission denied (publickey) @@ -32,7 +33,7 @@ $ ssh -vT git@{% data variables.command_line.codeblock %} > debug1: Connecting to {% data variables.command_line.codeblock %} port 22. ``` -The connection should be made on port 22{% ifversion fpt %}, unless you're overriding settings to use [SSH over HTTPS](/articles/using-ssh-over-the-https-port){% endif %}. +The connection should be made on port 22{% ifversion fpt or ghec %}, unless you're overriding settings to use [SSH over HTTPS](/articles/using-ssh-over-the-https-port){% endif %}. ## Always use the "git" user diff --git a/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-other-user.md b/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-other-user.md index a8445fa12c21..6069472e62f7 100644 --- a/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-other-user.md +++ b/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-other-user.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Permission denied other-user diff --git a/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-userother-repo.md b/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-userother-repo.md index 29951d3d3dfa..6c4f7c1cc6d9 100644 --- a/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-userother-repo.md +++ b/content/authentication/troubleshooting-ssh/error-permission-to-userrepo-denied-to-userother-repo.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Permission denied other-repo diff --git a/content/authentication/troubleshooting-ssh/error-ssh-add-illegal-option----k.md b/content/authentication/troubleshooting-ssh/error-ssh-add-illegal-option----k.md index a1e3f0c9bd9d..067e2d6ca040 100644 --- a/content/authentication/troubleshooting-ssh/error-ssh-add-illegal-option----k.md +++ b/content/authentication/troubleshooting-ssh/error-ssh-add-illegal-option----k.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: 'ssh-add: illegal option -- K' diff --git a/content/authentication/troubleshooting-ssh/error-ssl-certificate-problem-verify-that-the-ca-cert-is-ok.md b/content/authentication/troubleshooting-ssh/error-ssl-certificate-problem-verify-that-the-ca-cert-is-ok.md index 21fcf28e2e8c..79cfaae076f2 100644 --- a/content/authentication/troubleshooting-ssh/error-ssl-certificate-problem-verify-that-the-ca-cert-is-ok.md +++ b/content/authentication/troubleshooting-ssh/error-ssl-certificate-problem-verify-that-the-ca-cert-is-ok.md @@ -7,6 +7,7 @@ redirect_from: - /github/authenticating-to-github/troubleshooting-ssh/error-ssl-certificate-problem-verify-that-the-ca-cert-is-ok versions: fpt: '*' + ghec: '*' topics: - SSH shortTitle: SSL certificate problem diff --git a/content/authentication/troubleshooting-ssh/error-unknown-key-type.md b/content/authentication/troubleshooting-ssh/error-unknown-key-type.md index 7ab3b8652d6f..1989b6c6226c 100644 --- a/content/authentication/troubleshooting-ssh/error-unknown-key-type.md +++ b/content/authentication/troubleshooting-ssh/error-unknown-key-type.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '>=3.2' ghae: 'next' + ghec: '*' topics: - SSH redirect_from: diff --git a/content/authentication/troubleshooting-ssh/error-were-doing-an-ssh-key-audit.md b/content/authentication/troubleshooting-ssh/error-were-doing-an-ssh-key-audit.md index 28d01ee3a583..8dcc360c5356 100644 --- a/content/authentication/troubleshooting-ssh/error-were-doing-an-ssh-key-audit.md +++ b/content/authentication/troubleshooting-ssh/error-were-doing-an-ssh-key-audit.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: SSH key audit diff --git a/content/authentication/troubleshooting-ssh/index.md b/content/authentication/troubleshooting-ssh/index.md index 3bcc42bcae39..49ff2d76abfd 100644 --- a/content/authentication/troubleshooting-ssh/index.md +++ b/content/authentication/troubleshooting-ssh/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH children: diff --git a/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md b/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md index a85fde28f4b9..e9f54aa68bce 100644 --- a/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md +++ b/content/authentication/troubleshooting-ssh/recovering-your-ssh-key-passphrase.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - SSH shortTitle: Recover SSH key passphrase diff --git a/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md b/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md index 7b09299a8540..8a726c848336 100644 --- a/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md +++ b/content/authentication/troubleshooting-ssh/using-ssh-over-the-https-port.md @@ -7,6 +7,7 @@ redirect_from: - /github/authenticating-to-github/troubleshooting-ssh/using-ssh-over-the-https-port versions: fpt: '*' + ghec: '*' topics: - SSH shortTitle: Use SSH over HTTPS port diff --git a/content/billing/index.md b/content/billing/index.md index 925d44891462..f6f06cdf3697 100644 --- a/content/billing/index.md +++ b/content/billing/index.md @@ -1,12 +1,13 @@ --- title: Billing and payments for GitHub shortTitle: Billing and payments -intro: '{% ifversion fpt %}{% data variables.product.product_name %} offers free and paid products for every account. You can upgrade, downgrade, and view pending changes to your account''s subscription at any time.{% elsif ghes or ghae %}{% data variables.product.company_short %} bills for your enterprise members'' {% ifversion ghae %}usage of {% data variables.product.product_name %}{% elsif ghes %} licence seats for {% data variables.product.product_name %}{% ifversion ghes > 3.0 %} and any additional services that you purchase{% endif %}{% endif %}.{% endif %}' +intro: '{% ifversion fpt %}{% data variables.product.product_name %} offers free and paid products for every account. You can upgrade, downgrade, and view pending changes to your account''s subscription at any time.{% elsif ghec or ghes or ghae %}{% data variables.product.company_short %} bills for your enterprise members'' {% ifversion ghec or ghae %}usage of {% data variables.product.product_name %}{% elsif ghes %} licence seats for {% data variables.product.product_name %}{% ifversion ghes > 3.0 %} and any additional services that you purchase{% endif %}{% endif %}.{% endif %}' redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github - /categories/setting-up-and-managing-billing-and-payments-on-github versions: fpt: '*' + ghec: '*' ghes: '*' ghae: '*' children: diff --git a/content/billing/managing-billing-for-git-large-file-storage/about-billing-for-git-large-file-storage.md b/content/billing/managing-billing-for-git-large-file-storage/about-billing-for-git-large-file-storage.md index 4188aabea484..88fa2f5d1a55 100644 --- a/content/billing/managing-billing-for-git-large-file-storage/about-billing-for-git-large-file-storage.md +++ b/content/billing/managing-billing-for-git-large-file-storage/about-billing-for-git-large-file-storage.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-git-large-file-storage/about-billing-for-git-large-file-storage versions: fpt: '*' + ghec: '*' type: overview topics: - LFS diff --git a/content/billing/managing-billing-for-git-large-file-storage/downgrading-git-large-file-storage.md b/content/billing/managing-billing-for-git-large-file-storage/downgrading-git-large-file-storage.md index 6e5fafaeb05a..4b4d7bf20588 100644 --- a/content/billing/managing-billing-for-git-large-file-storage/downgrading-git-large-file-storage.md +++ b/content/billing/managing-billing-for-git-large-file-storage/downgrading-git-large-file-storage.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-git-large-file-storage/downgrading-git-large-file-storage versions: fpt: '*' + ghec: '*' type: how_to topics: - Downgrades diff --git a/content/billing/managing-billing-for-git-large-file-storage/index.md b/content/billing/managing-billing-for-git-large-file-storage/index.md index 4c16db5b53f3..53c2336e454d 100644 --- a/content/billing/managing-billing-for-git-large-file-storage/index.md +++ b/content/billing/managing-billing-for-git-large-file-storage/index.md @@ -10,6 +10,7 @@ redirect_from: - /articles/managing-billing-for-git-large-file-storage versions: fpt: '*' + ghec: '*' children: - /about-billing-for-git-large-file-storage - /viewing-your-git-large-file-storage-usage diff --git a/content/billing/managing-billing-for-git-large-file-storage/upgrading-git-large-file-storage.md b/content/billing/managing-billing-for-git-large-file-storage/upgrading-git-large-file-storage.md index 49d119a43eb7..a7eac92c8be8 100644 --- a/content/billing/managing-billing-for-git-large-file-storage/upgrading-git-large-file-storage.md +++ b/content/billing/managing-billing-for-git-large-file-storage/upgrading-git-large-file-storage.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-git-large-file-storage/upgrading-git-large-file-storage versions: fpt: '*' + ghec: '*' type: how_to topics: - LFS diff --git a/content/billing/managing-billing-for-git-large-file-storage/viewing-your-git-large-file-storage-usage.md b/content/billing/managing-billing-for-git-large-file-storage/viewing-your-git-large-file-storage-usage.md index 8ccc8a35c5ca..168f3b187ead 100644 --- a/content/billing/managing-billing-for-git-large-file-storage/viewing-your-git-large-file-storage-usage.md +++ b/content/billing/managing-billing-for-git-large-file-storage/viewing-your-git-large-file-storage-usage.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-git-large-file-storage/viewing-your-git-large-file-storage-usage versions: fpt: '*' + ghec: '*' type: how_to topics: - LFS diff --git a/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md b/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md index fe35c35b3e6b..61277566aa29 100644 --- a/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md +++ b/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/about-billing-for-github-actions versions: fpt: '*' + ghec: '*' type: overview topics: - Actions @@ -19,7 +20,9 @@ shortTitle: Billing for GitHub Actions {% data reusables.github-actions.actions-spending-limit-brief %} For more information, see "[About spending limits](#about-spending-limits)." -If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_actions %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +{% ifversion ghec %} +If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_actions %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." +{% endif %} Minutes reset every month, while storage usage does not. diff --git a/content/billing/managing-billing-for-github-actions/index.md b/content/billing/managing-billing-for-github-actions/index.md index 3e516a2f0a2c..9bc0f535c5f8 100644 --- a/content/billing/managing-billing-for-github-actions/index.md +++ b/content/billing/managing-billing-for-github-actions/index.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions versions: fpt: '*' + ghec: '*' children: - /about-billing-for-github-actions - /viewing-your-github-actions-usage diff --git a/content/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions.md b/content/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions.md index b24066e4c3c1..776fd7fa16be 100644 --- a/content/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions.md +++ b/content/billing/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/managing-your-spending-limit-for-github-actions versions: fpt: '*' + ghec: '*' type: how_to topics: - Actions @@ -24,7 +25,9 @@ shortTitle: Spending limits for Actions {% data reusables.actions.actions-packages-set-spending-limit %} For more information about pricing for {% data variables.product.prodname_actions %} usage, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)." -If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_actions %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +{% ifversion ghec %} +If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_actions %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." +{% endif %} As soon as you set a spending limit other than $0, you will be responsible for any existing overages in the current billing period. For example, if your organization uses {% data variables.product.prodname_team %}, does not allow overages, and creates workflow artifacts that increase your storage usage for the month from 1.9GB to 2.1GB, you will use slightly more storage than the 2GB your product includes. diff --git a/content/billing/managing-billing-for-github-actions/viewing-your-github-actions-usage.md b/content/billing/managing-billing-for-github-actions/viewing-your-github-actions-usage.md index a6f9d90c632d..68718ff91ff1 100644 --- a/content/billing/managing-billing-for-github-actions/viewing-your-github-actions-usage.md +++ b/content/billing/managing-billing-for-github-actions/viewing-your-github-actions-usage.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/viewing-your-github-actions-usage versions: fpt: '*' + ghec: '*' type: how_to topics: - Actions diff --git a/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md b/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md index 8c77e1c28f20..d86e6d4532d6 100644 --- a/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md +++ b/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md @@ -1,6 +1,6 @@ --- title: About billing for GitHub Advanced Security -intro: 'If you want to use {% data variables.product.prodname_GH_advanced_security %} features{% ifversion fpt %} in a private or internal repository{% endif %}, you need a license.{% ifversion fpt %} These features are available free of charge for public repositories on {% data variables.product.prodname_dotcom_the_website %}.{% endif %}' +intro: 'If you want to use {% data variables.product.prodname_GH_advanced_security %} features{% ifversion fpt or ghec %} in a private or internal repository{% endif %}, you need a license.{% ifversion fpt or ghec %} These features are available free of charge for public repositories on {% data variables.product.prodname_dotcom_the_website %}.{% endif %}' product: '{% data reusables.gated-features.ghas %}' redirect_from: - /admin/advanced-security/about-licensing-for-github-advanced-security @@ -10,6 +10,7 @@ redirect_from: versions: fpt: '*' ghes: '>=3.1' + ghec: '*' type: overview topics: - Advanced Security @@ -20,7 +21,7 @@ shortTitle: Advanced Security billing ## About billing for {% data variables.product.prodname_GH_advanced_security %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you want to use {% data variables.product.prodname_GH_advanced_security %} features on any repository apart from a public repository on {% data variables.product.prodname_dotcom_the_website %}, you will need a license. For more information about {% data variables.product.prodname_GH_advanced_security %}, see "[About {% data variables.product.prodname_GH_advanced_security %}](/github/getting-started-with-github/about-github-advanced-security)." @@ -30,7 +31,7 @@ You can make extra features for code security available to users by buying and u {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% data reusables.advanced-security.license-overview %} @@ -42,15 +43,15 @@ To discuss licensing {% data variables.product.prodname_GH_advanced_security %} {% data reusables.advanced-security.about-committer-numbers-ghec-ghes %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% data reusables.advanced-security.managing-license-usage-ghec-ghes %} {% endif %} -You can enforce policies to allow or disallow the use of {% data variables.product.prodname_advanced_security %} by organizations owned by your enterprise account. For more information, see "{% ifversion ghes %}[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise){% elsif fpt or ghae %}[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise-account){% endif %}." +You can enforce policies to allow or disallow the use of {% data variables.product.prodname_advanced_security %} by organizations owned by your enterprise account. For more information, see "[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise]({% ifversion fpt %}/enterprise-cloud@latest/{% endif %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} For more information on viewing license usage, see "[Viewing your {% data variables.product.prodname_GH_advanced_security %} usage](/billing/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage)." diff --git a/content/billing/managing-billing-for-github-advanced-security/index.md b/content/billing/managing-billing-for-github-advanced-security/index.md index 5654a13c98fc..031aff16e52e 100644 --- a/content/billing/managing-billing-for-github-advanced-security/index.md +++ b/content/billing/managing-billing-for-github-advanced-security/index.md @@ -9,6 +9,7 @@ redirect_from: versions: fpt: '*' ghes: '>=3.1' + ghec: '*' children: - /about-billing-for-github-advanced-security - /viewing-your-github-advanced-security-usage diff --git a/content/billing/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md b/content/billing/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md index 4ec4cbe80196..5271dd1dea58 100644 --- a/content/billing/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md +++ b/content/billing/managing-billing-for-github-advanced-security/viewing-your-github-advanced-security-usage.md @@ -12,6 +12,7 @@ redirect_from: versions: ghes: '>=3.1' fpt: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -27,7 +28,7 @@ shortTitle: View Advanced Security usage You can check how many seats your license includes and how many of them are currently used. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} diff --git a/content/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces.md b/content/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces.md index b69f9ed30d57..7b81635e8fb5 100644 --- a/content/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces.md +++ b/content/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces.md @@ -5,6 +5,7 @@ intro: 'View pricing and see how to manage {% data variables.product.prodname_co permissions: 'To manage billing for Codespaces for an organization, you must be an organization owner or a billing manager.' versions: fpt: '*' + ghec: '*' type: overview product: '{% data reusables.gated-features.codespaces %}' topics: @@ -33,7 +34,9 @@ topics: Your {% data variables.product.prodname_codespaces %} usage shares your account's existing billing date, payment method, and receipt. {% data reusables.dotcom_billing.view-all-subscriptions %} -If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_codespaces %} usage. For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +{% ifversion ghec %} +If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_codespaces %} usage. For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." +{% endif %} {% data reusables.dotcom_billing.pricing_cal %} diff --git a/content/billing/managing-billing-for-github-codespaces/index.md b/content/billing/managing-billing-for-github-codespaces/index.md index 4c43ae6e8eaf..da1ee60023c3 100644 --- a/content/billing/managing-billing-for-github-codespaces/index.md +++ b/content/billing/managing-billing-for-github-codespaces/index.md @@ -4,6 +4,7 @@ shortTitle: Codespaces intro: 'You can view your usage and set a spending limit for {% data variables.product.prodname_codespaces %}.' versions: fpt: '*' + ghec: '*' product: '{% data reusables.gated-features.codespaces %}' children: - /about-billing-for-codespaces diff --git a/content/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces.md b/content/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces.md index cd3cb34c5398..5dc28210fff6 100644 --- a/content/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces.md +++ b/content/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces.md @@ -3,6 +3,7 @@ title: Managing spending limits for Codespaces intro: 'You can set a spending limit for {% data variables.product.prodname_codespaces %} usage.' versions: fpt: '*' + ghec: '*' type: how_to product: '{% data reusables.gated-features.codespaces %}' topics: @@ -22,8 +23,10 @@ Once you've reached your spending limit, your organization or repository will no For more information about pricing for {% data variables.product.prodname_codespaces %} usage, see "[About billing for {% data variables.product.prodname_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-codespaces)." +{% ifversion ghec %} ## Using your Azure Subscription -If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_codespaces %} usage. For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_codespaces %} usage. For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." +{% endif %} ## Managing the spending limit for {% data variables.product.prodname_codespaces %} for your organization diff --git a/content/billing/managing-billing-for-github-codespaces/viewing-your-codespaces-usage.md b/content/billing/managing-billing-for-github-codespaces/viewing-your-codespaces-usage.md index 7578cc4d923f..9a8de62e3c6e 100644 --- a/content/billing/managing-billing-for-github-codespaces/viewing-your-codespaces-usage.md +++ b/content/billing/managing-billing-for-github-codespaces/viewing-your-codespaces-usage.md @@ -6,6 +6,7 @@ permissions: 'To manage billing for Codespaces for an organization, you must be product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: overview topics: - Codespaces diff --git a/content/billing/managing-billing-for-github-marketplace-apps/about-billing-for-github-marketplace.md b/content/billing/managing-billing-for-github-marketplace-apps/about-billing-for-github-marketplace.md index 18ff8246e4cd..1740f078cf9c 100644 --- a/content/billing/managing-billing-for-github-marketplace-apps/about-billing-for-github-marketplace.md +++ b/content/billing/managing-billing-for-github-marketplace-apps/about-billing-for-github-marketplace.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-marketplace-apps/about-billing-for-github-marketplace versions: fpt: '*' + ghec: '*' type: overview topics: - Marketplace diff --git a/content/billing/managing-billing-for-github-marketplace-apps/canceling-a-github-marketplace-app.md b/content/billing/managing-billing-for-github-marketplace-apps/canceling-a-github-marketplace-app.md index 38f078ca88be..023cffe805d7 100644 --- a/content/billing/managing-billing-for-github-marketplace-apps/canceling-a-github-marketplace-app.md +++ b/content/billing/managing-billing-for-github-marketplace-apps/canceling-a-github-marketplace-app.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-marketplace-apps/canceling-a-github-marketplace-app versions: fpt: '*' + ghec: '*' type: how_to topics: - Cancellation diff --git a/content/billing/managing-billing-for-github-marketplace-apps/downgrading-the-billing-plan-for-a-github-marketplace-app.md b/content/billing/managing-billing-for-github-marketplace-apps/downgrading-the-billing-plan-for-a-github-marketplace-app.md index f3dbe3a4340c..1a1538c050c9 100644 --- a/content/billing/managing-billing-for-github-marketplace-apps/downgrading-the-billing-plan-for-a-github-marketplace-app.md +++ b/content/billing/managing-billing-for-github-marketplace-apps/downgrading-the-billing-plan-for-a-github-marketplace-app.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-marketplace-apps/downgrading-the-billing-plan-for-a-github-marketplace-app versions: fpt: '*' + ghec: '*' type: how_to topics: - Downgrades diff --git a/content/billing/managing-billing-for-github-marketplace-apps/index.md b/content/billing/managing-billing-for-github-marketplace-apps/index.md index c5f5ff73ba05..54af3638bd2f 100644 --- a/content/billing/managing-billing-for-github-marketplace-apps/index.md +++ b/content/billing/managing-billing-for-github-marketplace-apps/index.md @@ -9,6 +9,7 @@ redirect_from: - /articles/managing-billing-for-github-marketplace-apps versions: fpt: '*' + ghec: '*' children: - /about-billing-for-github-marketplace - /upgrading-the-billing-plan-for-a-github-marketplace-app diff --git a/content/billing/managing-billing-for-github-marketplace-apps/upgrading-the-billing-plan-for-a-github-marketplace-app.md b/content/billing/managing-billing-for-github-marketplace-apps/upgrading-the-billing-plan-for-a-github-marketplace-app.md index dfd7bde67288..7b7c1482cf7c 100644 --- a/content/billing/managing-billing-for-github-marketplace-apps/upgrading-the-billing-plan-for-a-github-marketplace-app.md +++ b/content/billing/managing-billing-for-github-marketplace-apps/upgrading-the-billing-plan-for-a-github-marketplace-app.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-marketplace-apps/upgrading-the-billing-plan-for-a-github-marketplace-app versions: fpt: '*' + ghec: '*' type: how_to topics: - Marketplace diff --git a/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md b/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md index 0b3ad6f86d73..3cba501e379e 100644 --- a/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md +++ b/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages/about-billing-for-github-packages versions: fpt: '*' + ghec: '*' type: overview topics: - Packages @@ -25,7 +26,9 @@ shortTitle: About billing {% endnote %} -If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_registry %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +{% ifversion ghec %} +If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_registry %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." +{% endif %} Data transfer resets every month, while storage usage does not. diff --git a/content/billing/managing-billing-for-github-packages/index.md b/content/billing/managing-billing-for-github-packages/index.md index 39b87e180f62..fd3ed07f0b9f 100644 --- a/content/billing/managing-billing-for-github-packages/index.md +++ b/content/billing/managing-billing-for-github-packages/index.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages versions: fpt: '*' + ghec: '*' children: - /about-billing-for-github-packages - /viewing-your-github-packages-usage diff --git a/content/billing/managing-billing-for-github-packages/managing-your-spending-limit-for-github-packages.md b/content/billing/managing-billing-for-github-packages/managing-your-spending-limit-for-github-packages.md index 3af7755c863f..f90a381ca3fe 100644 --- a/content/billing/managing-billing-for-github-packages/managing-your-spending-limit-for-github-packages.md +++ b/content/billing/managing-billing-for-github-packages/managing-your-spending-limit-for-github-packages.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages/managing-your-spending-limit-for-github-packages versions: fpt: '*' + ghec: '*' type: how_to topics: - Enterprise @@ -24,7 +25,9 @@ shortTitle: Your spending limit {% data reusables.actions.actions-packages-set-spending-limit %} For more information about pricing for {% data variables.product.prodname_registry %} usage, see "[About billing for {% data variables.product.prodname_registry %}](/billing/managing-billing-for-github-packages/about-billing-for-github-packages)." -If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_registry %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +{% ifversion ghec %} +If you purchased {% data variables.product.prodname_enterprise %} through a Microsoft Enterprise Agreement, you can connect your Azure Subscription ID to your enterprise account to enable and pay for {% data variables.product.prodname_registry %} usage beyond the amounts including with your account. For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." +{% endif %} As soon as you set a spending limit other than $0, you will be responsible for any existing overages in the current billing period. For example, if your organization uses {% data variables.product.prodname_team %}, does not allow overages, and publishes a new version of a private package that increases your storage usage for the month from 1.9GB to 2.1GB, publishing the version will use slightly more than the 2GB your product includes. diff --git a/content/billing/managing-billing-for-github-packages/viewing-your-github-packages-usage.md b/content/billing/managing-billing-for-github-packages/viewing-your-github-packages-usage.md index 8d6871fa3c24..d9ecd58eb4d8 100644 --- a/content/billing/managing-billing-for-github-packages/viewing-your-github-packages-usage.md +++ b/content/billing/managing-billing-for-github-packages/viewing-your-github-packages-usage.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-packages/viewing-your-github-packages-usage versions: fpt: '*' + ghec: '*' type: how_to topics: - Enterprise diff --git a/content/billing/managing-billing-for-github-sponsors/about-billing-for-github-sponsors.md b/content/billing/managing-billing-for-github-sponsors/about-billing-for-github-sponsors.md index dd3b7ee6a7f2..75317f43155b 100644 --- a/content/billing/managing-billing-for-github-sponsors/about-billing-for-github-sponsors.md +++ b/content/billing/managing-billing-for-github-sponsors/about-billing-for-github-sponsors.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-sponsors/about-billing-for-github-sponsors versions: fpt: '*' + ghec: '*' type: overview topics: - Sponsors diff --git a/content/billing/managing-billing-for-github-sponsors/downgrading-a-sponsorship.md b/content/billing/managing-billing-for-github-sponsors/downgrading-a-sponsorship.md index b8916cd773c1..7ec1feae6231 100644 --- a/content/billing/managing-billing-for-github-sponsors/downgrading-a-sponsorship.md +++ b/content/billing/managing-billing-for-github-sponsors/downgrading-a-sponsorship.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-sponsors/downgrading-a-sponsorship versions: fpt: '*' + ghec: '*' type: how_to topics: - Cancellation diff --git a/content/billing/managing-billing-for-github-sponsors/index.md b/content/billing/managing-billing-for-github-sponsors/index.md index c0b468c054c9..478af90c724b 100644 --- a/content/billing/managing-billing-for-github-sponsors/index.md +++ b/content/billing/managing-billing-for-github-sponsors/index.md @@ -7,6 +7,7 @@ redirect_from: - /articles/managing-billing-for-github-sponsors versions: fpt: '*' + ghec: '*' children: - /about-billing-for-github-sponsors - /upgrading-a-sponsorship diff --git a/content/billing/managing-billing-for-github-sponsors/upgrading-a-sponsorship.md b/content/billing/managing-billing-for-github-sponsors/upgrading-a-sponsorship.md index 1b3b970eff15..e59aefd1c59d 100644 --- a/content/billing/managing-billing-for-github-sponsors/upgrading-a-sponsorship.md +++ b/content/billing/managing-billing-for-github-sponsors/upgrading-a-sponsorship.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-sponsors/upgrading-a-sponsorship versions: fpt: '*' + ghec: '*' type: how_to topics: - Sponsors diff --git a/content/billing/managing-billing-for-your-github-account/about-billing-for-github-accounts.md b/content/billing/managing-billing-for-your-github-account/about-billing-for-github-accounts.md index c0bd1a93f4dd..502583cd8ccd 100644 --- a/content/billing/managing-billing-for-your-github-account/about-billing-for-github-accounts.md +++ b/content/billing/managing-billing-for-your-github-account/about-billing-for-github-accounts.md @@ -1,6 +1,6 @@ --- title: About billing for GitHub accounts -intro: '{% data variables.product.product_name %} offers free and paid products for every developer or team.' +intro: '{% data variables.product.company_short %} offers free and paid products for every developer or team.' redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-accounts - /articles/what-is-the-total-cost-of-using-an-organization-account/ @@ -14,6 +14,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account/about-billing-for-github-accounts versions: fpt: '*' + ghec: '*' type: overview topics: - Accounts @@ -22,7 +23,7 @@ topics: - Upgrades shortTitle: About billing --- -For more information on the products available for your account, see "[{% data variables.product.product_name %}'s products](/articles/github-s-products)." You can see pricing and a full list of features for each product at <{% data variables.product.pricing_url %}>. {% data variables.product.product_name %} does not offer custom products or subscriptions. +For more information on the products available for your account, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)." You can see pricing and a full list of features for each product at <{% data variables.product.pricing_url %}>. {% data variables.product.product_name %} does not offer custom products or subscriptions. You can choose monthly or yearly billing, and you can upgrade or downgrade your subscription at any time. For more information, see "[Managing billing for your {% data variables.product.prodname_dotcom %} account](/articles/managing-billing-for-your-github-account)." diff --git a/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.md b/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.md index 6f0ef17f0e47..cb7485ea1338 100644 --- a/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.md +++ b/content/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise.md @@ -8,9 +8,10 @@ redirect_from: - /enterprise/admin/overview/managing-billing-for-github-enterprise - /admin/overview/managing-billing-for-github-enterprise versions: - fpt: '*' + ghec: '*' ghes: '*' ghae: '*' +type: overview topics: - Enterprise shortTitle: Billing for your enterprise @@ -41,9 +42,9 @@ User | License dates | Counted days | Cost You can see your current usage in your [Azure account portal](https://portal.azure.com). -{% elsif fpt or ghes %} +{% elsif ghec or ghes %} -{% ifversion fpt %} +{% ifversion ghec %} {% data variables.product.company_short %} bills monthly for the total number of members in your enterprise account, as well as any additional services you use with {% data variables.product.prodname_ghe_cloud %}. @@ -53,15 +54,17 @@ Each user on {% data variables.product.product_location %} consumes a seat on yo {% endif %} -{% data reusables.billing.about-invoices-for-enterprises %} For more information about usage and invoices, see "[Viewing the subscription and usage for your enterprise account](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)" and {% ifversion ghes %}"
Managing invoices for your enterprise" in the {% data variables.product.prodname_dotcom_the_website %} documentation.{% elsif fpt %}"[Managing invoices for your enterprise](/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise)."{% endif %} +{% data reusables.billing.about-invoices-for-enterprises %} For more information about usage and invoices, see "[Viewing the subscription and usage for your enterprise account](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)" and {% ifversion ghes %}"Managing invoices for your enterprise" in the {% data variables.product.prodname_dotcom_the_website %} documentation.{% elsif ghec %}"[Managing invoices for your enterprise](/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise)."{% endif %} Administrators for your enterprise account on {% data variables.product.prodname_dotcom_the_website %} can access and manage billing for the enterprise. -{% ifversion fpt %} +{% ifversion ghec %} -Each member of your enterprise account with a unique email address consumes a license. Billing managers do not consume a license. Each outside collaborator on a private repository that an organization in your enterprise owns consumes a license, unless the private repository is a fork. Each invitee to your enterprise account, including owners, members of organizations, and outside collaborators, consume a license. For more information about roles in an enterprise account, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise)" and "[Inviting people to manage your enterprise](/github/setting-up-and-managing-your-enterprise/inviting-people-to-manage-your-enterprise)." +Each member of your enterprise account with a unique email address consumes a license. Billing managers do not consume a license. Each outside collaborator on a private repository that an organization in your enterprise owns consumes a license, unless the private repository is a fork. Each invitee to your enterprise account, including owners, members of organizations, and outside collaborators, consume a license. For more information about roles in an enterprise account, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise)" and "[Inviting people to manage your enterprise](/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise)." -{% data reusables.enterprise-accounts.billing-microsoft-ea-overview %} For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +{% ifversion ghec %} +{% data reusables.enterprise-accounts.billing-microsoft-ea-overview %} For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." +{% endif %} {% endif %} @@ -75,11 +78,11 @@ Each member of your enterprise account with a unique email address consumes a li {% data reusables.enterprise.about-deployment-methods %} -{% data reusables.enterprise-licensing.about-license-sync %} For more information, see {% ifversion fpt %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} +{% data reusables.enterprise-licensing.about-license-sync %} For more information, see {% ifversion ghec %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} {% endif %} ## Further reading -- "[About enterprise accounts]({% ifversion fpt or ghes %}/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts#about-enterprise-accounts-on-githubcom{% elsif ghae %}/admin/overview/about-enterprise-accounts{% endif %})"{% ifversion fpt or ghes %} +- "[About enterprise accounts](/admin/overview/about-enterprise-accounts)"{% ifversion ghec or ghes %} - "[About licenses for GitHub Enterprise](/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise)"{% endif %} diff --git a/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md b/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md index 5ad6ec6eff4a..8e27a856a6e6 100644 --- a/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md +++ b/content/billing/managing-billing-for-your-github-account/about-per-user-pricing.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account/about-per-user-pricing versions: fpt: '*' + ghec: '*' type: overview topics: - Licensing diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/connecting-an-azure-subscription-to-your-enterprise.md b/content/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise.md similarity index 95% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/connecting-an-azure-subscription-to-your-enterprise.md rename to content/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise.md index cf265fed4b9e..92bc0b3b4982 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/connecting-an-azure-subscription-to-your-enterprise.md +++ b/content/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise.md @@ -3,10 +3,11 @@ title: Connecting an Azure subscription to your enterprise intro: 'You can use your Microsoft Enterprise Agreement to enable and pay for {% data variables.product.prodname_actions %} and {% data variables.product.prodname_registry %} usage beyond the included amounts for your enterprise.' product: '{% data reusables.gated-features.enterprise-accounts %}' redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/connecting-an-azure-subscription-to-your-enterprise - /github/setting-up-and-managing-billing-and-payments-on-github/connecting-an-azure-subscription-to-your-enterprise - /github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise versions: - fpt: '*' + ghec: '*' shortTitle: Connect an Azure subscription --- ## About Azure subscriptions and {% data variables.product.product_name %} diff --git a/content/billing/managing-billing-for-your-github-account/discounted-subscriptions-for-github-accounts.md b/content/billing/managing-billing-for-your-github-account/discounted-subscriptions-for-github-accounts.md index 274f726aeb2c..0dc25db5cfc3 100644 --- a/content/billing/managing-billing-for-your-github-account/discounted-subscriptions-for-github-accounts.md +++ b/content/billing/managing-billing-for-your-github-account/discounted-subscriptions-for-github-accounts.md @@ -10,6 +10,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account/discounted-subscriptions-for-github-accounts versions: fpt: '*' + ghec: '*' type: reference topics: - Accounts @@ -27,11 +28,11 @@ shortTitle: Discounted subscriptions ## Discounts for personal accounts -In addition to the unlimited public and private repositories for students and faculty with {% data variables.product.prodname_free_user %}, verified students can apply for the {% data variables.product.prodname_student_pack %} to receive additional benefits from {% data variables.product.prodname_dotcom %} partners. For more information, see "[Apply for a student developer pack](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/apply-for-a-student-developer-pack)." +In addition to the unlimited public and private repositories for students and faculty with {% data variables.product.prodname_free_user %}, verified students can apply for the {% data variables.product.prodname_student_pack %} to receive additional benefits from {% data variables.product.prodname_dotcom %} partners. For more information, see "[Apply for a student developer pack](/free-pro-team@latest/education/explore-the-benefits-of-teaching-and-learning-with-github-education/apply-for-a-student-developer-pack)." ## Discounts for schools and universities -Verified academic faculty can apply for {% data variables.product.prodname_team %} for teaching or academic research. For more information, see "[Use {% data variables.product.prodname_dotcom %} in your classroom and research](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-in-your-classroom-and-research)." You can also request educational materials goodies for your students. For more information, visit [{% data variables.product.prodname_education %}](https://education.github.com/). +Verified academic faculty can apply for {% data variables.product.prodname_team %} for teaching or academic research. For more information, see "[Use {% data variables.product.prodname_dotcom %} in your classroom and research](/free-pro-team@latest/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-in-your-classroom-and-research)." You can also request educational materials goodies for your students. For more information, visit [{% data variables.product.prodname_education %}](https://education.github.com/). ## Discounts for nonprofits and libraries diff --git a/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md b/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md index 5a5228e5286b..ae33f9c7f443 100644 --- a/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md +++ b/content/billing/managing-billing-for-your-github-account/downgrading-your-github-subscription.md @@ -1,6 +1,6 @@ --- title: Downgrading your GitHub subscription -intro: 'You can downgrade the subscription for any type of {% data variables.product.product_name %} account at any time.' +intro: 'You can downgrade the subscription for any type of account on {% data variables.product.product_location %} at any time.' redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/downgrading-your-github-subscription - /articles/downgrading-your-personal-account-s-billing-plan/ @@ -19,6 +19,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account/downgrading-your-github-subscription versions: fpt: '*' + ghec: '*' topics: - Accounts - Downgrades diff --git a/content/billing/managing-billing-for-your-github-account/how-does-upgrading-or-downgrading-affect-the-billing-process.md b/content/billing/managing-billing-for-your-github-account/how-does-upgrading-or-downgrading-affect-the-billing-process.md index 4e83304220dc..3f18df1fd2a5 100644 --- a/content/billing/managing-billing-for-your-github-account/how-does-upgrading-or-downgrading-affect-the-billing-process.md +++ b/content/billing/managing-billing-for-your-github-account/how-does-upgrading-or-downgrading-affect-the-billing-process.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account/how-does-upgrading-or-downgrading-affect-the-billing-process versions: fpt: '*' + ghec: '*' type: how_to topics: - Fundamentals diff --git a/content/billing/managing-billing-for-your-github-account/index.md b/content/billing/managing-billing-for-your-github-account/index.md index 7f554e4afbb0..13b86ed9e6a4 100644 --- a/content/billing/managing-billing-for-your-github-account/index.md +++ b/content/billing/managing-billing-for-your-github-account/index.md @@ -1,7 +1,7 @@ --- title: Managing billing for your GitHub account shortTitle: Your GitHub account -intro: '{% ifversion fpt %}{% data variables.product.product_name %} offers free and paid products for every account. You can upgrade, downgrade, and view pending changes to your account''s subscription at any time.{% elsif ghes or ghae %}You can manage billing for {% data variables.product.product_name %}{% ifversion ghae %}.{% elsif ghes %} from your enterprise account on {% data variables.product.prodname_dotcom_the_website %}.{% endif %}{% endif %}' +intro: '{% ifversion fpt %}{% data variables.product.product_name %} offers free and paid products for every account. You can upgrade, downgrade, and view pending changes to your account''s subscription at any time.{% elsif ghec or ghes or ghae %}You can manage billing for {% data variables.product.product_name %}{% ifversion ghae %}.{% elsif ghec or ghes %} from your enterprise account on {% data variables.product.prodname_dotcom_the_website %}.{% endif %}{% endif %}' redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account - /categories/97/articles/ @@ -15,6 +15,7 @@ redirect_from: - /articles/managing-billing-for-your-github-account versions: fpt: '*' + ghec: '*' ghes: '*' ghae: '*' children: @@ -26,6 +27,7 @@ children: - /viewing-and-managing-pending-changes-to-your-subscription - /downgrading-your-github-subscription - /managing-invoices-for-your-enterprise + - /connecting-an-azure-subscription-to-your-enterprise - /how-does-upgrading-or-downgrading-affect-the-billing-process - /discounted-subscriptions-for-github-accounts --- diff --git a/content/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise.md b/content/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise.md index 07b3fb392c44..f744f0fb045a 100644 --- a/content/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise.md +++ b/content/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise.md @@ -4,7 +4,7 @@ shortTitle: Manage invoices intro: 'You can view, pay, or download a current invoice for your enterprise, and you can view your payment history.' product: '{% data reusables.gated-features.enterprise-accounts %}' versions: - fpt: '*' + ghec: '*' type: how_to topics: - Enterprise diff --git a/content/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription.md b/content/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription.md index 35aeb474b507..76602ef9aff3 100644 --- a/content/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription.md +++ b/content/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription.md @@ -1,6 +1,6 @@ --- title: Upgrading your GitHub subscription -intro: 'You can upgrade the subscription for any type of {% data variables.product.product_name %} account at any time.' +intro: 'You can upgrade the subscription for any type of account on {% data variables.product.product_location %} at any time.' redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/upgrading-your-github-subscription - /articles/upgrading-your-personal-account-s-billing-plan/ @@ -21,6 +21,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account/upgrading-your-github-subscription versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations @@ -63,7 +64,7 @@ You can upgrade your organization from {% data variables.product.prodname_free_t If you upgraded your organization to {% data variables.product.prodname_ghe_cloud %}, you can set up identity and access management for your organization. For more information, see "[Managing SAML single sign-on for your organization](/organizations/managing-saml-single-sign-on-for-your-organization)." -If you'd like to use an enterprise account with {% data variables.product.prodname_ghe_cloud %}, contact {% data variables.contact.contact_enterprise_sales %}. For more information, see "[About enterprise accounts](/articles/about-enterprise-accounts)." +If you'd like to use an enterprise account with {% data variables.product.prodname_ghe_cloud %}, contact {% data variables.contact.contact_enterprise_sales %}. For more information, see "[About enterprise accounts](/enterprise-cloud@latest/admin/overview/about-enterprise-accounts){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} ## Adding seats to your organization diff --git a/content/billing/managing-billing-for-your-github-account/viewing-and-managing-pending-changes-to-your-subscription.md b/content/billing/managing-billing-for-your-github-account/viewing-and-managing-pending-changes-to-your-subscription.md index 523a4ad0ec32..9513c67ec8d9 100644 --- a/content/billing/managing-billing-for-your-github-account/viewing-and-managing-pending-changes-to-your-subscription.md +++ b/content/billing/managing-billing-for-your-github-account/viewing-and-managing-pending-changes-to-your-subscription.md @@ -10,6 +10,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-your-github-account/viewing-and-managing-pending-changes-to-your-subscription versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md b/content/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md index dbb3ef901e18..b8da3915aeb9 100644 --- a/content/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md +++ b/content/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account.md @@ -1,15 +1,15 @@ --- title: Viewing the subscription and usage for your enterprise account -intro: 'You can view the current {% ifversion fpt %}subscription, {% endif %}license usage{% ifversion fpt %}, invoices, payment history, and other billing information{% endif %} for {% ifversion fpt %}your enterprise account{% elsif ghes %}{% data variables.product.product_location_enterprise %}{% endif %}.' +intro: 'You can view the current {% ifversion ghec %}subscription, {% endif %}license usage{% ifversion ghec %}, invoices, payment history, and other billing information{% endif %} for {% ifversion ghec %}your enterprise account{% elsif ghes %}{% data variables.product.product_location_enterprise %}{% endif %}.' product: '{% data reusables.gated-features.enterprise-accounts %}' -permissions: 'Enterprise owners {% ifversion fpt %}and billing managers {% endif %}can access and manage all billing settings for enterprise accounts.' +permissions: Enterprise owners {% ifversion ghec %}and billing managers {% endif %}can access and manage all billing settings for enterprise accounts. redirect_from: - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/viewing-the-subscription-and-usage-for-your-enterprise-account - /github/setting-up-and-managing-your-enterprise-account/viewing-the-subscription-and-usage-for-your-enterprise-account - /articles/viewing-the-subscription-and-usage-for-your-enterprise-account - /github/setting-up-and-managing-your-enterprise/viewing-the-subscription-and-usage-for-your-enterprise-account versions: - fpt: '*' + ghec: '*' ghes: '*' topics: - Enterprise @@ -18,21 +18,21 @@ shortTitle: View subscription & usage ## About billing for enterprise accounts -You can view an overview of {% ifversion fpt %}your subscription and paid{% elsif ghes %}the license{% endif %} usage for {% ifversion fpt %}your{% elsif ghes %}the{% endif %} enterprise account on {% ifversion fpt %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_location %}{% endif %}. +You can view an overview of {% ifversion ghec %}your subscription and paid{% elsif ghes %}the license{% endif %} usage for {% ifversion ghec %}your{% elsif ghes %}the{% endif %} enterprise account on {% ifversion ghec %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_location %}{% endif %}. -For invoiced {% data variables.product.prodname_enterprise %} customers{% ifversion ghes %} who use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}{% endif %}, each invoice includes details about billed services for all products. For example, in addition to your usage for {% ifversion fpt %}{% data variables.product.prodname_ghe_cloud %}{% elsif ghes %}{% data variables.product.product_name %}{% endif %}, you may have usage for {% data variables.product.prodname_GH_advanced_security %}{% ifversion fpt %}, {% elsif ghes %}. You may also have usage on {% data variables.product.prodname_dotcom_the_website %}, like {% endif %}paid licenses in organizations outside of your enterprise account, data packs for {% data variables.large_files.product_name_long %}, or subscriptions to apps in {% data variables.product.prodname_marketplace %}. For more information about invoices, see "{% ifversion fpt %}[Managing invoices for your enterprise](/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise)."{% elsif ghes %}Viewing the subscription and usage for your enterprise account" in the {% data variables.product.prodname_dotcom_the_website %} documentation.{% endif %} +For invoiced {% data variables.product.prodname_enterprise %} customers{% ifversion ghes %} who use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}{% endif %}, each invoice includes details about billed services for all products. For example, in addition to your usage for {% ifversion ghec %}{% data variables.product.prodname_ghe_cloud %}{% elsif ghes %}{% data variables.product.product_name %}{% endif %}, you may have usage for {% data variables.product.prodname_GH_advanced_security %}{% ifversion ghec %}, {% elsif ghes %}. You may also have usage on {% data variables.product.prodname_dotcom_the_website %}, like {% endif %}paid licenses in organizations outside of your enterprise account, data packs for {% data variables.large_files.product_name_long %}, or subscriptions to apps in {% data variables.product.prodname_marketplace %}. For more information about invoices, see "[Managing invoices for your enterprise]({% ifversion ghes %}/enterprise-cloud@latest{% endif %}/billing/managing-billing-for-your-github-account/managing-invoices-for-your-enterprise){% ifversion ghec %}."{% elsif ghes %}" in the {% data variables.product.prodname_dotcom_the_website %} documentation.{% endif %} -{% ifversion fpt %} +{% ifversion ghec %} -In addition to enterprise owners, billing managers can view the subscription and usage for your enterprise account. For more information, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise#billing-manager)" and "[Inviting people to manage your enterprise](/github/setting-up-and-managing-your-enterprise/inviting-people-to-manage-your-enterprise)." +In addition to enterprise owners, billing managers can view the subscription and usage for your enterprise account. For more information, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise#billing-manager)" and "[Inviting people to manage your enterprise](/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise)." -{% data reusables.enterprise-accounts.billing-microsoft-ea-overview %} For more information, see "[Connecting an Azure subscription to your enterprise](/github/setting-up-and-managing-your-enterprise/connecting-an-azure-subscription-to-your-enterprise)." +{% data reusables.enterprise-accounts.billing-microsoft-ea-overview %} For more information, see "[Connecting an Azure subscription to your enterprise](/billing/managing-billing-for-your-github-account/connecting-an-azure-subscription-to-your-enterprise)." {% endif %} {% ifversion ghes %} -If you want to view an overview of your subscription and usage for {% data variables.product.prodname_enterprise %} and any related services on {% data variables.product.prodname_dotcom_the_website %}, see "[Viewing the subscription and usage for your enterprise account](/free-pro-team@latest/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)" in the {% data variables.product.prodname_dotcom_the_website %} documentation. +If you want to view an overview of your subscription and usage for {% data variables.product.prodname_enterprise %} and any related services on {% data variables.product.prodname_dotcom_the_website %}, see "[Viewing the subscription and usage for your enterprise account](/enterprise-cloud@latest/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)" in the {% data variables.product.prodname_ghe_cloud %} documentation. {% endif %} @@ -42,10 +42,10 @@ If you want to view an overview of your subscription and usage for {% data varia {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.license-tab %} 1. Under "User licenses", view your total licenses, number of consumed licenses, and your subscription expiration date. - {% ifversion fpt %}![License and subscription information in enterprise billing settings](/assets/images/help/business-accounts/billing-license-info.png){% else %} + {% ifversion ghec %}![License and subscription information in enterprise billing settings](/assets/images/help/business-accounts/billing-license-info.png){% else %} ![License and subscription information in enterprise billing settings](/assets/images/enterprise/enterprise-server/enterprise-server-billing-license-info.png){% endif %} -1. Optionally, to view details for license usage or download a {% ifversion fpt %}CSV{% elsif ghes %}JSON{% endif %} file with license details{% ifversion fpt %}, to the right of "User Licenses"{% endif %}, click **View {% ifversion fpt %}details{% elsif ghes %}users{% endif %}** or {% ifversion fpt %}{% octicon "download" aria-label="The download icon" %}{% elsif ghes %}**Export license usage**{% endif %}.{% ifversion fpt %} - !["View details" button and button with download icon to the right of "User Licenses"](/assets/images/help/business-accounts/billing-license-info-click-view-details-or-download.png){% endif %}{% ifversion fpt %} +1. Optionally, to view details for license usage or download a {% ifversion ghec %}CSV{% elsif ghes %}JSON{% endif %} file with license details{% ifversion ghec %}, to the right of "User Licenses"{% endif %}, click **View {% ifversion ghec %}details{% elsif ghes %}users{% endif %}** or {% ifversion ghec %}{% octicon "download" aria-label="The download icon" %}{% elsif ghes %}**Export license usage**{% endif %}.{% ifversion ghec %} + !["View details" button and button with download icon to the right of "User Licenses"](/assets/images/help/business-accounts/billing-license-info-click-view-details-or-download.png){% endif %}{% ifversion ghec %} 1. Optionally, to view usage details for other features, in the left sidebar, click **Billing**. ![Billing tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/settings-billing-tab.png) {% endif %} diff --git a/content/billing/managing-your-github-billing-settings/about-billing-on-github.md b/content/billing/managing-your-github-billing-settings/about-billing-on-github.md index b0294b2da5b7..8aa046128f93 100644 --- a/content/billing/managing-your-github-billing-settings/about-billing-on-github.md +++ b/content/billing/managing-your-github-billing-settings/about-billing-on-github.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/about-billing-on-github versions: fpt: '*' + ghec: '*' type: overview topics: - Fundamentals @@ -14,7 +15,7 @@ topics: ## Paid features and products You can upgrade your personal account or organization to a paid subscription at any time. You can also choose to purchase apps from {% data variables.product.prodname_marketplace %} or upgrade storage and bandwidth for {% data variables.large_files.product_name_long %}. For more information, see: -- "[About billing for {% data variables.product.product_name %} accounts](/articles/about-billing-for-github-accounts)" +- "[About billing for {% data variables.product.prodname_dotcom %} accounts](/articles/about-billing-for-github-accounts)" - "[About billing for {% data variables.product.prodname_marketplace %}](/articles/about-billing-for-github-marketplace)" - "[About billing for {% data variables.large_files.product_name_long %}](/articles/about-billing-for-git-large-file-storage)" - "[About billing for {% data variables.product.prodname_sponsors %}](/articles/about-billing-for-github-sponsors)" diff --git a/content/billing/managing-your-github-billing-settings/adding-information-to-your-receipts.md b/content/billing/managing-your-github-billing-settings/adding-information-to-your-receipts.md index 7d1ab7c3d0f8..316b350cb4d4 100644 --- a/content/billing/managing-your-github-billing-settings/adding-information-to-your-receipts.md +++ b/content/billing/managing-your-github-billing-settings/adding-information-to-your-receipts.md @@ -15,6 +15,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/adding-information-to-your-receipts versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/billing/managing-your-github-billing-settings/adding-or-editing-a-payment-method.md b/content/billing/managing-your-github-billing-settings/adding-or-editing-a-payment-method.md index bc441983ddaa..ac584161103c 100644 --- a/content/billing/managing-your-github-billing-settings/adding-or-editing-a-payment-method.md +++ b/content/billing/managing-your-github-billing-settings/adding-or-editing-a-payment-method.md @@ -19,6 +19,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/adding-or-editing-a-payment-method versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/billing/managing-your-github-billing-settings/changing-the-duration-of-your-billing-cycle.md b/content/billing/managing-your-github-billing-settings/changing-the-duration-of-your-billing-cycle.md index 70f078b625c1..d77660cbba73 100644 --- a/content/billing/managing-your-github-billing-settings/changing-the-duration-of-your-billing-cycle.md +++ b/content/billing/managing-your-github-billing-settings/changing-the-duration-of-your-billing-cycle.md @@ -10,6 +10,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/changing-the-duration-of-your-billing-cycle versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/billing/managing-your-github-billing-settings/index.md b/content/billing/managing-your-github-billing-settings/index.md index 4dcfe6917c3a..11d65601606e 100644 --- a/content/billing/managing-your-github-billing-settings/index.md +++ b/content/billing/managing-your-github-billing-settings/index.md @@ -13,6 +13,7 @@ redirect_from: - /articles/managing-your-github-billing-settings versions: fpt: '*' + ghec: '*' children: - /about-billing-on-github - /viewing-your-subscriptions-and-billing-date diff --git a/content/billing/managing-your-github-billing-settings/redeeming-a-coupon.md b/content/billing/managing-your-github-billing-settings/redeeming-a-coupon.md index ab863e181617..2be05c886841 100644 --- a/content/billing/managing-your-github-billing-settings/redeeming-a-coupon.md +++ b/content/billing/managing-your-github-billing-settings/redeeming-a-coupon.md @@ -10,6 +10,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/redeeming-a-coupon versions: fpt: '*' + ghec: '*' type: how_to topics: - Discounts diff --git a/content/billing/managing-your-github-billing-settings/removing-a-payment-method.md b/content/billing/managing-your-github-billing-settings/removing-a-payment-method.md index 03c42f0546b3..8fa155f08a62 100644 --- a/content/billing/managing-your-github-billing-settings/removing-a-payment-method.md +++ b/content/billing/managing-your-github-billing-settings/removing-a-payment-method.md @@ -11,6 +11,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/removing-a-payment-method versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/billing/managing-your-github-billing-settings/setting-your-billing-email.md b/content/billing/managing-your-github-billing-settings/setting-your-billing-email.md index c63bda363802..c05b8220adad 100644 --- a/content/billing/managing-your-github-billing-settings/setting-your-billing-email.md +++ b/content/billing/managing-your-github-billing-settings/setting-your-billing-email.md @@ -11,6 +11,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/setting-your-billing-email versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/billing/managing-your-github-billing-settings/troubleshooting-a-declined-credit-card-charge.md b/content/billing/managing-your-github-billing-settings/troubleshooting-a-declined-credit-card-charge.md index 112c3a1ef5ea..94a2303278c0 100644 --- a/content/billing/managing-your-github-billing-settings/troubleshooting-a-declined-credit-card-charge.md +++ b/content/billing/managing-your-github-billing-settings/troubleshooting-a-declined-credit-card-charge.md @@ -8,6 +8,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/troubleshooting-a-declined-credit-card-charge versions: fpt: '*' + ghec: '*' type: how_to topics: - Troubleshooting diff --git a/content/billing/managing-your-github-billing-settings/unlocking-a-locked-account.md b/content/billing/managing-your-github-billing-settings/unlocking-a-locked-account.md index 1d09513874e8..c1bcfbc682b6 100644 --- a/content/billing/managing-your-github-billing-settings/unlocking-a-locked-account.md +++ b/content/billing/managing-your-github-billing-settings/unlocking-a-locked-account.md @@ -13,6 +13,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/unlocking-a-locked-account versions: fpt: '*' + ghec: '*' type: how_to topics: - Accounts diff --git a/content/billing/managing-your-github-billing-settings/viewing-your-payment-history-and-receipts.md b/content/billing/managing-your-github-billing-settings/viewing-your-payment-history-and-receipts.md index d75e7f9efcff..d6041c7306c0 100644 --- a/content/billing/managing-your-github-billing-settings/viewing-your-payment-history-and-receipts.md +++ b/content/billing/managing-your-github-billing-settings/viewing-your-payment-history-and-receipts.md @@ -10,6 +10,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/managing-your-github-billing-settings/viewing-your-payment-history-and-receipts versions: fpt: '*' + ghec: '*' type: how_to topics: - Accounts diff --git a/content/billing/managing-your-github-billing-settings/viewing-your-subscriptions-and-billing-date.md b/content/billing/managing-your-github-billing-settings/viewing-your-subscriptions-and-billing-date.md index f0f1a3888ece..69153483050a 100644 --- a/content/billing/managing-your-github-billing-settings/viewing-your-subscriptions-and-billing-date.md +++ b/content/billing/managing-your-github-billing-settings/viewing-your-subscriptions-and-billing-date.md @@ -11,6 +11,7 @@ redirect_from: - /articles/viewing-your-subscriptions-and-billing-date versions: fpt: '*' + ghec: '*' type: how_to topics: - Accounts @@ -33,4 +34,4 @@ shortTitle: Subscriptions & billing date ## Further reading -- "[About billing for {% data variables.product.product_name %} accounts](/articles/about-billing-for-github-accounts)" +- "[About billing for {% data variables.product.prodname_dotcom %} accounts](/articles/about-billing-for-github-accounts)" diff --git a/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md b/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md index 053f1645c1bf..08b52173e45c 100644 --- a/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md +++ b/content/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise.md @@ -1,8 +1,8 @@ --- title: About licenses for GitHub Enterprise -intro: '{% ifversion fpt %}If you purchase {% data variables.product.prodname_enterprise %} and use {% data variables.product.prodname_ghe_server %}, each{% elsif ghes %}Each{% endif %} {% data variables.product.prodname_ghe_server %} instance requires a license file to validate and unlock the application.' +intro: '{% ifversion ghec %}If you deploy {% data variables.product.prodname_ghe_server %} in addition to using {% data variables.product.prodname_ghe_cloud %}, each{% elsif ghes %}Each{% endif %} {% data variables.product.prodname_ghe_server %} instance requires a license file to validate and unlock the application.' versions: - fpt: '*' + ghec: '*' ghes: '*' type: overview topics: @@ -13,17 +13,19 @@ shortTitle: About licenses ## About license files for {% data variables.product.prodname_enterprise %} -{% ifversion fpt %} +{% ifversion ghec %} {% data reusables.enterprise.about-deployment-methods %} {% endif %} -When you purchase or renew {% data variables.product.prodname_enterprise %}, {% data variables.product.company_short %} provides a license file {% ifversion fpt %}for your deployments of {% data variables.product.prodname_ghe_server %}{% elsif ghes %}for {% data variables.product.product_location_enterprise %}{% endif %}. A license file has an expiration date and controls the number of people who can use {% data variables.product.product_location_enterprise %}. After you download and install {% data variables.product.prodname_ghe_server %}, you must upload the license file to unlock the application for you to use. +When you purchase or renew {% data variables.product.prodname_enterprise %}, {% data variables.product.company_short %} provides a license file {% ifversion ghec %}for your deployments of {% data variables.product.prodname_ghe_server %}{% elsif ghes %}for {% data variables.product.product_location_enterprise %}{% endif %}. A license file has an expiration date and controls the number of people who can use {% data variables.product.product_location_enterprise %}. After you download and install {% data variables.product.prodname_ghe_server %}, you must upload the license file to unlock the application for you to use. -For more information about downloading your license file, see "[Downloading your license for {% data variables.product.prodname_enterprise %}](/billing/managing-your-license-for-github-enterprise/downloading-your-license-for-github-enterprise)." For more information about uploading your license file, see {% ifversion fpt %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)."{% endif %} +For more information about downloading your license file, see "[Downloading your license for {% data variables.product.prodname_enterprise %}](/billing/managing-your-license-for-github-enterprise/downloading-your-license-for-github-enterprise)." For more information about uploading your license file, see {% ifversion ghec %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)."{% endif %} -If your license expires, you won't be able to access {% data variables.product.prodname_ghe_server %} via a web browser or Git. If needed, you will be able to use command-line utilities to back up all your data. For more information, see "[Configuring backups on your appliance](/enterprise/admin/guides/installation/configuring-backups-on-your-appliance)." If you have any questions about renewing your license, contact {% data variables.contact.contact_enterprise_sales %}. +If your license expires, you won't be able to access {% data variables.product.prodname_ghe_server %} via a web browser or Git. If needed, you will be able to use command-line utilities to back up all your data. For more information, see {% ifversion ghec %}"[Configuring backups on your appliance]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/guides/installation/configuring-backups-on-your-appliance)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Configuring backups on your appliance](/admin/guides/installation/configuring-backups-on-your-appliance)." {% endif %} + +If you have any questions about renewing your license, contact {% data variables.contact.contact_enterprise_sales %}. ## About synchronization of license usage for {% data variables.product.prodname_enterprise %} @@ -33,10 +35,10 @@ If your license expires, you won't be able to access {% data variables.product.p {% endif %} -{% data reusables.enterprise-licensing.about-license-sync %} For more information, see {% ifversion fpt %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} +{% data reusables.enterprise-licensing.about-license-sync %} For more information, see {% ifversion ghec %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} ## Further reading - "[About billing for your enterprise](/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise)" - [{% data variables.product.prodname_enterprise %} Releases](https://enterprise.github.com/releases/) website -- "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/admin/installation/setting-up-a-github-enterprise-server-instance)" +- "[Setting up a {% data variables.product.prodname_ghe_server %} instance]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/installation/setting-up-a-github-enterprise-server-instance)" diff --git a/content/billing/managing-your-license-for-github-enterprise/downloading-your-license-for-github-enterprise.md b/content/billing/managing-your-license-for-github-enterprise/downloading-your-license-for-github-enterprise.md index 5302908a3a91..1f40813d656e 100644 --- a/content/billing/managing-your-license-for-github-enterprise/downloading-your-license-for-github-enterprise.md +++ b/content/billing/managing-your-license-for-github-enterprise/downloading-your-license-for-github-enterprise.md @@ -3,7 +3,7 @@ title: Downloading your license for GitHub Enterprise intro: 'You can download a copy of your license file for {% data variables.product.prodname_ghe_server %}.' permissions: 'Enterprise owners can download license files for {% data variables.product.prodname_ghe_server %}.' versions: - fpt: '*' + ghec: '*' ghes: '*' type: how_to topics: @@ -20,7 +20,7 @@ After you purchase or upgrade a license for {% data variables.product.prodname_e ## Downloading your license from {% data variables.product.prodname_dotcom_the_website %} -You must have an enterprise account on {% data variables.product.prodname_dotcom_the_website %} to download your license from {% data variables.product.prodname_dotcom_the_website %}. For more information about enterprise accounts, see "[About enterprise accounts](/admin/overview/about-enterprise-accounts)." +You must have an enterprise account on {% data variables.product.prodname_dotcom_the_website %} to download your license from {% data variables.product.prodname_dotcom_the_website %}. For more information, see "[About enterprise accounts](/enterprise-cloud@latest/admin/overview/about-enterprise-accounts){% ifversion ghes %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% elsif ghec %}."{% endif %} {% data reusables.enterprise-accounts.access-enterprise-on-dotcom %} {% data reusables.enterprise-accounts.settings-tab %} @@ -29,7 +29,7 @@ You must have an enterprise account on {% data variables.product.prodname_dotcom 1. Under "Enterprise Server Instances", click {% octicon "download" aria-label="The download icon" %} to download your license file. ![Download GitHub Enterprise Server license](/assets/images/help/business-accounts/download-ghes-license.png) -After you download your license file, you can upload the file to {% data variables.product.product_location_enterprise %} to validate your application. For more information, see {% ifversion fpt %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)."{% endif %} +After you download your license file, you can upload the file to {% data variables.product.product_location_enterprise %} to validate your application. For more information, see {% ifversion ghec %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Uploading a new license to {% data variables.product.prodname_ghe_server %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/uploading-a-new-license-to-github-enterprise-server)."{% endif %} ## Downloading your license if you don't have an enterprise account on {% data variables.product.prodname_dotcom_the_website %} diff --git a/content/billing/managing-your-license-for-github-enterprise/index.md b/content/billing/managing-your-license-for-github-enterprise/index.md index 97f03f42b6be..f8176923f8e7 100644 --- a/content/billing/managing-your-license-for-github-enterprise/index.md +++ b/content/billing/managing-your-license-for-github-enterprise/index.md @@ -1,8 +1,9 @@ --- title: Managing your license for GitHub Enterprise shortTitle: GitHub Enterprise license -intro: 'You can view, manage, and update your license for {% data variables.product.prodname_enterprise %}, which unlocks the application on {% data variables.product.product_location_enterprise %}.' +intro: '{% data variables.product.prodname_enterprise %} includes both cloud and self-hosted deployment options. If you host a {% data variables.product.prodname_ghe_server %} instance, you must unlock the instance with a license file. You can view, manage, and update the license file.' redirect_from: + - /free-pro-team@latest/billing/managing-your-license-for-github-enterprise - /enterprise/admin/installation/managing-your-github-enterprise-license - /enterprise/admin/categories/licenses/ - /enterprise/admin/articles/license-files/ @@ -14,7 +15,7 @@ redirect_from: - /enterprise/admin/installation/managing-your-github-enterprise-server-license - /enterprise/admin/overview/managing-your-github-enterprise-license versions: - fpt: '*' + ghec: '*' ghes: '*' children: - /about-licenses-for-github-enterprise @@ -22,5 +23,6 @@ children: - /uploading-a-new-license-to-github-enterprise-server - /viewing-license-usage-for-github-enterprise - /syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud + - /managing-licenses-for-visual-studio-subscription-with-github-enterprise --- diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/managing-licenses-for-visual-studio-subscription-with-github-enterprise.md b/content/billing/managing-your-license-for-github-enterprise/managing-licenses-for-visual-studio-subscription-with-github-enterprise.md similarity index 92% rename from content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/managing-licenses-for-visual-studio-subscription-with-github-enterprise.md rename to content/billing/managing-your-license-for-github-enterprise/managing-licenses-for-visual-studio-subscription-with-github-enterprise.md index 64c8dc56982e..cb52eab49f8e 100644 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/managing-licenses-for-visual-studio-subscription-with-github-enterprise.md +++ b/content/billing/managing-your-license-for-github-enterprise/managing-licenses-for-visual-studio-subscription-with-github-enterprise.md @@ -2,6 +2,7 @@ title: Managing licenses for Visual Studio subscription with GitHub Enterprise intro: 'You can manage {% data variables.product.prodname_enterprise %} licensing for {% data variables.product.prodname_vss_ghe %}.' redirect_from: + - /github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/managing-licenses-for-visual-studio-subscription-with-github-enterprise - /github/setting-up-and-managing-your-enterprise/managing-licenses-for-the-github-enterprise-and-visual-studio-bundle - /github/setting-up-and-managing-your-enterprise-account/managing-licenses-for-the-github-enterprise-and-visual-studio-bundle - /github/articles/about-the-github-and-visual-studio-bundle @@ -9,7 +10,7 @@ redirect_from: - /github/setting-up-and-managing-your-enterprise-account/managing-licenses-for-visual-studio-subscription-with-github-enterprise - /github/setting-up-and-managing-your-enterprise/managing-licenses-for-visual-studio-subscription-with-github-enterprise versions: - fpt: '*' + ghec: '*' topics: - Enterprise shortTitle: Visual Studio bundle @@ -30,7 +31,7 @@ For more information about {% data variables.product.prodname_enterprise %}, see 2. Assign licenses for {% data variables.product.prodname_vss_ghe %} to subscribers in {% data variables.product.prodname_vss_admin_portal_with_url %}. For more information about assigning licenses, see [Manage {% data variables.product.prodname_vs %} subscriptions with {% data variables.product.prodname_enterprise %}](https://docs.microsoft.com/visualstudio/subscriptions/assign-github) in the Microsoft Docs. -3. On {% data variables.product.prodname_dotcom_the_website %}, create at least one organization owned by your enterprise account. For more information, see "[Adding organizations to your enterprise account](/github/setting-up-and-managing-your-enterprise/adding-organizations-to-your-enterprise-account)." +3. On {% data variables.product.prodname_dotcom_the_website %}, create at least one organization owned by your enterprise account. For more information, see "[Adding organizations to your enterprise](/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise)." ## Inviting a subscriber to use {% data variables.product.prodname_enterprise %} @@ -40,13 +41,13 @@ Organization owners can invite new members to an organization by email address. While not required, we recommend that organization owners send an invitation to the same email address used for the {% data variables.product.prodname_vs %} subscriber's User Primary Name (UPN). When the email address on {% data variables.product.product_name %} matches the subscriber's UPN, you can ensure that another member of the organization does not claim the subscriber's license. -For more information, see "[Inviting users to join your organization](/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization)," "[Signing up for {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/signing-up-for-github)," and "[Managing email preferences](/github/setting-up-and-managing-your-github-user-account/managing-email-preferences)." +For more information, see "[Inviting users to join your organization](/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization)," "[Signing up for {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/signing-up-for-github)," and "[Managing email preferences](/account-and-profile/setting-up-and-managing-your-github-user-account/managing-email-preferences)." ## Viewing {% data variables.product.prodname_enterprise %} licensing After assigning a license for {% data variables.product.prodname_vss_ghe %} in {% data variables.product.prodname_vss_admin_portal_with_url %}, you can view the number of {% data variables.product.prodname_enterprise %} licenses available to your enterprise account. For more information, see "[Viewing the subscription and usage for your enterprise account](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)." -You can also see pending {% data variables.product.prodname_enterprise %} invitations to subscribers in {% data variables.product.prodname_vss_admin_portal_with_url %}. The list of pending invitations includes subscribers who are not yet members of at least one organization in your enterprise account. For more information, see "[Viewing people in your enterprise](/github/setting-up-and-managing-your-enterprise/viewing-people-in-your-enterprise#viewing-members-and-outside-collaborators)." +You can also see pending {% data variables.product.prodname_enterprise %} invitations to subscribers in {% data variables.product.prodname_vss_admin_portal_with_url %}. The list of pending invitations includes subscribers who are not yet members of at least one organization in your enterprise account. For more information, see "[Viewing people in your enterprise](/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise#viewing-members-and-outside-collaborators)." ## Further reading diff --git a/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md b/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md index 3f4e47d53129..2f032c6f1b9c 100644 --- a/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md +++ b/content/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud.md @@ -3,6 +3,7 @@ title: Syncing license usage between GitHub Enterprise Server and GitHub Enterpr intro: 'You can sync license usage from {% data variables.product.prodname_ghe_server %} to {% data variables.product.prodname_ghe_cloud %} to view all license usage across your enterprise in one place and ensure that people with accounts in both environments only consume one user license.' permissions: 'Enterprise owners can sync license usage between enterprise accounts on {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}.' versions: + ghec: '*' ghes: '*' type: how_to topics: @@ -15,13 +16,13 @@ shortTitle: Sync license usage {% data reusables.enterprise-licensing.about-license-sync %} -If you allow {% data variables.product.product_location %} to connect to {% data variables.product.prodname_dotcom_the_website %}, you can sync license usage between your enterprise accounts automatically. Automatic synchronization ensures that you see up-to-date license details on {% data variables.product.prodname_dotcom_the_website %}. If you don't want to allow {% data variables.product.product_location %} to connect to {% data variables.product.prodname_dotcom_the_website %}, you can manually sync license usage by uploading a file from {% data variables.product.product_location %} to {% data variables.product.prodname_dotcom_the_website %}. +If you allow {% data variables.product.product_location_enterprise %} to connect to your enterprise account on {% data variables.product.prodname_dotcom_the_website %}, you can sync license usage between the environments automatically. Automatic synchronization ensures that you see up-to-date license details on {% data variables.product.prodname_dotcom_the_website %}. If you don't want to allow {% data variables.product.product_location %} to connect to {% data variables.product.prodname_dotcom_the_website %}, you can manually sync license usage by uploading a file from {% data variables.product.product_location %} to {% data variables.product.prodname_dotcom_the_website %}. For more information about licenses and usage for {% data variables.product.prodname_ghe_server %}, see "[About licenses for {% data variables.product.prodname_enterprise %}](/billing/managing-your-license-for-github-enterprise/about-licenses-for-github-enterprise)." ## Automatically syncing license usage -You can use {% data variables.product.prodname_github_connect %} to automatically sync user license count and usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}. For more information, see "[Enabling automatic user license sync between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/admin/installation/enabling-automatic-user-license-sync-between-github-enterprise-server-and-github-enterprise-cloud)." +You can use {% data variables.product.prodname_github_connect %} to automatically sync user license count and usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}. For more information, see "[Enabling automatic user license sync between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}]({% ifversion ghec %}/enterprise-server@latest{% endif %}/admin/configuration/managing-connections-between-github-enterprise-server-and-github-enterprise-cloud/enabling-automatic-user-license-sync-between-github-enterprise-server-and-github-enterprise-cloud){% ifversion ghec %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}."{% endif %} ## Manually syncing license usage diff --git a/content/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise.md b/content/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise.md index cee607571ea8..2af6d72cff02 100644 --- a/content/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise.md +++ b/content/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise.md @@ -1,9 +1,9 @@ --- title: Viewing license usage for GitHub Enterprise -intro: 'You can view license usage for your enterprise on {% ifversion fpt %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_location %}{% endif %}.' +intro: 'You can view license usage for your enterprise on {% ifversion ghec %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_location %}{% endif %}.' permissions: 'Enterprise owners can view license usage for {% data variables.product.prodname_enterprise %}.' versions: - fpt: '*' + ghec: '*' ghes: '*' type: how_to topics: @@ -14,7 +14,7 @@ shortTitle: View license usage ## About license usage for {% data variables.product.prodname_enterprise %} -{% ifversion fpt %} +{% ifversion ghec %} You can view license usage for your enterprise account on {% data variables.product.prodname_ghe_cloud %} on {% data variables.product.prodname_dotcom_the_website %}. @@ -28,9 +28,9 @@ You can view license usage for {% data variables.product.prodname_ghe_server %} {% endif %} -## Viewing license usage on {% ifversion fpt %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_location %}{% endif %} +## Viewing license usage on {% ifversion ghec %}{% data variables.product.prodname_dotcom_the_website %}{% elsif ghes %}{% data variables.product.product_location %}{% endif %} -{% ifversion fpt %} +{% ifversion ghec %} {% data reusables.enterprise-accounts.access-enterprise-on-dotcom %} {% data reusables.enterprise-accounts.settings-tab %} diff --git a/content/billing/setting-up-paid-organizations-for-procurement-companies/about-organizations-for-procurement-companies.md b/content/billing/setting-up-paid-organizations-for-procurement-companies/about-organizations-for-procurement-companies.md index 62ebd3249169..1a7aa15b7469 100644 --- a/content/billing/setting-up-paid-organizations-for-procurement-companies/about-organizations-for-procurement-companies.md +++ b/content/billing/setting-up-paid-organizations-for-procurement-companies/about-organizations-for-procurement-companies.md @@ -8,6 +8,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/setting-up-paid-organizations-for-procurement-companies/about-organizations-for-procurement-companies versions: fpt: '*' + ghec: '*' type: overview topics: - Organizations diff --git a/content/billing/setting-up-paid-organizations-for-procurement-companies/creating-and-paying-for-an-organization-on-behalf-of-a-client.md b/content/billing/setting-up-paid-organizations-for-procurement-companies/creating-and-paying-for-an-organization-on-behalf-of-a-client.md index 6b95295c1712..3826e43f66a8 100644 --- a/content/billing/setting-up-paid-organizations-for-procurement-companies/creating-and-paying-for-an-organization-on-behalf-of-a-client.md +++ b/content/billing/setting-up-paid-organizations-for-procurement-companies/creating-and-paying-for-an-organization-on-behalf-of-a-client.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/setting-up-paid-organizations-for-procurement-companies/creating-and-paying-for-an-organization-on-behalf-of-a-client versions: fpt: '*' + ghec: '*' type: quick_start topics: - User account diff --git a/content/billing/setting-up-paid-organizations-for-procurement-companies/index.md b/content/billing/setting-up-paid-organizations-for-procurement-companies/index.md index 27ee239193e3..153bb0aa86e0 100644 --- a/content/billing/setting-up-paid-organizations-for-procurement-companies/index.md +++ b/content/billing/setting-up-paid-organizations-for-procurement-companies/index.md @@ -9,6 +9,7 @@ redirect_from: - /articles/setting-up-paid-organizations-for-procurement-companies versions: fpt: '*' + ghec: '*' children: - /about-organizations-for-procurement-companies - /creating-and-paying-for-an-organization-on-behalf-of-a-client diff --git a/content/billing/setting-up-paid-organizations-for-procurement-companies/renewing-your-clients-paid-organization.md b/content/billing/setting-up-paid-organizations-for-procurement-companies/renewing-your-clients-paid-organization.md index e76f48105fdc..63df70031201 100644 --- a/content/billing/setting-up-paid-organizations-for-procurement-companies/renewing-your-clients-paid-organization.md +++ b/content/billing/setting-up-paid-organizations-for-procurement-companies/renewing-your-clients-paid-organization.md @@ -8,6 +8,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/setting-up-paid-organizations-for-procurement-companies/renewing-your-clients-paid-organization versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/billing/setting-up-paid-organizations-for-procurement-companies/upgrading-or-downgrading-your-clients-paid-organization.md b/content/billing/setting-up-paid-organizations-for-procurement-companies/upgrading-or-downgrading-your-clients-paid-organization.md index 41e283897df1..e803bcf1e8b1 100644 --- a/content/billing/setting-up-paid-organizations-for-procurement-companies/upgrading-or-downgrading-your-clients-paid-organization.md +++ b/content/billing/setting-up-paid-organizations-for-procurement-companies/upgrading-or-downgrading-your-clients-paid-organization.md @@ -8,6 +8,7 @@ redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/setting-up-paid-organizations-for-procurement-companies/upgrading-or-downgrading-your-clients-paid-organization versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql.md index 286d3771a0a3..3399846d0dd4 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: overview topics: - Advanced Security @@ -26,7 +27,7 @@ topics: There are two main ways to use {% data variables.product.prodname_codeql %} analysis for {% data variables.product.prodname_code_scanning %}: - Add the {% data variables.product.prodname_codeql %} workflow to your repository. This uses the [github/codeql-action](https://github.com/github/codeql-action/) to run the {% data variables.product.prodname_codeql_cli %}. For more information, see "[Setting up {% data variables.product.prodname_code_scanning %} for a repository](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository#setting-up-code-scanning-using-actions)." -- Run the {% data variables.product.prodname_codeql %} {% ifversion fpt or ghes > 3.1 or ghae-next %}CLI directly {% elsif ghes = 3.0 %}CLI or runner {% else %}runner {% endif %} in an external CI system and upload the results to {% data variables.product.prodname_dotcom %}. For more information, see "[About {% data variables.product.prodname_codeql %} code scanning in your CI system ](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system)." +- Run the {% data variables.product.prodname_codeql %} {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}CLI directly {% elsif ghes = 3.0 %}CLI or runner {% else %}runner {% endif %} in an external CI system and upload the results to {% data variables.product.prodname_dotcom %}. For more information, see "[About {% data variables.product.prodname_codeql %} code scanning in your CI system ](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system)." ## About {% data variables.product.prodname_codeql %} diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning.md index 48d9817e999b..fd8ba2f087d9 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: overview topics: - Advanced Security @@ -34,7 +35,7 @@ To monitor results from {% data variables.product.prodname_code_scanning %} acro To get started with {% data variables.product.prodname_code_scanning %}, see "[Setting up {% data variables.product.prodname_code_scanning %} for a repository](/code-security/secure-coding/setting-up-code-scanning-for-a-repository)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## About billing for {% data variables.product.prodname_code_scanning %} diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md index ec1c571db9df..106c156a6ec3 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -43,7 +44,7 @@ Before you can configure {% data variables.product.prodname_code_scanning %} for {% data reusables.code-scanning.edit-workflow %} -{% data variables.product.prodname_codeql %} analysis is just one type of {% data variables.product.prodname_code_scanning %} you can do in {% data variables.product.prodname_dotcom %}. {% data variables.product.prodname_marketplace %}{% ifversion ghes %} on {% data variables.product.prodname_dotcom_the_website %}{% endif %} contains other {% data variables.product.prodname_code_scanning %} workflows you can use. {% ifversion fpt %}You can find a selection of these on the "Get started with {% data variables.product.prodname_code_scanning %}" page, which you can access from the **{% octicon "shield" aria-label="The shield symbol" %} Security** tab.{% endif %} The specific examples given in this article relate to the {% data variables.product.prodname_codeql_workflow %} file. +{% data variables.product.prodname_codeql %} analysis is just one type of {% data variables.product.prodname_code_scanning %} you can do in {% data variables.product.prodname_dotcom %}. {% data variables.product.prodname_marketplace %}{% ifversion ghes %} on {% data variables.product.prodname_dotcom_the_website %}{% endif %} contains other {% data variables.product.prodname_code_scanning %} workflows you can use. {% ifversion fpt or ghec %}You can find a selection of these on the "Get started with {% data variables.product.prodname_code_scanning %}" page, which you can access from the **{% octicon "shield" aria-label="The shield symbol" %} Security** tab.{% endif %} The specific examples given in this article relate to the {% data variables.product.prodname_codeql_workflow %} file. ## Editing a {% data variables.product.prodname_code_scanning %} workflow @@ -69,7 +70,7 @@ By default, the {% data variables.product.prodname_codeql_workflow %} uses the ` If you scan on push, then the results appear in the **Security** tab for your repository. For more information, see "[Managing code scanning alerts for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository#viewing-the-alerts-for-a-repository)." -{% ifversion fpt or ghes > 3.2 or ghae-issue-5093 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-5093 or ghec %} Additionally, when an `on:push` scan returns results that can be mapped to an open pull request, these alerts will automatically appear on the pull request in the same places as other pull request alerts. The alerts are identified by comparing the existing analysis of the head of the branch to the analysis for the target branch. For more information on {% data variables.product.prodname_code_scanning %} alerts in pull requests, see "[Triaging {% data variables.product.prodname_code_scanning %} alerts in pull requests](/code-security/secure-coding/triaging-code-scanning-alerts-in-pull-requests)." {% endif %} @@ -81,20 +82,20 @@ For more information about the `pull_request` event, see "[Workflow syntax for { If you scan pull requests, then the results appear as alerts in a pull request check. For more information, see "[Triaging code scanning alerts in pull requests](/code-security/secure-coding/triaging-code-scanning-alerts-in-pull-requests)." -{% ifversion fpt or ghes > 3.2 or ghae-issue-5093 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-5093 or ghec %} Using the `pull_request` trigger, configured to scan the pull request's merge commit rather than the head commit, will produce more efficient and accurate results than scanning the head of the branch on each push. However, if you use a CI/CD system that cannot be configured to trigger on pull requests, you can still use the `on:push` trigger and {% data variables.product.prodname_code_scanning %} will map the results to open pull requests on the branch and add the alerts as annotations on the pull request. For more information, see "[Scanning on push](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#scanning-on-push)." {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ### Defining the severities causing pull request check failure -By default, only alerts with the severity level of `Error`{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %} or security severity level of `Critical` or `High`{% endif %} will cause a pull request check failure, and a check will still succeed with alerts of lower severities. You can change the levels of alert severities{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %} and of security severities{% endif %} that will cause a pull request check failure in your repository settings. For more information about severity levels, see "[Managing code scanning alerts for your repository](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository#about-alerts-details)." +By default, only alerts with the severity level of `Error`{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %} or security severity level of `Critical` or `High`{% endif %} will cause a pull request check failure, and a check will still succeed with alerts of lower severities. You can change the levels of alert severities{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %} and of security severities{% endif %} that will cause a pull request check failure in your repository settings. For more information about severity levels, see "[Managing code scanning alerts for your repository](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository#about-alerts-details)." {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-security-and-analysis %} 1. Under "Code scanning", to the right of "Check Failure", use the drop-down menu to select the level of severity you would like to cause a pull request check failure. -{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %} ![Check failure setting](/assets/images/help/repository/code-scanning-check-failure-setting.png) {% else %} ![Check failure setting](/assets/images/help/repository/code-scanning-check-failure-setting-ghae.png) @@ -169,13 +170,13 @@ jobs: runs-on: [self-hosted, ubuntu-latest] ``` -{% ifversion fpt %}For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners)" and "[Adding self-hosted runners](/actions/hosting-your-own-runners/adding-self-hosted-runners)."{% endif %} +{% ifversion fpt or ghec %}For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners)" and "[Adding self-hosted runners](/actions/hosting-your-own-runners/adding-self-hosted-runners)."{% endif %} {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %} supports the latest versions of Ubuntu, Windows, and macOS. Typical values for this setting are therefore: `ubuntu-latest`, `windows-latest`, and `macos-latest`. For more information, see {% ifversion ghes %}"[Workflow syntax for GitHub Actions](/actions/reference/workflow-syntax-for-github-actions#self-hosted-runners)" and "[Using labels with self-hosted runners](/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners){% else %}"[Workflow syntax for GitHub Actions](/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on){% endif %}." {% ifversion ghes %}You must ensure that Git is in the PATH variable on your self-hosted runners.{% else %}If you use a self-hosted runner, you must ensure that Git is in the PATH variable.{% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Specifying the location for {% data variables.product.prodname_codeql %} databases In general, you do not need to worry about where the {% data variables.product.prodname_codeql_workflow %} places {% data variables.product.prodname_codeql %} databases since later steps will automatically find databases created by previous steps. However, if you are writing a custom workflow step that requires the {% data variables.product.prodname_codeql %} database to be in a specific disk location, for example to upload the database as a workflow artifact, you can specify that location using the `db-location` parameter under the `init` action. @@ -223,7 +224,7 @@ If your workflow does not contain a matrix called `language`, then {% data varia with: languages: cpp, csharp, python ``` -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Analyzing Python dependencies For GitHub-hosted runners that use Linux only, the {% data variables.product.prodname_codeql_workflow %} will try to auto-install Python dependencies to give more results for the CodeQL analysis. You can control this behavior by specifying the `setup-python-dependencies` parameter for the action called by the "Initialize CodeQL" step. By default, this parameter is set to `true`: @@ -237,7 +238,7 @@ Alternatively, you can install Python dependencies manually on any operating sys ```yaml jobs: CodeQL-Build: - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: security-events: write actions: read{% endif %} @@ -268,7 +269,7 @@ jobs: ``` {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Configuring a category for the analysis Use `category` to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code. The category you specify in your workflow will be included in the SARIF results file. diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-the-codeql-workflow-for-compiled-languages.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-the-codeql-workflow-for-compiled-languages.md index 1ae73d2e8a77..6719200c904e 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-the-codeql-workflow-for-compiled-languages.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-the-codeql-workflow-for-compiled-languages.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/index.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/index.md index 32fca4a8ec50..03861d84d05e 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/index.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Advanced Security - Code scanning diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md index ff7127a92622..b612ed7bb57f 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' miniTocMaxHeadingLevel: 3 redirect_from: - /github/managing-security-vulnerabilities/managing-alerts-from-automated-code-scanning @@ -36,7 +37,7 @@ By default, {% data variables.product.prodname_code_scanning %} analyzes your co ## About alerts details -Each alert highlights a problem with the code and the name of the tool that identified it. You can see the line of code that triggered the alert, as well as properties of the alert, such as the severity{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %}, security severity,{% endif %} and the nature of the problem. Alerts also tell you when the issue was first introduced. For alerts identified by {% data variables.product.prodname_codeql %} analysis, you will also see information on how to fix the problem. +Each alert highlights a problem with the code and the name of the tool that identified it. You can see the line of code that triggered the alert, as well as properties of the alert, such as the severity{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %}, security severity,{% endif %} and the nature of the problem. Alerts also tell you when the issue was first introduced. For alerts identified by {% data variables.product.prodname_codeql %} analysis, you will also see information on how to fix the problem. ![Example alert from {% data variables.product.prodname_code_scanning %}](/assets/images/help/repository/code-scanning-alert.png) @@ -48,9 +49,9 @@ When {% data variables.product.prodname_code_scanning %} reports data-flow alert Alert severity levels may be `Error`, `Warning`, or `Note`. -By default, any code scanning results with a severity of `error` will cause check failure. {% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %}You can specify the severity level at which pull requests that trigger code scanning alerts should fail. For more information, see "[Defining the severities causing pull request check failure](/code-security/secure-coding/configuring-code-scanning#defining-the-severities-causing-pull-request-check-failure)."{% endif %} +By default, any code scanning results with a severity of `error` will cause check failure. {% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %}You can specify the severity level at which pull requests that trigger code scanning alerts should fail. For more information, see "[Defining the severities causing pull request check failure](/code-security/secure-coding/configuring-code-scanning#defining-the-severities-causing-pull-request-check-failure)."{% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %} ### About security severity levels {% data variables.product.prodname_code_scanning_capc %} displays security severity levels for alerts that are generated by security queries. Security severity levels can be `Critical`, `High`, `Medium`, or `Low`. @@ -89,11 +90,11 @@ By default, the code scanning alerts page is filtered to show alerts for the def {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-security %} {% data reusables.repositories.sidebar-code-scanning-alerts %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} 1. Optionally, use the free text search box or the drop-down menus to filter alerts. For example, you can filter by the tool that was used to identify alerts. ![Filter by tool](/assets/images/help/repository/code-scanning-filter-by-tool.png){% endif %} 1. Under "{% data variables.product.prodname_code_scanning_capc %}," click the alert you'd like to explore. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Summary of alerts](/assets/images/help/repository/code-scanning-click-alert.png) {% else %} ![List of alerts from {% data variables.product.prodname_code_scanning %}](/assets/images/enterprise/3.1/help/repository/code-scanning-click-alert.png) @@ -103,7 +104,7 @@ By default, the code scanning alerts page is filtered to show alerts for the def 1. Alerts from {% data variables.product.prodname_codeql %} analysis include a description of the problem. Click **Show more** for guidance on how to fix your code. ![Details for an alert](/assets/images/help/repository/code-scanning-alert-details.png) -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} {% note %} **Note:** For {% data variables.product.prodname_code_scanning %} analysis with {% data variables.product.prodname_codeql %}, you can see information about the latest run in a header at the top of the list of {% data variables.product.prodname_code_scanning %} alerts for the repository. @@ -119,7 +120,7 @@ For example, you can see when the last scan ran, the number of lines of code ana You can filter the alerts shown in the {% data variables.product.prodname_code_scanning %} alerts view. This is useful if there are many alerts as you can focus on a particular type of alert. There are some predefined filters and a range of keywords that you can use to refine the list of alerts displayed. - To use a predefined filter, click **Filters**, or a filter shown in the header of the list of alerts, and choose a filter from the drop-down list. - {% ifversion fpt or ghes > 3.0 %}![Predefined filters](/assets/images/help/repository/code-scanning-predefined-filters.png) + {% ifversion fpt or ghes > 3.0 or ghec %}![Predefined filters](/assets/images/help/repository/code-scanning-predefined-filters.png) {% else %}![Predefined filters](/assets/images/enterprise/3.0/code-scanning-predefined-filters.png){% endif %} - To use a keyword, either type directly in the filters text box, or: 1. Click in the filters text box to show a list of all available filter keywords. @@ -134,7 +135,7 @@ If you enter multiple filters, the view will show alerts matching _all_ these fi You can use the "Only alerts in application code" filter or `autofilter:true` keyword and value to restrict results to alerts in application code. See "[About labels for alerts not in application code](#about-labels-for-alerts-that-are-not-found-in-application-code)" above for more information about the types of code that are not application code. -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} ## Searching {% data variables.product.prodname_code_scanning %} alerts @@ -176,11 +177,11 @@ Anyone with write permission for a repository can fix an alert by committing a c If you have write permission for a repository, you can view fixed alerts by viewing the summary of alerts and clicking **Closed**. For more information, see "[Viewing the alerts for a repository](#viewing-the-alerts-for-a-repository)." The "Closed" list shows fixed alerts and alerts that users have dismissed. -You can use{% ifversion fpt or ghes > 3.1 or ghae-next %} the free text search or{% endif %} the filters to display a subset of alerts and then in turn mark all matching alerts as closed. +You can use{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} the free text search or{% endif %} the filters to display a subset of alerts and then in turn mark all matching alerts as closed. Alerts may be fixed in one branch but not in another. You can use the "Branch" drop-down menu, on the summary of alerts, to check whether an alert is fixed in a particular branch. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Filtering alerts by branch](/assets/images/help/repository/code-scanning-branch-filter.png) {% else %} ![Filtering alerts by branch](/assets/images/enterprise/3.1/help/repository/code-scanning-branch-filter.png) @@ -216,9 +217,9 @@ To dismiss or delete alerts: ![Deleting alerts](/assets/images/help/repository/code-scanning-delete-alerts.png) - Optionally, you can use{% ifversion fpt or ghes > 3.1 or ghae-next %} the free text search or{% endif %} the filters to display a subset of alerts and then delete all matching alerts at once. For example, if you have removed a query from {% data variables.product.prodname_codeql %} analysis, you can use the "Rule" filter to list just the alerts for that query and then select and delete all of those alerts. + Optionally, you can use{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} the free text search or{% endif %} the filters to display a subset of alerts and then delete all matching alerts at once. For example, if you have removed a query from {% data variables.product.prodname_codeql %} analysis, you can use the "Rule" filter to list just the alerts for that query and then select and delete all of those alerts. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Filter alerts by rule](/assets/images/help/repository/code-scanning-filter-by-rule.png) {% else %} ![Filter alerts by rule](/assets/images/enterprise/3.1/help/repository/code-scanning-filter-by-rule.png) @@ -226,7 +227,7 @@ To dismiss or delete alerts: 1. If you want to dismiss an alert, it's important to explore the alert first, so that you can choose the correct dismissal reason. Click the alert you'd like to explore. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Open an alert from the summary list](/assets/images/help/repository/code-scanning-click-alert.png) {% else %} ![List of alerts from {% data variables.product.prodname_code_scanning %}](/assets/images/enterprise/3.1/help/repository/code-scanning-click-alert.png) diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md index 011e3f179a61..18a82c613dea 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -30,7 +31,7 @@ topics: If you're setting up {% data variables.product.prodname_code_scanning %} for a compiled language, and you're building the code in a containerized environment, the analysis may fail with the error message "No source code was seen during the build." This indicates that {% data variables.product.prodname_codeql %} was unable to monitor your code as it was compiled. -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} You must run {% data variables.product.prodname_codeql %} inside the container in which you build your code. This applies whether you are using the {% data variables.product.prodname_codeql_cli %}, the {% data variables.product.prodname_codeql_runner %}, or {% data variables.product.prodname_actions %}. For the {% data variables.product.prodname_codeql_cli %} or the {% data variables.product.prodname_codeql_runner %}, see "[Installing {% data variables.product.prodname_codeql_cli %} in your CI system](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system)" or "[Running {% data variables.product.prodname_codeql_runner %} in your CI system](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)" for more information. If you're using {% data variables.product.prodname_actions %}, configure your workflow to run all the actions in the same container. For more information, see "[Example workflow](#example-workflow)." {% else %} You must run {% data variables.product.prodname_codeql %} inside the container in which you build your code. This applies whether you are using the {% data variables.product.prodname_codeql_runner %} or {% data variables.product.prodname_actions %}. For the {% data variables.product.prodname_codeql_runner %}, see "[Running {% data variables.product.prodname_codeql_runner %} in your CI system](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)" for more information. If you're using {% data variables.product.prodname_actions %}, configure your workflow to run all the actions in the same container. For more information, see "[Example workflow](#example-workflow)." @@ -62,7 +63,7 @@ on: jobs: analyze: name: Analyze - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: security-events: write actions: read{% endif %} diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md index 6dcf0becc95d..f37a5c47cb07 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md @@ -15,6 +15,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -35,14 +36,14 @@ You decide how to generate {% data variables.product.prodname_code_scanning %} a ## Setting up {% data variables.product.prodname_code_scanning %} using actions -{% ifversion fpt %}Using actions to run {% data variables.product.prodname_code_scanning %} will use minutes. For more information, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)."{% endif %} +{% ifversion fpt or ghec %}Using actions to run {% data variables.product.prodname_code_scanning %} will use minutes. For more information, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)."{% endif %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-security %} -3. To the right of "{% data variables.product.prodname_code_scanning_capc %} alerts", click **Set up {% data variables.product.prodname_code_scanning %}**. {% ifversion fpt or ghes > 3.0 or ghae-next %}If {% data variables.product.prodname_code_scanning %} is missing, you need to ask an organization owner or repository administrator to enable {% data variables.product.prodname_GH_advanced_security %}. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)" or "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)."{% endif %} +3. To the right of "{% data variables.product.prodname_code_scanning_capc %} alerts", click **Set up {% data variables.product.prodname_code_scanning %}**. {% ifversion fpt or ghes > 3.0 or ghae-next or ghec %}If {% data variables.product.prodname_code_scanning %} is missing, you need to ask an organization owner or repository administrator to enable {% data variables.product.prodname_GH_advanced_security %}. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)" or "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)."{% endif %} !["Set up {% data variables.product.prodname_code_scanning %}" button to the right of "{% data variables.product.prodname_code_scanning_capc %}" in the Security Overview](/assets/images/help/security/overview-set-up-code-scanning.png) 4. Under "Get started with {% data variables.product.prodname_code_scanning %}", click **Set up this workflow** on the {% data variables.product.prodname_codeql_workflow %} or on a third-party workflow. - !["Set up this workflow" button under "Get started with {% data variables.product.prodname_code_scanning %}" heading](/assets/images/help/repository/code-scanning-set-up-this-workflow.png){% ifversion fpt or ghes > 2.22 or ghae-next %}Workflows are only displayed if they are relevant for the programming languages detected in the repository. The {% data variables.product.prodname_codeql_workflow %} is always displayed, but the "Set up this workflow" button is only enabled if {% data variables.product.prodname_codeql %} analysis supports the languages present in the repository.{% endif %} + !["Set up this workflow" button under "Get started with {% data variables.product.prodname_code_scanning %}" heading](/assets/images/help/repository/code-scanning-set-up-this-workflow.png){% ifversion fpt or ghes > 2.22 or ghae-next or ghec %}Workflows are only displayed if they are relevant for the programming languages detected in the repository. The {% data variables.product.prodname_codeql_workflow %} is always displayed, but the "Set up this workflow" button is only enabled if {% data variables.product.prodname_codeql %} analysis supports the languages present in the repository.{% endif %} 5. To customize how {% data variables.product.prodname_code_scanning %} scans your code, edit the workflow. Generally you can commit the {% data variables.product.prodname_codeql_workflow %} without making any changes to it. However, many of the third-party workflows require additional configuration, so read the comments in the workflow before committing. @@ -85,7 +86,7 @@ After setting up {% data variables.product.prodname_code_scanning %} for your re **Note:** If you raised a pull request to add the {% data variables.product.prodname_code_scanning %} workflow to the repository, alerts from that pull request aren't displayed directly on the {% data variables.product.prodname_code_scanning_capc %} page until the pull request is merged. If any alerts were found you can view these, before the pull request is merged, by clicking the **_n_ alerts found** link in the banner on the {% data variables.product.prodname_code_scanning_capc %} page. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Click the "n alerts found" link](/assets/images/help/repository/code-scanning-alerts-found-link.png) {% else %} ![Click the "n alerts found" link](/assets/images/enterprise/3.1/help/repository/code-scanning-alerts-found-link.png) @@ -101,9 +102,9 @@ The names of the {% data variables.product.prodname_code_scanning %} analysis ch ![{% data variables.product.prodname_code_scanning %} pull request checks](/assets/images/help/repository/code-scanning-pr-checks.png) -When the {% data variables.product.prodname_code_scanning %} jobs complete, {% data variables.product.prodname_dotcom %} works out whether any alerts were added by the pull request and adds the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" entry to the list of checks. After {% data variables.product.prodname_code_scanning %} has been performed at least once, you can click **Details** to view the results of the analysis. If you used a pull request to add {% data variables.product.prodname_code_scanning %} to the repository, you will initially see {% ifversion fpt or ghes > 3.2 or ghae-issue-3891 %}an "Analysis not found"{% else %}a "Missing analysis"{% endif %} message when you click **Details** on the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" check. +When the {% data variables.product.prodname_code_scanning %} jobs complete, {% data variables.product.prodname_dotcom %} works out whether any alerts were added by the pull request and adds the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" entry to the list of checks. After {% data variables.product.prodname_code_scanning %} has been performed at least once, you can click **Details** to view the results of the analysis. If you used a pull request to add {% data variables.product.prodname_code_scanning %} to the repository, you will initially see {% ifversion fpt or ghes > 3.2 or ghae-issue-3891 or ghec %}an "Analysis not found"{% else %}a "Missing analysis"{% endif %} message when you click **Details** on the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" check. -{% ifversion fpt or ghes > 3.2 or ghae-issue-3891 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-3891 or ghec %} ![Analysis not found for commit message](/assets/images/help/repository/code-scanning-analysis-not-found.png) The table lists one or more categories. Each category relates to specific analyses, for the same tool and commit, performed on a different language or a different part of the code. For each category, the table shows the two analyses that {% data variables.product.prodname_code_scanning %} attempted to compare to determine which alerts were introduced or fixed in the pull request. @@ -113,13 +114,13 @@ For example, in the screenshot above, {% data variables.product.prodname_code_sc ![Missing analysis for commit message](/assets/images/enterprise/3.2/repository/code-scanning-missing-analysis.png) {% endif %} -{% ifversion fpt or ghes > 3.2 or ghae-issue-3891 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-3891 or ghec %} ### Reasons for the "Analysis not found" message {% else %} ### Reasons for the "Missing analysis" message {% endif %} -After {% data variables.product.prodname_code_scanning %} has analyzed the code in a pull request, it needs to compare the analysis of the topic branch (the branch you used to create the pull request) with the analysis of the base branch (the branch into which you want to merge the pull request). This allows {% data variables.product.prodname_code_scanning %} to compute which alerts are newly introduced by the pull request, which alerts were already present in the base branch, and whether any existing alerts are fixed by the changes in the pull request. Initially, if you use a pull request to add {% data variables.product.prodname_code_scanning %} to a repository, the base branch has not yet been analyzed, so it's not possible to compute these details. In this case, when you click through from the results check on the pull request you will see the {% ifversion fpt or ghes > 3.2 or ghae-issue-3891 %}"Analysis not found"{% else %}"Missing analysis for base commit SHA-HASH"{% endif %} message. +After {% data variables.product.prodname_code_scanning %} has analyzed the code in a pull request, it needs to compare the analysis of the topic branch (the branch you used to create the pull request) with the analysis of the base branch (the branch into which you want to merge the pull request). This allows {% data variables.product.prodname_code_scanning %} to compute which alerts are newly introduced by the pull request, which alerts were already present in the base branch, and whether any existing alerts are fixed by the changes in the pull request. Initially, if you use a pull request to add {% data variables.product.prodname_code_scanning %} to a repository, the base branch has not yet been analyzed, so it's not possible to compute these details. In this case, when you click through from the results check on the pull request you will see the {% ifversion fpt or ghes > 3.2 or ghae-issue-3891 or ghec %}"Analysis not found"{% else %}"Missing analysis for base commit SHA-HASH"{% endif %} message. There are other situations where there may be no analysis for the latest commit to the base branch for a pull request. These include: @@ -127,7 +128,7 @@ There are other situations where there may be no analysis for the latest commit To check whether a branch has been scanned, go to the {% data variables.product.prodname_code_scanning_capc %} page, click the **Branch** drop-down and select the relevant branch. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) {% else %} ![Choose a branch from the Branch drop-down menu](/assets/images/enterprise/3.1/help/repository/code-scanning-branch-dropdown.png) diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md index aa2d6ea58564..d12a6553fe93 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -27,7 +28,7 @@ topics: ## About {% data variables.product.prodname_code_scanning %} results on pull requests In repositories where {% data variables.product.prodname_code_scanning %} is configured as a pull request check, {% data variables.product.prodname_code_scanning %} checks the code in the pull request. By default, this is limited to pull requests that target the default branch, but you can change this configuration within {% data variables.product.prodname_actions %} or in a third-party CI/CD system. If merging the changes would introduce new {% data variables.product.prodname_code_scanning %} alerts to the target branch, these are reported as check results in the pull request. The alerts are also shown as annotations in the **Files changed** tab of the pull request. If you have write permission for the repository, you can see any existing {% data variables.product.prodname_code_scanning %} alerts on the **Security** tab. For information about repository alerts, see "[Managing {% data variables.product.prodname_code_scanning %} alerts for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)." -{% ifversion fpt or ghes > 3.2 or ghae-issue-5093 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-5093 or ghec %} In repositories where {% data variables.product.prodname_code_scanning %} is configured to scan each time code is pushed, {% data variables.product.prodname_code_scanning %} will also map the results to any open pull requests and add the alerts as annotations in the same places as other pull request checks. For more information, see "[Scanning on push](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#scanning-on-push)." {% endif %} @@ -41,18 +42,18 @@ There are many options for configuring {% data variables.product.prodname_code_s For all configurations of {% data variables.product.prodname_code_scanning %}, the check that contains the results of {% data variables.product.prodname_code_scanning %} is: **{% data variables.product.prodname_code_scanning_capc %} results**. The results for each analysis tool used are shown separately. Any new alerts caused by changes in the pull request are shown as annotations. -{% ifversion fpt or ghes > 3.2 or ghae-issue-4902 %} To see the full set of alerts for the analyzed branch, click **View all branch alerts**. This opens the full alert view where you can filter all the alerts on the branch by type, severity, tag, etc. For more information, see "[Managing code scanning alerts for your repository](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository#filtering-and-searching-for-code-scanning-alerts)." +{% ifversion fpt or ghes > 3.2 or ghae-issue-4902 or ghec %} To see the full set of alerts for the analyzed branch, click **View all branch alerts**. This opens the full alert view where you can filter all the alerts on the branch by type, severity, tag, etc. For more information, see "[Managing code scanning alerts for your repository](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository#filtering-and-searching-for-code-scanning-alerts)." ![{% data variables.product.prodname_code_scanning_capc %} results check on a pull request](/assets/images/help/repository/code-scanning-results-check.png) {% endif %} ### {% data variables.product.prodname_code_scanning_capc %} results check failures -If the {% data variables.product.prodname_code_scanning %} results check finds any problems with a severity of `error`{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %}, `critical`, or `high`,{% endif %} the check fails and the error is reported in the check results. If all the results found by {% data variables.product.prodname_code_scanning %} have lower severities, the alerts are treated as warnings or notes and the check succeeds. +If the {% data variables.product.prodname_code_scanning %} results check finds any problems with a severity of `error`{% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %}, `critical`, or `high`,{% endif %} the check fails and the error is reported in the check results. If all the results found by {% data variables.product.prodname_code_scanning %} have lower severities, the alerts are treated as warnings or notes and the check succeeds. ![Failed {% data variables.product.prodname_code_scanning %} check on a pull request](/assets/images/help/repository/code-scanning-check-failure.png) -{% ifversion fpt or ghes > 3.1 or ghae-next %}You can override the default behavior in your repository settings, by specifying the level of severities {% ifversion fpt or ghes > 3.1 or ghae-issue-4697 %}and security severities {% endif %}that will cause a pull request check failure. For more information, see "[Defining the severities causing pull request check failure](/code-security/secure-coding/configuring-code-scanning#defining-the-severities-causing-pull-request-check-failure)". +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}You can override the default behavior in your repository settings, by specifying the level of severities {% ifversion fpt or ghes > 3.1 or ghae-issue-4697 or ghec %}and security severities {% endif %}that will cause a pull request check failure. For more information, see "[Defining the severities causing pull request check failure](/code-security/secure-coding/configuring-code-scanning#defining-the-severities-causing-pull-request-check-failure)". {% endif %} ### Other {% data variables.product.prodname_code_scanning %} checks diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md index df2c70e8a82e..17c98e9f46a9 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/troubleshooting-the-codeql-workflow.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -46,7 +47,7 @@ If an automatic build of code for a compiled language within your project fails, ```yaml jobs: - analyze:{% ifversion fpt or ghes > 3.1 or ghae-next %} + analyze:{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: security-events: write actions: read{% endif %} @@ -104,7 +105,7 @@ For more information, see the workflow extract in "[Automatic build for a compil For more information about specifying build steps, see "[Configuring the {% data variables.product.prodname_codeql %} workflow for compiled languages](/code-security/secure-coding/configuring-the-codeql-workflow-for-compiled-languages#adding-build-steps-for-a-compiled-language)." -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Lines of code scanned are lower than expected For compiled languages like C/C++, C#, Go, and Java, {% data variables.product.prodname_codeql %} only scans files that are built during the analysis. Therefore the number of lines of code scanned will be lower than expected if some of the source code isn't compiled correctly. This can happen for several reasons: @@ -171,7 +172,7 @@ If you split your analysis into multiple workflows as described above, we still If your analysis is still too slow to be run during `push` or `pull_request` events, then you may want to only trigger analysis on the `schedule` event. For more information, see "[Events](/actions/learn-github-actions/introduction-to-github-actions#events)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Results differ between analysis platforms If you are analyzing code written in Python, you may see different results depending on whether you run the {% data variables.product.prodname_codeql_workflow %} on Linux, macOS, or Windows. @@ -187,10 +188,10 @@ If the run of a workflow for {% data variables.product.prodname_code_scanning %} ## Error: "Out of disk" or "Out of memory" On very large projects, {% data variables.product.prodname_codeql %} may run out of disk or memory on the runner. -{% ifversion fpt %}If you encounter this issue on a hosted {% data variables.product.prodname_actions %} runner, contact {% data variables.contact.contact_support %} so that we can investigate the problem. +{% ifversion fpt or ghec %}If you encounter this issue on a hosted {% data variables.product.prodname_actions %} runner, contact {% data variables.contact.contact_support %} so that we can investigate the problem. {% else %}If you encounter this issue, try increasing the memory on the runner.{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Error: 403 "Resource not accessible by integration" when using {% data variables.product.prodname_dependabot %} {% data variables.product.prodname_dependabot %} is considered untrusted when it triggers a workflow run, and the workflow will run with read-only scopes. Uploading {% data variables.product.prodname_code_scanning %} results for a branch usually requires the `security_events: write` scope. However, {% data variables.product.prodname_code_scanning %} always allows the uploading of results when the `pull_request` event triggers the action run. This is why, for {% data variables.product.prodname_dependabot %} branches, we recommend you use the `pull_request` event instead of the `push` event. diff --git a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/viewing-code-scanning-logs.md b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/viewing-code-scanning-logs.md index dfac84c42786..224584acb77b 100644 --- a/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/viewing-code-scanning-logs.md +++ b/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/viewing-code-scanning-logs.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Security shortTitle: View code scanning logs @@ -22,7 +23,7 @@ shortTitle: View code scanning logs You can use a variety of tools to set up {% data variables.product.prodname_code_scanning %} in your repository. For more information, see "[Setting up {% data variables.product.prodname_code_scanning %} for a repository](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository#options-for-setting-up-code-scanning)." -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} The log and diagnostic information available to you depends on the method you use for {% data variables.product.prodname_code_scanning %} in your repository. You can check the type of {% data variables.product.prodname_code_scanning %} you're using in the **Security** tab of your repository, by using the **Tool** drop-down menu in the alert list. For more information, see "[Managing {% data variables.product.prodname_code_scanning %} alerts for your repository](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository#viewing-the-alerts-for-a-repository)." ## About analysis and diagnostic information @@ -72,7 +73,7 @@ After setting up {% data variables.product.prodname_code_scanning %} for your re **Note:** If you raised a pull request to add the {% data variables.product.prodname_code_scanning %} workflow to the repository, alerts from that pull request aren't displayed directly on the {% data variables.product.prodname_code_scanning_capc %} page until the pull request is merged. If any alerts were found you can view these, before the pull request is merged, by clicking the **_n_ alerts found** link in the banner on the {% data variables.product.prodname_code_scanning_capc %} page. -{% ifversion fpt or ghes > 3.1 or ghae %} +{% ifversion fpt or ghes > 3.1 or ghae or ghec %} ![Click the "n alerts found" link](/assets/images/help/repository/code-scanning-alerts-found-link.png) {% else %} ![Click the "n alerts found" link](/assets/images/enterprise/3.1/help/repository/code-scanning-alerts-found-link.png) diff --git a/content/code-security/code-scanning/index.md b/content/code-security/code-scanning/index.md index 3d30116bda43..462ba03da4f7 100644 --- a/content/code-security/code-scanning/index.md +++ b/content/code-security/code-scanning/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Advanced Security - Code scanning diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md b/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md index eb1c000b1796..ba3df3d719a1 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/about-integration-with-code-scanning.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: overview topics: - Advanced Security diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/index.md b/content/code-security/code-scanning/integrating-with-code-scanning/index.md index 61821bb498c7..b40760077f26 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/index.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Advanced Security - Code scanning diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md b/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md index daf59f99e2a8..d8c4c39633c5 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: reference topics: - Advanced Security @@ -33,10 +34,10 @@ To upload a SARIF file from a third-party static code analysis engine, you'll ne If you're using {% data variables.product.prodname_actions %} with the {% data variables.product.prodname_codeql_workflow %} or using the {% data variables.product.prodname_codeql_runner %}, then the {% data variables.product.prodname_code_scanning %} results will automatically use the supported subset of SARIF 2.1.0. For more information, see "[Setting up {% data variables.product.prodname_code_scanning %} for a repository](/code-security/secure-coding/setting-up-code-scanning-for-a-repository)" or "[Running {% data variables.product.prodname_codeql_runner %} in your CI system](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)." -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} If you're using the {% data variables.product.prodname_codeql_cli %}, then you can specify the version of SARIF to use. For more information, see "[Configuring {% data variables.product.prodname_codeql_cli %} in your CI system](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system#analyzing-a-codeql-database)."{% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} You can upload multiple SARIF files for the same tool and commit, and analyze each file using {% data variables.product.prodname_code_scanning %}. You can indicate a "category" for each analysis by specifying a `runAutomationDetails.id` in each file. Only SARIF files with the same category will overwrite each other. For more information about this property, see [`runAutomationDetails` object](#runautomationdetails-object) below. {% endif %} @@ -100,7 +101,7 @@ Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.pr | `help.text` | **Required.** Documentation for the rule using text format. {% data variables.product.prodname_code_scanning_capc %} displays this help documentation next to the associated results. | `help.markdown` | **Recommended.** Documentation for the rule using Markdown format. {% data variables.product.prodname_code_scanning_capc %} displays this help documentation next to the associated results. When `help.markdown` is available, it is displayed instead of `help.text`. | `properties.tags[]` | **Optional.** An array of strings. {% data variables.product.prodname_code_scanning_capc %} uses `tags` to allow you to filter results on {% data variables.product.prodname_dotcom %}. For example, it is possible to filter to all results that have the tag `security`. -| `properties.precision` | **Recommended.** A string that indicates how often the results indicated by this rule are true. For example, if a rule has a known high false-positive rate, the precision should be `low`. {% data variables.product.prodname_code_scanning_capc %} orders results by precision on {% data variables.product.prodname_dotcom %} so that the results with the highest `level`, and highest `precision` are shown first. Can be one of: `very-high`, `high`, `medium`, or `low`. {% ifversion fpt or ghes > 3.1 or ghae-next %} +| `properties.precision` | **Recommended.** A string that indicates how often the results indicated by this rule are true. For example, if a rule has a known high false-positive rate, the precision should be `low`. {% data variables.product.prodname_code_scanning_capc %} orders results by precision on {% data variables.product.prodname_dotcom %} so that the results with the highest `level`, and highest `precision` are shown first. Can be one of: `very-high`, `high`, `medium`, or `low`. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} | `properties.problem.severity` | **Recommended.** A string that indicates the level of severity of any alerts generated by a non-security query. This, with the `properties.precision` property, determines whether the results are displayed by default on {% data variables.product.prodname_dotcom %} so that the results with the highest `problem.severity`, and highest `precision` are shown first. Can be one of: `error`, `warning`, or `recommendation`. | `properties.security-severity` | **Recommended.** A score that indicates the level of severity, between 0.0 and 10.0, for security queries (`@tags` includes `security`). This, with the `properties.precision` property, determines whether the results are displayed by default on {% data variables.product.prodname_dotcom %} so that the results with the highest `security-severity`, and highest `precision` are shown first. {% data variables.product.prodname_code_scanning_capc %} translates numerical scores as follows: over 9.0 is `critical`, 7.0 to 8.9 is `high`, 4.0 to 6.9 is `medium` and 3.9 or less is `low`. {% endif %} @@ -140,7 +141,7 @@ A location within a programming artifact, such as a file in the repository or a | `region.endLine` | **Required.** The line number of the last character in the region. | `region.endColumn` | **Required.** The column number of the character following the end of the region. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ### `runAutomationDetails` object The `runAutomationDetails` object contains information that specifies the identity of a run. @@ -244,7 +245,7 @@ This SARIF output file has example values to show the minimum required propertie This SARIF output file has example values to show all supported SARIF properties for {% data variables.product.prodname_code_scanning %}. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ```json { "$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json", diff --git a/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md b/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md index d7e4d62b25a3..1a0fa0fd48af 100644 --- a/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md +++ b/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -35,10 +36,10 @@ topics: You can generate SARIF files using many static analysis security testing tools, including {% data variables.product.prodname_codeql %}. The results must use SARIF version 2.1.0. For more information, see "[SARIF support for {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/sarif-support-for-code-scanning)." -You can upload the results using {% data variables.product.prodname_actions %}, the {% data variables.product.prodname_code_scanning %} API, {% ifversion fpt or ghes > 3.0 or ghae-next %}the {% data variables.product.prodname_codeql_cli %}, {% endif %}or the {% data variables.product.prodname_codeql_runner %}. The best upload method will depend on how you generate the SARIF file, for example, if you use: +You can upload the results using {% data variables.product.prodname_actions %}, the {% data variables.product.prodname_code_scanning %} API, {% ifversion fpt or ghes > 3.0 or ghae-next or ghec %}the {% data variables.product.prodname_codeql_cli %}, {% endif %}or the {% data variables.product.prodname_codeql_runner %}. The best upload method will depend on how you generate the SARIF file, for example, if you use: - {% data variables.product.prodname_actions %} to run the {% data variables.product.prodname_codeql %} action, there is no further action required. The {% data variables.product.prodname_codeql %} action uploads the SARIF file automatically when it completes analysis. -- {% data variables.product.prodname_actions %} to run a SARIF-compatible analysis tool, you could update the workflow to include a final step that uploads the results (see below). {% ifversion fpt or ghes > 3.0 or ghae-next %} +- {% data variables.product.prodname_actions %} to run a SARIF-compatible analysis tool, you could update the workflow to include a final step that uploads the results (see below). {% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} - The {% data variables.product.prodname_codeql_cli %} to run {% data variables.product.prodname_code_scanning %} in your CI system, you can use the CLI to upload results to {% data variables.product.prodname_dotcom %} (for more information, see "[Installing {% data variables.product.prodname_codeql_cli %} in your CI system](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system)").{% endif %} - The {% data variables.product.prodname_codeql_runner %}, to run {% data variables.product.prodname_code_scanning %} in your CI system, by default the runner automatically uploads results to {% data variables.product.prodname_dotcom %} on completion. If you block the automatic upload, when you are ready to upload results you can use the `upload` command (for more information, see "[Running {% data variables.product.prodname_codeql_runner %} in your CI system](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)"). - A tool that generates results as an artifact outside of your repository, you can use the {% data variables.product.prodname_code_scanning %} API to upload the file (for more information, see "[Upload an analysis as SARIF data](/rest/reference/code-scanning#upload-an-analysis-as-sarif-data)"). @@ -79,7 +80,7 @@ on: jobs: build: - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: security-events: write{% endif %} steps: @@ -113,7 +114,7 @@ on: jobs: build: - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: security-events: write{% endif %} steps: diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system.md index e5d56f0e300c..1dd9633b1339 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/about-codeql-code-scanning-in-your-ci-system.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Advanced Security - Code scanning @@ -31,7 +32,7 @@ redirect_from: You can run {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %} within {% data variables.product.product_name %} using {% data variables.product.prodname_actions %}. Alternatively, if you use a third-party continuous integration or continuous delivery/deployment (CI/CD) system, you can run {% data variables.product.prodname_codeql %} analysis in your existing system and upload the results to {% data variables.product.product_location %}. -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} You add the {% data variables.product.prodname_codeql_cli %} to your third-party system, then call the tool to analyze code and upload the SARIF results to {% data variables.product.product_name %}. The resulting {% data variables.product.prodname_code_scanning %} alerts are shown alongside any alerts generated within {% data variables.product.product_name %}. diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md index 3d512a30b45a..df5c0646bce7 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: next + ghec: '*' type: how_to topics: - Advanced Security @@ -29,7 +30,7 @@ Once you've made the {% data variables.product.prodname_codeql_cli %} available You use three different commands to generate results and upload them to {% data variables.product.product_name %}: -{% ifversion fpt or ghes > 3.1 or ghae %} +{% ifversion fpt or ghes > 3.1 or ghae or ghec %} 1. `database create` to create a {% data variables.product.prodname_codeql %} database to represent the hierarchical structure of each supported programming language in the repository. 2. ` database analyze` to run queries to analyze each {% data variables.product.prodname_codeql %} database and summarize the results in a SARIF file. @@ -53,7 +54,7 @@ You can display the command-line help for any command using the `--help` 3.1 or ghae %} + {% ifversion fpt or ghes > 3.1 or ghae or ghec %} ```shell # Single supported language - create one CodeQL databsae codeql database create <database> --command<build> --language=<language-identifier> @@ -76,15 +77,15 @@ You can display the command-line help for any command using the `--help`` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the name and location of a directory to create for the {% data variables.product.prodname_codeql %} database. The command will fail if you try to overwrite an existing directory. If you also specify `--db-cluster`, this is the parent directory and a subdirectory is created for each language analyzed.| -| `--language` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the identifier for the language to create a database for, one of: `{% data reusables.code-scanning.codeql-languages-keywords %}` (use `javascript` to analyze TypeScript code). {% ifversion fpt or ghes > 3.1 or ghae %}When used with `--db-cluster`, the option accepts a comma-separated list, or can be specified more than once.{% endif %} -| `--command` | | Recommended. Use to specify the build command or script that invokes the build process for the codebase. Commands are run from the current folder or, where it is defined, from `--source-root`. Not needed for Python and JavaScript/TypeScript analysis. | {% ifversion fpt or ghes > 3.1 or ghae %} +| `--language` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the identifier for the language to create a database for, one of: `{% data reusables.code-scanning.codeql-languages-keywords %}` (use `javascript` to analyze TypeScript code). {% ifversion fpt or ghes > 3.1 or ghae or ghec %}When used with `--db-cluster`, the option accepts a comma-separated list, or can be specified more than once.{% endif %} +| `--command` | | Recommended. Use to specify the build command or script that invokes the build process for the codebase. Commands are run from the current folder or, where it is defined, from `--source-root`. Not needed for Python and JavaScript/TypeScript analysis. | {% ifversion fpt or ghes > 3.1 or ghae or ghec %} | `--db-cluster` | | Optional. Use in multi-language codebases to generate one database for each language specified by `--language`. | `--no-run-unnecessary-builds` | | Recommended. Use to suppress the build command for languages where the {% data variables.product.prodname_codeql_cli %} does not need to monitor the build (for example, Python and JavaScript/TypeScript). {% endif %} | `--source-root` | | Optional. Use if you run the CLI outside the checkout root of the repository. By default, the `database create` command assumes that the current directory is the root directory for the source files, use this option to specify a different location. | For more information, see [Creating {% data variables.product.prodname_codeql %} databases](https://codeql.github.com/docs/codeql-cli/creating-codeql-databases/) in the documentation for the {% data variables.product.prodname_codeql_cli %}. -### {% ifversion fpt or ghes > 3.1 or ghae %}Single language example{% else %}Basic example{% endif %} +### {% ifversion fpt or ghes > 3.1 or ghae or ghec %}Single language example{% else %}Basic example{% endif %} This example creates a {% data variables.product.prodname_codeql %} database for the repository checked out at `/checkouts/example-repo`. It uses the JavaScript extractor to create a hierarchical representation of the JavaScript and TypeScript code in the repository. The resulting database is stored in `/codeql-dbs/example-repo`. @@ -102,7 +103,7 @@ $ codeql database create /codeql-dbs/example-repo --language=javascript \ > Successfully created database at /codeql-dbs/example-repo. ``` -{% ifversion fpt or ghes > 3.1 or ghae %} +{% ifversion fpt or ghes > 3.1 or ghae or ghec %} ### Multiple language example This example creates two {% data variables.product.prodname_codeql %} databases for the repository checked out at `/checkouts/example-repo-multi`. It uses: @@ -149,7 +150,7 @@ $ --output=<output> {% if codeql-packs %}<packs,queries>{% else %} <queries>{% endif %} ``` -{% ifversion fpt or ghes > 3.1 or ghae %} +{% ifversion fpt or ghes > 3.1 or ghae or ghec %} {% note %} **Note:** If you analyze more than one {% data variables.product.prodname_codeql %} database for a single commit, you must specify a SARIF category for each set of results generated by this command. When you upload the results to {% data variables.product.product_name %}, {% data variables.product.prodname_code_scanning %} uses this category to store the results for each language separately. If you forget to do this, each upload overwrites the previous results. @@ -166,23 +167,23 @@ codeql database analyze <database> --format=<format> \ |--------|:--------:|-----| | `` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the path for the directory that contains the {% data variables.product.prodname_codeql %} database to analyze. | | `` | | Specify {% data variables.product.prodname_codeql %} packs or queries to run. To run the standard queries used for {% data variables.product.prodname_code_scanning %}, omit this parameter. To see the other query suites included in the {% data variables.product.prodname_codeql_cli %} bundle, look in `//codeql/qlpacks/codeql-/codeql-suites`. For information about creating your own query suite, see [Creating CodeQL query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/) in the documentation for the {% data variables.product.prodname_codeql_cli %}. -| `--format` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the format for the results file generated by the command. For upload to {% data variables.product.company_short %} this should be: {% ifversion fpt or ghae %}`sarif-latest`{% else %}`sarifv2.1.0`{% endif %}. For more information, see "[SARIF support for {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/sarif-support-for-code-scanning)." -| `--output` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify where to save the SARIF results file.{% ifversion fpt or ghes > 3.1 or ghae %} +| `--format` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the format for the results file generated by the command. For upload to {% data variables.product.company_short %} this should be: {% ifversion fpt or ghae or ghec %}`sarif-latest`{% else %}`sarifv2.1.0`{% endif %}. For more information, see "[SARIF support for {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/sarif-support-for-code-scanning)." +| `--output` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify where to save the SARIF results file.{% ifversion fpt or ghes > 3.1 or ghae or ghec %} | `--sarif-category` | {% octicon "question" aria-label="Required with multiple results sets" %} | Optional for single database analysis. Required to define the language when you analyze multiple databases for a single commit in a repository. Specify a category to include in the SARIF results file for this analysis. A category is used to distinguish multiple analyses for the same tool and commit, but performed on different languages or different parts of the code.|{% endif %}{% if codeql-packs %} | `` | | Optional. Use if you have downloaded CodeQL query packs and want to run the default queries or query suites specified in the packs. For more information, see "[Downloading and using {% data variables.product.prodname_codeql %} packs](#downloading-and-using-codeql-query-packs)."{% endif %} | `--threads` | | Optional. Use if you want to use more than one thread to run queries. The default value is `1`. You can specify more threads to speed up query execution. To set the number of threads to the number of logical processors, specify `0`. -| `--verbose` | | Optional. Use to get more detailed information about the analysis process{% ifversion fpt or ghes > 3.1 or ghae %} and diagnostic data from the database creation process{% endif %}. +| `--verbose` | | Optional. Use to get more detailed information about the analysis process{% ifversion fpt or ghes > 3.1 or ghae or ghec %} and diagnostic data from the database creation process{% endif %}. For more information, see [Analyzing databases with the {% data variables.product.prodname_codeql_cli %}](https://codeql.github.com/docs/codeql-cli/analyzing-databases-with-the-codeql-cli/) in the documentation for the {% data variables.product.prodname_codeql_cli %}. ### Basic example -This example analyzes a {% data variables.product.prodname_codeql %} database stored at `/codeql-dbs/example-repo` and saves the results as a SARIF file: `/temp/example-repo-js.sarif`. {% ifversion fpt or ghes > 3.1 or ghae %}It uses `--sarif-category` to include extra information in the SARIF file that identifies the results as JavaScript. This is essential when you have more than one {% data variables.product.prodname_codeql %} database to analyze for a single commit in a repository.{% endif %} +This example analyzes a {% data variables.product.prodname_codeql %} database stored at `/codeql-dbs/example-repo` and saves the results as a SARIF file: `/temp/example-repo-js.sarif`. {% ifversion fpt or ghes > 3.1 or ghae or ghec %}It uses `--sarif-category` to include extra information in the SARIF file that identifies the results as JavaScript. This is essential when you have more than one {% data variables.product.prodname_codeql %} database to analyze for a single commit in a repository.{% endif %} ``` $ codeql database analyze /codeql-dbs/example-repo \ - javascript-code-scanning.qls {% ifversion fpt or ghes > 3.1 or ghae %}--sarif-category=javascript{% endif %} - --format={% ifversion fpt or ghae %}sarif-latest{% else %}sarifv2.1.0{% endif %} --output=/temp/example-repo-js.sarif + javascript-code-scanning.qls {% ifversion fpt or ghes > 3.1 or ghae or ghec %}--sarif-category=javascript{% endif %} + --format={% ifversion fpt or ghae or ghec %}sarif-latest{% else %}sarifv2.1.0{% endif %} --output=/temp/example-repo-js.sarif > Running queries. > Compiling query plan for /codeql-home/codeql/qlpacks/ @@ -211,7 +212,7 @@ When you have decided on the most secure and reliable method for your CI server, | Option | Required | Usage | |--------|:--------:|-----| -| `--repository` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the *OWNER/NAME* of the repository to upload data to. The owner must be an organization within an enterprise that has a license for {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_GH_advanced_security %} must be enabled for the repository{% ifversion fpt %}, unless the repository is public{% endif %}. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)." +| `--repository` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the *OWNER/NAME* of the repository to upload data to. The owner must be an organization within an enterprise that has a license for {% data variables.product.prodname_GH_advanced_security %} and {% data variables.product.prodname_GH_advanced_security %} must be enabled for the repository{% ifversion fpt or ghec %}, unless the repository is public{% endif %}. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)." | `--ref` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the name of the `ref` you checked out and analyzed so that the results can be matched to the correct code. For a branch use: `refs/heads/BRANCH-NAME`, for the head commit of a pull request use `refs/pulls/NUMBER/head`, or for the {% data variables.product.prodname_dotcom %}-generated merge commit of a pull request use `refs/pulls/NUMBER/merge`. | `--commit` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the full SHA of the commit you analyzed. | `--sarif` | {% octicon "check-circle-fill" aria-label="Required" %} | Specify the SARIF file to load.{% ifversion ghes > 3.0 or ghae %} @@ -274,7 +275,7 @@ $ codeql database analyze /codeql-dbs/example-repo octo-org/security-queries \ ``` {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Example CI configuration for {% data variables.product.prodname_codeql %} analysis @@ -328,7 +329,7 @@ If you want to upload more than one set of results to the {% data variables.prod ### Alternative if your CI system cannot trigger the {% data variables.product.prodname_codeql_cli %} -{% ifversion fpt or ghes > 3.2 or ghae-next %} +{% ifversion fpt or ghes > 3.2 or ghae-next or ghec %} If your CI system cannot trigger the {% data variables.product.prodname_codeql_cli %} autobuild and you cannot specify a command line for the build, you can use indirect build tracing to create {% data variables.product.prodname_codeql %} databases for compiled languages. For more information, see [Using indirect build tracing](https://codeql.github.com/docs/codeql-cli/creating-codeql-databases/#using-indirect-build-tracing) in the documentation for the {% data variables.product.prodname_codeql_cli %}. diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md index 9c57c5274ca7..5c28a3bab6cb 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-runner-in-your-ci-system.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -190,7 +191,7 @@ Analyzes the code in the {% data variables.product.prodname_codeql %} databases | `--no-upload` | | None. Stops the {% data variables.product.prodname_codeql_runner %} from uploading the results to {% data variables.product.product_name %}. | | `--output-dir` | | Directory where the output SARIF files are stored. The default is in the directory of temporary files. | | `--ram` | | Amount of memory to use when running queries. The default is to use all available memory. | -| `--no-add-snippets` | | None. Excludes code snippets from the SARIF output. |{% ifversion fpt or ghes > 3.1 or ghae %} +| `--no-add-snippets` | | None. Excludes code snippets from the SARIF output. |{% ifversion fpt or ghes > 3.1 or ghae or ghec %} | `--category` | | Category to include in the SARIF results file for this analysis. A category can be used to distinguish multiple analyses for the same tool and commit, but performed on different languages or different parts of the code. This value will appear in the `.automationDetails.id` property in SARIF v2.1.0. |{% endif %} | `--threads` | | Number of threads to use when running queries. The default is to use all available cores. | | `--temp-dir` | | Directory where temporary files are stored. The default is `./codeql-runner`. | diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/index.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/index.md index a67fbe7c1a9e..772c3852134d 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/index.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system.md index c0f4592532b5..6c8749f755fb 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: next + ghec: '*' type: how_to topics: - Advanced Security @@ -52,7 +53,7 @@ You should always use the {% data variables.product.prodname_codeql %} bundle as You need to make the full contents of the {% data variables.product.prodname_codeql_cli %} bundle available to every CI server that you want to run CodeQL {% data variables.product.prodname_code_scanning %} analysis on. For example, you might configure each server to copy the bundle from a central, internal location and extract it. Alternatively, you could use the REST API to get the bundle directly from {% data variables.product.prodname_dotcom %}, ensuring that you benefit from the latest improvements to queries. Updates to the {% data variables.product.prodname_codeql_cli %} are released every 2-3 weeks. For example: ```shell -$ wget https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action/releases/latest/download/codeql-bundle-linux64.tar.gz +$ wget https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action/releases/latest/download/codeql-bundle-linux64.tar.gz $ tar -xvzf ../codeql-bundle-linux64.tar.gz ``` diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/migrating-from-the-codeql-runner-to-codeql-cli.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/migrating-from-the-codeql-runner-to-codeql-cli.md index 11af057ab4a4..284dcbd0e042 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/migrating-from-the-codeql-runner-to-codeql-cli.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/migrating-from-the-codeql-runner-to-codeql-cli.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: 'next' + ghec: '*' topics: - Advanced Security - Code scanning diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system.md index 991e7148576b..e632438de782 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security @@ -35,7 +36,7 @@ topics: The {% data variables.product.prodname_codeql_runner %} is a tool you can use to run {% data variables.product.prodname_code_scanning %} on code that you're processing in a third-party continuous integration (CI) system. {% data reusables.code-scanning.about-code-scanning %} For information, see "[About {% data variables.product.prodname_code_scanning %} with {% data variables.product.prodname_codeql %}](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql)." -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} In many cases it is easier to set up {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %} using the {% data variables.product.prodname_codeql_cli %} directly in your CI system. {% endif %} @@ -46,7 +47,7 @@ The {% data variables.product.prodname_codeql_runner %} is a command-line tool t {% note %} **Note:** -{% ifversion fpt %} +{% ifversion fpt or ghec %} * The {% data variables.product.prodname_codeql_runner %} uses the {% data variables.product.prodname_codeql %} CLI to analyze code and therefore has the same license conditions. It's free to use on public repositories that are maintained on {% data variables.product.prodname_dotcom_the_website %}, and available to use on private repositories that are owned by customers with an {% data variables.product.prodname_advanced_security %} license. For information, see "[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} Terms and Conditions](https://securitylab.github.com/tools/codeql/license)" and "[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)." {% else %} * The {% data variables.product.prodname_codeql_runner %} is available to customers with an {% data variables.product.prodname_advanced_security %} license. @@ -59,7 +60,7 @@ For more information, see "[{% data variables.product.prodname_codeql_cli %}](ht ## Downloading the {% data variables.product.prodname_codeql_runner %} -You can download the {% data variables.product.prodname_codeql_runner %} from https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action/releases. On some operating systems, you may need to change permissions for the downloaded file before you can run it. +You can download the {% data variables.product.prodname_codeql_runner %} from https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action/releases. On some operating systems, you may need to change permissions for the downloaded file before you can run it. On Linux: @@ -81,7 +82,7 @@ On Windows, the `codeql-runner-win.exe` file usually requires no change to permi Once you download the {% data variables.product.prodname_codeql_runner %} and verify that it can be executed, you should make the runner available to each CI server that you intend to use for {% data variables.product.prodname_code_scanning %}. For example, you might configure each server to copy the runner from a central, internal location. Alternatively, you could use the REST API to get the runner directly from {% data variables.product.prodname_dotcom %}, for example: ```shell -wget https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action/releases/latest/download/codeql-runner-linux +wget https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action/releases/latest/download/codeql-runner-linux chmod +x codeql-runner-linux ``` @@ -92,7 +93,7 @@ In addition to this, each CI server also needs: The options for providing access to the {% data variables.product.prodname_codeql %} bundle are: -1. Allow the CI servers access to https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action so that the {% data variables.product.prodname_codeql_runner %} can download the bundle automatically. +1. Allow the CI servers access to https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/github/codeql-action so that the {% data variables.product.prodname_codeql_runner %} can download the bundle automatically. 1. Manually download/extract the bundle, store it with other central resources, and use the `--codeql-path` flag to specify the location of the bundle in calls to initialize the {% data variables.product.prodname_codeql_runner %}. ## Calling the {% data variables.product.prodname_codeql_runner %} diff --git a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/troubleshooting-codeql-runner-in-your-ci-system.md b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/troubleshooting-codeql-runner-in-your-ci-system.md index 294c91db5293..b806f8083b90 100644 --- a/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/troubleshooting-codeql-runner-in-your-ci-system.md +++ b/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/troubleshooting-codeql-runner-in-your-ci-system.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Advanced Security diff --git a/content/code-security/getting-started/adding-a-security-policy-to-your-repository.md b/content/code-security/getting-started/adding-a-security-policy-to-your-repository.md index 89a08c153104..9eb7215f1ecc 100644 --- a/content/code-security/getting-started/adding-a-security-policy-to-your-repository.md +++ b/content/code-security/getting-started/adding-a-security-policy-to-your-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: next + ghec: '*' type: how_to topics: - Security policies @@ -20,7 +21,7 @@ shortTitle: Add a security policy ## About security policies -To give people instructions for reporting security vulnerabilities in your project,{% ifversion fpt or ghes > 3.0 %} you can add a _SECURITY.md_ file to your repository's root, `docs`, or `.github` folder.{% else %} you can add a _SECURITY.md_ file to your repository's root, or `docs` folder.{% endif %} When someone creates an issue in your repository, they will see a link to your project's security policy. +To give people instructions for reporting security vulnerabilities in your project,{% ifversion fpt or ghes > 3.0 or ghec %} you can add a _SECURITY.md_ file to your repository's root, `docs`, or `.github` folder.{% else %} you can add a _SECURITY.md_ file to your repository's root, or `docs` folder.{% endif %} When someone creates an issue in your repository, they will see a link to your project's security policy. {% ifversion not ghae %} @@ -33,7 +34,7 @@ You can create a default security policy for your organization or user account. {% endtip %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} After someone reports a security vulnerability in your project, you can use {% data variables.product.prodname_security_advisories %} to disclose, fix, and publish information about the vulnerability. For more information about the process of reporting and disclosing vulnerabilities in {% data variables.product.prodname_dotcom %}, see "[About coordinated disclosure of security vulnerabilities](/code-security/security-advisories/about-coordinated-disclosure-of-security-vulnerabilities#about-reporting-and-disclosing-vulnerabilities-in-projects-on-github)." For more information about {% data variables.product.prodname_security_advisories %}, see "[About {% data variables.product.prodname_security_advisories %}](/github/managing-security-vulnerabilities/about-github-security-advisories)." {% data reusables.repositories.github-security-lab %} @@ -60,5 +61,5 @@ By making security reporting instructions clearly available, you make it easy fo ## Further reading - "[Securing your repository](/code-security/getting-started/securing-your-repository)"{% ifversion not ghae %} -- "[Setting up your project for healthy contributions](/communities/setting-up-your-project-for-healthy-contributions)"{% endif %}{% ifversion fpt %} +- "[Setting up your project for healthy contributions](/communities/setting-up-your-project-for-healthy-contributions)"{% endif %}{% ifversion fpt or ghec %} - [{% data variables.product.prodname_security %}]({% data variables.product.prodname_security_link %}){% endif %} diff --git a/content/code-security/getting-started/github-security-features.md b/content/code-security/getting-started/github-security-features.md index 21524f7ca5f6..2988766efb02 100644 --- a/content/code-security/getting-started/github-security-features.md +++ b/content/code-security/getting-started/github-security-features.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: overview topics: - Repositories @@ -15,20 +16,20 @@ topics: ## About {% data variables.product.prodname_dotcom %}'s security features -{% data variables.product.prodname_dotcom %} has security features that help keep code and secrets secure in repositories and across organizations. Some features are available for all repositories and others are only available {% ifversion fpt %}for public repositories and for repositories {% endif %}with a {% data variables.product.prodname_GH_advanced_security %} license. +{% data variables.product.prodname_dotcom %} has security features that help keep code and secrets secure in repositories and across organizations. Some features are available for all repositories and others are only available {% ifversion fpt or ghec %}for public repositories and for repositories {% endif %}with a {% data variables.product.prodname_GH_advanced_security %} license. The {% data variables.product.prodname_advisory_database %} contains a curated list of security vulnerabilities that you can view, search, and filter. {% data reusables.security-advisory.link-browsing-advisory-db %} -{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} ## Available for all repositories {% endif %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} ### Security policy Make it easy for your users to confidentially report security vulnerabilities they've found in your repository. For more information, see "[Adding a security policy to your repository](/code-security/getting-started/adding-a-security-policy-to-your-repository)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Security advisories Privately discuss and fix security vulnerabilities in your repository's code. You can then publish a security advisory to alert your community to the vulnerability and encourage community members to upgrade. For more information, see "[About {% data variables.product.prodname_security_advisories %}](/github/managing-security-vulnerabilities/about-github-security-advisories)." @@ -47,25 +48,25 @@ and "[About {% data variables.product.prodname_dependabot_security_updates %}](/ View alerts about dependencies that are known to contain security vulnerabilities, and manage these alerts. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### {% data variables.product.prodname_dependabot %} version updates Use {% data variables.product.prodname_dependabot %} to automatically raise pull requests to keep your dependencies up-to-date. This helps reduce your exposure to older versions of dependencies. Using newer versions makes it easier to apply patches if security vulnerabilities are discovered, and also makes it easier for {% data variables.product.prodname_dependabot_security_updates %} to successfully raise pull requests to upgrade vulnerable dependencies. For more information, see "[About {% data variables.product.prodname_dependabot_version_updates %}](/github/administering-a-repository/about-dependabot-version-updates)." {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} ### Dependency graph The dependency graph allows you to explore the ecosystems and packages that your repository depends on and the repositories and packages that depend on your repository. You can find the dependency graph on the **Insights** tab for your repository. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} -## Available {% ifversion fpt %}for public repositories and for repositories {% endif %}with {% data variables.product.prodname_advanced_security %} +## Available {% ifversion fpt or ghec %}for public repositories and for repositories {% endif %}with {% data variables.product.prodname_advanced_security %} -{% ifversion fpt or ghes > 2.22 %} -These features are available {% ifversion fpt %}for all public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. {% data reusables.advanced-security.more-info-ghas %} +{% ifversion fpt or ghes > 2.22 or ghec %} +These features are available {% ifversion fpt or ghec %}for all public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. {% data reusables.advanced-security.more-info-ghas %} {% endif %} ### {% data variables.product.prodname_code_scanning_capc %} alerts @@ -74,11 +75,11 @@ Automatically detect security vulnerabilities and coding errors in new or modifi ### {% data variables.product.prodname_secret_scanning_caps %} alerts -{% ifversion fpt %}For private repositories, view {% else %}View {% endif %}any secrets that {% data variables.product.prodname_dotcom %} has found in your code. You should treat tokens or credentials that have been checked into the repository as compromised. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." +{% ifversion fpt or ghec %}For private repositories, view {% else %}View {% endif %}any secrets that {% data variables.product.prodname_dotcom %} has found in your code. You should treat tokens or credentials that have been checked into the repository as compromised. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 or ghec %} ### Dependency review Show the full impact of changes to dependencies and see details of any vulnerable versions before you merge a pull request. For more information, see "[About dependency review](/code-security/supply-chain-security/about-dependency-review)." diff --git a/content/code-security/getting-started/index.md b/content/code-security/getting-started/index.md index 836a8c676da4..1059d2ad83f8 100644 --- a/content/code-security/getting-started/index.md +++ b/content/code-security/getting-started/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Repositories - Dependencies diff --git a/content/code-security/getting-started/securing-your-organization.md b/content/code-security/getting-started/securing-your-organization.md index 06e5dc9aebe3..218502ecb5af 100644 --- a/content/code-security/getting-started/securing-your-organization.md +++ b/content/code-security/getting-started/securing-your-organization.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Organizations @@ -18,13 +19,13 @@ shortTitle: Secure your organization ## Introduction This guide shows you how to configure security features for an organization. Your organization's security needs are unique and you may not need to enable every security feature. For more information, see "[{% data variables.product.prodname_dotcom %} security features](/code-security/getting-started/github-security-features)." -Some security features are only available {% ifversion fpt %}for public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. {% data reusables.advanced-security.more-info-ghas %} +Some security features are only available {% ifversion fpt or ghec %}for public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. {% data reusables.advanced-security.more-info-ghas %} ## Managing access to your organization You can use permission levels to control what actions people can take in your organization. For more information, see "[Permission levels for an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/permission-levels-for-an-organization)." -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} ## Creating a default security policy @@ -32,10 +33,10 @@ You can create a default security policy that will display in any of your organi {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} ## Managing {% data variables.product.prodname_dependabot_alerts %} and the dependency graph -{% ifversion fpt %}By default, {% data variables.product.prodname_dotcom %} detects vulnerabilities in public repositories and generates {% data variables.product.prodname_dependabot_alerts %} and a dependency graph. You can enable or disable {% data variables.product.prodname_dependabot_alerts %} and the dependency graph for all private repositories owned by your organization. +{% ifversion fpt or ghec %}By default, {% data variables.product.prodname_dotcom %} detects vulnerabilities in public repositories and generates {% data variables.product.prodname_dependabot_alerts %} and a dependency graph. You can enable or disable {% data variables.product.prodname_dependabot_alerts %} and the dependency graph for all private repositories owned by your organization. 1. Click your profile photo, then click **Organizations**. 2. Click **Settings** next to your organization. @@ -50,18 +51,18 @@ You can create a default security policy that will display in any of your organi For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)," "[Exploring the dependencies of a repository](/code-security/supply-chain-security/exploring-the-dependencies-of-a-repository#enabling-and-disabling-the-dependency-graph-for-a-private-repository)," and "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 or ghec %} ## Managing dependency review Dependency review lets you visualize dependency changes in pull requests before they are merged into your repositories. -{% ifversion fpt %}Dependency review is available in all public repositories. For private and internal repositories you require a license for {% data variables.product.prodname_advanced_security %}. To enable dependency review for an organization, enable the dependency graph and enable {% data variables.product.prodname_advanced_security %}. +{% ifversion fpt or ghec %}Dependency review is available in all public repositories. For private and internal repositories you require a license for {% data variables.product.prodname_advanced_security %}. To enable dependency review for an organization, enable the dependency graph and enable {% data variables.product.prodname_advanced_security %}. {% elsif ghes or ghae %}Dependency review is available when dependency graph is enabled for {% data variables.product.product_location %} and you enable {% data variables.product.prodname_advanced_security %} for the organization (see below).{% endif %} For more information, see "[About dependency review](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Managing {% data variables.product.prodname_dependabot_security_updates %} For any repository that uses {% data variables.product.prodname_dependabot_alerts %}, you can enable {% data variables.product.prodname_dependabot_security_updates %} to raise pull requests with security updates when vulnerabilities are detected. You can also enable or disable {% data variables.product.prodname_dependabot_security_updates %} for all repositories across your organization. @@ -82,10 +83,10 @@ To enable {% data variables.product.prodname_dependabot_version_updates %}, you {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Managing {% data variables.product.prodname_GH_advanced_security %} -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} If your organization has an {% data variables.product.prodname_advanced_security %} license, you can enable or disable {% data variables.product.prodname_advanced_security %} features. {% elsif ghae %} You can enable or disable {% data variables.product.prodname_advanced_security %} features. @@ -100,7 +101,7 @@ You can enable or disable {% data variables.product.prodname_advanced_security % For more information, see "[About {% data variables.product.prodname_GH_advanced_security %}](/github/getting-started-with-github/about-github-advanced-security)" and "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." ## Configuring {% data variables.product.prodname_secret_scanning %} -{% data variables.product.prodname_secret_scanning_caps %} is available {% ifversion fpt %}for all public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. +{% data variables.product.prodname_secret_scanning_caps %} is available {% ifversion fpt or ghec %}for all public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. You can enable or disable {% data variables.product.prodname_secret_scanning %} for all repositories across your organization that have {% data variables.product.prodname_advanced_security %} enabled. @@ -115,9 +116,9 @@ For more information, see "[Managing security and analysis settings for your org {% endif %} ## Next steps -{% ifversion fpt or ghes > 3.1 or ghae-next %}You can view, filter, and sort security alerts for repositories owned by your organization in the security overview. For more information, see "[About the security overview](/code-security/security-overview/about-the-security-overview)."{% endif %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}You can view, filter, and sort security alerts for repositories owned by your organization in the security overview. For more information, see "[About the security overview](/code-security/security-overview/about-the-security-overview)."{% endif %} -You can view and manage alerts from security features to address dependencies and vulnerabilities in your code. For more information, see {% ifversion fpt or ghes > 2.22 %} "[Viewing and updating vulnerable dependencies in your repository](/code-security/supply-chain-security/viewing-and-updating-vulnerable-dependencies-in-your-repository),"{% endif %} {% ifversion fpt %}"[Managing pull requests for dependency updates](/code-security/supply-chain-security/managing-pull-requests-for-dependency-updates)," {% endif %}"[Managing {% data variables.product.prodname_code_scanning %} for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)," and "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." +You can view and manage alerts from security features to address dependencies and vulnerabilities in your code. For more information, see {% ifversion fpt or ghes > 2.22 or ghec %} "[Viewing and updating vulnerable dependencies in your repository](/code-security/supply-chain-security/viewing-and-updating-vulnerable-dependencies-in-your-repository),"{% endif %} {% ifversion fpt or ghec %}"[Managing pull requests for dependency updates](/code-security/supply-chain-security/managing-pull-requests-for-dependency-updates)," {% endif %}"[Managing {% data variables.product.prodname_code_scanning %} for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)," and "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." -{% ifversion fpt %}If you have a security vulnerability, you can create a security advisory to privately discuss and fix the vulnerability. For more information, see "[About {% data variables.product.prodname_security_advisories %}](/code-security/security-advisories/about-github-security-advisories)" and "[Creating a security advisory](/code-security/security-advisories/creating-a-security-advisory)." +{% ifversion fpt or ghec %}If you have a security vulnerability, you can create a security advisory to privately discuss and fix the vulnerability. For more information, see "[About {% data variables.product.prodname_security_advisories %}](/code-security/security-advisories/about-github-security-advisories)" and "[Creating a security advisory](/code-security/security-advisories/creating-a-security-advisory)." {% endif %} diff --git a/content/code-security/getting-started/securing-your-repository.md b/content/code-security/getting-started/securing-your-repository.md index 0cd76f6db9b2..996a88feb2ea 100644 --- a/content/code-security/getting-started/securing-your-repository.md +++ b/content/code-security/getting-started/securing-your-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Repositories @@ -23,7 +24,7 @@ This guide shows you how to configure security features for a repository. You mu Your security needs are unique to your repository, so you may not need to enable every feature for your repository. For more information, see "[{% data variables.product.prodname_dotcom %} security features](/code-security/getting-started/github-security-features)." -Some security features are only available {% ifversion fpt %}for public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. {% data reusables.advanced-security.more-info-ghas %} +Some security features are only available {% ifversion fpt or ghec %}for public repositories, and for private repositories owned by organizations with {% else %}if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. {% data reusables.advanced-security.more-info-ghas %} ## Managing access to your repository @@ -31,10 +32,10 @@ The first step to securing a repository is to set up who can see and modify your From the main page of your repository, click **{% octicon "gear" aria-label="The Settings gear" %}Settings**, then scroll down to the "Danger Zone." -- To change who can view your repository, click **Change visibility**. For more information, see "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)."{% ifversion fpt %} +- To change who can view your repository, click **Change visibility**. For more information, see "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)."{% ifversion fpt or ghec %} - To change who can access your repository and adjust permissions, click **Manage access**. For more information, see"[Managing teams and people with access to your repository](/github/administering-a-repository/managing-teams-and-people-with-access-to-your-repository)."{% endif %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} ## Setting a security policy 1. From the main page of your repository, click **{% octicon "shield" aria-label="The shield symbol" %} Security**. @@ -46,10 +47,10 @@ For more information, see "[Adding a security policy to your repository](/code-s {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} ## Managing the dependency graph -{% ifversion fpt %} +{% ifversion fpt or ghec %} Once you have [enabled the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#enabling-the-dependency-graph), it is automatically generated for all public repositories, and you can choose to enable it for private repositories. 1. From the main page of your repository, click **{% octicon "gear" aria-label="The Settings gear" %} Settings**. @@ -63,10 +64,10 @@ For more information, see "[Exploring the dependencies of a repository](/code-se {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} ## Managing {% data variables.product.prodname_dependabot_alerts %} -{% ifversion fpt %}By default, {% data variables.product.prodname_dotcom %} detects vulnerabilities in public repositories and generates {% data variables.product.prodname_dependabot_alerts %}. {% data variables.product.prodname_dependabot_alerts %} can also be enabled for private repositories. +{% ifversion fpt or ghec %}By default, {% data variables.product.prodname_dotcom %} detects vulnerabilities in public repositories and generates {% data variables.product.prodname_dependabot_alerts %}. {% data variables.product.prodname_dependabot_alerts %} can also be enabled for private repositories. 1. Click your profile photo, then click **Settings**. 2. Click **Security & analysis**. @@ -76,11 +77,11 @@ For more information, see "[Exploring the dependencies of a repository](/code-se {% data reusables.dependabot.dependabot-alerts-beta %} {% data reusables.dependabot.dependabot-alerts-dependency-graph-enterprise %} -For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies){% ifversion fpt %}" and "[Managing security and analysis settings for your user account](/github/setting-up-and-managing-your-github-user-account/managing-security-and-analysis-settings-for-your-user-account){% endif %}." +For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies){% ifversion fpt or ghec %}" and "[Managing security and analysis settings for your user account](/github/setting-up-and-managing-your-github-user-account/managing-security-and-analysis-settings-for-your-user-account){% endif %}." {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 or ghec %} ## Managing dependency review Dependency review lets you visualize dependency changes in pull requests before they are merged into your repositories. @@ -90,7 +91,7 @@ For more information, see "[About dependency review](/code-security/supply-chain {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Managing {% data variables.product.prodname_dependabot_security_updates %} @@ -110,15 +111,15 @@ To enable {% data variables.product.prodname_dependabot_version_updates %}, you {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Configuring {% data variables.product.prodname_code_scanning %} -{% data variables.product.prodname_code_scanning_capc %} is available {% ifversion fpt %}for all public repositories, and for private repositories owned by organizations with {% else %} for organization-owned repositories if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. +{% data variables.product.prodname_code_scanning_capc %} is available {% ifversion fpt or ghec %}for all public repositories, and for private repositories owned by organizations with {% else %} for organization-owned repositories if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. You can set up {% data variables.product.prodname_code_scanning %} to automatically identify vulnerabilities and errors in the code stored in your repository by using a {% data variables.product.prodname_codeql_workflow %} or third-party tool. For more information, see "[Setting up {% data variables.product.prodname_code_scanning %} for a repository](/code-security/secure-coding/setting-up-code-scanning-for-a-repository)." ## Configuring {% data variables.product.prodname_secret_scanning %} -{% data variables.product.prodname_secret_scanning_caps %} is available {% ifversion fpt %}for all public repositories, and for private repositories owned by organizations with {% else %} for organization-owned repositories if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. +{% data variables.product.prodname_secret_scanning_caps %} is available {% ifversion fpt or ghec %}for all public repositories, and for private repositories owned by organizations with {% else %} for organization-owned repositories if you have {% endif %}an {% data variables.product.prodname_advanced_security %} license. {% data variables.product.prodname_secret_scanning_caps %} may be enabled for your repository by default depending upon your organization's settings. @@ -130,7 +131,7 @@ You can set up {% data variables.product.prodname_code_scanning %} to automatica {% endif %} ## Next steps -You can view and manage alerts from security features to address dependencies and vulnerabilities in your code. For more information, see {% ifversion fpt or ghes > 2.22 %} "[Viewing and updating vulnerable dependencies in your repository](/code-security/supply-chain-security/viewing-and-updating-vulnerable-dependencies-in-your-repository),"{% endif %} {% ifversion fpt %}"[Managing pull requests for dependency updates](/code-security/supply-chain-security/managing-pull-requests-for-dependency-updates)," {% endif %}"[Managing {% data variables.product.prodname_code_scanning %} for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)," and "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." +You can view and manage alerts from security features to address dependencies and vulnerabilities in your code. For more information, see {% ifversion fpt or ghes > 2.22 or ghec %} "[Viewing and updating vulnerable dependencies in your repository](/code-security/supply-chain-security/viewing-and-updating-vulnerable-dependencies-in-your-repository),"{% endif %} {% ifversion fpt or ghec %}"[Managing pull requests for dependency updates](/code-security/supply-chain-security/managing-pull-requests-for-dependency-updates)," {% endif %}"[Managing {% data variables.product.prodname_code_scanning %} for your repository](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)," and "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." -{% ifversion fpt %}If you have a security vulnerability, you can create a security advisory to privately discuss and fix the vulnerability. For more information, see "[About {% data variables.product.prodname_security_advisories %}](/code-security/security-advisories/about-github-security-advisories)" and "[Creating a security advisory](/code-security/security-advisories/creating-a-security-advisory)." +{% ifversion fpt or ghec %}If you have a security vulnerability, you can create a security advisory to privately discuss and fix the vulnerability. For more information, see "[About {% data variables.product.prodname_security_advisories %}](/code-security/security-advisories/about-github-security-advisories)" and "[Creating a security advisory](/code-security/security-advisories/creating-a-security-advisory)." {% endif %} diff --git a/content/code-security/guides.md b/content/code-security/guides.md index e05346ff2d74..19fd8daf708e 100644 --- a/content/code-security/guides.md +++ b/content/code-security/guides.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' learningTracks: - security_advisories - dependabot_alerts diff --git a/content/code-security/index.md b/content/code-security/index.md index 86e525683366..b0b807a6f03e 100644 --- a/content/code-security/index.md +++ b/content/code-security/index.md @@ -34,13 +34,15 @@ featuredLinks: changelog: label: security-and-compliance versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' examples_source: data/product-examples/code-security/code-examples.yml layout: product-landing versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Repositories - Dependencies diff --git a/content/code-security/secret-scanning/about-secret-scanning.md b/content/code-security/secret-scanning/about-secret-scanning.md index 446f9b811710..f72a59a0d65d 100644 --- a/content/code-security/secret-scanning/about-secret-scanning.md +++ b/content/code-security/secret-scanning/about-secret-scanning.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: overview topics: - Secret scanning @@ -23,12 +24,12 @@ topics: If your project communicates with an external service, you might use a token or private key for authentication. Tokens and private keys are examples of secrets that a service provider can issue. If you check a secret into a repository, anyone who has read access to the repository can use the secret to access the external service with your privileges. We recommend that you store secrets in a dedicated, secure location outside of the repository for your project. -{% data variables.product.prodname_secret_scanning_caps %} will scan your entire Git history on all branches present in your {% data variables.product.prodname_dotcom %} repository for any secrets. Service providers can partner with {% data variables.product.company_short %} to provide their secret formats for scanning.{% ifversion fpt %} For more information, see "[Secret scanning partner program](/developers/overview/secret-scanning-partner-program)." +{% data variables.product.prodname_secret_scanning_caps %} will scan your entire Git history on all branches present in your {% data variables.product.prodname_dotcom %} repository for any secrets. Service providers can partner with {% data variables.product.company_short %} to provide their secret formats for scanning.{% ifversion fpt or ghec %} For more information, see "[Secret scanning partner program](/developers/overview/secret-scanning-partner-program)." {% endif %} {% data reusables.secret-scanning.about-secret-scanning %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## About {% data variables.product.prodname_secret_scanning %} for public repositories {% data variables.product.prodname_secret_scanning_caps %} is automatically enabled on public repositories. When you push to a public repository, {% data variables.product.product_name %} scans the content of the commits for secrets. If you switch a private repository to public, {% data variables.product.product_name %} scans the entire repository for secrets. @@ -48,29 +49,29 @@ When {% data variables.product.prodname_secret_scanning %} detects a set of cred {% data variables.product.prodname_secret_scanning_caps %} is available on all organization-owned repositories as part of {% data variables.product.prodname_GH_advanced_security %}. It is not available on user-owned repositories. {% endif %} -If you're a repository administrator or an organization owner, you can enable {% data variables.product.prodname_secret_scanning %} for {% ifversion fpt %} private{% endif %} repositories that are owned by organizations. You can enable {% data variables.product.prodname_secret_scanning %} for all your repositories, or for all new repositories within your organization.{% ifversion fpt %} {% data variables.product.prodname_secret_scanning_caps %} is not available for user-owned private repositories.{% endif %} For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)" and "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." +If you're a repository administrator or an organization owner, you can enable {% data variables.product.prodname_secret_scanning %} for {% ifversion fpt or ghec %} private{% endif %} repositories that are owned by organizations. You can enable {% data variables.product.prodname_secret_scanning %} for all your repositories, or for all new repositories within your organization.{% ifversion fpt or ghec %} {% data variables.product.prodname_secret_scanning_caps %} is not available for user-owned private repositories.{% endif %} For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)" and "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." -{% ifversion fpt or ghes > 3.1 or ghae-next %}You can also define custom {% data variables.product.prodname_secret_scanning %} patterns that only apply to your repository or organization. For more information, see "[Defining custom patterns for {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/defining-custom-patterns-for-secret-scanning)."{% endif %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}You can also define custom {% data variables.product.prodname_secret_scanning %} patterns that only apply to your repository or organization. For more information, see "[Defining custom patterns for {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/defining-custom-patterns-for-secret-scanning)."{% endif %} -When you push commits to a{% ifversion fpt %} private{% endif %} repository with {% data variables.product.prodname_secret_scanning %} enabled, {% data variables.product.prodname_dotcom %} scans the contents of the commits for secrets. +When you push commits to a{% ifversion fpt or ghec %} private{% endif %} repository with {% data variables.product.prodname_secret_scanning %} enabled, {% data variables.product.prodname_dotcom %} scans the contents of the commits for secrets. -When {% data variables.product.prodname_secret_scanning %} detects a secret in a{% ifversion fpt %} private{% endif %} repository, {% data variables.product.prodname_dotcom %} generates an alert. +When {% data variables.product.prodname_secret_scanning %} detects a secret in a{% ifversion fpt or ghec %} private{% endif %} repository, {% data variables.product.prodname_dotcom %} generates an alert. - {% data variables.product.prodname_dotcom %} sends an email alert to the repository administrators and organization owners. -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} - {% data variables.product.prodname_dotcom %} sends an email alert to the contributor who committed the secret to the repository, with a link to the related {% data variables.product.prodname_secret_scanning %} alert. The commit author can then view the alert in the repository, and resolve the alert. {% endif %} - {% data variables.product.prodname_dotcom %} displays an alert in the repository.{% ifversion ghes = 3.0 %} For more information, see "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/github/administering-a-repository/managing-alerts-from-secret-scanning)."{% endif %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} For more information about viewing and resolving {% data variables.product.prodname_secret_scanning %} alerts, see "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/github/administering-a-repository/managing-alerts-from-secret-scanning)."{% endif %} Repository administrators and organization owners can grant users and teams access to {% data variables.product.prodname_secret_scanning %} alerts. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)." -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} To monitor results from {% data variables.product.prodname_secret_scanning %} across your private repositories or your organization, you can use the {% data variables.product.prodname_secret_scanning %} API. For more information about API endpoints, see "[{% data variables.product.prodname_secret_scanning_caps %}](/rest/reference/secret-scanning)."{% endif %} -{% data variables.product.prodname_dotcom %} currently scans{% ifversion fpt %} private{% endif %} repositories for secrets issued by the following service providers. +{% data variables.product.prodname_dotcom %} currently scans{% ifversion fpt or ghec %} private{% endif %} repositories for secrets issued by the following service providers. {% data reusables.secret-scanning.partner-secret-list-private-repo %} diff --git a/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md b/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md index eecd4f9168f6..44181d334707 100644 --- a/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md +++ b/content/code-security/secret-scanning/configuring-secret-scanning-for-your-repositories.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Secret scanning @@ -22,7 +23,7 @@ shortTitle: Configure secret scans {% data reusables.secret-scanning.beta %} {% data reusables.secret-scanning.enterprise-enable-secret-scanning %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** {% data variables.product.prodname_secret_scanning_caps %} is enabled by default on public repositories and cannot be turned off. You can configure {% data variables.product.prodname_secret_scanning %} for your private repositories only. @@ -30,7 +31,7 @@ shortTitle: Configure secret scans {% endnote %} {% endif %} -## Enabling {% data variables.product.prodname_secret_scanning %} for {% ifversion fpt %}private {% endif %}repositories +## Enabling {% data variables.product.prodname_secret_scanning %} for {% ifversion fpt or ghec %}private {% endif %}repositories {% ifversion ghes > 2.22 or ghae-next %} You can enable {% data variables.product.prodname_secret_scanning %} for any repository that is owned by an organization. @@ -39,9 +40,9 @@ You can enable {% data variables.product.prodname_secret_scanning %} for any rep {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-security-and-analysis %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} 4. If {% data variables.product.prodname_advanced_security %} is not already enabled for the repository, to the right of "{% data variables.product.prodname_GH_advanced_security %}", click **Enable**. - {% ifversion fpt %}![Enable {% data variables.product.prodname_GH_advanced_security %} for your repository](/assets/images/help/repository/enable-ghas-dotcom.png) + {% ifversion fpt or ghec %}![Enable {% data variables.product.prodname_GH_advanced_security %} for your repository](/assets/images/help/repository/enable-ghas-dotcom.png) {% elsif ghes > 3.0 or ghae-next %}![Enable {% data variables.product.prodname_GH_advanced_security %} for your repository](/assets/images/enterprise/3.1/help/repository/enable-ghas.png){% endif %} 5. Review the impact of enabling {% data variables.product.prodname_advanced_security %}, then click **Enable {% data variables.product.prodname_GH_advanced_security %} for this repository**. 6. When you enable {% data variables.product.prodname_advanced_security %}, {% data variables.product.prodname_secret_scanning %} may automatically be enabled for the repository due to the organization's settings. If "{% data variables.product.prodname_secret_scanning_caps %}" is shown with an **Enable** button, you still need to enable {% data variables.product.prodname_secret_scanning %} by clicking **Enable**. If you see a **Disable** button, {% data variables.product.prodname_secret_scanning %} is already enabled. @@ -59,7 +60,7 @@ You can enable {% data variables.product.prodname_secret_scanning %} for any rep ![Enable {% data variables.product.prodname_secret_scanning %} for your repository](/assets/images/enterprise/github-ae/repository/enable-secret-scanning-ghae.png) {% endif %} -## Excluding alerts from {% data variables.product.prodname_secret_scanning %} in {% ifversion fpt %}private {% endif %}repositories +## Excluding alerts from {% data variables.product.prodname_secret_scanning %} in {% ifversion fpt or ghec %}private {% endif %}repositories You can use a *secret_scanning.yml* file to exclude directories from {% data variables.product.prodname_secret_scanning %}. For example, you can exclude directories that contain tests or randomly generated content. @@ -87,4 +88,4 @@ You can also ignore individual alerts from {% data variables.product.prodname_se ## Further reading - "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)" -{% ifversion fpt or ghes > 3.1 or ghae-next %}- "[Defining custom patterns for {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/defining-custom-patterns-for-secret-scanning)"{% endif %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}- "[Defining custom patterns for {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/defining-custom-patterns-for-secret-scanning)"{% endif %} diff --git a/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md b/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md index b9fbfa6ec3af..dbda1f17d161 100644 --- a/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md +++ b/content/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.2' ghae: next + ghec: '*' topics: - Repositories --- @@ -23,9 +24,9 @@ topics: ## About custom patterns for {% data variables.product.prodname_secret_scanning %} -{% data variables.product.company_short %} performs {% data variables.product.prodname_secret_scanning %} on {% ifversion fpt %}public and private{% endif %} repositories for secret patterns provided by {% data variables.product.company_short %} and {% data variables.product.company_short %} partners. For more information on the {% data variables.product.prodname_secret_scanning %} partner program, see "Secret scanning partner program." +{% data variables.product.company_short %} performs {% data variables.product.prodname_secret_scanning %} on {% ifversion fpt or ghec %}public and private{% endif %} repositories for secret patterns provided by {% data variables.product.company_short %} and {% data variables.product.company_short %} partners. For more information on the {% data variables.product.prodname_secret_scanning %} partner program, see "Secret scanning partner program." -However, there can be situations where you want to scan for other secret patterns in your {% ifversion fpt %}private{% endif %} repositories. For example, you might have a secret pattern that is internal to your organization. For these situations, you can define custom {% data variables.product.prodname_secret_scanning %} patterns in your enterprise, organization, or {% ifversion fpt %}private{% endif %} repository on {% data variables.product.product_name %}. You can define up to 100 custom patterns for each organization or enterprise account, and up to 20 custom patterns per {% ifversion fpt %}private{% endif %} repository. +However, there can be situations where you want to scan for other secret patterns in your {% ifversion fpt or ghec %}private{% endif %} repositories. For example, you might have a secret pattern that is internal to your organization. For these situations, you can define custom {% data variables.product.prodname_secret_scanning %} patterns in your enterprise, organization, or {% ifversion fpt or ghec %}private{% endif %} repository on {% data variables.product.product_name %}. You can define up to 100 custom patterns for each organization or enterprise account, and up to 20 custom patterns per {% ifversion fpt or ghec %}private{% endif %} repository. {% ifversion ghes < 3.3 or ghae %} {% note %} @@ -58,7 +59,7 @@ After your pattern is created, {% data reusables.secret-scanning.secret-scanning ## Defining a custom pattern for an organization -Before defining a custom pattern, you must ensure that you enable {% data variables.product.prodname_secret_scanning %} for the {% ifversion fpt %}private{% endif %} repositories that you want to scan in your organization. To enable {% data variables.product.prodname_secret_scanning %} on all {% ifversion fpt %}private{% endif %} repositories in your organization, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." +Before defining a custom pattern, you must ensure that you enable {% data variables.product.prodname_secret_scanning %} for the {% ifversion fpt or ghec %}private{% endif %} repositories that you want to scan in your organization. To enable {% data variables.product.prodname_secret_scanning %} on all {% ifversion fpt or ghec %}private{% endif %} repositories in your organization, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." {% note %} @@ -73,11 +74,11 @@ Before defining a custom pattern, you must ensure that you enable {% data variab {% data reusables.advanced-security.secret-scanning-new-custom-pattern %} {% data reusables.advanced-security.secret-scanning-add-custom-pattern-details %} -After your pattern is created, {% data variables.product.prodname_secret_scanning %} scans for any secrets in {% ifversion fpt %}private{% endif %} repositories in your organization, including their entire Git history on all branches. Organization owners and repository administrators will be alerted to any secrets found, and can review the alert in the repository where the secret is found. For more information on viewing {% data variables.product.prodname_secret_scanning %} alerts, see "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." +After your pattern is created, {% data variables.product.prodname_secret_scanning %} scans for any secrets in {% ifversion fpt or ghec %}private{% endif %} repositories in your organization, including their entire Git history on all branches. Organization owners and repository administrators will be alerted to any secrets found, and can review the alert in the repository where the secret is found. For more information on viewing {% data variables.product.prodname_secret_scanning %} alerts, see "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." ## Defining a custom pattern for an enterprise account -Before defining a custom pattern, you must ensure that you enable secret scanning for your enterprise account. For more information, see "[Enabling {% data variables.product.prodname_GH_advanced_security %} for your enterprise](/admin/advanced-security/enabling-github-advanced-security-for-your-enterprise)." +Before defining a custom pattern, you must ensure that you enable secret scanning for your enterprise account. For more information, see "[Enabling {% data variables.product.prodname_GH_advanced_security %} for your enterprise]({% ifversion fpt or ghec %}/enterprise-server@latest/{% endif %}/admin/advanced-security/enabling-github-advanced-security-for-your-enterprise)." {% note %} @@ -89,12 +90,12 @@ Before defining a custom pattern, you must ensure that you enable secret scannin {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.advanced-security-policies %} {% data reusables.enterprise-accounts.advanced-security-security-features %} -1. Under "Secret scanning custom patterns", click {% ifversion fpt or ghes > 3.2 or ghae-next %}**New pattern**{% elsif ghes = 3.2 %}**New custom pattern**{% endif %}. +1. Under "Secret scanning custom patterns", click {% ifversion fpt or ghes > 3.2 or ghae-next or ghec %}**New pattern**{% elsif ghes = 3.2 %}**New custom pattern**{% endif %}. {% data reusables.advanced-security.secret-scanning-add-custom-pattern-details %} -After your pattern is created, {% data variables.product.prodname_secret_scanning %} scans for any secrets in {% ifversion fpt %}private{% endif %} repositories within your enterprise's organizations with {% data variables.product.prodname_GH_advanced_security %} enabled, including their entire Git history on all branches. Organization owners and repository administrators will be alerted to any secrets found, and can review the alert in the repository where the secret is found. For more information on viewing {% data variables.product.prodname_secret_scanning %} alerts, see "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." +After your pattern is created, {% data variables.product.prodname_secret_scanning %} scans for any secrets in {% ifversion fpt or ghec %}private{% endif %} repositories within your enterprise's organizations with {% data variables.product.prodname_GH_advanced_security %} enabled, including their entire Git history on all branches. Organization owners and repository administrators will be alerted to any secrets found, and can review the alert in the repository where the secret is found. For more information on viewing {% data variables.product.prodname_secret_scanning %} alerts, see "[Managing alerts from {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/managing-alerts-from-secret-scanning)." -{% ifversion fpt or ghes > 3.2 %} +{% ifversion fpt or ghes > 3.2 or ghec %} ## Editing a custom pattern When you save a change to a custom pattern, this closes all the {% data variables.product.prodname_secret_scanning %} alerts that were created using the previous version of the pattern. diff --git a/content/code-security/secret-scanning/index.md b/content/code-security/secret-scanning/index.md index bb693178b2ec..1d3923959f9b 100644 --- a/content/code-security/secret-scanning/index.md +++ b/content/code-security/secret-scanning/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Secret scanning - Advanced Security diff --git a/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md b/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md index f76009cc7f12..68aef9205ce6 100644 --- a/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md +++ b/content/code-security/secret-scanning/managing-alerts-from-secret-scanning.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Secret scanning @@ -25,14 +26,14 @@ shortTitle: Manage secret alerts {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-security %} 3. In the left sidebar, click **Secret scanning alerts**. - {% ifversion fpt or ghes > 2.22 %} + {% ifversion fpt or ghes > 2.22 or ghec %} !["Secret scanning alerts" tab](/assets/images/help/repository/sidebar-secrets.png) {% endif %} {% ifversion ghae %} !["Secret scanning alerts" tab](/assets/images/enterprise/github-ae/repository/sidebar-secrets-ghae.png) {% endif %} 4. Under "Secret scanning" click the alert you want to view. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ![List of alerts from secret scanning](/assets/images/help/repository/secret-scanning-click-alert.png) {% endif %} {% ifversion ghes > 2.22 %} @@ -42,7 +43,7 @@ shortTitle: Manage secret alerts ![List of alerts from secret scanning](/assets/images/enterprise/github-ae/repository/secret-scanning-click-alert-ghae.png) {% endif %} 5. Optionally, use the "Mark as" drop-down menu and click a reason for resolving an alert. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ![Drop-down menu for resolving an alert from secret scanning](/assets/images/help/repository/secret-scanning-resolve-alert.png) {% endif %} {% ifversion ghes > 2.22 or ghae %} @@ -56,7 +57,7 @@ Once a secret has been committed to a repository, you should consider the secret - For a compromised {% data variables.product.prodname_dotcom %} personal access token, delete the compromised token, create a new token, and update any services that use the old token. For more information, see "[Creating a personal access token for the command line](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)." - For all other secrets, first verify that the secret committed to {% data variables.product.product_name %} is valid. If so, create a new secret, update any services that use the old secret, and then delete the old secret. -{% ifversion fpt or ghes > 3.1 or ghae-issue-4910 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4910 or ghec %} ## Configuring notifications for {% data variables.product.prodname_secret_scanning %} alerts When a new secret is detected, {% data variables.product.product_name %} notifies all users with access to security alerts for the repository according to their notification preferences. You will receive alerts if you are watching the repository, have enabled notifications for security alerts or for all the activity on the repository, are the author of the commit that contains the secret and are not ignoring the repository. diff --git a/content/code-security/security-advisories/about-coordinated-disclosure-of-security-vulnerabilities.md b/content/code-security/security-advisories/about-coordinated-disclosure-of-security-vulnerabilities.md index fc3f698e48e2..3a30cd84f056 100644 --- a/content/code-security/security-advisories/about-coordinated-disclosure-of-security-vulnerabilities.md +++ b/content/code-security/security-advisories/about-coordinated-disclosure-of-security-vulnerabilities.md @@ -4,6 +4,7 @@ intro: Vulnerability disclosure is a coordinated effort between security reporte miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: overview topics: - Security advisories diff --git a/content/code-security/security-advisories/about-github-security-advisories.md b/content/code-security/security-advisories/about-github-security-advisories.md index 2e89d2f620e8..fd0d1db0622c 100644 --- a/content/code-security/security-advisories/about-github-security-advisories.md +++ b/content/code-security/security-advisories/about-github-security-advisories.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-security-vulnerabilities/about-github-security-advisories versions: fpt: '*' + ghec: '*' type: overview topics: - Security advisories diff --git a/content/code-security/security-advisories/adding-a-collaborator-to-a-security-advisory.md b/content/code-security/security-advisories/adding-a-collaborator-to-a-security-advisory.md index 88aef296acfd..641acc519d1a 100644 --- a/content/code-security/security-advisories/adding-a-collaborator-to-a-security-advisory.md +++ b/content/code-security/security-advisories/adding-a-collaborator-to-a-security-advisory.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-security-vulnerabilities/adding-a-collaborator-to-a-security-advisory versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-security-vulnerability.md b/content/code-security/security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-security-vulnerability.md index f0d51b2bf8b3..b23b06ac0ee3 100644 --- a/content/code-security/security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-security-vulnerability.md +++ b/content/code-security/security-advisories/collaborating-in-a-temporary-private-fork-to-resolve-a-security-vulnerability.md @@ -6,6 +6,7 @@ redirect_from: - /github/managing-security-vulnerabilities/collaborating-in-a-temporary-private-fork-to-resolve-a-security-vulnerability versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/security-advisories/creating-a-security-advisory.md b/content/code-security/security-advisories/creating-a-security-advisory.md index 62deaf965dfb..238dc48ca518 100644 --- a/content/code-security/security-advisories/creating-a-security-advisory.md +++ b/content/code-security/security-advisories/creating-a-security-advisory.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-security-vulnerabilities/creating-a-security-advisory versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/security-advisories/editing-a-security-advisory.md b/content/code-security/security-advisories/editing-a-security-advisory.md index 1e649567412b..5e2b71577965 100644 --- a/content/code-security/security-advisories/editing-a-security-advisory.md +++ b/content/code-security/security-advisories/editing-a-security-advisory.md @@ -5,6 +5,7 @@ redirect_from: - /github/managing-security-vulnerabilities/editing-a-security-advisory versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/security-advisories/index.md b/content/code-security/security-advisories/index.md index 93447c99d5dc..402a3d7bc96a 100644 --- a/content/code-security/security-advisories/index.md +++ b/content/code-security/security-advisories/index.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-security-vulnerabilities/managing-security-vulnerabilities-in-your-project versions: fpt: '*' + ghec: '*' topics: - Security advisories - Vulnerabilities diff --git a/content/code-security/security-advisories/permission-levels-for-security-advisories.md b/content/code-security/security-advisories/permission-levels-for-security-advisories.md index e7fc966153c6..fde283458741 100644 --- a/content/code-security/security-advisories/permission-levels-for-security-advisories.md +++ b/content/code-security/security-advisories/permission-levels-for-security-advisories.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-security-vulnerabilities/permission-levels-for-security-advisories versions: fpt: '*' + ghec: '*' type: reference topics: - Security advisories diff --git a/content/code-security/security-advisories/publishing-a-security-advisory.md b/content/code-security/security-advisories/publishing-a-security-advisory.md index 65959f31ec81..880408ea80d1 100644 --- a/content/code-security/security-advisories/publishing-a-security-advisory.md +++ b/content/code-security/security-advisories/publishing-a-security-advisory.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-security-vulnerabilities/publishing-a-security-advisory versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/security-advisories/removing-a-collaborator-from-a-security-advisory.md b/content/code-security/security-advisories/removing-a-collaborator-from-a-security-advisory.md index 9d8eda46a7b5..6a10f1c72295 100644 --- a/content/code-security/security-advisories/removing-a-collaborator-from-a-security-advisory.md +++ b/content/code-security/security-advisories/removing-a-collaborator-from-a-security-advisory.md @@ -5,6 +5,7 @@ redirect_from: - /github/managing-security-vulnerabilities/removing-a-collaborator-from-a-security-advisory versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/security-advisories/withdrawing-a-security-advisory.md b/content/code-security/security-advisories/withdrawing-a-security-advisory.md index 682f831575e4..4cf56060406c 100644 --- a/content/code-security/security-advisories/withdrawing-a-security-advisory.md +++ b/content/code-security/security-advisories/withdrawing-a-security-advisory.md @@ -5,6 +5,7 @@ redirect_from: - /github/managing-security-vulnerabilities/withdrawing-a-security-advisory versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/security-overview/about-the-security-overview.md b/content/code-security/security-overview/about-the-security-overview.md index 32787080b5e2..84bd9c8b05d4 100644 --- a/content/code-security/security-overview/about-the-security-overview.md +++ b/content/code-security/security-overview/about-the-security-overview.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghae: issue-4554 ghes: '>3.1' + ghec: '*' type: how_to topics: - Security overview @@ -24,7 +25,7 @@ shortTitle: About security overview You can use the security overview for a high-level view of the security status of your organization or to identify problematic repositories that require intervention. At the organization-level, the security overview displays aggregate and repository-specific security information for repositories owned by your organization. At the team-level, the security overview displays repository-specific security information for repositories that the team has admin privileges for. For more information, see "[Managing team access to an organization repository](/organizations/managing-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository)." -The security overview indicates whether {% ifversion fpt or ghes > 3.1 %}security{% endif %}{% ifversion ghae-next %}{% data variables.product.prodname_GH_advanced_security %}{% endif %} features are enabled for repositories owned by your organization and consolidates alerts for each feature.{% ifversion fpt or ghes > 3.1 %} Security features include {% data variables.product.prodname_GH_advanced_security %} features, such as {% data variables.product.prodname_code_scanning %} and {% data variables.product.prodname_secret_scanning %}, as well as {% data variables.product.prodname_dependabot_alerts %}.{% endif %} For more information about {% data variables.product.prodname_GH_advanced_security %} features, see "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)."{% ifversion fpt or ghes > 3.1 %} For more information about {% data variables.product.prodname_dependabot_alerts %}, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies#dependabot-alerts-for-vulnerable-dependencies)."{% endif %} +The security overview indicates whether {% ifversion fpt or ghes > 3.1 or ghec %}security{% endif %}{% ifversion ghae-next %}{% data variables.product.prodname_GH_advanced_security %}{% endif %} features are enabled for repositories owned by your organization and consolidates alerts for each feature.{% ifversion fpt or ghes > 3.1 or ghec %} Security features include {% data variables.product.prodname_GH_advanced_security %} features, such as {% data variables.product.prodname_code_scanning %} and {% data variables.product.prodname_secret_scanning %}, as well as {% data variables.product.prodname_dependabot_alerts %}.{% endif %} For more information about {% data variables.product.prodname_GH_advanced_security %} features, see "[About {% data variables.product.prodname_GH_advanced_security %}](/get-started/learning-about-github/about-github-advanced-security)."{% ifversion fpt or ghes > 3.1 or ghec %} For more information about {% data variables.product.prodname_dependabot_alerts %}, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies#dependabot-alerts-for-vulnerable-dependencies)."{% endif %} For more information about securing your code at the repository and organization levels, see "[Securing your repository](/code-security/getting-started/securing-your-repository)" and "[Securing your organization](/code-security/getting-started/securing-your-organization)." @@ -104,7 +105,7 @@ The level of risk for a repository is determined by the number and severity of a ### Filter by repository type | Qualifier | Description | -| -------- | -------- |{% ifversion fpt or ghes > 3.1 %} +| -------- | -------- |{% ifversion fpt or ghes > 3.1 or ghec %} | `is:public` | Display public repositories. |{% endif %} | `is:internal` | Display internal repositories. | | `is:private` | Display private repositories. | diff --git a/content/code-security/security-overview/index.md b/content/code-security/security-overview/index.md index 88ef0c8e5b8e..0e065c4b7785 100644 --- a/content/code-security/security-overview/index.md +++ b/content/code-security/security-overview/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghae: issue-4554 ghes: '>3.1' + ghec: '*' topics: - Security overview - Advanced Security diff --git a/content/code-security/supply-chain-security/index.md b/content/code-security/supply-chain-security/index.md index 7c5b9896dcac..ffb735c52737 100644 --- a/content/code-security/supply-chain-security/index.md +++ b/content/code-security/supply-chain-security/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: "issue-4864" + ghec: '*' topics: - Dependabot - Dependencies diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/about-dependabot-version-updates.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/about-dependabot-version-updates.md index f70e7c164fc1..dcca78a34cc3 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/about-dependabot-version-updates.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/about-dependabot-version-updates.md @@ -9,6 +9,7 @@ redirect_from: - /code-security/supply-chain-security/about-dependabot-version-updates versions: fpt: '*' + ghec: '*' type: overview topics: - Dependabot diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/automating-dependabot-with-github-actions.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/automating-dependabot-with-github-actions.md index 97cc2ccdf46a..94c16c17fd17 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/automating-dependabot-with-github-actions.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/automating-dependabot-with-github-actions.md @@ -4,7 +4,8 @@ intro: 'Examples of how you can use {% data variables.product.prodname_actions % permissions: 'People with write permissions to a repository can configure {% data variables.product.prodname_actions %} to respond to {% data variables.product.prodname_dependabot %}-created pull requests.' miniTocMaxHeadingLevel: 3 versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' type: how_to topics: - Actions diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates.md index 61660ccf7a02..4718eee5bbe4 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates.md @@ -8,6 +8,7 @@ redirect_from: miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: reference topics: - Dependabot diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/customizing-dependency-updates.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/customizing-dependency-updates.md index e6c4af946732..b801822aba6c 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/customizing-dependency-updates.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/customizing-dependency-updates.md @@ -7,6 +7,7 @@ redirect_from: - /code-security/supply-chain-security/customizing-dependency-updates versions: fpt: '*' + ghec: '*' type: how_to topics: - Dependabot diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/enabling-and-disabling-version-updates.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/enabling-and-disabling-version-updates.md index 41fc45344df7..d4e25726efed 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/enabling-and-disabling-version-updates.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/enabling-and-disabling-version-updates.md @@ -7,6 +7,7 @@ redirect_from: - /code-security/supply-chain-security/enabling-and-disabling-version-updates versions: fpt: '*' + ghec: '*' type: how_to topics: - Dependabot diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/index.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/index.md index ef66ea52a251..18bb73560dd4 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/index.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/index.md @@ -5,6 +5,7 @@ redirect_from: - /github/administering-a-repository/keeping-your-dependencies-updated-automatically versions: fpt: '*' + ghec: '*' topics: - Repositories - Dependabot diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/keeping-your-actions-up-to-date-with-dependabot.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/keeping-your-actions-up-to-date-with-dependabot.md index b5afd94fc843..c3b4f738e85f 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/keeping-your-actions-up-to-date-with-dependabot.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/keeping-your-actions-up-to-date-with-dependabot.md @@ -7,6 +7,7 @@ redirect_from: - /code-security/supply-chain-security/keeping-your-actions-up-to-date-with-dependabot versions: fpt: '*' + ghec: '*' type: how_to topics: - Repositories diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/listing-dependencies-configured-for-version-updates.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/listing-dependencies-configured-for-version-updates.md index e4b368a69e32..5b9c605bb013 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/listing-dependencies-configured-for-version-updates.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/listing-dependencies-configured-for-version-updates.md @@ -6,6 +6,7 @@ redirect_from: - /code-security/supply-chain-security/listing-dependencies-configured-for-version-updates versions: fpt: '*' + ghec: '*' type: how_to topics: - Repositories diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot.md index b5ec8aca9c41..4adf8ddfa3f0 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot.md @@ -6,6 +6,7 @@ redirect_from: - /code-security/supply-chain-security/managing-encrypted-secrets-for-dependabot versions: fpt: '*' + ghec: '*' type: how_to topics: - Dependabot diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-pull-requests-for-dependency-updates.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-pull-requests-for-dependency-updates.md index 2d4164889e19..a8eb196944dc 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-pull-requests-for-dependency-updates.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-pull-requests-for-dependency-updates.md @@ -6,6 +6,7 @@ redirect_from: - /code-security/supply-chain-security/managing-pull-requests-for-dependency-updates versions: fpt: '*' + ghec: '*' type: how_to topics: - Repositories diff --git a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/upgrading-from-dependabotcom-to-github-native-dependabot.md b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/upgrading-from-dependabotcom-to-github-native-dependabot.md index 66c1d411a615..a63ca2bd83a7 100644 --- a/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/upgrading-from-dependabotcom-to-github-native-dependabot.md +++ b/content/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/upgrading-from-dependabotcom-to-github-native-dependabot.md @@ -3,6 +3,7 @@ title: Upgrading from Dependabot.com to GitHub-native Dependabot intro: You can upgrade to GitHub-native Dependabot by merging a pull request that will allow your dependencies to continue being updated. versions: fpt: '*' + ghec: '*' type: how_to topics: - Repositories diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies.md index f0ae2031bd30..e38834c538fb 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-alerts-for-vulnerable-dependencies.md @@ -9,7 +9,8 @@ redirect_from: versions: fpt: '*' ghes: '>=3.0' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: overview topics: - Dependabot @@ -34,10 +35,10 @@ When your code depends on a package that has a security vulnerability, this vuln {% data variables.product.prodname_dependabot %} detects vulnerable dependencies and sends {% data variables.product.prodname_dependabot_alerts %} when: -{% ifversion fpt %} +{% ifversion fpt or ghec %} - A new vulnerability is added to the {% data variables.product.prodname_advisory_database %}. For more information, see "[Browsing security vulnerabilities in the {% data variables.product.prodname_advisory_database %}](/github/managing-security-vulnerabilities/browsing-security-vulnerabilities-in-the-github-advisory-database)" and "[About {% data variables.product.prodname_security_advisories %}](/code-security/security-advisories/about-github-security-advisories)."{% else %} - New advisory data is synchronized to {% data variables.product.product_location %} each hour from {% data variables.product.prodname_dotcom_the_website %}. {% data reusables.security-advisory.link-browsing-advisory-db %}{% endif %} -- The dependency graph for a repository changes. For example, when a contributor pushes a commit to change the packages or versions it depends on{% ifversion fpt %}, or when the code of one of the dependencies changes{% endif %}. For more information, see "[About the dependency graph](/code-security/supply-chain-security/about-the-dependency-graph)." +- The dependency graph for a repository changes. For example, when a contributor pushes a commit to change the packages or versions it depends on{% ifversion fpt or ghec %}, or when the code of one of the dependencies changes{% endif %}. For more information, see "[About the dependency graph](/code-security/supply-chain-security/about-the-dependency-graph)." {% data reusables.repositories.dependency-review %} @@ -53,7 +54,7 @@ For a list of the ecosystems that {% data variables.product.product_name %} can {% data reusables.repositories.enable-security-alerts %} -{% ifversion fpt %}{% data variables.product.prodname_dotcom %} detects vulnerable dependencies in _public_ repositories and generates {% data variables.product.prodname_dependabot_alerts %} by default. Owners of private repositories, or people with admin access, can enable {% data variables.product.prodname_dependabot_alerts %} by enabling the dependency graph and {% data variables.product.prodname_dependabot_alerts %} for their repositories. +{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %} detects vulnerable dependencies in _public_ repositories and generates {% data variables.product.prodname_dependabot_alerts %} by default. Owners of private repositories, or people with admin access, can enable {% data variables.product.prodname_dependabot_alerts %} by enabling the dependency graph and {% data variables.product.prodname_dependabot_alerts %} for their repositories. You can also enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories owned by your user account or organization. For more information, see "[Managing security and analysis settings for your user account](/github/setting-up-and-managing-your-github-user-account/managing-security-and-analysis-settings-for-your-user-account)" or "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." @@ -64,7 +65,7 @@ For information about permission requirements for actions related to {% data var When {% data variables.product.product_name %} identifies a vulnerable dependency, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the Security tab for the repository. The alert includes a link to the affected file in the project, and information about a fixed version. {% data variables.product.product_name %} may also notify the maintainers of affected repositories about the new alert according to their notification preferences. For more information, see "[Configuring notifications for vulnerable dependencies](/code-security/supply-chain-security/configuring-notifications-for-vulnerable-dependencies)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} For repositories where {% data variables.product.prodname_dependabot_security_updates %} are enabled, the alert may also contain a link to a pull request to update the manifest or lock file to the minimum version that resolves the vulnerability. For more information, see "[About {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/about-dependabot-security-updates)." {% endif %} @@ -76,9 +77,9 @@ For repositories where {% data variables.product.prodname_dependabot_security_up ## Access to {% data variables.product.prodname_dependabot %} alerts -You can see all of the alerts that affect a particular project{% ifversion fpt %} on the repository's Security tab or{% endif %} in the repository's dependency graph. For more information, see "[Viewing and updating vulnerable dependencies in your repository](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository)." +You can see all of the alerts that affect a particular project{% ifversion fpt or ghec %} on the repository's Security tab or{% endif %} in the repository's dependency graph. For more information, see "[Viewing and updating vulnerable dependencies in your repository](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository)." -By default, we notify people with admin permissions in the affected repositories about new {% data variables.product.prodname_dependabot_alerts %}. {% ifversion fpt %}{% data variables.product.product_name %} never publicly discloses identified vulnerabilities for any repository. You can also make {% data variables.product.prodname_dependabot_alerts %} visible to additional people or teams working repositories that you own or have admin permissions for. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)." +By default, we notify people with admin permissions in the affected repositories about new {% data variables.product.prodname_dependabot_alerts %}. {% ifversion fpt or ghec %}{% data variables.product.product_name %} never publicly discloses identified vulnerabilities for any repository. You can also make {% data variables.product.prodname_dependabot_alerts %} visible to additional people or teams working repositories that you own or have admin permissions for. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)." {% endif %} {% data reusables.notifications.vulnerable-dependency-notification-enable %} @@ -86,9 +87,9 @@ By default, we notify people with admin permissions in the affected repositories You can also see all the {% data variables.product.prodname_dependabot_alerts %} that correspond to a particular vulnerability in the {% data variables.product.prodname_advisory_database %}. {% data reusables.security-advisory.link-browsing-advisory-db %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading - "[About {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/about-dependabot-security-updates)" - "[Viewing and updating vulnerable dependencies in your repository](/articles/viewing-and-updating-vulnerable-dependencies-in-your-repository)" -- "[Understanding how {% data variables.product.product_name %} uses and protects your data](/categories/understanding-how-github-uses-and-protects-your-data)"{% endif %} +- "[Understanding how {% data variables.product.prodname_dotcom %} uses and protects your data](/categories/understanding-how-github-uses-and-protects-your-data)"{% endif %} diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-dependabot-security-updates.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-dependabot-security-updates.md index 04017abb4b90..b916959a9f8c 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-dependabot-security-updates.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-dependabot-security-updates.md @@ -8,6 +8,7 @@ redirect_from: - /code-security/supply-chain-security/about-dependabot-security-updates versions: fpt: '*' + ghec: '*' type: overview topics: - Dependabot diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-managing-vulnerable-dependencies.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-managing-vulnerable-dependencies.md index 617cbaf2742d..3c17791c93cc 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-managing-vulnerable-dependencies.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/about-managing-vulnerable-dependencies.md @@ -7,7 +7,8 @@ redirect_from: versions: fpt: '*' ghes: '>=3.2' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: overview topics: - Dependabot @@ -36,7 +37,7 @@ By checking the dependency reviews on pull requests you can avoid introducing vu ## {% data variables.product.prodname_dependabot_alerts %} {% data variables.product.product_name %}} can create {% data variables.product.prodname_dependabot_alerts %} when it detects vulnerable dependencies in your repository. The alert is displayed on the Security tab for the repository. The alert includes a link to the affected file in the project, and information about a fixed version. {% data variables.product.product_name %} also notifies the maintainers of the repository, according to their notification preferences. For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## {% data variables.product.prodname_dependabot_security_updates %} When {% data variables.product.product_name %} generates a {% data variables.product.prodname_dependabot %} alert for a vulnerable dependency in your repository, {% data variables.product.prodname_dependabot %} can automatically try to fix it for you. {% data variables.product.prodname_dependabot_security_updates %} are automatically generated pull requests that update a vulnerable dependency to a fixed version. For more information, see "[About {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/about-dependabot-security-updates)." diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database.md index ddd68bf10701..7fd77729d1fd 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database.md @@ -7,6 +7,7 @@ redirect_from: - /code-security/supply-chain-security/browsing-security-vulnerabilities-in-the-github-advisory-database versions: fpt: '*' + ghec: '*' type: how_to topics: - Security advisories diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-dependabot-security-updates.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-dependabot-security-updates.md index 0e82a3830731..71dfa5c7e611 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-dependabot-security-updates.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-dependabot-security-updates.md @@ -11,6 +11,7 @@ redirect_from: - /code-security/supply-chain-security/configuring-dependabot-security-updates versions: fpt: '*' + ghec: '*' type: how_to topics: - Dependabot diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-notifications-for-vulnerable-dependencies.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-notifications-for-vulnerable-dependencies.md index c77f640f109e..016b306ba08e 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-notifications-for-vulnerable-dependencies.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/configuring-notifications-for-vulnerable-dependencies.md @@ -8,7 +8,8 @@ redirect_from: versions: fpt: '*' ghes: '>=3.0' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: how_to topics: - Dependabot @@ -22,10 +23,10 @@ topics: ## About notifications for vulnerable dependencies -When {% data variables.product.prodname_dependabot %} detects vulnerable dependencies in your repositories, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the Security tab for the repository. {% data variables.product.product_name %} notifies the maintainers of affected repositories about the new alert according to their notification preferences.{% ifversion fpt %} {% data variables.product.prodname_dependabot %} is enabled by default on all public repositories. For {% data variables.product.prodname_dependabot_alerts %}, by default, you will receive {% data variables.product.prodname_dependabot_alerts %} by email, grouped by the specific vulnerability. +When {% data variables.product.prodname_dependabot %} detects vulnerable dependencies in your repositories, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the Security tab for the repository. {% data variables.product.product_name %} notifies the maintainers of affected repositories about the new alert according to their notification preferences.{% ifversion fpt or ghec %} {% data variables.product.prodname_dependabot %} is enabled by default on all public repositories. For {% data variables.product.prodname_dependabot_alerts %}, by default, you will receive {% data variables.product.prodname_dependabot_alerts %} by email, grouped by the specific vulnerability. {% endif %} -{% ifversion fpt %}If you're an organization owner, you can enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories in your organization with one click. You can also set whether the detection of vulnerable dependencies will be enabled or disabled for newly-created repositories. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-new-repositories-when-they-are-added)." +{% ifversion fpt or ghec %}If you're an organization owner, you can enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories in your organization with one click. You can also set whether the detection of vulnerable dependencies will be enabled or disabled for newly-created repositories. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-new-repositories-when-they-are-added)." {% endif %} {% ifversion ghes or ghae-issue-4864 %} @@ -36,7 +37,7 @@ Enterprise owners can also enable {% data variables.product.prodname_dependabot_ ## Configuring notifications for {% data variables.product.prodname_dependabot_alerts %} -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} When a new {% data variables.product.prodname_dependabot %} alert is detected, {% data variables.product.product_name %} notifies all users with access to {% data variables.product.prodname_dependabot_alerts %} for the repository according to their notification preferences. You will receive alerts if you are watching the repository, have enabled notifications for security alerts or for all the activity on the repository, and are not ignoring the repository. For more information, see "[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)." {% endif %} diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/index.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/index.md index 5ccafe24edba..03cd98db461e 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/index.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: "issue-4864" + ghec: '*' topics: - Repositories - Dependabot diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-dependabot-errors.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-dependabot-errors.md index e4b55485ef3a..0785c4bb813d 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-dependabot-errors.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-dependabot-errors.md @@ -8,6 +8,7 @@ redirect_from: - /code-security/supply-chain-security/troubleshooting-dependabot-errors versions: fpt: '*' + ghec: '*' type: how_to topics: - Dependabot diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-the-detection-of-vulnerable-dependencies.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-the-detection-of-vulnerable-dependencies.md index eedd2c9707c1..dc5c53865b6e 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-the-detection-of-vulnerable-dependencies.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/troubleshooting-the-detection-of-vulnerable-dependencies.md @@ -8,7 +8,8 @@ redirect_from: versions: fpt: '*' ghes: '>=3.0' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: how_to topics: - Dependabot @@ -32,15 +33,15 @@ The results of dependency detection reported by {% data variables.product.produc * {% data variables.product.prodname_advisory_database %} is one of the data sources that {% data variables.product.prodname_dotcom %} uses to identify vulnerable dependencies. It's a free, curated database of vulnerability information for common package ecosystems on {% data variables.product.prodname_dotcom %}. It includes both data reported directly to {% data variables.product.prodname_dotcom %} from {% data variables.product.prodname_security_advisories %}, as well as official feeds and community sources. This data is reviewed and curated by {% data variables.product.prodname_dotcom %} to ensure that false or unactionable information is not shared with the development community. {% data reusables.security-advisory.link-browsing-advisory-db %} * The dependency graph parses all known package manifest files in a user’s repository. For example, for npm it will parse the _package-lock.json_ file. It constructs a graph of all of the repository’s dependencies and public dependents. This happens when you enable the dependency graph and when anyone pushes to the default branch, and it includes commits that makes changes to a supported manifest format. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." * {% data variables.product.prodname_dependabot %} scans any push, to the default branch, that contains a manifest file. When a new vulnerability record is added, it scans all existing repositories and generates an alert for each vulnerable repository. {% data variables.product.prodname_dependabot_alerts %} are aggregated at the repository level, rather than creating one alert per vulnerability. For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)." -* {% ifversion fpt %}{% data variables.product.prodname_dependabot_security_updates %} are triggered when you receive an alert about a vulnerable dependency in your repository. Where possible, {% data variables.product.prodname_dependabot %} creates a pull request in your repository to upgrade the vulnerable dependency to the minimum possible secure version needed to avoid the vulnerability. For more information, see "[About {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/about-dependabot-security-updates)" and "[Troubleshooting {% data variables.product.prodname_dependabot %} errors](/github/managing-security-vulnerabilities/troubleshooting-dependabot-errors)." +* {% ifversion fpt or ghec %}{% data variables.product.prodname_dependabot_security_updates %} are triggered when you receive an alert about a vulnerable dependency in your repository. Where possible, {% data variables.product.prodname_dependabot %} creates a pull request in your repository to upgrade the vulnerable dependency to the minimum possible secure version needed to avoid the vulnerability. For more information, see "[About {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/about-dependabot-security-updates)" and "[Troubleshooting {% data variables.product.prodname_dependabot %} errors](/github/managing-security-vulnerabilities/troubleshooting-dependabot-errors)." {% endif %}{% data variables.product.prodname_dependabot %} doesn't scan repositories for vulnerable dependencies on a schedule, but rather when something changes. For example, a scan is triggered when a new dependency is added ({% data variables.product.prodname_dotcom %} checks for this on every push), or when a new vulnerability is added to the advisory database{% ifversion ghes > 2.22 or ghae-issue-4864 %} and synchronized to {% data variables.product.product_location %}{% endif %}. For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies#detection-of-vulnerable-dependencies)." ## Why don't I get vulnerability alerts for some ecosystems? -{% data variables.product.prodname_dotcom %} limits its support for vulnerability alerts to a set of ecosystems where we can provide high-quality, actionable data. Curated vulnerabilities in the {% data variables.product.prodname_advisory_database %}, the dependency graph, {% ifversion fpt %}{% data variables.product.prodname_dependabot %} security updates, {% endif %}and {% data variables.product.prodname_dependabot %} alerts are provided for several ecosystems, including Java’s Maven, JavaScript’s npm and Yarn, .NET’s NuGet, Python’s pip, Ruby's RubyGems, and PHP’s Composer. We'll continue to add support for more ecosystems over time. For an overview of the package ecosystems that we support, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems)." +{% data variables.product.prodname_dotcom %} limits its support for vulnerability alerts to a set of ecosystems where we can provide high-quality, actionable data. Curated vulnerabilities in the {% data variables.product.prodname_advisory_database %}, the dependency graph, {% ifversion fpt or ghec %}{% data variables.product.prodname_dependabot %} security updates, {% endif %}and {% data variables.product.prodname_dependabot %} alerts are provided for several ecosystems, including Java’s Maven, JavaScript’s npm and Yarn, .NET’s NuGet, Python’s pip, Ruby's RubyGems, and PHP’s Composer. We'll continue to add support for more ecosystems over time. For an overview of the package ecosystems that we support, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems)." -It's worth noting that {% data variables.product.prodname_dotcom %} Security Advisories may exist for other ecosystems. The information in a security advisory is provided by the maintainers of a particular repository. This data is not curated in the same way as information for the supported ecosystems. {% ifversion fpt %}For more information, see "[About {% data variables.product.prodname_dotcom %} Security Advisories](/github/managing-security-vulnerabilities/about-github-security-advisories)."{% endif %} +It's worth noting that {% data variables.product.prodname_dotcom %} Security Advisories may exist for other ecosystems. The information in a security advisory is provided by the maintainers of a particular repository. This data is not curated in the same way as information for the supported ecosystems. {% ifversion fpt or ghec %}For more information, see "[About {% data variables.product.prodname_dotcom %} Security Advisories](/github/managing-security-vulnerabilities/about-github-security-advisories)."{% endif %} **Check**: Does the uncaught vulnerability apply to an unsupported ecosystem? @@ -48,11 +49,11 @@ It's worth noting that {% data variables.product.prodname_dotcom %} Security Adv The dependency graph includes information on dependencies that are explicitly declared in your environment. That is, dependencies that are specified in a manifest or a lockfile. The dependency graph generally also includes transitive dependencies, even when they aren't specified in a lockfile, by looking at the dependencies of the dependencies in a manifest file. -{% data variables.product.prodname_dependabot_alerts %} advise you about dependencies you should update, including transitive dependencies, where the version can be determined from a manifest or a lockfile. {% ifversion fpt %}{% data variables.product.prodname_dependabot_security_updates %} only suggest a change where {% data variables.product.prodname_dependabot %} can directly "fix" the dependency, that is, when these are: +{% data variables.product.prodname_dependabot_alerts %} advise you about dependencies you should update, including transitive dependencies, where the version can be determined from a manifest or a lockfile. {% ifversion fpt or ghec %}{% data variables.product.prodname_dependabot_security_updates %} only suggest a change where {% data variables.product.prodname_dependabot %} can directly "fix" the dependency, that is, when these are: * Direct dependencies explicitly declared in a manifest or lockfile * Transitive dependencies declared in a lockfile{% endif %} -The dependency graph doesn't include “loose” dependencies. “Loose” dependencies are individual files that are copied from another source and checked into the repository directly or within an archive (such as a ZIP or JAR file), rather than being referenced by in a package manager’s manifest or lockfile. +The dependency graph doesn't include "loose" dependencies. "Loose" dependencies are individual files that are copied from another source and checked into the repository directly or within an archive (such as a ZIP or JAR file), rather than being referenced by in a package manager’s manifest or lockfile. **Check**: Is the uncaught vulnerability for a component that's not specified in the repository's manifest or lockfile? @@ -96,7 +97,7 @@ Some third-party tools use uncurated CVE data that isn't checked or filtered by Since {% data variables.product.prodname_dependabot %} uses curated data in the {% data variables.product.prodname_advisory_database %}, the volume of alerts may be lower, but the alerts you do receive will be accurate and relevant. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Does each dependency vulnerability generate a separate alert? When a dependency has multiple vulnerabilities, only one aggregated alert is generated for that dependency, instead of one alert per vulnerability. @@ -116,5 +117,5 @@ When you click to display the alert details, you can see how many vulnerabilitie - "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)" - "[Viewing and updating vulnerable dependencies in your repository](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository)" -- "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)"{% ifversion fpt %} +- "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)"{% ifversion fpt or ghec %} - "[Troubleshooting {% data variables.product.prodname_dependabot %} errors](/github/managing-security-vulnerabilities/troubleshooting-dependabot-errors)"{% endif %} diff --git a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/viewing-and-updating-vulnerable-dependencies-in-your-repository.md b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/viewing-and-updating-vulnerable-dependencies-in-your-repository.md index 834f3f8200a9..e136fe7f6353 100644 --- a/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/viewing-and-updating-vulnerable-dependencies-in-your-repository.md +++ b/content/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/viewing-and-updating-vulnerable-dependencies-in-your-repository.md @@ -10,7 +10,8 @@ shortTitle: View vulnerable dependencies versions: fpt: '*' ghes: '>=3.0' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: how_to topics: - Dependabot @@ -20,9 +21,9 @@ topics: - Pull requests - Repositories --- -Your repository's {% data variables.product.prodname_dependabot %} alerts tab lists all open and closed {% data variables.product.prodname_dependabot_alerts %}{% ifversion fpt %} and corresponding {% data variables.product.prodname_dependabot_security_updates %}{% endif %}. You can sort the list of alerts by selecting the drop-down menu, and you can click into specific alerts for more details. For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)." +Your repository's {% data variables.product.prodname_dependabot %} alerts tab lists all open and closed {% data variables.product.prodname_dependabot_alerts %}{% ifversion fpt or ghec %} and corresponding {% data variables.product.prodname_dependabot_security_updates %}{% endif %}. You can sort the list of alerts by selecting the drop-down menu, and you can click into specific alerts for more details. For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can enable automatic security updates for any repository that uses {% data variables.product.prodname_dependabot_alerts %} and the dependency graph. For more information, see "[About {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/about-dependabot-security-updates)." {% data reusables.repositories.dependency-review %} @@ -34,7 +35,7 @@ You can enable automatic security updates for any repository that uses {% data v ## Viewing and updating vulnerable dependencies -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-security %} {% data reusables.repositories.sidebar-dependabot-alerts %} @@ -70,8 +71,8 @@ You can enable automatic security updates for any repository that uses {% data v ## Further reading -- "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)"{% ifversion fpt %} +- "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)"{% ifversion fpt or ghec %} - "[Configuring {% data variables.product.prodname_dependabot_security_updates %}](/github/managing-security-vulnerabilities/configuring-dependabot-security-updates)"{% endif %} - "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)" -- "[Troubleshooting the detection of vulnerable dependencies](/github/managing-security-vulnerabilities/troubleshooting-the-detection-of-vulnerable-dependencies)"{% ifversion fpt %} +- "[Troubleshooting the detection of vulnerable dependencies](/github/managing-security-vulnerabilities/troubleshooting-the-detection-of-vulnerable-dependencies)"{% ifversion fpt or ghec %} - "[Troubleshooting {% data variables.product.prodname_dependabot %} errors](/github/managing-security-vulnerabilities/troubleshooting-dependabot-errors)"{% endif %} diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md index bc28ed03cc54..c8d02c393134 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review.md @@ -6,7 +6,8 @@ shortTitle: Dependency review versions: fpt: '*' ghes: '>= 3.2' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: overview topics: - Advanced Security @@ -15,7 +16,7 @@ topics: - Dependencies - Pull requests redirect_from: - - /code-security/supply-chain-security/about-dependency-review + - /code-security/supply-chain-security/about-dependency-review --- {% data reusables.dependency-review.beta %} @@ -26,7 +27,7 @@ redirect_from: If a pull request targets your repository's default branch and contains changes to package manifests or lock files, you can display a dependency review to see what has changed. The dependency review includes details of changes to indirect dependencies in lock files, and it tells you if any of the added or updated dependencies contain known vulnerabilities. -{% ifversion fpt %} +{% ifversion fpt or ghec %} Dependency review is available in: * All public repositories. @@ -45,4 +46,4 @@ Dependency review supports the same languages and package management ecosystems ## Enabling dependency review -The dependency review feature becomes available when you enable the dependency graph. {% ifversion fpt %}For more information, see "[Enabling the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#enabling-the-dependency-graph)."{% endif %}{% ifversion ghes or ghae %}For more information, see "[Enabling the dependency graph and Dependabot alerts on your enterprise account](/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-the-dependency-graph-and-dependabot-alerts-on-your-enterprise-account)."{% endif %} +The dependency review feature becomes available when you enable the dependency graph. {% ifversion fpt or ghec %}For more information, see "[Enabling the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#enabling-the-dependency-graph)."{% endif %}{% ifversion ghes or ghae %}For more information, see "[Enabling the dependency graph and Dependabot alerts on your enterprise account](/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-the-dependency-graph-and-dependabot-alerts-on-your-enterprise-account)."{% endif %} diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md index 89cbde201611..fae492815bf4 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph.md @@ -7,7 +7,8 @@ redirect_from: versions: fpt: '*' ghes: '>=3.0' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: overview topics: - Dependency graph @@ -20,20 +21,20 @@ shortTitle: Dependency graph ## Dependency graph availability -{% ifversion fpt %}The dependency graph is available for every public repository that defines dependencies in a supported package ecosystem using a supported file format. Repository administrators can also set up the dependency graph for private repositories.{% endif %} +{% ifversion fpt or ghec %}The dependency graph is available for every public repository that defines dependencies in a supported package ecosystem using a supported file format. Repository administrators can also set up the dependency graph for private repositories.{% endif %} {% data reusables.dependabot.dependabot-alerts-dependency-graph-enterprise %} ## About the dependency graph -The dependency graph is a summary of the manifest and lock files stored in a repository. For each repository, it shows{% ifversion fpt %}: +The dependency graph is a summary of the manifest and lock files stored in a repository. For each repository, it shows{% ifversion fpt or ghec %}: - Dependencies, the ecosystems and packages it depends on - Dependents, the repositories and packages that depend on it{% else %} dependencies, that is, the ecosystems and packages it depends on. {% data variables.product.product_name %} does not calculate information about dependents, the repositories and packages that depend on a repository.{% endif %} -When you push a commit to {% data variables.product.product_name %} that changes or adds a supported manifest or lock file to the default branch, the dependency graph is automatically updated.{% ifversion fpt %} In addition, the graph is updated when anyone pushes a change to the repository of one of your dependencies.{% endif %} For information on the supported ecosystems and manifest files, see "[Supported package ecosystems](#supported-package-ecosystems)" below. +When you push a commit to {% data variables.product.product_name %} that changes or adds a supported manifest or lock file to the default branch, the dependency graph is automatically updated.{% ifversion fpt or ghec %} In addition, the graph is updated when anyone pushes a change to the repository of one of your dependencies.{% endif %} For information on the supported ecosystems and manifest files, see "[Supported package ecosystems](#supported-package-ecosystems)" below. -{% ifversion fpt or ghes > 3.1 or ghae %} +{% ifversion fpt or ghes > 3.1 or ghae or ghec %} When you create a pull request containing changes to dependencies that targets the default branch, {% data variables.product.prodname_dotcom %} uses the dependency graph to add dependency reviews to the pull request. These indicate whether the dependencies contain vulnerabilities and, if so, the version of the dependency in which the vulnerability was fixed. For more information, see "[About dependency review](/code-security/supply-chain-security/about-dependency-review)." {% endif %} @@ -44,9 +45,9 @@ The dependency graph includes all the dependencies of a repository that are deta - Direct dependencies, that are explicitly defined in a manifest or lock file - Indirect dependencies of these direct dependencies, also known as transitive dependencies or sub-dependencies -The dependency graph identifies indirect dependencies{% ifversion fpt %} either explicitly from a lock file or by checking the dependencies of your direct dependencies. For the most reliable graph, you should use lock files (or their equivalent) because they define exactly which versions of the direct and indirect dependencies you currently use. If you use lock files, you also ensure that all contributors to the repository are using the same versions, which will make it easier for you to test and debug code{% else %} from the lock files{% endif %}. +The dependency graph identifies indirect dependencies{% ifversion fpt or ghec %} either explicitly from a lock file or by checking the dependencies of your direct dependencies. For the most reliable graph, you should use lock files (or their equivalent) because they define exactly which versions of the direct and indirect dependencies you currently use. If you use lock files, you also ensure that all contributors to the repository are using the same versions, which will make it easier for you to test and debug code{% else %} from the lock files{% endif %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Dependents included For public repositories, only public repositories that depend on it or on packages that it publishes are reported. This information is not reported for private repositories.{% endif %} @@ -55,22 +56,22 @@ For public repositories, only public repositories that depend on it or on packag You can use the dependency graph to: -- Explore the repositories your code depends on{% ifversion fpt %}, and those that depend on it{% endif %}. For more information, see "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository)." {% ifversion fpt %} +- Explore the repositories your code depends on{% ifversion fpt or ghec %}, and those that depend on it{% endif %}. For more information, see "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository)." {% ifversion fpt or ghec %} - View a summary of the dependencies used in your organization's repositories in a single dashboard. For more information, see "[Viewing insights for your organization](/articles/viewing-insights-for-your-organization#viewing-organization-dependency-insights)."{% endif %} -- View and update vulnerable dependencies for your repository. For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)."{% ifversion fpt or ghes > 3.1 %} +- View and update vulnerable dependencies for your repository. For more information, see "[About alerts for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies)."{% ifversion fpt or ghes > 3.1 or ghec %} - See information about vulnerable dependencies in pull requests. For more information, see "[Reviewing dependency changes in a pull request](/github/collaborating-with-issues-and-pull-requests/reviewing-dependency-changes-in-a-pull-request)."{% endif %} ## Enabling the dependency graph -{% ifversion fpt %}To generate a dependency graph, {% data variables.product.product_name %} needs read-only access to the dependency manifest and lock files for a repository. The dependency graph is automatically generated for all public repositories and you can choose to enable it for private repositories. For information about enabling or disabling it for private repositories, see "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository)."{% endif %} +{% ifversion fpt or ghec %}To generate a dependency graph, {% data variables.product.product_name %} needs read-only access to the dependency manifest and lock files for a repository. The dependency graph is automatically generated for all public repositories and you can choose to enable it for private repositories. For information about enabling or disabling it for private repositories, see "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository)."{% endif %} {% ifversion ghes or ghae %}If the dependency graph is not available in your system, your enterprise owner can enable the dependency graph and {% data variables.product.prodname_dependabot_alerts %}. For more information, see "[Enabling the dependency graph and {% data variables.product.prodname_dependabot_alerts %} on your enterprise account](/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-the-dependency-graph-and-dependabot-alerts-on-your-enterprise-account)."{% endif %} -When the dependency graph is first enabled, any manifest and lock files for supported ecosystems are parsed immediately. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. Once enabled, the graph is automatically updated with every push to the repository{% ifversion fpt %} and every push to other repositories in the graph{% endif %}. +When the dependency graph is first enabled, any manifest and lock files for supported ecosystems are parsed immediately. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. Once enabled, the graph is automatically updated with every push to the repository{% ifversion fpt or ghec %} and every push to other repositories in the graph{% endif %}. ## Supported package ecosystems -The recommended formats explicitly define which versions are used for all direct and all indirect dependencies. If you use these formats, your dependency graph is more accurate. It also reflects the current build set up and enables the dependency graph to report vulnerabilities in both direct and indirect dependencies.{% ifversion fpt %} Indirect dependencies that are inferred from a manifest file (or equivalent) are excluded from the checks for vulnerable dependencies.{% endif %} +The recommended formats explicitly define which versions are used for all direct and all indirect dependencies. If you use these formats, your dependency graph is more accurate. It also reflects the current build set up and enables the dependency graph to report vulnerabilities in both direct and indirect dependencies.{% ifversion fpt or ghec %} Indirect dependencies that are inferred from a manifest file (or equivalent) are excluded from the checks for vulnerable dependencies.{% endif %} | Package manager | Languages | Recommended formats | All supported formats | | --- | --- | --- | ---| @@ -96,7 +97,7 @@ The recommended formats explicitly define which versions are used for all direct ## Further reading - "[Dependency graph](https://en.wikipedia.org/wiki/Dependency_graph)" on Wikipedia -- "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository)"{% ifversion fpt %} +- "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository)"{% ifversion fpt or ghec %} - "[Viewing insights for your organization](/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization)"{% endif %} - "[Viewing and updating vulnerable dependencies in your repository](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository)" - "[Troubleshooting the detection of vulnerable dependencies](/github/managing-security-vulnerabilities/troubleshooting-the-detection-of-vulnerable-dependencies)" diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md index ff7c1313e9a7..9fc1f5b409d5 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/exploring-the-dependencies-of-a-repository.md @@ -1,6 +1,6 @@ --- title: Exploring the dependencies of a repository -intro: 'You can use the dependency graph to see the packages your project depends on{% ifversion fpt %} and the repositories that depend on it{% endif %}. In addition, you can see any vulnerabilities detected in its dependencies.' +intro: 'You can use the dependency graph to see the packages your project depends on{% ifversion fpt or ghec %} and the repositories that depend on it{% endif %}. In addition, you can see any vulnerabilities detected in its dependencies.' redirect_from: - /articles/listing-the-packages-that-a-repository-depends-on - /github/visualizing-repository-data-with-graphs/listing-the-packages-that-a-repository-depends-on @@ -12,7 +12,8 @@ redirect_from: versions: fpt: '*' ghes: '>=3.0' - ghae: "issue-4864" + ghae: issue-4864 + ghec: '*' type: how_to topics: - Dependency graph @@ -24,11 +25,11 @@ shortTitle: Explore dependencies ## Viewing the dependency graph -The dependency graph shows the dependencies{% ifversion fpt %} and dependents{% endif %} of your repository. For information about the detection of dependencies and which ecosystems are supported, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." +The dependency graph shows the dependencies{% ifversion fpt or ghec %} and dependents{% endif %} of your repository. For information about the detection of dependencies and which ecosystems are supported, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.accessing-repository-graphs %} -{% data reusables.repositories.click-dependency-graph %}{% ifversion fpt %} +{% data reusables.repositories.click-dependency-graph %}{% ifversion fpt or ghec %} 4. Optionally, under "Dependency graph", click **Dependents**. ![Dependents tab on the dependency graph page](/assets/images/help/graphs/dependency-graph-dependents-tab.png){% endif %} @@ -38,7 +39,7 @@ Enterprise owners can configure the dependency graph at an enterprise level. For ### Dependencies view -{% ifversion fpt %} +{% ifversion fpt or ghec %} Dependencies are grouped by ecosystem. You can expand a dependency to view its dependencies. For dependencies on public repositories hosted on {% data variables.product.product_name %}, you can also click a dependency to view the repository. Dependencies on private repositories, private packages, or unrecognized files are shown in plain text. If vulnerabilities have been detected in the repository, these are shown at the top of the view for users with access to {% data variables.product.prodname_dependabot_alerts %}. @@ -60,7 +61,7 @@ Any direct and indirect dependencies that are specified in the repository's mani {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Dependents view For public repositories, the dependents view shows how the repository is used by other repositories. To show only the repositories that contain a library in a package manager, click **NUMBER Packages** immediately above the list of dependent repositories. The dependent counts are approximate and may not always match the dependents listed. @@ -105,7 +106,7 @@ The "Used by" section represents a single package from the repository. If you ha If your dependency graph is empty, there may be a problem with the file containing your dependencies. Check the file to ensure that it's correctly formatted for the file type. -{% ifversion fpt %} +{% ifversion fpt or ghec %} If the file is correctly formatted, then check its size. The dependency graph ignores individual manifest and lock files that are over 0.5 Mb, unless you are a {% data variables.product.prodname_enterprise %} user. It processes up to 20 manifest or lock files per repository by default, so you can split dependencies into smaller files in subdirectories of the repository.{% endif %} If a manifest or lock file is not processed, its dependencies are omitted from the dependency graph and they can't be checked for vulnerable dependencies. @@ -113,7 +114,7 @@ If a manifest or lock file is not processed, its dependencies are omitted from t ## Further reading - "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)" -- "[Viewing and updating vulnerable dependencies in your repository](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository)"{% ifversion fpt %} +- "[Viewing and updating vulnerable dependencies in your repository](/github/managing-security-vulnerabilities/viewing-and-updating-vulnerable-dependencies-in-your-repository)"{% ifversion fpt or ghec %} - "[Viewing insights for your organization](/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization)" -- "[Understanding how {% data variables.product.product_name %} uses and protects your data](/github/understanding-how-github-uses-and-protects-your-data)" +- "[Understanding how {% data variables.product.prodname_dotcom %} uses and protects your data](/github/understanding-how-github-uses-and-protects-your-data)" {% endif %} diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/index.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/index.md index 1abe7ab3e4d3..cd0d5a830b8c 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/index.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/index.md @@ -4,6 +4,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: "issue-4864" + ghec: '*' topics: - Dependency graph - Dependencies diff --git a/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md b/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md index 496362f175b7..a2fed12e8672 100644 --- a/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md +++ b/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md @@ -3,6 +3,7 @@ title: Allowing your codespace to access a private image registry intro: 'You can use secrets to allow {% data variables.product.prodname_codespaces %} to access a private image registry' versions: fpt: '*' + ghec: '*' topics: - Codespaces product: '{% data reusables.gated-features.codespaces %}' @@ -19,7 +20,7 @@ When you launch a codespace, {% data variables.product.prodname_codespaces %} ch - `<*>_CONTAINER_REGISTRY_USER` - `<*>_CONTAINER_REGISTRY_PASSWORD` -You can store secrets at the user, repository, or organization-level, allowing you to share them securely between different codespaces. When you create a set of secrets for a private image registry, you need to replace the “<*>” in the name with a consistent identifier. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)" and "[Managing encrypted secrets for your repository and organization for Codespaces](/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces)." +You can store secrets at the user, repository, or organization-level, allowing you to share them securely between different codespaces. When you create a set of secrets for a private image registry, you need to replace the "<*>" in the name with a consistent identifier. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)" and "[Managing encrypted secrets for your repository and organization for Codespaces](/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces)." If you are setting the secrets at the user or organization level, make sure to assign those secrets to the repository you'll be creating the codespace in by choosing an access policy from the dropdown list. diff --git a/content/codespaces/codespaces-reference/disaster-recovery-for-codespaces.md b/content/codespaces/codespaces-reference/disaster-recovery-for-codespaces.md index c85718f8acd4..2a57e019e684 100644 --- a/content/codespaces/codespaces-reference/disaster-recovery-for-codespaces.md +++ b/content/codespaces/codespaces-reference/disaster-recovery-for-codespaces.md @@ -2,7 +2,8 @@ title: Disaster recovery for Codespaces intro: 'This article describes guidance for a disaster recovery scenario, when a whole region experiences an outage due to major natural disaster or widespread service interruption.' versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' product: '{% data reusables.gated-features.codespaces %}' topics: - Codespaces diff --git a/content/codespaces/codespaces-reference/index.md b/content/codespaces/codespaces-reference/index.md index e3cb93929ef0..126b14cf6301 100644 --- a/content/codespaces/codespaces-reference/index.md +++ b/content/codespaces/codespaces-reference/index.md @@ -3,6 +3,7 @@ title: Reference intro: 'This section contains references that will allow you to be successful with {% data variables.product.prodname_codespaces %}' versions: fpt: '*' + ghec: '*' product: '{% data reusables.gated-features.codespaces %}' children: - /understanding-billing-for-codespaces diff --git a/content/codespaces/codespaces-reference/security-in-codespaces.md b/content/codespaces/codespaces-reference/security-in-codespaces.md index f3319b4d1793..a67012988b77 100644 --- a/content/codespaces/codespaces-reference/security-in-codespaces.md +++ b/content/codespaces/codespaces-reference/security-in-codespaces.md @@ -4,6 +4,7 @@ intro: 'Overview of the {% data variables.product.prodname_codespaces %} securit miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' topics: - Codespaces - Security diff --git a/content/codespaces/codespaces-reference/understanding-billing-for-codespaces.md b/content/codespaces/codespaces-reference/understanding-billing-for-codespaces.md index a224e4cb00b6..e98a55d82af1 100644 --- a/content/codespaces/codespaces-reference/understanding-billing-for-codespaces.md +++ b/content/codespaces/codespaces-reference/understanding-billing-for-codespaces.md @@ -3,6 +3,7 @@ title: Understanding billing for Codespaces intro: 'Learn how your {% data variables.product.prodname_codespaces %} usage is billed.' versions: fpt: '*' + ghec: '*' redirect_from: - /github/developing-online-with-codespaces/about-billing-for-codespaces - /codespaces/getting-started-with-codespaces/about-billing-for-codespaces diff --git a/content/codespaces/codespaces-reference/using-the-command-palette-in-codespaces.md b/content/codespaces/codespaces-reference/using-the-command-palette-in-codespaces.md index 45c9285dceef..ffbb96d013f6 100644 --- a/content/codespaces/codespaces-reference/using-the-command-palette-in-codespaces.md +++ b/content/codespaces/codespaces-reference/using-the-command-palette-in-codespaces.md @@ -3,6 +3,7 @@ title: Using the Command Palette in Codespaces intro: 'You can use the Command Palette feature of {% data variables.product.prodname_vscode %} to access many commands in Codespaces.' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project.md b/content/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project.md index a2bf56d6e2db..427456be6560 100644 --- a/content/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project.md +++ b/content/codespaces/customizing-your-codespace/configuring-codespaces-for-your-project.md @@ -8,6 +8,7 @@ redirect_from: - /github/developing-online-with-codespaces/configuring-codespaces-for-your-project versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/customizing-your-codespace/index.md b/content/codespaces/customizing-your-codespace/index.md index e2de76a383f4..56404875b20b 100644 --- a/content/codespaces/customizing-your-codespace/index.md +++ b/content/codespaces/customizing-your-codespace/index.md @@ -3,7 +3,8 @@ title: Customizing your codespace intro: '{% data variables.product.prodname_codespaces %} is a dedicated environment for you. You can configure your repositories with a dev container to define their default Codespaces environment, and personalize your development experience across all of your codespaces with dotfiles and Settings Sync.' product: '{% data reusables.gated-features.codespaces %}' versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' redirect_from: - /codespaces/setting-up-your-codespace topics: diff --git a/content/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account.md b/content/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account.md index e8d3758ddf0b..4c035e4c66db 100644 --- a/content/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account.md +++ b/content/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account.md @@ -7,6 +7,7 @@ redirect_from: - /codespaces/setting-up-your-codespace/personalizing-codespaces-for-your-account versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md b/content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md index d5a23acd6483..03f5d185c3e8 100644 --- a/content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md +++ b/content/codespaces/customizing-your-codespace/prebuilding-codespaces-for-your-project.md @@ -3,6 +3,7 @@ title: Prebuilding Codespaces for your project intro: You can configure your project to prebuild a codespace automatically each time you push a change to your repository. versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/developing-in-codespaces/changing-the-machine-type-for-your-codespace.md b/content/codespaces/developing-in-codespaces/changing-the-machine-type-for-your-codespace.md index c4055df83b26..1509da181c51 100644 --- a/content/codespaces/developing-in-codespaces/changing-the-machine-type-for-your-codespace.md +++ b/content/codespaces/developing-in-codespaces/changing-the-machine-type-for-your-codespace.md @@ -4,7 +4,8 @@ shortTitle: Changing the machine type intro: 'You can change the type of machine that''s running your codespace, so that you''re using resources appropriate for work you''re doing.' product: '{% data reusables.gated-features.codespaces %}' versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' topics: - Codespaces --- diff --git a/content/codespaces/developing-in-codespaces/creating-a-codespace.md b/content/codespaces/developing-in-codespaces/creating-a-codespace.md index e008efa60791..2408d40d6276 100644 --- a/content/codespaces/developing-in-codespaces/creating-a-codespace.md +++ b/content/codespaces/developing-in-codespaces/creating-a-codespace.md @@ -8,6 +8,7 @@ redirect_from: - /github/developing-online-with-codespaces/creating-a-codespace versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/developing-in-codespaces/deleting-a-codespace.md b/content/codespaces/developing-in-codespaces/deleting-a-codespace.md index a8747bb1ad56..656a3459a8ee 100644 --- a/content/codespaces/developing-in-codespaces/deleting-a-codespace.md +++ b/content/codespaces/developing-in-codespaces/deleting-a-codespace.md @@ -7,6 +7,7 @@ redirect_from: - /github/developing-online-with-codespaces/deleting-a-codespace versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md b/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md index 957c9eee2100..b9556b2da136 100644 --- a/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md +++ b/content/codespaces/developing-in-codespaces/developing-in-a-codespace.md @@ -8,6 +8,7 @@ redirect_from: - /github/developing-online-with-codespaces/developing-in-a-codespace versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md b/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md index 19d2fc5ec637..67b751f0d346 100644 --- a/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md +++ b/content/codespaces/developing-in-codespaces/forwarding-ports-in-your-codespace.md @@ -4,6 +4,7 @@ intro: '{% data reusables.codespaces.about-port-forwarding %}' product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' redirect_from: - /github/developing-online-with-codespaces/forwarding-ports-in-your-codespace type: how_to diff --git a/content/codespaces/developing-in-codespaces/index.md b/content/codespaces/developing-in-codespaces/index.md index b7649c6d8329..993065c58e0a 100644 --- a/content/codespaces/developing-in-codespaces/index.md +++ b/content/codespaces/developing-in-codespaces/index.md @@ -4,6 +4,7 @@ intro: 'Create a codespace to get started with developing your project inside a product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' topics: - Codespaces children: diff --git a/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md b/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md index 23a4917b5aca..ed748d24596f 100644 --- a/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md +++ b/content/codespaces/developing-in-codespaces/using-codespaces-for-pull-requests.md @@ -5,6 +5,7 @@ intro: 'You can use {% data variables.product.prodname_codespaces %} in your dev product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md b/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md index 4f5e71eead3e..8e3a3e9dac9d 100644 --- a/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md +++ b/content/codespaces/developing-in-codespaces/using-codespaces-in-visual-studio-code.md @@ -8,6 +8,7 @@ redirect_from: - /github/developing-online-with-codespaces/using-codespaces-in-visual-studio versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces @@ -49,7 +50,7 @@ Use the {% data variables.product.prodname_vs %} Marketplace to install the [{% ## Creating a codespace in {% data variables.product.prodname_vscode %} -After you connect your {% data variables.product.product_name %} account to the {% data variables.product.prodname_github_codespaces %} extension, you can develop in a codespace that you created on {% data variables.product.product_name %} or in {% data variables.product.prodname_vscode %}. +After you connect your account on {% data variables.product.product_location %} to the {% data variables.product.prodname_github_codespaces %} extension, you can develop in a codespace that you created on {% data variables.product.product_name %} or in {% data variables.product.prodname_vscode %}. {% data reusables.codespaces.click-remote-explorer-icon-vscode %} 2. Click the Add icon, then click **Create New Codespace**. diff --git a/content/codespaces/developing-in-codespaces/using-source-control-in-your-codespace.md b/content/codespaces/developing-in-codespaces/using-source-control-in-your-codespace.md index 4896243bd15e..d9959c17d122 100644 --- a/content/codespaces/developing-in-codespaces/using-source-control-in-your-codespace.md +++ b/content/codespaces/developing-in-codespaces/using-source-control-in-your-codespace.md @@ -4,6 +4,7 @@ intro: After making changes to a file in your codespace you can quickly commit t product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/getting-started/deep-dive.md b/content/codespaces/getting-started/deep-dive.md index f8edc294a15b..a1be07292c0e 100644 --- a/content/codespaces/getting-started/deep-dive.md +++ b/content/codespaces/getting-started/deep-dive.md @@ -4,7 +4,8 @@ intro: 'Understand how {% data variables.product.prodname_codespaces %} works.' allowTitleToDifferFromFilename: true product: '{% data reusables.gated-features.codespaces %}' versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' type: quick_start topics: - Codespaces diff --git a/content/codespaces/getting-started/index.md b/content/codespaces/getting-started/index.md index 25cdf2526034..02b137c1133d 100644 --- a/content/codespaces/getting-started/index.md +++ b/content/codespaces/getting-started/index.md @@ -4,6 +4,7 @@ intro: 'Learn how to get started with {% data variables.product.prodname_codespa product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' children: - /quickstart - /deep-dive diff --git a/content/codespaces/getting-started/quickstart.md b/content/codespaces/getting-started/quickstart.md index d3d5d4c0cbbf..662985c9d1f6 100644 --- a/content/codespaces/getting-started/quickstart.md +++ b/content/codespaces/getting-started/quickstart.md @@ -4,7 +4,8 @@ intro: 'Try out {% data variables.product.prodname_codespaces %} in 5 minutes.' allowTitleToDifferFromFilename: true product: '{% data reusables.gated-features.codespaces %}' versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' type: quick_start topics: - Codespaces diff --git a/content/codespaces/guides.md b/content/codespaces/guides.md index 8f8f3738559c..a497707fb9e9 100644 --- a/content/codespaces/guides.md +++ b/content/codespaces/guides.md @@ -7,6 +7,7 @@ allowTitleToDifferFromFilename: true layout: product-sublanding versions: fpt: '*' + ghec: '*' includeGuides: - /codespaces/getting-started/quickstart - /codespaces/getting-started/deep-dive diff --git a/content/codespaces/index.md b/content/codespaces/index.md index 714a40d30d0a..657daf2e571d 100644 --- a/content/codespaces/index.md +++ b/content/codespaces/index.md @@ -34,6 +34,7 @@ layout: product-landing examples_source: data/product-examples/codespaces/code-examples.yml versions: fpt: '*' + ghec: '*' children: - /overview - /getting-started diff --git a/content/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization.md b/content/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization.md index 2202e0edef6a..f0e32850114e 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization.md +++ b/content/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization.md @@ -8,6 +8,7 @@ redirect_from: - /codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/managing-codespaces-for-your-organization/index.md b/content/codespaces/managing-codespaces-for-your-organization/index.md index 47fdc550f34d..628932071962 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/index.md +++ b/content/codespaces/managing-codespaces-for-your-organization/index.md @@ -4,6 +4,7 @@ intro: 'You can manage and review how users in your organization can use {% dat product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' topics: - Codespaces children: diff --git a/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization.md b/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization.md index 9f0ab8d9db14..e1f0445a9a3a 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization.md +++ b/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}' permissions: 'To manage billing for Codespaces for an organization, you must be an organization owner or a billing manager.' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces.md b/content/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces.md index ea730920bfe5..33339183d43f 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces.md +++ b/content/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}' permissions: 'To manage secrets for {% data variables.product.prodname_codespaces %} for an organization, you must be an organization owner.' versions: fpt: '*' + ghec: '*' topics: - Codespaces - Secret store diff --git a/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md b/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md index 4c45a1c1726a..1c4848c31c44 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md +++ b/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md @@ -6,6 +6,7 @@ product: '{% data reusables.gated-features.codespaces %}' permissions: 'To manage access and security for Codespaces for an organization, you must be an organization owner.' versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces.md b/content/codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces.md index 2784777eb7f6..be87671b5d48 100644 --- a/content/codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces.md +++ b/content/codespaces/managing-codespaces-for-your-organization/reviewing-your-organizations-audit-logs-for-codespaces.md @@ -5,6 +5,7 @@ intro: 'You can use the audit log to review all actions related to {% data varia product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/managing-your-codespaces/index.md b/content/codespaces/managing-your-codespaces/index.md index efe350a9450e..289c40fbc702 100644 --- a/content/codespaces/managing-your-codespaces/index.md +++ b/content/codespaces/managing-your-codespaces/index.md @@ -4,6 +4,7 @@ intro: 'You can use {% data variables.product.prodname_github_codespaces %} sett product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' topics: - Codespaces redirect_from: diff --git a/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md b/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md index 285cf9b71621..6d65555b851f 100644 --- a/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md +++ b/content/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces.md @@ -4,6 +4,7 @@ intro: 'You can store sensitive information, like tokens, that you want to acces product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' redirect_from: - /github/developing-online-with-codespaces/managing-encrypted-secrets-for-codespaces - /codespaces/working-with-your-codespace/managing-encrypted-secrets-for-codespaces diff --git a/content/codespaces/managing-your-codespaces/managing-gpg-verification-for-codespaces.md b/content/codespaces/managing-your-codespaces/managing-gpg-verification-for-codespaces.md index 91dda54f464a..b037905aa615 100644 --- a/content/codespaces/managing-your-codespaces/managing-gpg-verification-for-codespaces.md +++ b/content/codespaces/managing-your-codespaces/managing-gpg-verification-for-codespaces.md @@ -4,6 +4,7 @@ intro: 'You can allow {% data variables.product.company_short %} to automaticall product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: how_to topics: - Codespaces diff --git a/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md b/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md index 7a65f74b0528..e9697dc331e3 100644 --- a/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md +++ b/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md @@ -5,6 +5,7 @@ intro: 'You can manage the repositories that {% data variables.product.prodname_ product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' topics: - Codespaces - Security diff --git a/content/codespaces/managing-your-codespaces/reviewing-your-security-logs-for-codespaces.md b/content/codespaces/managing-your-codespaces/reviewing-your-security-logs-for-codespaces.md index 3dbc7ec4503d..654cc219f370 100644 --- a/content/codespaces/managing-your-codespaces/reviewing-your-security-logs-for-codespaces.md +++ b/content/codespaces/managing-your-codespaces/reviewing-your-security-logs-for-codespaces.md @@ -5,6 +5,7 @@ intro: 'You can use the security log to review all actions related to {% data va product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' topics: - Codespaces - Developer diff --git a/content/codespaces/managing-your-codespaces/setting-your-default-editor-for-codespaces.md b/content/codespaces/managing-your-codespaces/setting-your-default-editor-for-codespaces.md index 69ef60e9d993..4e47083947c2 100644 --- a/content/codespaces/managing-your-codespaces/setting-your-default-editor-for-codespaces.md +++ b/content/codespaces/managing-your-codespaces/setting-your-default-editor-for-codespaces.md @@ -4,6 +4,7 @@ intro: 'You can set your default editor for {% data variables.product.prodname_c product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' topics: - Codespaces shortTitle: Set the default editor diff --git a/content/codespaces/managing-your-codespaces/setting-your-default-region-for-codespaces.md b/content/codespaces/managing-your-codespaces/setting-your-default-region-for-codespaces.md index 7c9a038ebfbc..d588a1871ede 100644 --- a/content/codespaces/managing-your-codespaces/setting-your-default-region-for-codespaces.md +++ b/content/codespaces/managing-your-codespaces/setting-your-default-region-for-codespaces.md @@ -4,6 +4,7 @@ intro: 'You can set your default region in the {% data variables.product.prodnam product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' topics: - Codespaces shortTitle: Set the default region diff --git a/content/codespaces/overview.md b/content/codespaces/overview.md index d5f64d32fcce..90ebec2081da 100644 --- a/content/codespaces/overview.md +++ b/content/codespaces/overview.md @@ -11,7 +11,8 @@ redirect_from: - /codespaces/getting-started-with-codespaces/about-codespaces - /codespaces/about-codespaces versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' type: quick_start topics: - Codespaces diff --git a/content/codespaces/setting-up-your-project-for-codespaces/index.md b/content/codespaces/setting-up-your-project-for-codespaces/index.md index 504a888688fa..a7a2693c7645 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/index.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/index.md @@ -3,7 +3,8 @@ title: 'Setting up your project for {% data variables.product.prodname_codespace intro: 'Learn how to get started with {% data variables.product.prodname_codespaces %}, including set up and configuration for specific languages.' product: '{% data reusables.gated-features.codespaces %}' versions: - free-pro-team: '*' + fpt: '*' + ghec: '*' redirect_from: - /codespaces/getting-started-with-codespaces children: diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md index 5b1d7ea0aa5e..2325a7374ae3 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces.md @@ -8,6 +8,7 @@ redirect_from: - /codespaces/getting-started-with-codespaces/getting-started-with-your-dotnet-project versions: fpt: '*' + ghec: '*' topics: - Codespaces --- diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md index c86e2e3925a5..a8a3b72aac02 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces.md @@ -7,6 +7,7 @@ redirect_from: - /codespaces/getting-started-with-codespaces/getting-started-with-your-java-project-in-codespaces versions: fpt: '*' + ghec: '*' topics: - Codespaces --- diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-nodejs-project-for-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-nodejs-project-for-codespaces.md index d60b18ff3f67..8b5a18b6c8e6 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-nodejs-project-for-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-nodejs-project-for-codespaces.md @@ -5,6 +5,7 @@ intro: 'Get started with your JavaScript, Node.js, or TypeScript project in {% d product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' redirect_from: - /codespaces/getting-started-with-codespaces/getting-started-with-your-nodejs-project-in-codespaces type: tutorial diff --git a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-python-project-for-codespaces.md b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-python-project-for-codespaces.md index f7ed1410173d..3383e2a88960 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-python-project-for-codespaces.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-python-project-for-codespaces.md @@ -5,6 +5,7 @@ intro: 'Get started with your Python project in {% data variables.product.prodna product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' redirect_from: - /codespaces/getting-started-with-codespaces/getting-started-with-your-python-project-in-codespaces type: tutorial diff --git a/content/codespaces/the-githubdev-web-based-editor.md b/content/codespaces/the-githubdev-web-based-editor.md index 67ee31194e05..a81f2f423c54 100644 --- a/content/codespaces/the-githubdev-web-based-editor.md +++ b/content/codespaces/the-githubdev-web-based-editor.md @@ -3,6 +3,7 @@ title: The github.dev web-based editor intro: Use the github.dev {% data variables.product.prodname_serverless %} from your repository or pull request to create and commit changes. versions: fpt: '*' + ghec: '*' type: how_to miniTocMaxHeadingLevel: 3 topics: diff --git a/content/codespaces/troubleshooting/codespaces-logs.md b/content/codespaces/troubleshooting/codespaces-logs.md index de6c4d60befd..e5fed3185f63 100644 --- a/content/codespaces/troubleshooting/codespaces-logs.md +++ b/content/codespaces/troubleshooting/codespaces-logs.md @@ -4,6 +4,7 @@ intro: 'Overview of the logging locations used by {% data variables.product.prod product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/troubleshooting/exporting-changes-to-a-branch.md b/content/codespaces/troubleshooting/exporting-changes-to-a-branch.md index 373ab1ee7978..87faa561b39a 100644 --- a/content/codespaces/troubleshooting/exporting-changes-to-a-branch.md +++ b/content/codespaces/troubleshooting/exporting-changes-to-a-branch.md @@ -4,6 +4,7 @@ intro: 'This article provides steps for exporting your codespace changes to a br product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/troubleshooting/index.md b/content/codespaces/troubleshooting/index.md index 128c76ae9553..c705144f59f1 100644 --- a/content/codespaces/troubleshooting/index.md +++ b/content/codespaces/troubleshooting/index.md @@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.codespaces %}' intro: 'These guides provide information for troubleshooting {% data variables.product.prodname_codespaces %}' versions: fpt: '*' + ghec: '*' redirect_from: - /codespaces/codespaces-reference/troubleshooting-your-codespace - /github/developing-online-with-github-codespaces/troubleshooting-your-codespace diff --git a/content/codespaces/troubleshooting/troubleshooting-codespaces-clients.md b/content/codespaces/troubleshooting/troubleshooting-codespaces-clients.md index 38d02d648fc5..1281184565f6 100644 --- a/content/codespaces/troubleshooting/troubleshooting-codespaces-clients.md +++ b/content/codespaces/troubleshooting/troubleshooting-codespaces-clients.md @@ -4,6 +4,7 @@ intro: 'You can use {% data variables.product.prodname_codespaces %} in your bro product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md b/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md index 617d88afa4b4..64f303e7a5df 100644 --- a/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md +++ b/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md @@ -4,6 +4,7 @@ intro: 'This article provides troubleshooting steps for common issues you may ex product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces @@ -13,7 +14,7 @@ shortTitle: Creation and deletion ## Creating codespaces ### No access to create a codespace -{% data variables.product.prodname_codespaces %} are not available for all repositories. If the “Open with Codespaces” button is missing, {% data variables.product.prodname_codespaces %} may not be available for that repository. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces)." +{% data variables.product.prodname_codespaces %} are not available for all repositories. If the "Open with Codespaces" button is missing, {% data variables.product.prodname_codespaces %} may not be available for that repository. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces)." If you believe your organization has [enabled {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#about-enabling-codespaces-for-your-organization), make sure that an organization owner or billing manager has set the spending limit for {% data variables.product.prodname_codespaces %}. For more information, see "[Managing your spending limit for {% data variables.product.prodname_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces)." diff --git a/content/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces.md b/content/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces.md index 05bea187f16e..b964dbc0d551 100644 --- a/content/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces.md +++ b/content/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces.md @@ -4,6 +4,7 @@ intro: Troubleshooting steps for common dotfiles issues. product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/troubleshooting/troubleshooting-port-forwarding-for-codespaces.md b/content/codespaces/troubleshooting/troubleshooting-port-forwarding-for-codespaces.md index 1f0bf8b8639b..8122481e560b 100644 --- a/content/codespaces/troubleshooting/troubleshooting-port-forwarding-for-codespaces.md +++ b/content/codespaces/troubleshooting/troubleshooting-port-forwarding-for-codespaces.md @@ -4,6 +4,7 @@ intro: Troubleshooting steps for common port forwarding issues. product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/troubleshooting/troubleshooting-your-connection-to-codespaces.md b/content/codespaces/troubleshooting/troubleshooting-your-connection-to-codespaces.md index 58307e3f1850..66686cf1138e 100644 --- a/content/codespaces/troubleshooting/troubleshooting-your-connection-to-codespaces.md +++ b/content/codespaces/troubleshooting/troubleshooting-your-connection-to-codespaces.md @@ -4,6 +4,7 @@ intro: 'Troubleshooting help for connecting to {% data variables.product.prodnam product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/codespaces/troubleshooting/working-with-support-for-codespaces.md b/content/codespaces/troubleshooting/working-with-support-for-codespaces.md index 78fc833f0ad5..c5cbde10ab23 100644 --- a/content/codespaces/troubleshooting/working-with-support-for-codespaces.md +++ b/content/codespaces/troubleshooting/working-with-support-for-codespaces.md @@ -4,6 +4,7 @@ intro: 'Tips on getting the best help from support for {% data variables.product product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' + ghec: '*' type: reference topics: - Codespaces diff --git a/content/communities/documenting-your-project-with-wikis/about-wikis.md b/content/communities/documenting-your-project-with-wikis/about-wikis.md index c4f4a499fc00..046cb7b820bf 100644 --- a/content/communities/documenting-your-project-with-wikis/about-wikis.md +++ b/content/communities/documenting-your-project-with-wikis/about-wikis.md @@ -10,15 +10,16 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community --- -Every {% data variables.product.product_name %} repository comes equipped with a section for hosting documentation, called a wiki. You can use your repository's wiki to share long-form content about your project, such as how to use it, how you designed it, or its core principles. A README file quickly tells what your project can do, while you can use a wiki to provide additional documentation. For more information, see "[About READMEs](/articles/about-readmes)." +Every repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} comes equipped with a section for hosting documentation, called a wiki. You can use your repository's wiki to share long-form content about your project, such as how to use it, how you designed it, or its core principles. A README file quickly tells what your project can do, while you can use a wiki to provide additional documentation. For more information, see "[About READMEs](/articles/about-readmes)." With wikis, you can write content just like everywhere else on {% data variables.product.product_name %}. For more information, see "[Getting started with writing and formatting on {% data variables.product.prodname_dotcom %}](/articles/getting-started-with-writing-and-formatting-on-github)." We use [our open-source Markup library](https://github.com/github/markup) to convert different formats into HTML, so you can choose to write in Markdown or any other supported format. -{% ifversion fpt or ghes %}If you create a wiki in a public repository, the wiki is available to {% ifversion ghes %}anyone with access to {% data variables.product.product_location %}{% else %}the public{% endif %}. {% endif %}If you create a wiki in an internal or private repository, {% ifversion fpt or ghes %}people{% elsif ghae %}enterprise members{% endif %} with access to the repository can also access the wiki. For more information, see "[Setting repository visibility](/articles/setting-repository-visibility)." +{% ifversion fpt or ghes or ghec %}If you create a wiki in a public repository, the wiki is available to {% ifversion ghes %}anyone with access to {% data variables.product.product_location %}{% else %}the public{% endif %}. {% endif %}If you create a wiki in an internal or private repository, {% ifversion fpt or ghes or ghec %}people{% elsif ghae %}enterprise members{% endif %} with access to the repository can also access the wiki. For more information, see "[Setting repository visibility](/articles/setting-repository-visibility)." You can edit wikis directly on {% data variables.product.product_name %}, or you can edit wiki files locally. By default, only people with write access to your repository can make changes to wikis, although you can allow everyone on {% data variables.product.product_location %} to contribute to a wiki in {% ifversion ghae %}an internal{% else %}a public{% endif %} repository. For more information, see "[Changing access permissions for wikis](/communities/documenting-your-project-with-wikis/changing-access-permissions-for-wikis)". diff --git a/content/communities/documenting-your-project-with-wikis/adding-or-editing-wiki-pages.md b/content/communities/documenting-your-project-with-wikis/adding-or-editing-wiki-pages.md index f28c09a2dd9e..5d33f72a3603 100644 --- a/content/communities/documenting-your-project-with-wikis/adding-or-editing-wiki-pages.md +++ b/content/communities/documenting-your-project-with-wikis/adding-or-editing-wiki-pages.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Manage wiki pages diff --git a/content/communities/documenting-your-project-with-wikis/changing-access-permissions-for-wikis.md b/content/communities/documenting-your-project-with-wikis/changing-access-permissions-for-wikis.md index 574ea365255c..87067666c951 100644 --- a/content/communities/documenting-your-project-with-wikis/changing-access-permissions-for-wikis.md +++ b/content/communities/documenting-your-project-with-wikis/changing-access-permissions-for-wikis.md @@ -1,6 +1,6 @@ --- title: Changing access permissions for wikis -intro: 'Only repository collaborators can edit a public repository''s wiki by default, but you can allow anyone with a {% data variables.product.product_name %} account to edit your wiki.' +intro: 'Only repository collaborators can edit a {% ifversion fpt or ghec or ghes %}public{% endif %} repository''s wiki by default, but you can allow anyone with an account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} to edit your wiki.' product: '{% data reusables.gated-features.wikis %}' redirect_from: - /articles/changing-access-permissions-for-wikis @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Change access permissions diff --git a/content/communities/documenting-your-project-with-wikis/creating-a-footer-or-sidebar-for-your-wiki.md b/content/communities/documenting-your-project-with-wikis/creating-a-footer-or-sidebar-for-your-wiki.md index a7b7dd14af19..9b95fa866776 100644 --- a/content/communities/documenting-your-project-with-wikis/creating-a-footer-or-sidebar-for-your-wiki.md +++ b/content/communities/documenting-your-project-with-wikis/creating-a-footer-or-sidebar-for-your-wiki.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Create footer or sidebar diff --git a/content/communities/documenting-your-project-with-wikis/disabling-wikis.md b/content/communities/documenting-your-project-with-wikis/disabling-wikis.md index a3cca9976113..6a2e012dab82 100644 --- a/content/communities/documenting-your-project-with-wikis/disabling-wikis.md +++ b/content/communities/documenting-your-project-with-wikis/disabling-wikis.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community --- diff --git a/content/communities/documenting-your-project-with-wikis/editing-wiki-content.md b/content/communities/documenting-your-project-with-wikis/editing-wiki-content.md index 63a14459dc52..854fe1830144 100644 --- a/content/communities/documenting-your-project-with-wikis/editing-wiki-content.md +++ b/content/communities/documenting-your-project-with-wikis/editing-wiki-content.md @@ -16,6 +16,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community --- diff --git a/content/communities/documenting-your-project-with-wikis/index.md b/content/communities/documenting-your-project-with-wikis/index.md index 02dc4e048d75..daf79a194b14 100644 --- a/content/communities/documenting-your-project-with-wikis/index.md +++ b/content/communities/documenting-your-project-with-wikis/index.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community children: diff --git a/content/communities/documenting-your-project-with-wikis/viewing-a-wikis-history-of-changes.md b/content/communities/documenting-your-project-with-wikis/viewing-a-wikis-history-of-changes.md index 0d08f05c1ede..1d9f002bcec9 100644 --- a/content/communities/documenting-your-project-with-wikis/viewing-a-wikis-history-of-changes.md +++ b/content/communities/documenting-your-project-with-wikis/viewing-a-wikis-history-of-changes.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: View a history of changes diff --git a/content/communities/index.md b/content/communities/index.md index e7bc5abbdb4e..c38d5fcaa3bd 100644 --- a/content/communities/index.md +++ b/content/communities/index.md @@ -26,6 +26,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community children: diff --git a/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md b/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md index 6878d778970d..68ca600c4c6f 100644 --- a/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md +++ b/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/building-a-strong-community/blocking-a-user-from-your-organization versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Block from your org diff --git a/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-personal-account.md b/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-personal-account.md index 9ae75a8e47a3..17fbd7b9cc40 100644 --- a/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-personal-account.md +++ b/content/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-personal-account.md @@ -6,6 +6,7 @@ redirect_from: - /github/building-a-strong-community/blocking-a-user-from-your-personal-account versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Block from your account diff --git a/content/communities/maintaining-your-safety-on-github/index.md b/content/communities/maintaining-your-safety-on-github/index.md index 598f06c7f060..1933dffc8d27 100644 --- a/content/communities/maintaining-your-safety-on-github/index.md +++ b/content/communities/maintaining-your-safety-on-github/index.md @@ -10,6 +10,7 @@ redirect_from: - /github/building-a-strong-community/maintaining-your-safety-on-github versions: fpt: '*' + ghec: '*' topics: - Community children: diff --git a/content/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam.md b/content/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam.md index c087aa8fc309..89bcf4cde11d 100644 --- a/content/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam.md +++ b/content/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam.md @@ -6,6 +6,7 @@ redirect_from: - /github/building-a-strong-community/reporting-abuse-or-spam versions: fpt: '*' + ghec: '*' topics: - Community --- @@ -62,7 +63,7 @@ If reported content is enabled for a public repository, you can also report cont - "[Setting up your project for healthy contributions](/communities/setting-up-your-project-for-healthy-contributions)" - "[Using templates to encourage useful issues and pull requests](/communities/using-templates-to-encourage-useful-issues-and-pull-requests)" -- "[Managing disruptive comments](/communities/moderating-comments-and-conversations/managing-disruptive-comments)"{% ifversion fpt %} +- "[Managing disruptive comments](/communities/moderating-comments-and-conversations/managing-disruptive-comments)"{% ifversion fpt or ghec %} - "[Maintaining your safety on {% data variables.product.prodname_dotcom %}](/communities/maintaining-your-safety-on-github)" - "[Limiting interactions in your repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)"{% endif %} - "[Tracking changes in a comment](/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment)" diff --git a/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md b/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md index 6d1e7fe4eb4c..e13710c52c43 100644 --- a/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md +++ b/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/building-a-strong-community/unblocking-a-user-from-your-organization versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Unblock from your org diff --git a/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-personal-account.md b/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-personal-account.md index 39c5248354a0..0b29e366597f 100644 --- a/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-personal-account.md +++ b/content/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-personal-account.md @@ -6,6 +6,7 @@ redirect_from: - /github/building-a-strong-community/unblocking-a-user-from-your-personal-account versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Unblock from your account diff --git a/content/communities/maintaining-your-safety-on-github/viewing-users-who-are-blocked-from-your-organization.md b/content/communities/maintaining-your-safety-on-github/viewing-users-who-are-blocked-from-your-organization.md index ae859a719ee7..b83c0c8eaa8a 100644 --- a/content/communities/maintaining-your-safety-on-github/viewing-users-who-are-blocked-from-your-organization.md +++ b/content/communities/maintaining-your-safety-on-github/viewing-users-who-are-blocked-from-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/building-a-strong-community/viewing-users-who-are-blocked-from-your-organization versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: View blocked users in org diff --git a/content/communities/maintaining-your-safety-on-github/viewing-users-youve-blocked-from-your-personal-account.md b/content/communities/maintaining-your-safety-on-github/viewing-users-youve-blocked-from-your-personal-account.md index 6f4176906b52..6ac77c701c26 100644 --- a/content/communities/maintaining-your-safety-on-github/viewing-users-youve-blocked-from-your-personal-account.md +++ b/content/communities/maintaining-your-safety-on-github/viewing-users-youve-blocked-from-your-personal-account.md @@ -7,6 +7,7 @@ redirect_from: - /github/building-a-strong-community/viewing-users-youve-blocked-from-your-personal-account versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: View blocked users in account diff --git a/content/communities/moderating-comments-and-conversations/index.md b/content/communities/moderating-comments-and-conversations/index.md index e14ace44f360..7facf03a28e4 100644 --- a/content/communities/moderating-comments-and-conversations/index.md +++ b/content/communities/moderating-comments-and-conversations/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community children: diff --git a/content/communities/moderating-comments-and-conversations/limiting-interactions-for-your-user-account.md b/content/communities/moderating-comments-and-conversations/limiting-interactions-for-your-user-account.md index 7c2af67d830f..0e1ebb553016 100644 --- a/content/communities/moderating-comments-and-conversations/limiting-interactions-for-your-user-account.md +++ b/content/communities/moderating-comments-and-conversations/limiting-interactions-for-your-user-account.md @@ -3,6 +3,7 @@ title: Limiting interactions for your user account intro: You can temporarily enforce a period of limited activity for certain users in all public repositories owned by your user account. versions: fpt: '*' + ghec: '*' permissions: Anyone can limit interactions for their own user account. redirect_from: - /github/building-a-strong-community/limiting-interactions-for-your-user-account diff --git a/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-organization.md b/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-organization.md index 37abfb975cc3..1f2150dce896 100644 --- a/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-organization.md +++ b/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/building-a-strong-community/limiting-interactions-in-your-organization versions: fpt: '*' + ghec: '*' permissions: Organization owners can limit interactions in an organization. topics: - Community diff --git a/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository.md b/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository.md index 465527a8a1b9..b719e653fe92 100644 --- a/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository.md +++ b/content/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository.md @@ -7,6 +7,7 @@ redirect_from: - /github/building-a-strong-community/limiting-interactions-in-your-repository versions: fpt: '*' + ghec: '*' permissions: People with admin permissions to a repository can temporarily limit interactions in that repository. topics: - Community diff --git a/content/communities/moderating-comments-and-conversations/locking-conversations.md b/content/communities/moderating-comments-and-conversations/locking-conversations.md index a4f01508d694..139698140a90 100644 --- a/content/communities/moderating-comments-and-conversations/locking-conversations.md +++ b/content/communities/moderating-comments-and-conversations/locking-conversations.md @@ -8,11 +8,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community --- -It's appropriate to lock a conversation when the entire conversation is not constructive or violates your community's code of conduct{% ifversion fpt %} or GitHub's [Community Guidelines](/articles/github-community-guidelines){% endif %}. When you lock a conversation, you can also specify a reason, which is publicly visible. +It's appropriate to lock a conversation when the entire conversation is not constructive or violates your community's code of conduct{% ifversion fpt or ghec %} or GitHub's [Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines){% endif %}. When you lock a conversation, you can also specify a reason, which is publicly visible. Locking a conversation creates a timeline event that is visible to anyone with read access to the repository. However, the username of the person who locked the conversation is only visible to people with write access to the repository. For anyone without write access, the timeline event is anonymized. @@ -36,7 +37,7 @@ To search for locked conversations in a repository that is not archived, you can - "[Setting up your project for healthy contributions](/communities/setting-up-your-project-for-healthy-contributions)" - "[Using templates to encourage useful issues and pull requests](/communities/using-templates-to-encourage-useful-issues-and-pull-requests)" -- "[Managing disruptive comments](/communities/moderating-comments-and-conversations/managing-disruptive-comments)"{% ifversion fpt %} +- "[Managing disruptive comments](/communities/moderating-comments-and-conversations/managing-disruptive-comments)"{% ifversion fpt or ghec %} - "[Maintaining your safety on {% data variables.product.prodname_dotcom %}](/communities/maintaining-your-safety-on-github)" - "[Reporting abuse or spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)" - "[Limiting interactions in your repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)" diff --git a/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md b/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md index 3a401f0d5590..6a7d8ad6776f 100644 --- a/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md +++ b/content/communities/moderating-comments-and-conversations/managing-disruptive-comments.md @@ -1,6 +1,6 @@ --- title: Managing disruptive comments -intro: 'You can {% ifversion fpt %}hide, edit,{% else %}edit{% endif %} or delete comments on issues, pull requests, and commits.' +intro: 'You can {% ifversion fpt or ghec %}hide, edit,{% else %}edit{% endif %} or delete comments on issues, pull requests, and commits.' redirect_from: - /articles/editing-a-comment/ - /articles/deleting-a-comment/ @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Manage comments @@ -27,7 +28,7 @@ If a comment is off-topic, outdated, or resolved, you may want to hide a comment 2. In the upper-right corner of the comment, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Hide**. ![The horizontal kebab icon and comment moderation menu showing the edit, hide, delete options](/assets/images/help/repository/comment-menu.png) 3. Using the "Choose a reason" drop-down menu, click a reason to hide the comment. Then click, **Hide comment**. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ![Choose reason for hiding comment drop-down menu](/assets/images/help/repository/choose-reason-for-hiding-comment.png) {% else %} ![Choose reason for hiding comment drop-down menu](/assets/images/help/repository/choose-reason-for-hiding-comment-ghe.png) @@ -47,7 +48,7 @@ Anyone with write access to a repository can unhide comments on issues, pull req Anyone with write access to a repository can edit comments on issues, pull requests, and commits. -It's appropriate to edit a comment and remove content that doesn't contribute to the conversation and violates your community's code of conduct{% ifversion fpt %} or GitHub's [Community Guidelines](/articles/github-community-guidelines){% endif %}. +It's appropriate to edit a comment and remove content that doesn't contribute to the conversation and violates your community's code of conduct{% ifversion fpt or ghec %} or GitHub's [Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines){% endif %}. When you edit a comment, note the location that the content was removed from and optionally, the reason for removing it. @@ -70,7 +71,7 @@ Comment authors and anyone with write access to a repository can also delete sen Anyone with write access to a repository can delete comments on issues, pull requests, and commits. Organization owners, team maintainers, and the comment author can also delete a comment on a team page. -Deleting a comment is your last resort as a moderator. It's appropriate to delete a comment if the entire comment adds no constructive content to a conversation and violates your community's code of conduct{% ifversion fpt %} or GitHub's [Community Guidelines](/articles/github-community-guidelines){% endif %}. +Deleting a comment is your last resort as a moderator. It's appropriate to delete a comment if the entire comment adds no constructive content to a conversation and violates your community's code of conduct{% ifversion fpt or ghec %} or GitHub's [Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines){% endif %}. Deleting a comment creates a timeline event that is visible to anyone with read access to the repository. However, the username of the person who deleted the comment is only visible to people with write access to the repository. For anyone without write access, the timeline event is anonymized. diff --git a/content/communities/moderating-comments-and-conversations/managing-how-contributors-report-abuse-in-your-organizations-repository.md b/content/communities/moderating-comments-and-conversations/managing-how-contributors-report-abuse-in-your-organizations-repository.md index e7028c25cf2e..2e30d8144ab1 100644 --- a/content/communities/moderating-comments-and-conversations/managing-how-contributors-report-abuse-in-your-organizations-repository.md +++ b/content/communities/moderating-comments-and-conversations/managing-how-contributors-report-abuse-in-your-organizations-repository.md @@ -3,6 +3,7 @@ title: Managing how contributors report abuse in your organization's repository intro: You can allow contributors to report disruptive behavior directly to repository maintainers. versions: fpt: '*' + ghec: '*' redirect_from: - /github/building-a-strong-community/managing-how-contributors-report-abuse-in-your-organizations-repository topics: diff --git a/content/communities/moderating-comments-and-conversations/managing-reported-content-in-your-organizations-repository.md b/content/communities/moderating-comments-and-conversations/managing-reported-content-in-your-organizations-repository.md index b9f0fb8b2926..e0c793255cae 100644 --- a/content/communities/moderating-comments-and-conversations/managing-reported-content-in-your-organizations-repository.md +++ b/content/communities/moderating-comments-and-conversations/managing-reported-content-in-your-organizations-repository.md @@ -3,6 +3,7 @@ title: Managing reported content in your organization's repository intro: 'After a contributor reports disruptive content in a repository, repository maintainers can view and manage the report.' versions: fpt: '*' + ghec: '*' redirect_from: - /github/building-a-strong-community/managing-reported-content-in-your-organizations-repository topics: diff --git a/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md b/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md index f2f1b8c7b2f0..4d02c1492496 100644 --- a/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md +++ b/content/communities/moderating-comments-and-conversations/tracking-changes-in-a-comment.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Track comment changes @@ -34,5 +35,5 @@ When you delete sensitive information from the comment's edit history, the perso ## Further reading -{% ifversion fpt %}- "[Reporting abuse or spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)"{% endif %} +{% ifversion fpt or ghec %}- "[Reporting abuse or spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)"{% endif %} - "[Editing a comment](/articles/editing-a-comment)" diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/about-community-management-and-moderation.md b/content/communities/setting-up-your-project-for-healthy-contributions/about-community-management-and-moderation.md index fa8aa539c0f2..006dbd7f4233 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/about-community-management-and-moderation.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/about-community-management-and-moderation.md @@ -3,6 +3,7 @@ title: About community management and moderation intro: '{% data variables.product.prodname_dotcom %} offers tools that help repository maintainers establish and enforce standards of behavior in their communities on {% data variables.product.prodname_dotcom_the_website %}.' versions: fpt: '*' + ghec: '*' redirect_from: - /github/building-a-strong-community/about-community-management-and-moderation topics: diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md b/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md index 49e66fbfc0b6..f1e3be2a311c 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/about-community-profiles-for-public-repositories.md @@ -7,6 +7,7 @@ redirect_from: - /github/building-a-strong-community/about-community-profiles-for-public-repositories versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Community profiles diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/accessing-a-projects-community-profile.md b/content/communities/setting-up-your-project-for-healthy-contributions/accessing-a-projects-community-profile.md index f42d444036d6..22a6182027ea 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/accessing-a-projects-community-profile.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/accessing-a-projects-community-profile.md @@ -7,6 +7,7 @@ redirect_from: - /github/building-a-strong-community/accessing-a-projects-community-profile versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Access community profiles diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md index ee32381ed71c..039e74f09dcf 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project.md @@ -6,6 +6,7 @@ redirect_from: - /github/building-a-strong-community/adding-a-code-of-conduct-to-your-project versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Add a code of conduct diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md index 7a06daf37d24..623ae780fc98 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository.md @@ -7,6 +7,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Community shortTitle: Add a license to a repo @@ -20,7 +21,7 @@ Open source licenses enable others to freely use, change, and distribute the pro ## Including an open source license in your repository -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.files.add-file %} 3. In the file name field, type *LICENSE* or *LICENSE.md* (with all caps). diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/adding-support-resources-to-your-project.md b/content/communities/setting-up-your-project-for-healthy-contributions/adding-support-resources-to-your-project.md index 27b6cca43eb9..9c2be605cd3b 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/adding-support-resources-to-your-project.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/adding-support-resources-to-your-project.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Add support resources @@ -16,7 +17,7 @@ To direct people to specific support resources, you can add a SUPPORT file to yo ![Support guidelines](/assets/images/help/issues/support_guidelines_in_issue.png) -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} You can create default support resources for your organization or user account. For more information, see "[Creating a default community health file](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md b/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md index 02658ba12b2c..8941ffef91e4 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Community shortTitle: Community health file @@ -22,20 +23,20 @@ You can add default community health files to a public repository called `.githu - the `.github` folder - the `docs` folder -For example, anyone who creates an issue or pull request in a repository that does not have its own CONTRIBUTING file will see a link to the default CONTRIBUTING file. If a repository has any files in its own `.github/ISSUE_TEMPLATE` folder{% ifversion fpt or ghae or ghes %}, including issue templates or a *config.yml* file,{% endif %} none of the contents of the default `.github/ISSUE_TEMPLATE` folder will be used. +For example, anyone who creates an issue or pull request in a repository that does not have its own CONTRIBUTING file will see a link to the default CONTRIBUTING file. If a repository has any files in its own `.github/ISSUE_TEMPLATE` folder{% ifversion fpt or ghae or ghes or ghec %}, including issue templates or a *config.yml* file,{% endif %} none of the contents of the default `.github/ISSUE_TEMPLATE` folder will be used. Default files are not included in clones, packages, or downloads of individual repositories because they are stored only in the `.github` repository. ## Supported file types -You can create defaults in your organization{% ifversion fpt or ghae or ghes %} or user account{% endif %} for the following community health files: +You can create defaults in your organization{% ifversion fpt or ghae or ghes or ghec %} or user account{% endif %} for the following community health files: Community health file | Description ---- | ---{% ifversion fpt %} +--- | ---{% ifversion fpt or ghec %} *CODE_OF_CONDUCT.md* | A CODE_OF_CONDUCT file defines standards for how to engage in a community. For more information, see "[Adding a code of conduct to your project](/articles/adding-a-code-of-conduct-to-your-project/)."{% endif %} -*CONTRIBUTING.md* | A CONTRIBUTING file communicates how people should contribute to your project. For more information, see "[Setting guidelines for repository contributors](/articles/setting-guidelines-for-repository-contributors/)."{% ifversion fpt %} +*CONTRIBUTING.md* | A CONTRIBUTING file communicates how people should contribute to your project. For more information, see "[Setting guidelines for repository contributors](/articles/setting-guidelines-for-repository-contributors/)."{% ifversion fpt or ghec %} *FUNDING.yml* | A FUNDING file displays a sponsor button in your repository to increase the visibility of funding options for your open source project. For more information, see "[Displaying a sponsor button in your repository](/articles/displaying-a-sponsor-button-in-your-repository)."{% endif %} -Issue and pull request templates{% ifversion fpt or ghae or ghes %} and *config.yml*{% endif %} | Issue and pull request templates customize and standardize the information you'd like contributors to include when they open issues and pull requests in your repository. For more information, see "[About issue and pull request templates](/articles/about-issue-and-pull-request-templates/)."{% ifversion fpt or ghes > 3.0 %} +Issue and pull request templates{% ifversion fpt or ghae or ghes or ghec %} and *config.yml*{% endif %} | Issue and pull request templates customize and standardize the information you'd like contributors to include when they open issues and pull requests in your repository. For more information, see "[About issue and pull request templates](/articles/about-issue-and-pull-request-templates/)."{% ifversion fpt or ghes > 3.0 or ghec %} *SECURITY.md* | A SECURITY file gives instructions for how to report a security vulnerability in your project. For more information, see "[Adding a security policy to your repository](/code-security/getting-started/adding-a-security-policy-to-your-repository)."{% endif %} *SUPPORT.md* | A SUPPORT file lets people know about ways to get help with your project. For more information, see "[Adding support resources to your project](/articles/adding-support-resources-to-your-project/)." @@ -44,7 +45,7 @@ You cannot create a default license file. License files must be added to individ ## Creating a repository for default files {% data reusables.repositories.create_new %} -2. Use the **Owner** drop-down menu, and select the organization{% ifversion fpt or ghae or ghes %} or user account{% endif %} you want to create default files for. +2. Use the **Owner** drop-down menu, and select the organization{% ifversion fpt or ghae or ghes or ghec %} or user account{% endif %} you want to create default files for. ![Owner drop-down menu](/assets/images/help/repository/create-repository-owner.png) 3. Type **.github** as the name for your repository, and an optional description. ![Create repository field](/assets/images/help/repository/default-file-repository-name.png) @@ -52,4 +53,4 @@ You cannot create a default license file. License files must be added to individ ![Radio buttons to select private or public status](/assets/images/help/repository/create-repository-public-private.png) {% data reusables.repositories.initialize-with-readme %} {% data reusables.repositories.create-repo %} -7. In the repository, create one of the supported community health files. Issue templates{% ifversion fpt or ghae or ghes %} and their configuration file{% endif %} must be in a folder called `.github/ISSUE_TEMPLATE`. All other supported files may be in the root of the repository, the `.github` folder, or the `docs` folder. For more information, see "[Creating new files](/articles/creating-new-files/)." +7. In the repository, create one of the supported community health files. Issue templates{% ifversion fpt or ghae or ghes or ghec %} and their configuration file{% endif %} must be in a folder called `.github/ISSUE_TEMPLATE`. All other supported files may be in the root of the repository, the `.github` folder, or the `docs` folder. For more information, see "[Creating new files](/articles/creating-new-files/)." diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/encouraging-helpful-contributions-to-your-project-with-labels.md b/content/communities/setting-up-your-project-for-healthy-contributions/encouraging-helpful-contributions-to-your-project-with-labels.md index fea8c2939c8a..69fcce90aa3f 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/encouraging-helpful-contributions-to-your-project-with-labels.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/encouraging-helpful-contributions-to-your-project-with-labels.md @@ -7,6 +7,7 @@ redirect_from: - /github/building-a-strong-community/encouraging-helpful-contributions-to-your-project-with-labels versions: fpt: '*' + ghec: '*' topics: - Community shortTitle: Encourage contributions diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/index.md b/content/communities/setting-up-your-project-for-healthy-contributions/index.md index 5c4cde1c7929..40ad17623e36 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/index.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community children: diff --git a/content/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors.md b/content/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors.md index 0bde988f1eef..7a348df6f91b 100644 --- a/content/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors.md +++ b/content/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' redirect_from: - /articles/how-do-i-set-up-guidelines-for-contributors/ - /articles/setting-guidelines-for-repository-contributors @@ -24,9 +25,9 @@ For contributors, the guidelines help them verify that they're submitting well-f For both owners and contributors, contribution guidelines save time and hassle caused by improperly created pull requests or issues that have to be rejected and re-submitted. -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} -You can create default contribution guidelines for your organization{% ifversion fpt or ghes %} or user account{% endif %}. For more information, see "[Creating a default community health file](//communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." +You can create default contribution guidelines for your organization{% ifversion fpt or ghes or ghec %} or user account{% endif %}. For more information, see "[Creating a default community health file](//communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." {% endif %} @@ -62,6 +63,6 @@ If you're stumped, here are some good examples of contribution guidelines: - The Open Government [contribution guidelines](https://github.com/opengovernment/opengovernment/blob/master/CONTRIBUTING.md). ## Further reading -- The Open Source Guides' section "[Starting an Open Source Project](https://opensource.guide/starting-a-project/)"{% ifversion fpt %} -- [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}){% endif %}{% ifversion fpt or ghes %} +- The Open Source Guides' section "[Starting an Open Source Project](https://opensource.guide/starting-a-project/)"{% ifversion fpt or ghec %} +- [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}){% endif %}{% ifversion fpt or ghes or ghec %} - "[Adding a license to a repository](/articles/adding-a-license-to-a-repository)"{% endif %} diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md index 9afc632752f9..d4e7edbcba4b 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: About templates @@ -15,7 +16,7 @@ shortTitle: About templates After you create issue and pull request templates in your repository, contributors can use the templates to open issues or describe the proposed changes in their pull requests according to the repository's contributing guidelines. For more information about adding contributing guidelines to a repository, see "[Setting guidelines for repository contributors](/articles/setting-guidelines-for-repository-contributors)." -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} You can create default issue and pull request templates for your organization or user account. For more information, see "[Creating a default community health file](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." @@ -23,25 +24,25 @@ You can create default issue and pull request templates for your organization or ## Issue templates -When you create issue templates for your repository using the issue template builder{% ifversion fpt %} or with issue forms{% endif %}, contributors can select the appropriate template when they open new issues in the repository. +When you create issue templates for your repository using the issue template builder{% ifversion fpt or ghec %} or with issue forms{% endif %}, contributors can select the appropriate template when they open new issues in the repository. ![New issue page showing issue template choices](/assets/images/help/issues/new-issue-page-with-multiple-templates.png) -Issue templates are helpful when you want to provide guidance for opening issues while allowing contributors to specify the content of their issues. {% ifversion fpt %} If you want contributors to provide specific, structured information when they open issues, issue forms help ensure that you receive your desired information.{% endif %} +Issue templates are helpful when you want to provide guidance for opening issues while allowing contributors to specify the content of their issues. {% ifversion fpt or ghec %} If you want contributors to provide specific, structured information when they open issues, issue forms help ensure that you receive your desired information.{% endif %} Using the template builder, you can specify a title and description for each template, add the template content, and either commit the template to the default branch or open a pull request in the repository. The template builder automatically adds the YAML front matter markup that is required for the template to show on the new issue page. For more information, see "[Configuring issue templates for your repository](/articles/configuring-issue-templates-for-your-repository)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} With issue forms, you can create templates that have web form fields using the {% data variables.product.prodname_dotcom %} form schema. When a contributor opens an issue using an issue form, the form inputs are converted to a standard markdown issue comment. You can specify different input types and set inputs as required to help contributors open actionable issues in your repository. For more information, see "[Configuring issue templates for your repository](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#creating-issue-forms)" and "[Syntax for issue forms](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms)." {% endif %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} {% data reusables.repositories.issue-template-config %} For more information, see "[Configuring issue templates for your repository](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser)." {% endif %} -Issue templates are stored on the repository's default branch, in a hidden `.github/ISSUE_TEMPLATE` directory. If you create a template in another branch, it will not be available for collaborators to use. Issue template filenames are not case sensitive, and need a *.md* extension.{% ifversion fpt %} Issue templates created with issue forms need a *.yml* extension.{% endif %} {% data reusables.repositories.valid-community-issues %} +Issue templates are stored on the repository's default branch, in a hidden `.github/ISSUE_TEMPLATE` directory. If you create a template in another branch, it will not be available for collaborators to use. Issue template filenames are not case sensitive, and need a *.md* extension.{% ifversion fpt or ghec %} Issue templates created with issue forms need a *.yml* extension.{% endif %} {% data reusables.repositories.valid-community-issues %} -It is possible to manually create a single issue template in Markdown using the legacy issue template workflow, and project contributors will automatically see the template's contents in the issue body. However, we recommend using the upgraded multiple issue template builder{% ifversion fpt %} or issue forms{% endif %} to create issue templates. For more information about the legacy workflow, see "[Manually creating a single issue template for your repository](/articles/manually-creating-a-single-issue-template-for-your-repository)." +It is possible to manually create a single issue template in Markdown using the legacy issue template workflow, and project contributors will automatically see the template's contents in the issue body. However, we recommend using the upgraded multiple issue template builder{% ifversion fpt or ghec %} or issue forms{% endif %} to create issue templates. For more information about the legacy workflow, see "[Manually creating a single issue template for your repository](/articles/manually-creating-a-single-issue-template-for-your-repository)." {% data reusables.repositories.security-guidelines %} diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md index 1469b267a874..0cc29b781a8c 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md @@ -9,18 +9,19 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Configure --- -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% data reusables.repositories.default-issue-templates %} {% endif %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} ## Creating issue templates @@ -46,7 +47,7 @@ shortTitle: Configure ![Issue template commit to main or open pull request choice](/assets/images/help/repository/issue-template-commit-to-master-or-open-pull-request.png) 11. Click **Commit changes**. Once these changes are merged into the default branch, the template will be available for contributors to use when they open new issues in the repository. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Creating issue forms @@ -70,7 +71,7 @@ Here is the rendered version of the issue form. {% endif %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} ## Configuring the template chooser {% data reusables.repositories.issue-template-config %} diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository.md index 125b8990def8..c40fd992d855 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Create a PR template @@ -17,9 +18,9 @@ For more information, see "[About issue and pull request templates](/articles/ab You can create a *PULL_REQUEST_TEMPLATE/* subdirectory in any of the supported folders to contain multiple pull request templates, and use the `template` query parameter to specify the template that will fill the pull request body. For more information, see "[About automation for issues and pull requests with query parameters](/articles/about-automation-for-issues-and-pull-requests-with-query-parameters)." -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} -You can create default pull request templates for your organization{% ifversion fpt or ghes %} or user account{% endif %}. For more information, see "[Creating a default community health file](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." +You can create default pull request templates for your organization{% ifversion fpt or ghes or ghec %} or user account{% endif %}. For more information, see "[Creating a default community health file](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." {% endif %} diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/index.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/index.md index f9b515e090a1..b02b6ca5abeb 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/index.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community children: diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/manually-creating-a-single-issue-template-for-your-repository.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/manually-creating-a-single-issue-template-for-your-repository.md index 218467257cf7..017d74e3a54e 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/manually-creating-a-single-issue-template-for-your-repository.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/manually-creating-a-single-issue-template-for-your-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Create an issue template @@ -37,13 +38,13 @@ assignees: octocat {% endnote %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.valid-community-issues %} {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% data reusables.repositories.default-issue-templates %} diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md index 097b7c7903c2..8f0f7625e6a2 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md @@ -3,6 +3,7 @@ title: Syntax for GitHub's form schema intro: 'You can use {% data variables.product.company_short %}''s form schema to configure forms for supported features.' versions: fpt: '*' + ghec: '*' miniTocMaxHeadingLevel: 3 topics: - Community diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md index 26da4d3cc9db..8f51b41c608d 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms.md @@ -4,6 +4,7 @@ intro: 'You can define different input types, validations, default assignees, an product: 'Issue forms are available in beta for public repositories on {% data variables.product.prodname_dotcom_the_website %}' versions: fpt: '*' + ghec: '*' topics: - Community --- diff --git a/content/developers/apps/building-github-apps/authenticating-with-github-apps.md b/content/developers/apps/building-github-apps/authenticating-with-github-apps.md index 5d454070feaa..cce325b4f74b 100644 --- a/content/developers/apps/building-github-apps/authenticating-with-github-apps.md +++ b/content/developers/apps/building-github-apps/authenticating-with-github-apps.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Authentication diff --git a/content/developers/apps/building-github-apps/creating-a-custom-badge-for-your-github-app.md b/content/developers/apps/building-github-apps/creating-a-custom-badge-for-your-github-app.md index 8a24633c6975..e48fa8462ba8 100644 --- a/content/developers/apps/building-github-apps/creating-a-custom-badge-for-your-github-app.md +++ b/content/developers/apps/building-github-apps/creating-a-custom-badge-for-your-github-app.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Custom badges @@ -19,9 +20,9 @@ An identicon badge looks something like this: After you create a GitHub App, you can customize your app's badge by uploading a logo and selecting a background color. A badge is a square logo image inside of a circular badge. You can choose a background color for the badge, which can visually distinguish your app. -Your logo should be a PNG, JPG, or GIF file under 1 MB in size. For the best quality rendering, we recommend an image size of at least 200px x 200px. {% ifversion fpt %}See "[Tips for logo and badge images](/marketplace/listing-on-github-marketplace/writing-github-marketplace-listing-descriptions/#guidelines-for-logos)" for more guidance on customizing badges.{% endif %} +Your logo should be a PNG, JPG, or GIF file under 1 MB in size. For the best quality rendering, we recommend an image size of at least 200px x 200px. {% ifversion fpt or ghec %}See "[Tips for logo and badge images](/marketplace/listing-on-github-marketplace/writing-github-marketplace-listing-descriptions/#guidelines-for-logos)" for more guidance on customizing badges.{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can change a custom badge for a GitHub App that already has an approved Marketplace listing by navigating to https://github.com/marketplace/manage. @@ -37,10 +38,10 @@ To create a custom badge: ![Upload a logo](/assets/images/github-apps/github_apps_upload_logo.png) 6. Crop your picture. When you're done, click **Set new avatar**. ![Crop and set logo ](/assets/images/github-apps/github_apps_crop_and_set_avatar.png) -7. In "Badge background color", type the [hexadecimal color code](http://www.color-hex.com/) of the background color for your badge. {% ifversion fpt %}**Note:** The "Badge background color" input field will only appear after you upload an application logo.{% endif %} +7. In "Badge background color", type the [hexadecimal color code](http://www.color-hex.com/) of the background color for your badge. {% ifversion fpt or ghec %}**Note:** The "Badge background color" input field will only appear after you upload an application logo.{% endif %} ![Badge background color](/assets/images/github-apps/github_apps_badge_background_color.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Next steps diff --git a/content/developers/apps/building-github-apps/creating-a-github-app-from-a-manifest.md b/content/developers/apps/building-github-apps/creating-a-github-app-from-a-manifest.md index 8d26d96c7e7a..477b3c428f36 100644 --- a/content/developers/apps/building-github-apps/creating-a-github-app-from-a-manifest.md +++ b/content/developers/apps/building-github-apps/creating-a-github-app-from-a-manifest.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: App creation manifest flow @@ -59,7 +60,7 @@ The person creating the app will be redirected to a GitHub page with an input fi `name` | `string` | The name of the GitHub App. `url` | `string` | **Required.** The homepage of your GitHub App. `hook_attributes` | `object` | The configuration of the GitHub App's webhook. -`redirect_url` | `string` | The full URL to redirect to after a user initiates the creation of a GitHub App from a manifest.{% ifversion fpt or ghae-next or ghes > 3.0 %} +`redirect_url` | `string` | The full URL to redirect to after a user initiates the creation of a GitHub App from a manifest.{% ifversion fpt or ghae-next or ghes > 3.0 or ghec %} `callback_urls` | `array of strings` | A full URL to redirect to after someone authorizes an installation. You can provide up to 10 callback URLs.{% else %} `callback_url` | `string` | A full URL to redirect to after someone authorizes an installation.{% endif %} `description` | `string` | A description of the GitHub App. @@ -99,7 +100,7 @@ This example uses a form on a web page with a button that triggers the `POST` re "url": "https://example.com/github/events", }, "redirect_url": "https://example.com/redirect", - {% ifversion fpt or ghae-next or ghes > 3.0 %}"callback_urls": [ + {% ifversion fpt or ghae-next or ghes > 3.0 or ghec %}"callback_urls": [ "https://example.com/callback" ],{% else %}"callback_url": "https://example.com/callback",{% endif %} "public": true, @@ -134,7 +135,7 @@ This example uses a form on a web page with a button that triggers the `POST` re "url": "https://example.com/github/events", }, "redirect_url": "https://example.com/redirect", - {% ifversion fpt or ghae-next or ghes > 3.0 %}"callback_urls": [ + {% ifversion fpt or ghae-next or ghes > 3.0 or ghec %}"callback_urls": [ "https://example.com/callback" ],{% else %}"callback_url": "https://example.com/callback",{% endif %} "public": true, diff --git a/content/developers/apps/building-github-apps/creating-a-github-app-using-url-parameters.md b/content/developers/apps/building-github-apps/creating-a-github-app-using-url-parameters.md index b4359aaaa271..d79a2fa75853 100644 --- a/content/developers/apps/building-github-apps/creating-a-github-app-using-url-parameters.md +++ b/content/developers/apps/building-github-apps/creating-a-github-app-using-url-parameters.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: App creation query parameters @@ -21,13 +22,13 @@ You can add query parameters to these URLs to preselect the configuration of a { The person creating the app can edit the preselected values from the {% data variables.product.prodname_github_app %} registration page, before submitting the app. If you do not include required parameters in the URL query string, like `name`, the person creating the app will need to input a value before submitting the app. -{% ifversion ghes > 3.1 or fpt or ghae-next %} +{% ifversion ghes > 3.1 or fpt or ghae-next or ghec %} For apps that require a secret to secure their webhook, the secret's value must be set in the form by the person creating the app, not by using query parameters. For more information, see "[Securing your webhooks](/developers/webhooks-and-events/webhooks/securing-your-webhooks)." {% endif %} The following URL creates a new public app called `octocat-github-app` with a preconfigured description and callback URL. This URL also selects read and write permissions for `checks`, subscribes to the `check_run` and `check_suite` webhook events, and selects the option to request user authorization (OAuth) during installation: -{% ifversion fpt or ghae-next or ghes > 3.0 %} +{% ifversion fpt or ghae-next or ghes > 3.0 or ghec %} ```text {% data variables.product.oauth_host_code %}/settings/apps/new?name=octocat-github-app&description=An%20Octocat%20App&callback_urls[]=https://example.com&request_oauth_on_install=true&public=true&checks=write&events[]=check_run&events[]=check_suite @@ -49,7 +50,7 @@ The complete list of available query parameters, permissions, and events is list -----|------|------------- `name` | `string` | The name of the {% data variables.product.prodname_github_app %}. Give your app a clear and succinct name. Your app cannot have the same name as an existing GitHub user, unless it is your own user or organization name. A slugged version of your app's name will be shown in the user interface when your integration takes an action. `description` | `string` | A description of the {% data variables.product.prodname_github_app %}. -`url` | `string` | The full URL of your {% data variables.product.prodname_github_app %}'s website homepage.{% ifversion fpt or ghae-next or ghes > 3.0 %} +`url` | `string` | The full URL of your {% data variables.product.prodname_github_app %}'s website homepage.{% ifversion fpt or ghae-next or ghes > 3.0 or ghec %} `callback_urls` | `array of strings` | A full URL to redirect to after someone authorizes an installation. You can provide up to 10 callback URLs. These URLs are used if your app needs to identify and authorize user-to-server requests. For example, `callback_urls[]=https://example.com&callback_urls[]=https://example-2.com`.{% else %} `callback_url` | `string` | The full URL to redirect to after someone authorizes an installation. This URL is used if your app needs to identify and authorize user-to-server requests.{% endif %} `request_oauth_on_install` | `boolean` | If your app authorizes users using the OAuth flow, you can set this option to `true` to allow people to authorize the app when they install it, saving a step. If you select this option, the `setup_url` becomes unavailable and users will be redirected to your `callback_url` after installing the app. @@ -60,7 +61,7 @@ The complete list of available query parameters, permissions, and events is list {% ifversion ghes < 3.2 or ghae %}`webhook_secret` | `string` | You can specify a secret to secure your webhooks. See "[Securing your webhooks](/webhooks/securing/)" for more details. {% endif %}`events` | `array of strings` | Webhook events. Some webhook events require `read` or `write` permissions for a resource before you can select the event when registering a new {% data variables.product.prodname_github_app %}. See the "[{% data variables.product.prodname_github_app %} webhook events](#github-app-webhook-events)" section for available events and their required permissions. You can select multiple events in a query string. For example, `events[]=public&events[]=label`. `domain` | `string` | The URL of a content reference. -`single_file_name` | `string` | This is a narrowly-scoped permission that allows the app to access a single file in any repository. When you set the `single_file` permission to `read` or `write`, this field provides the path to the single file your {% data variables.product.prodname_github_app %} will manage. {% ifversion fpt or ghes > 2.22 %} If you need to manage multiple files, see `single_file_paths` below. {% endif %}{% ifversion fpt or ghes > 2.22 %} +`single_file_name` | `string` | This is a narrowly-scoped permission that allows the app to access a single file in any repository. When you set the `single_file` permission to `read` or `write`, this field provides the path to the single file your {% data variables.product.prodname_github_app %} will manage. {% ifversion fpt or ghes > 2.22 or ghec %} If you need to manage multiple files, see `single_file_paths` below. {% endif %}{% ifversion fpt or ghes > 2.22 or ghec %} `single_file_paths` | `array of strings` | This allows the app to access up ten specified files in a repository. When you set the `single_file` permission to `read` or `write`, this array can store the paths for up to ten files that your {% data variables.product.prodname_github_app %} will manage. These files all receive the same permission set by `single_file`, and do not have separate individual permissions. When two or more files are configured, the API returns `multiple_single_files=true`, otherwise it returns `multiple_single_files=false`.{% endif %} ## {% data variables.product.prodname_github_app %} permissions @@ -69,35 +70,35 @@ You can select permissions in a query string using the permission name in the fo Permission | Description ---------- | ----------- -[`administration`](/rest/reference/permissions-required-for-github-apps/#permission-on-administration) | Grants access to various endpoints for organization and repository administration. Can be one of: `none`, `read`, or `write`.{% ifversion fpt %} +[`administration`](/rest/reference/permissions-required-for-github-apps/#permission-on-administration) | Grants access to various endpoints for organization and repository administration. Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghec %} [`blocking`](/rest/reference/permissions-required-for-github-apps/#permission-on-blocking) | Grants access to the [Blocking Users API](/rest/reference/users#blocking). Can be one of: `none`, `read`, or `write`.{% endif %} [`checks`](/rest/reference/permissions-required-for-github-apps/#permission-on-checks) | Grants access to the [Checks API](/rest/reference/checks). Can be one of: `none`, `read`, or `write`. `content_references` | Grants access to the "[Create a content attachment](/rest/reference/apps#create-a-content-attachment)" endpoint. Can be one of: `none`, `read`, or `write`. [`contents`](/rest/reference/permissions-required-for-github-apps/#permission-on-contents) | Grants access to various endpoints that allow you to modify repository contents. Can be one of: `none`, `read`, or `write`. -[`deployments`](/rest/reference/permissions-required-for-github-apps/#permission-on-deployments) | Grants access to the [Deployments API](/rest/reference/repos#deployments). Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghes %} +[`deployments`](/rest/reference/permissions-required-for-github-apps/#permission-on-deployments) | Grants access to the [Deployments API](/rest/reference/repos#deployments). Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghes or ghec %} [`emails`](/rest/reference/permissions-required-for-github-apps/#permission-on-emails) | Grants access to the [Emails API](/rest/reference/users#emails). Can be one of: `none`, `read`, or `write`.{% endif %} [`followers`](/rest/reference/permissions-required-for-github-apps/#permission-on-followers) | Grants access to the [Followers API](/rest/reference/users#followers). Can be one of: `none`, `read`, or `write`. [`gpg_keys`](/rest/reference/permissions-required-for-github-apps/#permission-on-gpg-keys) | Grants access to the [GPG Keys API](/rest/reference/users#gpg-keys). Can be one of: `none`, `read`, or `write`. [`issues`](/rest/reference/permissions-required-for-github-apps/#permission-on-issues) | Grants access to the [Issues API](/rest/reference/issues). Can be one of: `none`, `read`, or `write`. [`keys`](/rest/reference/permissions-required-for-github-apps/#permission-on-keys) | Grants access to the [Public Keys API](/rest/reference/users#keys). Can be one of: `none`, `read`, or `write`. -[`members`](/rest/reference/permissions-required-for-github-apps/#permission-on-members) | Grants access to manage an organization's members. Can be one of: `none`, `read`, or `write`.{% ifversion fpt %} +[`members`](/rest/reference/permissions-required-for-github-apps/#permission-on-members) | Grants access to manage an organization's members. Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghec %} [`metadata`](/rest/reference/permissions-required-for-github-apps/#metadata-permissions) | Grants access to read-only endpoints that do not leak sensitive data. Can be `read` or `none`. Defaults to `read` when you set any permission, or defaults to `none` when you don't specify any permissions for the {% data variables.product.prodname_github_app %}. [`organization_administration`](/rest/reference/permissions-required-for-github-apps/#permission-on-organization-administration) | Grants access to "[Update an organization](/rest/reference/orgs#update-an-organization)" endpoint and the [Organization Interaction Restrictions API](/rest/reference/interactions#set-interaction-restrictions-for-an-organization). Can be one of: `none`, `read`, or `write`.{% endif %} [`organization_hooks`](/rest/reference/permissions-required-for-github-apps/#permission-on-organization-hooks) | Grants access to the [Organization Webhooks API](/rest/reference/orgs#webhooks/). Can be one of: `none`, `read`, or `write`. `organization_plan` | Grants access to get information about an organization's plan using the "[Get an organization](/rest/reference/orgs#get-an-organization)" endpoint. Can be one of: `none` or `read`. -[`organization_projects`](/rest/reference/permissions-required-for-github-apps/#permission-on-organization-projects) | Grants access to the [Projects API](/rest/reference/projects). Can be one of: `none`, `read`, `write`, or `admin`.{% ifversion fpt %} +[`organization_projects`](/rest/reference/permissions-required-for-github-apps/#permission-on-organization-projects) | Grants access to the [Projects API](/rest/reference/projects). Can be one of: `none`, `read`, `write`, or `admin`.{% ifversion fpt or ghec %} [`organization_user_blocking`](/rest/reference/permissions-required-for-github-apps/#permission-on-organization-projects) | Grants access to the [Blocking Organization Users API](/rest/reference/orgs#blocking). Can be one of: `none`, `read`, or `write`.{% endif %} [`pages`](/rest/reference/permissions-required-for-github-apps/#permission-on-pages) | Grants access to the [Pages API](/rest/reference/repos#pages). Can be one of: `none`, `read`, or `write`. `plan` | Grants access to get information about a user's GitHub plan using the "[Get a user](/rest/reference/users#get-a-user)" endpoint. Can be one of: `none` or `read`. [`pull_requests`](/rest/reference/permissions-required-for-github-apps/#permission-on-pull-requests) | Grants access to various pull request endpoints. Can be one of: `none`, `read`, or `write`. [`repository_hooks`](/rest/reference/permissions-required-for-github-apps/#permission-on-repository-hooks) | Grants access to the [Repository Webhooks API](/rest/reference/repos#hooks). Can be one of: `none`, `read`, or `write`. -[`repository_projects`](/rest/reference/permissions-required-for-github-apps/#permission-on-repository-projects) | Grants access to the [Projects API](/rest/reference/projects). Can be one of: `none`, `read`, `write`, or `admin`.{% ifversion fpt or ghes > 3.0 %} -[`secret_scanning_alerts`](/rest/reference/permissions-required-for-github-apps/#permission-on-secret-scanning-alerts) | Grants access to the [Secret scanning API](/rest/reference/secret-scanning). Can be one of: `none`, `read`, or `write`.{% endif %}{% ifversion fpt or ghes %} +[`repository_projects`](/rest/reference/permissions-required-for-github-apps/#permission-on-repository-projects) | Grants access to the [Projects API](/rest/reference/projects). Can be one of: `none`, `read`, `write`, or `admin`.{% ifversion fpt or ghes > 3.0 or ghec %} +[`secret_scanning_alerts`](/rest/reference/permissions-required-for-github-apps/#permission-on-secret-scanning-alerts) | Grants access to the [Secret scanning API](/rest/reference/secret-scanning). Can be one of: `none`, `read`, or `write`.{% endif %}{% ifversion fpt or ghes or ghec %} [`security_events`](/rest/reference/permissions-required-for-github-apps/#permission-on-security-events) | Grants access to the [Code scanning API](/rest/reference/code-scanning/). Can be one of: `none`, `read`, or `write`.{% endif %} [`single_file`](/rest/reference/permissions-required-for-github-apps/#permission-on-single-file) | Grants access to the [Contents API](/rest/reference/repos#contents). Can be one of: `none`, `read`, or `write`. [`starring`](/rest/reference/permissions-required-for-github-apps/#permission-on-starring) | Grants access to the [Starring API](/rest/reference/activity#starring). Can be one of: `none`, `read`, or `write`. [`statuses`](/rest/reference/permissions-required-for-github-apps/#permission-on-statuses) | Grants access to the [Statuses API](/rest/reference/repos#statuses). Can be one of: `none`, `read`, or `write`. -[`team_discussions`](/rest/reference/permissions-required-for-github-apps/#permission-on-team-discussions) | Grants access to the [Team Discussions API](/rest/reference/teams#discussions) and the [Team Discussion Comments API](/rest/reference/teams#discussion-comments). Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghes or ghae-issue-4864 %} +[`team_discussions`](/rest/reference/permissions-required-for-github-apps/#permission-on-team-discussions) | Grants access to the [Team Discussions API](/rest/reference/teams#discussions) and the [Team Discussion Comments API](/rest/reference/teams#discussion-comments). Can be one of: `none`, `read`, or `write`.{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} `vulnerability_alerts`| Grants access to receive security alerts for vulnerable dependencies in a repository. See "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies/)" to learn more. Can be one of: `none` or `read`.{% endif %} `watching` | Grants access to list and change repositories a user is subscribed to. Can be one of: `none`, `read`, or `write`. @@ -120,7 +121,7 @@ Webhook event name | Required permission | Description [`label`](/webhooks/event-payloads/#label) | `metadata` | {% data reusables.webhooks.label_short_desc %} [`member`](/webhooks/event-payloads/#member) | `members` | {% data reusables.webhooks.member_short_desc %} [`membership`](/webhooks/event-payloads/#membership) | `members` | {% data reusables.webhooks.membership_short_desc %} -[`milestone`](/webhooks/event-payloads/#milestone) | `pull_request` | {% data reusables.webhooks.milestone_short_desc %}{% ifversion fpt %} +[`milestone`](/webhooks/event-payloads/#milestone) | `pull_request` | {% data reusables.webhooks.milestone_short_desc %}{% ifversion fpt or ghec %} [`org_block`](/webhooks/event-payloads/#org_block) | `organization_administration` | {% data reusables.webhooks.org_block_short_desc %}{% endif %} [`organization`](/webhooks/event-payloads/#organization) | `members` | {% data reusables.webhooks.organization_short_desc %} [`page_build`](/webhooks/event-payloads/#page_build) | `pages` | {% data reusables.webhooks.page_build_short_desc %} @@ -133,7 +134,7 @@ Webhook event name | Required permission | Description [`pull_request_review_comment`](/webhooks/event-payloads/#pull_request_review_comment) | `pull_request` | {% data reusables.webhooks.pull_request_review_comment_short_desc %} [`push`](/webhooks/event-payloads/#push) | `contents` | {% data reusables.webhooks.push_short_desc %} [`release`](/webhooks/event-payloads/#release) | `contents` | {% data reusables.webhooks.release_short_desc %} -[`repository`](/webhooks/event-payloads/#repository) |`metadata` | {% data reusables.webhooks.repository_short_desc %}{% ifversion fpt %} +[`repository`](/webhooks/event-payloads/#repository) |`metadata` | {% data reusables.webhooks.repository_short_desc %}{% ifversion fpt or ghec %} [`repository_dispatch`](/webhooks/event-payloads/#repository_dispatch) | `contents` | Allows integrators using GitHub Actions to trigger custom events.{% endif %} [`status`](/webhooks/event-payloads/#status) | `statuses` | {% data reusables.webhooks.status_short_desc %} [`team`](/webhooks/event-payloads/#team) | `members` | {% data reusables.webhooks.team_short_desc %} diff --git a/content/developers/apps/building-github-apps/creating-a-github-app.md b/content/developers/apps/building-github-apps/creating-a-github-app.md index 101d4b2bb8e9..c20bd0e351eb 100644 --- a/content/developers/apps/building-github-apps/creating-a-github-app.md +++ b/content/developers/apps/building-github-apps/creating-a-github-app.md @@ -10,12 +10,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps --- -{% ifversion fpt %}To learn how to use GitHub App Manifests, which allow people to create preconfigured GitHub Apps, see "[Creating GitHub Apps from a manifest](/apps/building-github-apps/creating-github-apps-from-a-manifest/)."{% endif %} +{% ifversion fpt or ghec %}To learn how to use GitHub App Manifests, which allow people to create preconfigured GitHub Apps, see "[Creating GitHub Apps from a manifest](/apps/building-github-apps/creating-github-apps-from-a-manifest/)."{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** {% data reusables.apps.maximum-github-apps-allowed %} @@ -37,7 +38,7 @@ topics: ![Field for a description of your GitHub App](/assets/images/github-apps/github_apps_description.png) 1. In "Homepage URL", type the full URL to your app's website. ![Field for the homepage URL of your GitHub App](/assets/images/github-apps/github_apps_homepage_url.png) -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} 1. In "Callback URL", type the full URL to redirect to after a user authorizes the installation. This URL is used if your app needs to identify and authorize user-to-server requests. You can use **Add callback URL** to provide additional callback URLs, up to a maximum of 10. diff --git a/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md b/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md index 618ebee4f124..f7fea30a1269 100644 --- a/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md +++ b/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Identify & authorize users @@ -24,7 +25,7 @@ When your GitHub App acts on behalf of a user, it performs user-to-server reques To authorize users for standard apps that run in the browser, use the [web application flow](#web-application-flow). -{% ifversion fpt or ghae or ghes > 3.0 %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %} To authorize users for headless apps without direct access to the browser, such as CLI tools or Git credential managers, use the [device flow](#device-flow). The device flow uses the OAuth 2.0 [Device Authorization Grant](https://tools.ietf.org/html/rfc8628). @@ -52,7 +53,7 @@ When your GitHub App specifies a `login` parameter, it prompts users with a spec Name | Type | Description -----|------|------------ `client_id` | `string` | **Required.** The client ID for your GitHub App. You can find this in your [GitHub App settings](https://github.com/settings/apps) when you select your app. **Note:** The app ID and client ID are not the same, and are not interchangeable. -`redirect_uri` | `string` | The URL in your application where users will be sent after authorization. This must be an exact match to {% ifversion fpt or ghes > 3.0 %} one of the URLs you provided as a **Callback URL** {% else %} the URL you provided in the **User authorization callback URL** field{% endif %} when setting up your GitHub App and can't contain any additional parameters. +`redirect_uri` | `string` | The URL in your application where users will be sent after authorization. This must be an exact match to {% ifversion fpt or ghes > 3.0 or ghec %} one of the URLs you provided as a **Callback URL** {% else %} the URL you provided in the **User authorization callback URL** field{% endif %} when setting up your GitHub App and can't contain any additional parameters. `state` | `string` | This should contain a random string to protect against forgery attacks and could contain any other arbitrary data. `login` | `string` | Suggests a specific account to use for signing in and authorizing the app. `allow_signup` | `string` | Whether or not unauthenticated users will be offered an option to sign up for {% data variables.product.prodname_dotcom %} during the OAuth flow. The default is `true`. Use `false` when a policy prohibits signups. @@ -88,7 +89,7 @@ Name | Type | Description `client_id` | `string` | **Required.** The client ID for your GitHub App. `client_secret` | `string` | **Required.** The client secret for your GitHub App. `code` | `string` | **Required.** The code you received as a response to Step 1. -`redirect_uri` | `string` | The URL in your application where users will be sent after authorization. This must be an exact match to {% ifversion fpt or ghes > 3.0 %} one of the URLs you provided as a **Callback URL** {% else %} the URL you provided in the **User authorization callback URL** field{% endif %} when setting up your GitHub App and can't contain any additional parameters. +`redirect_uri` | `string` | The URL in your application where users will be sent after authorization. This must be an exact match to {% ifversion fpt or ghes > 3.0 or ghec %} one of the URLs you provided as a **Callback URL** {% else %} the URL you provided in the **User authorization callback URL** field{% endif %} when setting up your GitHub App and can't contain any additional parameters. `state` | `string` | The unguessable random string you provided in Step 1. #### Response @@ -97,9 +98,9 @@ By default, the response takes the following form. The response parameters `expi ```json { - "access_token": "{% ifversion fpt or ghes > 3.1 or ghae-next %}ghu_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", + "access_token": "{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghu_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", "expires_in": 28800, - "refresh_token": "{% ifversion fpt or ghes > 3.1 or ghae-next %}ghr_1B4a2e77838347a7E420ce178F2E7c6912E169246c34E1ccbF66C46812d16D5B1A9Dc86A1498{% else %}r1.c1b4a2e77838347a7e420ce178f2e7c6912e1692{% endif %}", + "refresh_token": "{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghr_1B4a2e77838347a7E420ce178F2E7c6912E169246c34E1ccbF66C46812d16D5B1A9Dc86A1498{% else %}r1.c1b4a2e77838347a7e420ce178f2e7c6912e1692{% endif %}", "refresh_token_expires_in": 15811200, "scope": "", "token_type": "bearer" @@ -119,7 +120,7 @@ For example, in curl you can set the Authorization header like this: curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` -{% ifversion fpt or ghae or ghes > 3.0 %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %} ## Device flow @@ -166,11 +167,11 @@ Because user-level permissions are granted on an individual user basis, you can ## User-to-server requests -While most of your API interaction should occur using your server-to-server installation access tokens, certain endpoints allow you to perform actions via the API using a user access token. Your app can make the following requests using [GraphQL v4](/graphql) or [REST v3](/rest) endpoints. +While most of your API interaction should occur using your server-to-server installation access tokens, certain endpoints allow you to perform actions via the API using a user access token. Your app can make the following requests using [GraphQL v4]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql) or [REST v3](/rest) endpoints. ### Supported endpoints -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Actions Runners * [List runner applications for a repository](/rest/reference/actions#list-runner-applications-for-a-repository) @@ -204,7 +205,7 @@ While most of your API interaction should occur using your server-to-server inst * [Delete an organization secret](/rest/reference/actions#delete-an-organization-secret) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Artifacts * [List artifacts for a repository](/rest/reference/actions#list-artifacts-for-a-repository) @@ -246,7 +247,7 @@ While most of your API interaction should occur using your server-to-server inst * [List deployments](/rest/reference/repos#list-deployments) * [Create a deployment](/rest/reference/repos#create-a-deployment) -* [Get a deployment](/rest/reference/repos#get-a-deployment){% ifversion fpt or ghes or ghae %} +* [Get a deployment](/rest/reference/repos#get-a-deployment){% ifversion fpt or ghes or ghae or ghec %} * [Delete a deployment](/rest/reference/repos#delete-a-deployment){% endif %} #### Events @@ -294,7 +295,7 @@ While most of your API interaction should occur using your server-to-server inst * [List repositories accessible to the user access token](/rest/reference/apps#list-repositories-accessible-to-the-user-access-token) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Interaction Limits * [Get interaction restrictions for an organization](/rest/reference/interactions#get-interaction-restrictions-for-an-organization) @@ -339,7 +340,7 @@ While most of your API interaction should occur using your server-to-server inst * [Lock an issue](/rest/reference/issues#lock-an-issue) * [Unlock an issue](/rest/reference/issues#unlock-an-issue) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Jobs * [Get a job for a workflow run](/rest/reference/actions#get-a-job-for-a-workflow-run) @@ -392,7 +393,7 @@ While most of your API interaction should occur using your server-to-server inst * [Delete an organization webhook](/rest/reference/orgs#webhooks/#delete-an-organization-webhook) * [Ping an organization webhook](/rest/reference/orgs#webhooks/#ping-an-organization-webhook) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Organization Invitations * [List pending organization invitations](/rest/reference/orgs#list-pending-organization-invitations) @@ -428,7 +429,7 @@ While most of your API interaction should occur using your server-to-server inst * [Remove pre-receive hook enforcement for an organization](/enterprise/user/rest/reference/enterprise-admin#remove-pre-receive-hook-enforcement-for-an-organization) {% endif %} -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} #### Organization Team Projects * [List team projects](/rest/reference/teams#list-team-projects) @@ -444,7 +445,7 @@ While most of your API interaction should occur using your server-to-server inst * [Add or update team repository permissions](/rest/reference/teams#add-or-update-team-repository-permissions) * [Remove a repository from a team](/rest/reference/teams#remove-a-repository-from-a-team) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Organization Team Sync * [List idp groups for a team](/rest/reference/teams#list-idp-groups-for-a-team) @@ -459,7 +460,7 @@ While most of your API interaction should occur using your server-to-server inst * [Get a team by name](/rest/reference/teams#get-a-team-by-name) * [Update a team](/rest/reference/teams#update-a-team) * [Delete a team](/rest/reference/teams#delete-a-team) -{% ifversion fpt %} +{% ifversion fpt or ghec %} * [List pending team invitations](/rest/reference/teams#list-pending-team-invitations) {% endif %} * [List team members](/rest/reference/teams#list-team-members) @@ -480,14 +481,14 @@ While most of your API interaction should occur using your server-to-server inst * [List organizations for the authenticated user](/rest/reference/orgs#list-organizations-for-the-authenticated-user) * [List organizations for a user](/rest/reference/orgs#list-organizations-for-a-user) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Organizations Credential Authorizations * [List SAML SSO authorizations for an organization](/rest/reference/orgs#list-saml-sso-authorizations-for-an-organization) * [Remove a SAML SSO authorization for an organization](/rest/reference/orgs#remove-a-saml-sso-authorization-for-an-organization) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Organizations Scim * [List SCIM provisioned identities](/rest/reference/scim#list-scim-provisioned-identities) @@ -498,7 +499,7 @@ While most of your API interaction should occur using your server-to-server inst * [Delete a SCIM user from an organization](/rest/reference/scim#delete-a-scim-user-from-an-organization) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Source Imports * [Get an import status](/rest/reference/migrations#get-an-import-status) @@ -581,7 +582,7 @@ While most of your API interaction should occur using your server-to-server inst #### Reactions -{% ifversion fpt or ghes or ghae %}* [Delete a reaction](/rest/reference/reactions#delete-a-reaction-legacy){% else %}* [Delete a reaction](/rest/reference/reactions#delete-a-reaction){% endif %} +{% ifversion fpt or ghes or ghae or ghec %}* [Delete a reaction](/rest/reference/reactions#delete-a-reaction-legacy){% else %}* [Delete a reaction](/rest/reference/reactions#delete-a-reaction){% endif %} * [List reactions for a commit comment](/rest/reference/reactions#list-reactions-for-a-commit-comment) * [Create reaction for a commit comment](/rest/reference/reactions#create-reaction-for-a-commit-comment) * [List reactions for an issue](/rest/reference/reactions#list-reactions-for-an-issue) @@ -593,7 +594,7 @@ While most of your API interaction should occur using your server-to-server inst * [List reactions for a team discussion comment](/rest/reference/reactions#list-reactions-for-a-team-discussion-comment) * [Create reaction for a team discussion comment](/rest/reference/reactions#create-reaction-for-a-team-discussion-comment) * [List reactions for a team discussion](/rest/reference/reactions#list-reactions-for-a-team-discussion) -* [Create reaction for a team discussion](/rest/reference/reactions#create-reaction-for-a-team-discussion){% ifversion fpt or ghes or ghae %} +* [Create reaction for a team discussion](/rest/reference/reactions#create-reaction-for-a-team-discussion){% ifversion fpt or ghes or ghae or ghec %} * [Delete a commit comment reaction](/rest/reference/reactions#delete-a-commit-comment-reaction) * [Delete an issue reaction](/rest/reference/reactions#delete-an-issue-reaction) * [Delete a reaction to a commit comment](/rest/reference/reactions#delete-an-issue-comment-reaction) @@ -631,7 +632,7 @@ While most of your API interaction should occur using your server-to-server inst * [Unstar a repository for the authenticated user](/rest/reference/activity#unstar-a-repository-for-the-authenticated-user) * [List repositories watched by a user](/rest/reference/activity#list-repositories-watched-by-a-user) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Repository Automated Security Fixes * [Enable automated security fixes](/rest/reference/repos#enable-automated-security-fixes) @@ -700,7 +701,7 @@ While most of your API interaction should occur using your server-to-server inst #### Repository Community * [Get the code of conduct for a repository](/rest/reference/codes-of-conduct#get-the-code-of-conduct-for-a-repository) -{% ifversion fpt %} +{% ifversion fpt or ghec %} * [Get community profile metrics](/rest/reference/repos#get-community-profile-metrics) {% endif %} @@ -713,7 +714,7 @@ While most of your API interaction should occur using your server-to-server inst * [Get a repository README](/rest/reference/repos#get-a-repository-readme) * [Get the license for a repository](/rest/reference/licenses#get-the-license-for-a-repository) -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} #### Repository Event Dispatches * [Create a repository dispatch event](/rest/reference/repos#create-a-repository-dispatch-event) @@ -787,7 +788,7 @@ While most of your API interaction should occur using your server-to-server inst * [Get the weekly commit count](/rest/reference/repos#get-the-weekly-commit-count) * [Get the hourly commit count for each day](/rest/reference/repos#get-the-hourly-commit-count-for-each-day) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Repository Vulnerability Alerts * [Enable vulnerability alerts](/rest/reference/repos#enable-vulnerability-alerts) @@ -833,7 +834,7 @@ While most of your API interaction should occur using your server-to-server inst * [Get all repository topics](/rest/reference/repos#get-all-repository-topics) * [Replace all repository topics](/rest/reference/repos#replace-all-repository-topics) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Traffic * [Get repository clones](/rest/reference/repos#get-repository-clones) @@ -842,7 +843,7 @@ While most of your API interaction should occur using your server-to-server inst * [Get page views](/rest/reference/repos#get-page-views) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### User Blocking * [List users blocked by the authenticated user](/rest/reference/users#list-users-blocked-by-the-authenticated-user) @@ -855,10 +856,10 @@ While most of your API interaction should occur using your server-to-server inst * [Unblock a user](/rest/reference/users#unblock-a-user) {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} #### User Emails -{% ifversion fpt %} +{% ifversion fpt or ghec %} * [Set primary email visibility for the authenticated user](/rest/reference/users#set-primary-email-visibility-for-the-authenticated-user) {% endif %} * [List email addresses for the authenticated user](/rest/reference/users#list-email-addresses-for-the-authenticated-user) @@ -896,13 +897,13 @@ While most of your API interaction should occur using your server-to-server inst * [Get the authenticated user](/rest/reference/users#get-the-authenticated-user) * [List app installations accessible to the user access token](/rest/reference/apps#list-app-installations-accessible-to-the-user-access-token) -{% ifversion fpt %} +{% ifversion fpt or ghec %} * [List subscriptions for the authenticated user](/rest/reference/apps#list-subscriptions-for-the-authenticated-user) {% endif %} * [List users](/rest/reference/users#list-users) * [Get a user](/rest/reference/users#get-a-user) -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Workflow Runs * [List workflow runs for a repository](/rest/reference/actions#list-workflow-runs-for-a-repository) @@ -915,7 +916,7 @@ While most of your API interaction should occur using your server-to-server inst * [Get workflow run usage](/rest/reference/actions#get-workflow-run-usage) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} #### Workflows * [List repository workflows](/rest/reference/actions#list-repository-workflows) @@ -923,7 +924,7 @@ While most of your API interaction should occur using your server-to-server inst * [Get workflow usage](/rest/reference/actions#get-workflow-usage) {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Further reading diff --git a/content/developers/apps/building-github-apps/index.md b/content/developers/apps/building-github-apps/index.md index 5f962d452456..f2d1543c7748 100644 --- a/content/developers/apps/building-github-apps/index.md +++ b/content/developers/apps/building-github-apps/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps children: diff --git a/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md b/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md index bf93af4e8d69..54b69c1a3434 100644 --- a/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md +++ b/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md @@ -4,6 +4,7 @@ intro: 'You can add an IP allow list to your {% data variables.product.prodname_ versions: fpt: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Manage allowed IP addresses @@ -11,7 +12,7 @@ shortTitle: Manage allowed IP addresses ## About IP address allow lists for {% data variables.product.prodname_github_apps %} -Enterprise and organization owners can restrict access to assets by configuring an IP address allow list. This list specifies the IP addresses that are allowed to connect. For more information, see "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#enabling-allowed-ip-addresses)" and {% ifversion ghae %}"[Restricting network traffic to your enterprise](/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise)." {% else %}"[Enforcing security settings in your enterprise account](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account#managing-allowed-ip-addresses-for-organizations-in-your-enterprise-account)." {% endif %} +Enterprise and organization owners can restrict access to assets by configuring an IP address allow list. This list specifies the IP addresses that are allowed to connect. For more information, see "[Enforcing policies for security settings in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)." When an organization has an allow list, third-party applications that connect via a {% data variables.product.prodname_github_app %} will be denied access unless both of the following are true: diff --git a/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md b/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md index 0cd841bfe10e..66c5883c848d 100644 --- a/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md +++ b/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md @@ -11,13 +11,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Rate limits --- ## Server-to-server requests -{% ifversion fpt %} +{% ifversion fpt or ghec %} Different server-to-server request rate limits apply to {% data variables.product.prodname_github_apps %} if the app is installed on organizations or repositories owned by a {% data variables.product.prodname_ghe_cloud %} account. @@ -27,7 +28,7 @@ Different server-to-server request rate limits apply to {% data variables.produc {% data reusables.apps.api-rate-limits-non-ghec %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### {% data variables.product.prodname_ghe_cloud %} server-to-server rate limits @@ -39,7 +40,7 @@ Different server-to-server request rate limits apply to {% data variables.produc {% data variables.product.prodname_github_apps %} can also act [on behalf of a user](/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#identifying-and-authorizing-users-for-github-apps), making user-to-server requests. -{% ifversion fpt %} +{% ifversion fpt or ghec %} Different user-to-server request rate limits apply to {% data variables.product.prodname_github_apps %} if the app is installed on organizations or repositories owned by a {% data variables.product.prodname_ghe_cloud %} account and the authenticated user also belongs to the same {% data variables.product.prodname_ghe_cloud %} account. @@ -49,7 +50,7 @@ Different user-to-server request rate limits apply to {% data variables.product. User-to-server requests are rate limited at 5,000 requests per hour and per authenticated user. All OAuth applications authorized by that user, personal access tokens owned by that user, and requests authenticated with that user's{% ifversion ghae %} token{% else %} username and password{% endif %} share the same quota of 5,000 requests per hour for that user. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### {% data variables.product.prodname_ghe_cloud %} user-to-server rate limits @@ -57,4 +58,4 @@ When a user belongs to a {% data variables.product.prodname_ghe_cloud %} account {% endif %} -For more detailed information about rate limits, see "[Rate limiting](/rest/overview/resources-in-the-rest-api#rate-limiting)" for REST API and "[Resource limitations](/graphql/overview/resource-limitations)" for GraphQL API. +For more detailed information about rate limits, see "[Rate limiting](/rest/overview/resources-in-the-rest-api#rate-limiting)" for REST API and "[Resource limitations]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/overview/resource-limitations)" for GraphQL API. diff --git a/content/developers/apps/building-github-apps/refreshing-user-to-server-access-tokens.md b/content/developers/apps/building-github-apps/refreshing-user-to-server-access-tokens.md index b99a22bb3c74..7c7395b346e7 100644 --- a/content/developers/apps/building-github-apps/refreshing-user-to-server-access-tokens.md +++ b/content/developers/apps/building-github-apps/refreshing-user-to-server-access-tokens.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Refresh user-to-server access @@ -42,9 +43,9 @@ Name | Type | Description ```json { - "access_token": "{% ifversion fpt or ghes > 3.1 or ghae-next %}ghu_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", + "access_token": "{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghu_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", "expires_in": "28800", - "refresh_token": "{% ifversion fpt or ghes > 3.1 or ghae-next %}ghr_1B4a2e77838347a7E420ce178F2E7c6912E169246c34E1ccbF66C46812d16D5B1A9Dc86A1498{% else %}r1.c1b4a2e77838347a7e420ce178f2e7c6912e169246c34e1ccbf66c46812d16d5b1a9dc86a149873c{% endif %}", + "refresh_token": "{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghr_1B4a2e77838347a7E420ce178F2E7c6912E169246c34E1ccbF66C46812d16D5B1A9Dc86A1498{% else %}r1.c1b4a2e77838347a7e420ce178f2e7c6912e169246c34e1ccbf66c46812d16d5b1a9dc86a149873c{% endif %}", "refresh_token_expires_in": "15811200", "scope": "", "token_type": "bearer" @@ -75,7 +76,7 @@ Existing {% data variables.product.prodname_github_apps %} using user-to-server Enabling expiring user tokens for existing {% data variables.product.prodname_github_apps %} requires sending users through the OAuth flow to re-issue new user tokens that will expire in 8 hours and making a request with the refresh token to get a new access token and refresh token. For more information, see "[Identifying and authorizing users for GitHub Apps](/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/)." -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Further reading diff --git a/content/developers/apps/building-github-apps/setting-permissions-for-github-apps.md b/content/developers/apps/building-github-apps/setting-permissions-for-github-apps.md index 110cd02478b2..cb5a1834d318 100644 --- a/content/developers/apps/building-github-apps/setting-permissions-for-github-apps.md +++ b/content/developers/apps/building-github-apps/setting-permissions-for-github-apps.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Set permissions diff --git a/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md b/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md index 4c17c9bcb9a9..cd7807c22f6d 100644 --- a/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md +++ b/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps --- @@ -22,7 +23,7 @@ If you want to skip authorizing your app in the standard way, such as when testi To authorize your OAuth app, consider which authorization flow best fits your app. -- [web application flow](#web-application-flow): Used to authorize users for standard OAuth apps that run in the browser. (The [implicit grant type](https://tools.ietf.org/html/rfc6749#section-4.2) is not supported.){% ifversion fpt or ghae or ghes > 3.0 %} +- [web application flow](#web-application-flow): Used to authorize users for standard OAuth apps that run in the browser. (The [implicit grant type](https://tools.ietf.org/html/rfc6749#section-4.2) is not supported.){% ifversion fpt or ghae or ghes > 3.0 or ghec %} - [device flow](#device-flow): Used for headless apps, such as CLI tools.{% endif %} ## Web application flow @@ -49,7 +50,7 @@ When your GitHub App specifies a `login` parameter, it prompts users with a spec Name | Type | Description -----|------|-------------- -`client_id`|`string` | **Required**. The client ID you received from GitHub when you {% ifversion fpt %}[registered](https://github.com/settings/applications/new){% else %}registered{% endif %}. +`client_id`|`string` | **Required**. The client ID you received from GitHub when you {% ifversion fpt or ghec %}[registered](https://github.com/settings/applications/new){% else %}registered{% endif %}. `redirect_uri`|`string` | The URL in your application where users will be sent after authorization. See details below about [redirect urls](#redirect-urls). `login` | `string` | Suggests a specific account to use for signing in and authorizing the app. `scope`|`string` | A space-delimited list of [scopes](/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/). If not provided, `scope` defaults to an empty list for users that have not authorized any scopes for the application. For users who have authorized scopes for the application, the user won't be shown the OAuth authorization page with the list of scopes. Instead, this step of the flow will automatically complete with the set of scopes the user has authorized for the application. For example, if a user has already performed the web flow twice and has authorized one token with `user` scope and another token with `repo` scope, a third web flow that does not provide a `scope` will receive a token with `user` and `repo` scope. @@ -78,7 +79,7 @@ Name | Type | Description By default, the response takes the following form: ``` -access_token={% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}&scope=repo%2Cgist&token_type=bearer +access_token={% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}&scope=repo%2Cgist&token_type=bearer ``` {% data reusables.apps.oauth-auth-vary-response %} @@ -86,7 +87,7 @@ access_token={% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E ```json Accept: application/json { - "access_token":"{% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", + "access_token":"{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", "scope":"repo,gist", "token_type":"bearer" } @@ -97,7 +98,7 @@ Accept: application/xml bearer repo,gist - {% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %} + {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %} ``` @@ -114,7 +115,7 @@ For example, in curl you can set the Authorization header like this: curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` -{% ifversion fpt or ghae or ghes > 3.0 %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %} ## Device flow @@ -216,7 +217,7 @@ Name | Type | Description By default, the response takes the following form: ``` -access_token={% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}&token_type=bearer&scope=repo%2Cgist +access_token={% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}&token_type=bearer&scope=repo%2Cgist ``` {% data reusables.apps.oauth-auth-vary-response %} @@ -224,7 +225,7 @@ access_token={% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E ```json Accept: application/json { - "access_token": "{% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", + "access_token": "{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %}", "token_type": "bearer", "scope": "repo,gist" } @@ -233,7 +234,7 @@ Accept: application/json ```xml Accept: application/xml - {% ifversion fpt or ghes > 3.1 or ghae-next %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %} + {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}gho_16C7e42F292c6912E7710c838347Ae178B4a{% else %}e72e16c7e42f292c6912e7710c838347ae178b4a{% endif %} bearer gist,repo @@ -265,7 +266,7 @@ For more information, see the "[OAuth 2.0 Device Authorization Grant](https://to Non-web authentication is available for limited situations like testing. If you need to, you can use [Basic Authentication](/rest/overview/other-authentication-methods#basic-authentication) to create a personal access token using your [Personal access tokens settings page](/articles/creating-an-access-token-for-command-line-use). This technique enables the user to revoke access at any time. -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% note %} **Note:** When using the non-web application flow to create an OAuth2 token, make sure to understand how to [work with @@ -333,7 +334,7 @@ To build this link, you'll need your OAuth Apps `client_id` that you received fr * "[Troubleshooting authorization request errors](/apps/managing-oauth-apps/troubleshooting-authorization-request-errors)" * "[Troubleshooting OAuth App access token request errors](/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors)" -{% ifversion fpt or ghae or ghes > 3.0 %}* "[Device flow errors](#error-codes-for-the-device-flow)"{% endif %}{% ifversion fpt or ghae-issue-4374 or ghes > 3.2 %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %}* "[Device flow errors](#error-codes-for-the-device-flow)"{% endif %}{% ifversion fpt or ghae-issue-4374 or ghes > 3.2 or ghec %} * "[Token expiration and revocation](/github/authenticating-to-github/keeping-your-account-and-data-secure/token-expiration-and-revocation)"{% endif %} ## Further reading diff --git a/content/developers/apps/building-oauth-apps/creating-a-custom-badge-for-your-oauth-app.md b/content/developers/apps/building-oauth-apps/creating-a-custom-badge-for-your-oauth-app.md index a05000dbe8bb..d43b907e2e76 100644 --- a/content/developers/apps/building-oauth-apps/creating-a-custom-badge-for-your-oauth-app.md +++ b/content/developers/apps/building-oauth-apps/creating-a-custom-badge-for-your-oauth-app.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps shortTitle: Create custom badges @@ -19,9 +20,9 @@ An identicon badge looks something like this: After you create an OAuth App, you can customize the app's badge by uploading a logo and selecting a background color. A badge is a square logo image inside of a circular badge. You can choose a background color for the badge, which can be used to visually distinguish your app. -Your logo should be a PNG, JPG, or GIF file under 1 MB in size. For the best quality rendering, we recommend an image size of at least 200px x 200px. {% ifversion fpt %}See "[Tips for logo and badge images](/marketplace/listing-on-github-marketplace/writing-github-marketplace-listing-descriptions/#guidelines-for-logos)" for more guidance on customizing badges.{% endif %} +Your logo should be a PNG, JPG, or GIF file under 1 MB in size. For the best quality rendering, we recommend an image size of at least 200px x 200px. {% ifversion fpt or ghec %}See "[Tips for logo and badge images](/marketplace/listing-on-github-marketplace/writing-github-marketplace-listing-descriptions/#guidelines-for-logos)" for more guidance on customizing badges.{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can change a custom badge for a GitHub App that already has an approved Marketplace listing by navigating to https://github.com/marketplace/manage. @@ -37,11 +38,11 @@ To create a custom badge: ![Upload a logo](/assets/images/oauth-apps/oauth_apps_upload_logo.png) 6. Crop your picture. When you're done, click **Set new application logo**. ![Crop and set logo](/assets/images/oauth-apps/oauth_apps_crop_and_set_logo.png) -7. In "Badge background color", type the [hexadecimal color code](http://www.color-hex.com/) of the background color for your badge. {% ifversion fpt %}**Note:** The "Badge background color" input field will be visible after an application logo has been uploaded.{% endif %} +7. In "Badge background color", type the [hexadecimal color code](http://www.color-hex.com/) of the background color for your badge. {% ifversion fpt or ghec %}**Note:** The "Badge background color" input field will be visible after an application logo has been uploaded.{% endif %} ![Badge background color](/assets/images/oauth-apps/oauth_apps_badge_background_color.png) {% data reusables.user-settings.update_oauth_app %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Next steps diff --git a/content/developers/apps/building-oauth-apps/creating-an-oauth-app.md b/content/developers/apps/building-oauth-apps/creating-an-oauth-app.md index 9cfadf8a057c..bd4992c92fc7 100644 --- a/content/developers/apps/building-oauth-apps/creating-an-oauth-app.md +++ b/content/developers/apps/building-oauth-apps/creating-an-oauth-app.md @@ -9,10 +9,11 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** {% data reusables.apps.maximum-oauth-apps-allowed %} @@ -46,7 +47,7 @@ topics: ![Field for a description of your app](/assets/images/oauth-apps/oauth_apps_application_description.png) 9. In "Authorization callback URL", type the callback URL of your app. ![Field for the authorization callback URL of your app](/assets/images/oauth-apps/oauth_apps_authorization_callback_url.png) -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} {% note %} **Note:** OAuth Apps cannot have multiple callback URLs, unlike {% data variables.product.prodname_github_apps %}. diff --git a/content/developers/apps/building-oauth-apps/index.md b/content/developers/apps/building-oauth-apps/index.md index e424b14aaec2..6c839d0e939c 100644 --- a/content/developers/apps/building-oauth-apps/index.md +++ b/content/developers/apps/building-oauth-apps/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps children: diff --git a/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md b/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md index c2e305ba501b..06616b4e377d 100644 --- a/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md +++ b/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps --- @@ -45,7 +46,7 @@ Name | Description  `repo:status`| Grants read/write access to {% ifversion not ghae %}public{% else %}internal{% endif %} and private repository commit statuses. This scope is only necessary to grant other users or services access to private repository commit statuses *without* granting access to the code.  `repo_deployment`| Grants access to [deployment statuses](/rest/reference/repos#deployments) for {% ifversion not ghae %}public{% else %}internal{% endif %} and private repositories. This scope is only necessary to grant other users or services access to deployment statuses, *without* granting access to the code.{% ifversion not ghae %}  `public_repo`| Limits access to public repositories. That includes read/write access to code, commit statuses, repository projects, collaborators, and deployment statuses for public repositories and organizations. Also required for starring public repositories.{% endif %} - `repo:invite` | Grants accept/decline abilities for invitations to collaborate on a repository. This scope is only necessary to grant other users or services access to invites *without* granting access to the code.{% ifversion fpt or ghes > 3.0 %} + `repo:invite` | Grants accept/decline abilities for invitations to collaborate on a repository. This scope is only necessary to grant other users or services access to invites *without* granting access to the code.{% ifversion fpt or ghes > 3.0 or ghec %}  `security_events` | Grants:
read and write access to security events in the [{% data variables.product.prodname_code_scanning %} API](/rest/reference/code-scanning)
read and write access to security events in the [{% data variables.product.prodname_secret_scanning %} API](/rest/reference/secret-scanning)
This scope is only necessary to grant other users or services access to security events *without* granting access to the code.{% endif %}{% ifversion ghes < 3.1 %}  `security_events` | Grants read and write access to security events in the [{% data variables.product.prodname_code_scanning %} API](/rest/reference/code-scanning). This scope is only necessary to grant other users or services access to security events *without* granting access to the code.{% endif %} **`admin:repo_hook`** | Grants read, write, ping, and delete access to repository hooks in {% ifversion not ghae %}public{% else %}internal{% endif %} and private repositories. The `repo` {% ifversion not ghae %}and `public_repo` scopes grant{% else %}scope grants{% endif %} full access to repositories, including repository hooks. Use the `admin:repo_hook` scope to limit access to only repository hooks. @@ -66,13 +67,13 @@ Name | Description  `user:follow`| Grants access to follow or unfollow other users. **`delete_repo`** | Grants access to delete adminable repositories. **`write:discussion`** | Allows read and write access for team discussions. - `read:discussion` | Allows read access for team discussions.{% ifversion fpt or ghae %} + `read:discussion` | Allows read access for team discussions.{% ifversion fpt or ghae or ghec %} **`write:packages`** | Grants access to upload or publish a package in {% data variables.product.prodname_registry %}. For more information, see "[Publishing a package](/github/managing-packages-with-github-packages/publishing-a-package)". **`read:packages`** | Grants access to download or install packages from {% data variables.product.prodname_registry %}. For more information, see "[Installing a package](/github/managing-packages-with-github-packages/installing-a-package)". -**`delete:packages`** | Grants access to delete packages from {% data variables.product.prodname_registry %}. For more information, see "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}."{% endif %} +**`delete:packages`** | Grants access to delete packages from {% data variables.product.prodname_registry %}. For more information, see "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}."{% endif %} **`admin:gpg_key`** | Fully manage GPG keys.  `write:gpg_key`| Create, list, and view details for GPG keys. - `read:gpg_key`| List and view details for GPG keys.{% ifversion fpt %} + `read:gpg_key`| List and view details for GPG keys.{% ifversion fpt or ghec %} **`workflow`** | Grants the ability to add and update {% data variables.product.prodname_actions %} workflow files. Workflow files can be committed without this scope if the same file (with both the same path and contents) exists on another branch in the same repository. Workflow files can expose `GITHUB_TOKEN` which may have a different set of scopes. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)."{% endif %} {% note %} diff --git a/content/developers/apps/getting-started-with-apps/about-apps.md b/content/developers/apps/getting-started-with-apps/about-apps.md index 65c1e00da030..bcb5178dfb1d 100644 --- a/content/developers/apps/getting-started-with-apps/about-apps.md +++ b/content/developers/apps/getting-started-with-apps/about-apps.md @@ -1,6 +1,6 @@ --- title: About apps -intro: 'You can build integrations with the {% data variables.product.prodname_dotcom %} APIs to add flexibility and reduce friction in your own workflow.{% ifversion fpt %} You can also share integrations with others on [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace).{% endif %}' +intro: 'You can build integrations with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs to add flexibility and reduce friction in your own workflow.{% ifversion fpt or ghec %} You can also share integrations with others on [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace).{% endif %}' redirect_from: - /apps/building-integrations/setting-up-a-new-integration/ - /apps/building-integrations/ @@ -11,10 +11,11 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps --- -Apps on {% data variables.product.prodname_dotcom %} allow you to automate and improve your workflow. You can build apps to improve your workflow.{% ifversion fpt %} You can also share or sell apps in [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace). To learn how to list an app on {% data variables.product.prodname_marketplace %}, see "[Getting started with GitHub Marketplace](/marketplace/getting-started/)."{% endif %} +Apps on {% data variables.product.prodname_dotcom %} allow you to automate and improve your workflow. You can build apps to improve your workflow.{% ifversion fpt or ghec %} You can also share or sell apps in [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace). To learn how to list an app on {% data variables.product.prodname_marketplace %}, see "[Getting started with GitHub Marketplace](/marketplace/getting-started/)."{% endif %} {% data reusables.marketplace.github_apps_preferred %}, but GitHub supports both {% data variables.product.prodname_oauth_apps %} and {% data variables.product.prodname_github_apps %}. For information on choosing a type of app, see "[Differences between GitHub Apps and OAuth Apps](/developers/apps/differences-between-github-apps-and-oauth-apps)." @@ -36,7 +37,7 @@ To improve your workflow, you can create a {% data variables.product.prodname_gi Keep these ideas in mind when creating {% data variables.product.prodname_github_apps %}: -{% ifversion fpt %} +{% ifversion fpt or ghec %} * {% data reusables.apps.maximum-github-apps-allowed %} {% endif %} * A {% data variables.product.prodname_github_app %} should take actions independent of a user (unless the app is using a [user-to-server](/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps#user-to-server-requests) token). {% data reusables.apps.expiring_user_authorization_tokens %} @@ -44,10 +45,10 @@ Keep these ideas in mind when creating {% data variables.product.prodname_github * The {% data variables.product.prodname_github_app %} should connect to a personal account or an organization. * Don't expect the {% data variables.product.prodname_github_app %} to know and do everything a user can. * Don't use a {% data variables.product.prodname_github_app %} if you just need a "Login with GitHub" service. But a {% data variables.product.prodname_github_app %} can use a [user identification flow](/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/) to log users in _and_ do other things. -* Don't build a {% data variables.product.prodname_github_app %} if you _only_ want to act as a GitHub user and do everything that user can do.{% ifversion fpt %} +* Don't build a {% data variables.product.prodname_github_app %} if you _only_ want to act as a GitHub user and do everything that user can do.{% ifversion fpt or ghec %} * {% data reusables.apps.general-apps-restrictions %}{% endif %} -To begin developing {% data variables.product.prodname_github_apps %}, start with "[Creating a {% data variables.product.prodname_github_app %}](/apps/building-github-apps/creating-a-github-app/)."{% ifversion fpt %} To learn how to use {% data variables.product.prodname_github_app %} Manifests, which allow people to create preconfigured {% data variables.product.prodname_github_apps %}, see "[Creating {% data variables.product.prodname_github_apps %} from a manifest](/apps/building-github-apps/creating-github-apps-from-a-manifest/)."{% endif %} +To begin developing {% data variables.product.prodname_github_apps %}, start with "[Creating a {% data variables.product.prodname_github_app %}](/apps/building-github-apps/creating-a-github-app/)."{% ifversion fpt or ghec %} To learn how to use {% data variables.product.prodname_github_app %} Manifests, which allow people to create preconfigured {% data variables.product.prodname_github_apps %}, see "[Creating {% data variables.product.prodname_github_apps %} from a manifest](/apps/building-github-apps/creating-github-apps-from-a-manifest/)."{% endif %} ## About {% data variables.product.prodname_oauth_apps %} @@ -61,12 +62,12 @@ Building an {% data variables.product.prodname_oauth_app %} is a good option if Keep these ideas in mind when creating {% data variables.product.prodname_oauth_apps %}: -{% ifversion fpt %} +{% ifversion fpt or ghec %} * {% data reusables.apps.maximum-oauth-apps-allowed %} {% endif %} * An {% data variables.product.prodname_oauth_app %} should always act as the authenticated {% data variables.product.prodname_dotcom %} user across all of {% data variables.product.prodname_dotcom %} (for example, when providing user notifications). * An {% data variables.product.prodname_oauth_app %} can be used as an identity provider by enabling a "Login with {% data variables.product.prodname_dotcom %}" for the authenticated user. * Don't build an {% data variables.product.prodname_oauth_app %} if you want your application to act on a single repository. With the `repo` OAuth scope, {% data variables.product.prodname_oauth_apps %} can act on _all_ of the authenticated user's repositories. -* Don't build an {% data variables.product.prodname_oauth_app %} to act as an application for your team or company. {% data variables.product.prodname_oauth_apps %} authenticate as a single user, so if one person creates an {% data variables.product.prodname_oauth_app %} for a company to use, and then they leave the company, no one else will have access to it.{% ifversion fpt %} +* Don't build an {% data variables.product.prodname_oauth_app %} to act as an application for your team or company. {% data variables.product.prodname_oauth_apps %} authenticate as a single user, so if one person creates an {% data variables.product.prodname_oauth_app %} for a company to use, and then they leave the company, no one else will have access to it.{% ifversion fpt or ghec %} * {% data reusables.apps.oauth-apps-restrictions %}{% endif %} For more on {% data variables.product.prodname_oauth_apps %}, see "[Creating an {% data variables.product.prodname_oauth_app %}](/apps/building-oauth-apps/creating-an-oauth-app/)" and "[Registering your app](/rest/guides/basics-of-authentication#registering-your-app)." @@ -83,12 +84,12 @@ Keep these ideas in mind when using personal access tokens: * You can perform one-off cURL requests. * You can run personal scripts. * Don't set up a script for your whole team or company to use. -* Don't set up a shared user account to act as a bot user.{% ifversion fpt or ghes > 3.2 or ghae-issue-4374 %} +* Don't set up a shared user account to act as a bot user.{% ifversion fpt or ghes > 3.2 or ghae-issue-4374 or ghec %} * Do set an expiration for your personal access tokens, to help keep your information secure.{% endif %} ## Determining which integration to build -Before you get started creating integrations, you need to determine the best way to access, authenticate, and interact with the {% data variables.product.prodname_dotcom %} APIs. The following image offers some questions to ask yourself when deciding whether to use personal access tokens, {% data variables.product.prodname_github_apps %}, or {% data variables.product.prodname_oauth_apps %} for your integration. +Before you get started creating integrations, you need to determine the best way to access, authenticate, and interact with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs. The following image offers some questions to ask yourself when deciding whether to use personal access tokens, {% data variables.product.prodname_github_apps %}, or {% data variables.product.prodname_oauth_apps %} for your integration. ![Intro to apps question flow](/assets/images/intro-to-apps-flow.png) diff --git a/content/developers/apps/getting-started-with-apps/activating-optional-features-for-apps.md b/content/developers/apps/getting-started-with-apps/activating-optional-features-for-apps.md index b7d0f3d82fdc..41045d3bb650 100644 --- a/content/developers/apps/getting-started-with-apps/activating-optional-features-for-apps.md +++ b/content/developers/apps/getting-started-with-apps/activating-optional-features-for-apps.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghae: '*' ghes: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Activate optional features diff --git a/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md b/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md index eb855a49a616..37d6d53b63ef 100644 --- a/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md +++ b/content/developers/apps/getting-started-with-apps/differences-between-github-apps-and-oauth-apps.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps - OAuth Apps @@ -60,7 +61,7 @@ An _authorized_ OAuth App has access to all of the user's or organization owner' | A GitHub App can request an installation access token by using a private key with a JSON web token format out-of-band. | An OAuth app can exchange a request token for an access token after a redirect via a web request. | | An installation token identifies the app as the GitHub Apps bot, such as @jenkins-bot. | An access token identifies the app as the user who granted the token to the app, such as @octocat. | | Installation tokens expire after a predefined amount of time (currently 1 hour). | OAuth tokens remain active until they're revoked by the customer. | -| {% data reusables.apps.api-rate-limits-non-ghec %}{% ifversion fpt %} Higher rate limits apply for {% data variables.product.prodname_ghe_cloud %}. For more information, see "[Rate limits for GitHub Apps](/developers/apps/rate-limits-for-github-apps)."{% endif %} | OAuth tokens use the user's rate limit of 5,000 requests per hour. | +| {% data reusables.apps.api-rate-limits-non-ghec %}{% ifversion fpt or ghec %} Higher rate limits apply for {% data variables.product.prodname_ghe_cloud %}. For more information, see "[Rate limits for GitHub Apps](/developers/apps/rate-limits-for-github-apps)."{% endif %} | OAuth tokens use the user's rate limit of 5,000 requests per hour. | | Rate limit increases can be granted both at the GitHub Apps level (affecting all installations) and at the individual installation level. | Rate limit increases are granted per OAuth App. Every token granted to that OAuth App gets the increased limit. | | {% data variables.product.prodname_github_apps %} can authenticate on behalf of the user, which is called user-to-server requests. The flow to authorize is the same as the OAuth App authorization flow. User-to-server tokens can expire and be renewed with a refresh token. For more information, see "[Refreshing user-to-server access tokens](/apps/building-github-apps/refreshing-user-to-server-access-tokens/)" and "[Identifying and authorizing users for GitHub Apps](/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/)." | The OAuth flow used by {% data variables.product.prodname_oauth_apps %} authorizes an {% data variables.product.prodname_oauth_app %} on behalf of the user. This is the same flow used in {% data variables.product.prodname_github_app %} user-to-server authorization. | diff --git a/content/developers/apps/getting-started-with-apps/index.md b/content/developers/apps/getting-started-with-apps/index.md index b13ace85eaa4..761aae3740b7 100644 --- a/content/developers/apps/getting-started-with-apps/index.md +++ b/content/developers/apps/getting-started-with-apps/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps children: diff --git a/content/developers/apps/getting-started-with-apps/migrating-oauth-apps-to-github-apps.md b/content/developers/apps/getting-started-with-apps/migrating-oauth-apps-to-github-apps.md index 65e60e927a52..81c514324b91 100644 --- a/content/developers/apps/getting-started-with-apps/migrating-oauth-apps-to-github-apps.md +++ b/content/developers/apps/getting-started-with-apps/migrating-oauth-apps-to-github-apps.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Migrate from OAuth Apps @@ -30,7 +31,7 @@ This article provides guidelines for existing integrators who are considering mi ## Converting an OAuth App to a GitHub App -These guidelines assume that you have a registered OAuth App{% ifversion fpt %} that may or may not be listed in GitHub Marketplace{% endif %}. At a high level, you'll need to follow these steps: +These guidelines assume that you have a registered OAuth App{% ifversion fpt or ghec %} that may or may not be listed in GitHub Marketplace{% endif %}. At a high level, you'll need to follow these steps: 1. [Review the available API endpoints for GitHub Apps](#review-the-available-api-endpoints-for-github-apps) 1. [Design to stay within API rate limits](#design-to-stay-within-api-rate-limits) @@ -45,13 +46,13 @@ These guidelines assume that you have a registered OAuth App{% ifversion fpt %} ### Review the available API endpoints for GitHub Apps -While the majority of [REST API](/rest) endpoints and [GraphQL](/graphql) queries are available to GitHub Apps today, we are still in the process of enabling some endpoints. Review the [available REST endpoints](/rest/overview/endpoints-available-for-github-apps) to ensure that the endpoints you need are compatible with GitHub Apps. Note that some of the API endpoints enabled for GitHub Apps allow the app to act on behalf of the user. See "[User-to-server requests](/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#user-to-server-requests)" for a list of endpoints that allow a GitHub App to authenticate as a user. +While the majority of [REST API](/rest) endpoints and [GraphQL]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql) queries are available to GitHub Apps today, we are still in the process of enabling some endpoints. Review the [available REST endpoints](/rest/overview/endpoints-available-for-github-apps) to ensure that the endpoints you need are compatible with GitHub Apps. Note that some of the API endpoints enabled for GitHub Apps allow the app to act on behalf of the user. See "[User-to-server requests](/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#user-to-server-requests)" for a list of endpoints that allow a GitHub App to authenticate as a user. We recommend reviewing the list of API endpoints you need as early as possible. Please let Support know if there is an endpoint you require that is not yet enabled for {% data variables.product.prodname_github_apps %}. ### Design to stay within API rate limits -GitHub Apps use [sliding rules for rate limits](/apps/building-github-apps/understanding-rate-limits-for-github-apps/), which can increase based on the number of repositories and users in the organization. A GitHub App can also make use of [conditional requests](/rest/overview/resources-in-the-rest-api#conditional-requests) or consolidate requests by using the [GraphQL API V4](/graphql). +GitHub Apps use [sliding rules for rate limits](/apps/building-github-apps/understanding-rate-limits-for-github-apps/), which can increase based on the number of repositories and users in the organization. A GitHub App can also make use of [conditional requests](/rest/overview/resources-in-the-rest-api#conditional-requests) or consolidate requests by using the [GraphQL API V4]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql). ### Register a new GitHub App diff --git a/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md b/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md index 36387893dc9b..16f88d7d7588 100644 --- a/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md +++ b/content/developers/apps/getting-started-with-apps/setting-up-your-development-environment-to-create-a-github-app.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Development environment @@ -16,7 +17,7 @@ shortTitle: Development environment This guide will walk through the steps needed to configure a GitHub App and run it on a server. GitHub Apps require some setup steps to manage webhook events and connect the app registration on GitHub to your code. The app in this guide serves as a foundation that you can use to extend and build new GitHub Apps. -By the end of this guide you'll have registered a GitHub App and set up a web server to receive webhook events. You'll learn how to use a tool called Smee to capture webhook payloads and forward them to your local development environment. The template app you'll configure in this section won't do anything special yet, but it will serve as a framework you can use to start writing app code using the API or complete other [quickstart guides](/apps/quickstart-guides/). {% ifversion fpt %}You can check out successful examples of apps on [GitHub Marketplace](https://github.com/marketplace) and [Works with GitHub](https://github.com/works-with).{% endif %} +By the end of this guide you'll have registered a GitHub App and set up a web server to receive webhook events. You'll learn how to use a tool called Smee to capture webhook payloads and forward them to your local development environment. The template app you'll configure in this section won't do anything special yet, but it will serve as a framework you can use to start writing app code using the API or complete other [quickstart guides](/apps/quickstart-guides/). {% ifversion fpt or ghec %}You can check out successful examples of apps on [GitHub Marketplace](https://github.com/marketplace) and [Works with GitHub](https://github.com/works-with).{% endif %} After completing this project you will understand how to authenticate as a GitHub App and an installation, and how those authentication methods are different. diff --git a/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md b/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md index fab313876bd8..aa31df3ec8cd 100644 --- a/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md +++ b/content/developers/apps/guides/creating-ci-tests-with-the-checks-api.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: CI tests using Checks API @@ -51,7 +52,7 @@ To get an idea of what your Checks API CI server will do when you've completed t ## Prerequisites -Before you get started, you may want to familiarize yourself with [GitHub Apps](/apps/), [Webhooks](/webhooks), and the [Checks API](/rest/reference/checks), if you're not already. You'll find more APIs in the [REST API docs](/rest). The Checks API is also available to use in [GraphQL](/graphql), but this quickstart focuses on REST. See the GraphQL [Checks Suite](/graphql/reference/objects#checksuite) and [Check Run](/graphql/reference/objects#checkrun) objects for more details. +Before you get started, you may want to familiarize yourself with [GitHub Apps](/apps/), [Webhooks](/webhooks), and the [Checks API](/rest/reference/checks), if you're not already. You'll find more APIs in the [REST API docs](/rest). The Checks API is also available to use in [GraphQL]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql), but this quickstart focuses on REST. See the GraphQL [Checks Suite]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#checksuite) and [Check Run]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#checkrun) objects for more details. You'll use the [Ruby programming language](https://www.ruby-lang.org/en/), the [Smee](https://smee.io/) webhook payload delivery service, the [Octokit.rb Ruby library](http://octokit.github.io/octokit.rb/) for the GitHub REST API, and the [Sinatra web framework](http://sinatrarb.com/) to create your Checks API CI server app. @@ -136,7 +137,7 @@ The `requested` action requests a check run each time code is pushed to the repo You'll add this new method as a [Sinatra helper](https://github.com/sinatra/sinatra#helpers) in case you want other routes to use it too. Under `helpers do`, add this `create_check_run` method: -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ``` ruby # Create a new check run with the status queued def create_check_run @@ -227,7 +228,7 @@ In this section, you're not going to kick off the CI test yet, but you'll walk t Let's create the `initiate_check_run` method and update the status of the check run. Add the following code to the helpers section: -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ``` ruby # Start the CI process def initiate_check_run @@ -586,7 +587,7 @@ text = "Octo RuboCop version: #{@output['metadata']['rubocop_version']}" Now you've got all the information you need to update your check run. In the [first half of this quickstart](#step-14-updating-a-check-run), you added this code to set the status of the check run to `success`: -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ``` ruby # Mark the check run as complete! @installation_client.update_check_run( @@ -612,7 +613,7 @@ Now you've got all the information you need to update your check run. In the [fi You'll need to update that code to use the `conclusion` variable you set based on the RuboCop results (to `success` or `neutral`). You can update the code with the following: -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ``` ruby # Mark the check run as complete! And if there are warnings, share them. @installation_client.update_check_run( @@ -660,7 +661,7 @@ You'll need to update that code to use the `conclusion` variable you set based o Now that you're setting a conclusion based on the status of the CI test and you've added the output from the RuboCop results, you've created a CI test! Congratulations. 🙌 -The code above also adds a feature to your CI server called [requested actions](https://developer.github.com/changes/2018-05-23-request-actions-on-checks/) via the `actions` object. {% ifversion fpt %}(Note this is not related to [GitHub Actions](/actions).) {% endif %}Requested actions add a button in the **Checks** tab on GitHub that allows someone to request the check run to take additional action. The additional action is completely configurable by your app. For example, because RuboCop has a feature to automatically fix the errors it finds in Ruby code, your CI server can use a requested actions button to allow people to request automatic error fixes. When someone clicks the button, the app receives the `check_run` event with a `requested_action` action. Each requested action has an `identifier` that the app uses to determine which button was clicked. +The code above also adds a feature to your CI server called [requested actions](https://developer.github.com/changes/2018-05-23-request-actions-on-checks/) via the `actions` object. {% ifversion fpt or ghec %}(Note this is not related to [GitHub Actions](/actions).) {% endif %}Requested actions add a button in the **Checks** tab on GitHub that allows someone to request the check run to take additional action. The additional action is completely configurable by your app. For example, because RuboCop has a feature to automatically fix the errors it finds in Ruby code, your CI server can use a requested actions button to allow people to request automatic error fixes. When someone clicks the button, the app receives the `check_run` event with a `requested_action` action. Each requested action has an `identifier` that the app uses to determine which button was clicked. The code above doesn't have RuboCop automatically fix errors yet. You'll add that in the next section. But first, take a look at the CI test that you just created by starting up the `template_server.rb` server again and creating a new pull request: diff --git a/content/developers/apps/guides/index.md b/content/developers/apps/guides/index.md index e372e7f6b826..4982239bab99 100644 --- a/content/developers/apps/guides/index.md +++ b/content/developers/apps/guides/index.md @@ -1,12 +1,13 @@ --- title: Guides -intro: 'Learn about using the {% data variables.product.prodname_dotcom %} API with your app, continuous integration, and how to build with apps.' +intro: 'Learn about using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API with your app, continuous integration, and how to build with apps.' redirect_from: - /apps/quickstart-guides versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps children: diff --git a/content/developers/apps/guides/using-content-attachments.md b/content/developers/apps/guides/using-content-attachments.md index f819dbb946b0..fa623003d52f 100644 --- a/content/developers/apps/guides/using-content-attachments.md +++ b/content/developers/apps/guides/using-content-attachments.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps --- @@ -120,7 +121,7 @@ curl -X "POST" "{% data variables.product.api_url_code %}/graphql" \ }' ``` -For more information on `node_id`, see "[Using Global Node IDs](/graphql/guides/using-global-node-ids)." +For more information on `node_id`, see "[Using Global Node IDs]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-global-node-ids)." ## Example using Probot and GitHub App Manifests diff --git a/content/developers/apps/guides/using-the-github-api-in-your-app.md b/content/developers/apps/guides/using-the-github-api-in-your-app.md index 3002cb8557fb..f3f5a3bfe5c9 100644 --- a/content/developers/apps/guides/using-the-github-api-in-your-app.md +++ b/content/developers/apps/guides/using-the-github-api-in-your-app.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Build an app with the REST API @@ -24,7 +25,7 @@ This project will walk you through the following: {% data reusables.apps.app-ruby-guides %} -Once you've worked through the steps, you'll be ready to develop other kinds of integrations using the full suite of GitHub APIs. {% ifversion fpt %}You can check out successful examples of apps on [GitHub Marketplace](https://github.com/marketplace) and [Works with GitHub](https://github.com/works-with).{% endif %} +Once you've worked through the steps, you'll be ready to develop other kinds of integrations using the full suite of GitHub APIs. {% ifversion fpt or ghec %}You can check out successful examples of apps on [GitHub Marketplace](https://github.com/marketplace) and [Works with GitHub](https://github.com/works-with).{% endif %} ## Prerequisites @@ -233,5 +234,5 @@ Here are some ideas for what you can do next: * When the bot successfully adds the label, show a message in the Terminal. (Hint: compare the `needs-response` label ID with the ID of the label in the payload as a condition for your message, so that the message only displays when the relevant label is added and not some other label.) * Add a landing page to your app and hook up a [Sinatra route](https://github.com/sinatra/sinatra#routes) for it. * Move your code to a hosted server (like Heroku). Don't forget to update your app settings with the new domain. -* Share your project or get advice in the {% data variables.product.prodname_support_forum_with_url %}{% ifversion fpt %} +* Share your project or get advice in the {% data variables.product.prodname_support_forum_with_url %}{% ifversion fpt or ghec %} * Have you built a shiny new app you think others might find useful? [Add it to GitHub Marketplace](/apps/marketplace/creating-and-submitting-your-app-for-approval/)!{% endif %} diff --git a/content/developers/apps/index.md b/content/developers/apps/index.md index fd565ebef41e..503d13ec26a4 100644 --- a/content/developers/apps/index.md +++ b/content/developers/apps/index.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps children: diff --git a/content/developers/apps/managing-github-apps/deleting-a-github-app.md b/content/developers/apps/managing-github-apps/deleting-a-github-app.md index 5532050302a3..aa781c128e57 100644 --- a/content/developers/apps/managing-github-apps/deleting-a-github-app.md +++ b/content/developers/apps/managing-github-apps/deleting-a-github-app.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps --- diff --git a/content/developers/apps/managing-github-apps/editing-a-github-apps-permissions.md b/content/developers/apps/managing-github-apps/editing-a-github-apps-permissions.md index 73fd1b615819..37e50aa9ec71 100644 --- a/content/developers/apps/managing-github-apps/editing-a-github-apps-permissions.md +++ b/content/developers/apps/managing-github-apps/editing-a-github-apps-permissions.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Edit permissions diff --git a/content/developers/apps/managing-github-apps/index.md b/content/developers/apps/managing-github-apps/index.md index ce5ae2b01567..3d6db3ef2ddd 100644 --- a/content/developers/apps/managing-github-apps/index.md +++ b/content/developers/apps/managing-github-apps/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps children: diff --git a/content/developers/apps/managing-github-apps/installing-github-apps.md b/content/developers/apps/managing-github-apps/installing-github-apps.md index 216867159d55..ec1cd9e4a83d 100644 --- a/content/developers/apps/managing-github-apps/installing-github-apps.md +++ b/content/developers/apps/managing-github-apps/installing-github-apps.md @@ -1,6 +1,6 @@ --- title: Installing GitHub Apps -intro: 'When your app is public, anyone can use {% ifversion fpt %} the {% data variables.product.prodname_marketplace %} or {% endif %}an installation URL to install the app on their repository. When your app is private, only you can install the app on repositories that you own.' +intro: 'When your app is public, anyone can use {% ifversion fpt or ghec %} the {% data variables.product.prodname_marketplace %} or {% endif %}an installation URL to install the app on their repository. When your app is private, only you can install the app on repositories that you own.' redirect_from: - /apps/installing-github-apps - /developers/apps/installing-github-apps @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps --- @@ -28,7 +29,7 @@ Once you create a private GitHub App, you can install it on one of your org or u ![App installation permissions](/assets/images/install_permissions.png) 5. Once installed, you will see configuration options for the app on your selected account. You can make changes here, or repeat the previous steps to install the app on another account. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Offering your app in the GitHub Marketplace You can offer a paid or free version of your app in [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace), where people can search for and view details about your app. {% data variables.product.prodname_marketplace %} automatically installs a GitHub App when an order is complete. diff --git a/content/developers/apps/managing-github-apps/making-a-github-app-public-or-private.md b/content/developers/apps/managing-github-apps/making-a-github-app-public-or-private.md index a061302fd52c..0084538bd726 100644 --- a/content/developers/apps/managing-github-apps/making-a-github-app-public-or-private.md +++ b/content/developers/apps/managing-github-apps/making-a-github-app-public-or-private.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Manage app visibility @@ -24,7 +25,7 @@ Public installation flows have a landing page to enable other people besides the ## Private installation flow -Private installation flows allow only the owner of a GitHub App to install it. Limited information about the GitHub App will still exist on a public page, but the **Install** button will only be available to organization administrators or the user account if the GitHub App is owned by an individual account. {% ifversion fpt or ghes > 3.1 or ghae-next %}Private {% else %}Private (also known as internal){% endif %} GitHub Apps can only be installed on the user or organization account of the owner. +Private installation flows allow only the owner of a GitHub App to install it. Limited information about the GitHub App will still exist on a public page, but the **Install** button will only be available to organization administrators or the user account if the GitHub App is owned by an individual account. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}Private {% else %}Private (also known as internal){% endif %} GitHub Apps can only be installed on the user or organization account of the owner. ## Changing who can install your GitHub App @@ -36,7 +37,7 @@ To change who can install the GitHub App: 3. Select the GitHub App whose installation option you want to change. ![App selection](/assets/images/github-apps/github_apps_select-app.png) {% data reusables.user-settings.github_apps_advanced %} -5. Depending on the installation option of your GitHub App, click either **Make public** or **Make {% ifversion fpt or ghes > 3.1 or ghae-next %}private{% else %}internal{% endif %}**. +5. Depending on the installation option of your GitHub App, click either **Make public** or **Make {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}private{% else %}internal{% endif %}**. ![Button to change the installation option of your GitHub App](/assets/images/github-apps/github_apps_make_public.png) -6. Depending on the installation option of your GitHub App, click either **Yes, make this GitHub App public** or **Yes, make this GitHub App {% ifversion fpt or ghes < 3.2 %}internal{% else %}private{% endif %}**. +6. Depending on the installation option of your GitHub App, click either **Yes, make this GitHub App public** or **Yes, make this GitHub App {% ifversion fpt or ghes < 3.2 or ghec %}internal{% else %}private{% endif %}**. ![Button to confirm the change of your installation option](/assets/images/github-apps/github_apps_confirm_installation_option.png) diff --git a/content/developers/apps/managing-github-apps/modifying-a-github-app.md b/content/developers/apps/managing-github-apps/modifying-a-github-app.md index a4e5d4b71855..ea7c89df667f 100644 --- a/content/developers/apps/managing-github-apps/modifying-a-github-app.md +++ b/content/developers/apps/managing-github-apps/modifying-a-github-app.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps --- diff --git a/content/developers/apps/managing-github-apps/suspending-a-github-app-installation.md b/content/developers/apps/managing-github-apps/suspending-a-github-app-installation.md index 9e0a500eb9aa..85aa09647bd2 100644 --- a/content/developers/apps/managing-github-apps/suspending-a-github-app-installation.md +++ b/content/developers/apps/managing-github-apps/suspending-a-github-app-installation.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Suspend app installation diff --git a/content/developers/apps/managing-github-apps/transferring-ownership-of-a-github-app.md b/content/developers/apps/managing-github-apps/transferring-ownership-of-a-github-app.md index cad4f625e78b..793b3c1eaa5b 100644 --- a/content/developers/apps/managing-github-apps/transferring-ownership-of-a-github-app.md +++ b/content/developers/apps/managing-github-apps/transferring-ownership-of-a-github-app.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Transfer ownership diff --git a/content/developers/apps/managing-oauth-apps/deleting-an-oauth-app.md b/content/developers/apps/managing-oauth-apps/deleting-an-oauth-app.md index adb92468532d..ab3375236cb5 100644 --- a/content/developers/apps/managing-oauth-apps/deleting-an-oauth-app.md +++ b/content/developers/apps/managing-oauth-apps/deleting-an-oauth-app.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps --- diff --git a/content/developers/apps/managing-oauth-apps/index.md b/content/developers/apps/managing-oauth-apps/index.md index 6c1d8fa11901..be40be63a938 100644 --- a/content/developers/apps/managing-oauth-apps/index.md +++ b/content/developers/apps/managing-oauth-apps/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps children: diff --git a/content/developers/apps/managing-oauth-apps/modifying-an-oauth-app.md b/content/developers/apps/managing-oauth-apps/modifying-an-oauth-app.md index 9d5e9073c8bd..ba25b2dd34af 100644 --- a/content/developers/apps/managing-oauth-apps/modifying-an-oauth-app.md +++ b/content/developers/apps/managing-oauth-apps/modifying-an-oauth-app.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps --- diff --git a/content/developers/apps/managing-oauth-apps/transferring-ownership-of-an-oauth-app.md b/content/developers/apps/managing-oauth-apps/transferring-ownership-of-an-oauth-app.md index 607dd57c560c..7748842b9aae 100644 --- a/content/developers/apps/managing-oauth-apps/transferring-ownership-of-an-oauth-app.md +++ b/content/developers/apps/managing-oauth-apps/transferring-ownership-of-an-oauth-app.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps shortTitle: Transfer ownership diff --git a/content/developers/apps/managing-oauth-apps/troubleshooting-authorization-request-errors.md b/content/developers/apps/managing-oauth-apps/troubleshooting-authorization-request-errors.md index a7ee9e1aecfc..d17a3df3657a 100644 --- a/content/developers/apps/managing-oauth-apps/troubleshooting-authorization-request-errors.md +++ b/content/developers/apps/managing-oauth-apps/troubleshooting-authorization-request-errors.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub Apps shortTitle: Troubleshoot authorization diff --git a/content/developers/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors.md b/content/developers/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors.md index 58cf58fe50f9..4b010076cced 100644 --- a/content/developers/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors.md +++ b/content/developers/apps/managing-oauth-apps/troubleshooting-oauth-app-access-token-request-errors.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - OAuth Apps shortTitle: Troubleshoot token request diff --git a/content/developers/github-marketplace/creating-apps-for-github-marketplace/customer-experience-best-practices-for-apps.md b/content/developers/github-marketplace/creating-apps-for-github-marketplace/customer-experience-best-practices-for-apps.md index 22eca02a596a..995d23703be0 100644 --- a/content/developers/github-marketplace/creating-apps-for-github-marketplace/customer-experience-best-practices-for-apps.md +++ b/content/developers/github-marketplace/creating-apps-for-github-marketplace/customer-experience-best-practices-for-apps.md @@ -4,6 +4,7 @@ intro: Guidelines for creating an app that will be easy to use and understand. shortTitle: Customer experience best practice versions: fpt: '*' + ghec: '*' topics: - Marketplace redirect_from: diff --git a/content/developers/github-marketplace/creating-apps-for-github-marketplace/index.md b/content/developers/github-marketplace/creating-apps-for-github-marketplace/index.md index 153fb3112078..56eff6036a4a 100644 --- a/content/developers/github-marketplace/creating-apps-for-github-marketplace/index.md +++ b/content/developers/github-marketplace/creating-apps-for-github-marketplace/index.md @@ -3,6 +3,7 @@ title: Creating apps for GitHub Marketplace intro: 'You can list free and paid tools for developers to use in {% data variables.product.prodname_marketplace %}.' versions: fpt: '*' + ghec: '*' topics: - Marketplace children: diff --git a/content/developers/github-marketplace/creating-apps-for-github-marketplace/requirements-for-listing-an-app.md b/content/developers/github-marketplace/creating-apps-for-github-marketplace/requirements-for-listing-an-app.md index 41246fff6d82..ea47b4b45a93 100644 --- a/content/developers/github-marketplace/creating-apps-for-github-marketplace/requirements-for-listing-an-app.md +++ b/content/developers/github-marketplace/creating-apps-for-github-marketplace/requirements-for-listing-an-app.md @@ -11,6 +11,7 @@ redirect_from: - /developers/github-marketplace/requirements-for-listing-an-app versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Listing requirements @@ -21,7 +22,7 @@ The requirements for listing an app on {% data variables.product.prodname_market ## Requirements for all {% data variables.product.prodname_marketplace %} listings -All listings on {% data variables.product.prodname_marketplace %} should be for tools that provide value to the {% data variables.product.product_name %} community. When you submit your listing for publication, you must read and accept the terms of the "[{% data variables.product.prodname_marketplace %} Developer Agreement](/articles/github-marketplace-developer-agreement/)." +All listings on {% data variables.product.prodname_marketplace %} should be for tools that provide value to the {% data variables.product.product_name %} community. When you submit your listing for publication, you must read and accept the terms of the "[{% data variables.product.prodname_marketplace %} Developer Agreement](/free-pro-team@latest/github/site-policy/github-marketplace-developer-agreement)." ### User experience requirements for all apps @@ -73,7 +74,7 @@ When you are ready to publish the app on {% data variables.product.prodname_mark Your app does not need to handle payments but does need to use {% data variables.product.prodname_marketplace %} purchase events to manage new purchases, upgrades, downgrades, cancellations, and free trials. For information about how integrate these events into your app, see "[Using the {% data variables.product.prodname_marketplace %} API in your app](/developers/github-marketplace/using-the-github-marketplace-api-in-your-app)." -Using GitHub's billing API allows customers to purchase an app without leaving GitHub and to pay for the service with the payment method already attached to their {% data variables.product.product_name %} account. +Using GitHub's billing API allows customers to purchase an app without leaving GitHub and to pay for the service with the payment method already attached to their account on {% data variables.product.product_location %}. - Apps must support both monthly and annual billing for paid subscriptions purchases. - Listings may offer any combination of free and paid plans. Free plans are optional but encouraged. For more information, see "[Setting a {% data variables.product.prodname_marketplace %} listing's pricing plan](/marketplace/listing-on-github-marketplace/setting-a-github-marketplace-listing-s-pricing-plan/)." diff --git a/content/developers/github-marketplace/creating-apps-for-github-marketplace/security-best-practices-for-apps.md b/content/developers/github-marketplace/creating-apps-for-github-marketplace/security-best-practices-for-apps.md index e62e45ccabae..969a9f1faf5e 100644 --- a/content/developers/github-marketplace/creating-apps-for-github-marketplace/security-best-practices-for-apps.md +++ b/content/developers/github-marketplace/creating-apps-for-github-marketplace/security-best-practices-for-apps.md @@ -9,6 +9,7 @@ redirect_from: shortTitle: Security best practice versions: fpt: '*' + ghec: '*' topics: - Marketplace --- diff --git a/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-metrics-for-your-listing.md b/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-metrics-for-your-listing.md index 697bcc3805ad..c0249190f103 100644 --- a/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-metrics-for-your-listing.md +++ b/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-metrics-for-your-listing.md @@ -9,6 +9,7 @@ redirect_from: - /developers/github-marketplace/viewing-metrics-for-your-listing versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: View listing metrics diff --git a/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md b/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md index 57a0fc6fc312..d44f76c58cb9 100644 --- a/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md +++ b/content/developers/github-marketplace/creating-apps-for-github-marketplace/viewing-transactions-for-your-listing.md @@ -6,6 +6,7 @@ redirect_from: - /developers/github-marketplace/viewing-transactions-for-your-listing versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: View listing transactions diff --git a/content/developers/github-marketplace/github-marketplace-overview/about-github-marketplace.md b/content/developers/github-marketplace/github-marketplace-overview/about-github-marketplace.md index 8282db985dff..9b9bc6f64635 100644 --- a/content/developers/github-marketplace/github-marketplace-overview/about-github-marketplace.md +++ b/content/developers/github-marketplace/github-marketplace-overview/about-github-marketplace.md @@ -7,6 +7,7 @@ redirect_from: - /developers/github-marketplace/about-github-marketplace versions: fpt: '*' + ghec: '*' topics: - Marketplace --- @@ -48,7 +49,7 @@ When you have finished creating your app, you can share it with other users by p 1. Add a pricing plan. For more information, see "[Setting pricing plans for your listing](/developers/github-marketplace/setting-pricing-plans-for-your-listing)." -1. Read and accept the terms of the "[{% data variables.product.prodname_marketplace %} Developer Agreement](/articles/github-marketplace-developer-agreement/)." +1. Read and accept the terms of the "[{% data variables.product.prodname_marketplace %} Developer Agreement](/free-pro-team@latest/github/site-policy/github-marketplace-developer-agreement." 1. Submit your listing for publication in {% data variables.product.prodname_marketplace %}. For more information, see "[Submitting your listing for publication](/developers/github-marketplace/submitting-your-listing-for-publication)." diff --git a/content/developers/github-marketplace/github-marketplace-overview/about-marketplace-badges.md b/content/developers/github-marketplace/github-marketplace-overview/about-marketplace-badges.md index 512066032ce7..73cee3494cbb 100644 --- a/content/developers/github-marketplace/github-marketplace-overview/about-marketplace-badges.md +++ b/content/developers/github-marketplace/github-marketplace-overview/about-marketplace-badges.md @@ -6,6 +6,7 @@ redirect_from: - /developers/github-marketplace/about-marketplace-badges versions: fpt: '*' + ghec: '*' --- ## For GitHub Apps diff --git a/content/developers/github-marketplace/github-marketplace-overview/applying-for-publisher-verification-for-your-organization.md b/content/developers/github-marketplace/github-marketplace-overview/applying-for-publisher-verification-for-your-organization.md index 79a4686c0dc1..d7dc0c4266bc 100644 --- a/content/developers/github-marketplace/github-marketplace-overview/applying-for-publisher-verification-for-your-organization.md +++ b/content/developers/github-marketplace/github-marketplace-overview/applying-for-publisher-verification-for-your-organization.md @@ -3,6 +3,7 @@ title: Applying for publisher verification for your organization intro: 'To offer paid plans for your app or to include a marketplace badge in your app listing, you must complete the publisher verification process for your organization.' versions: fpt: '*' + ghec: '*' topics: - Marketplace redirect_from: diff --git a/content/developers/github-marketplace/github-marketplace-overview/index.md b/content/developers/github-marketplace/github-marketplace-overview/index.md index be8d4611d14f..a478d03e3647 100644 --- a/content/developers/github-marketplace/github-marketplace-overview/index.md +++ b/content/developers/github-marketplace/github-marketplace-overview/index.md @@ -3,6 +3,7 @@ title: GitHub Marketplace Overview intro: 'Learn how you can share your app or action with the {% data variables.product.company_short %} community on {% data variables.product.prodname_marketplace %}.' versions: fpt: '*' + ghec: '*' children: - /about-github-marketplace - /about-marketplace-badges diff --git a/content/developers/github-marketplace/index.md b/content/developers/github-marketplace/index.md index a0445206d30a..99e2eac7425c 100644 --- a/content/developers/github-marketplace/index.md +++ b/content/developers/github-marketplace/index.md @@ -7,6 +7,7 @@ redirect_from: - /marketplace versions: fpt: '*' + ghec: '*' topics: - Marketplace children: diff --git a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/configuring-a-webhook-to-notify-you-of-plan-changes.md b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/configuring-a-webhook-to-notify-you-of-plan-changes.md index 47d0d686fb87..a76a97d5a292 100644 --- a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/configuring-a-webhook-to-notify-you-of-plan-changes.md +++ b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/configuring-a-webhook-to-notify-you-of-plan-changes.md @@ -10,6 +10,7 @@ redirect_from: - /developers/github-marketplace/configuring-a-webhook-to-notify-you-of-plan-changes versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Webhooks for plan changes diff --git a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md index e7a5397eeaa4..aa4da09c04c6 100644 --- a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md +++ b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/drafting-a-listing-for-your-app.md @@ -15,6 +15,7 @@ redirect_from: - /developers/github-marketplace/drafting-a-listing-for-your-app versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Draft an app listing @@ -60,7 +61,7 @@ Once you've created a {% data variables.product.prodname_marketplace %} draft li ## Submitting your app -Once you've completed your {% data variables.product.prodname_marketplace %} listing, you can submit your listing for review from the **Overview** page. You'll need to read and accept the "[{% data variables.product.prodname_marketplace %} Developer Agreement](/articles/github-marketplace-developer-agreement/)," and then you can click **Submit for review**. After you submit your app for review, an onboarding expert will contact you with additional information about the onboarding process. +Once you've completed your {% data variables.product.prodname_marketplace %} listing, you can submit your listing for review from the **Overview** page. You'll need to read and accept the "[{% data variables.product.prodname_marketplace %} Developer Agreement](/free-pro-team@latest/github/site-policy/github-marketplace-developer-agreement/)," and then you can click **Submit for review**. After you submit your app for review, an onboarding expert will contact you with additional information about the onboarding process. ## Removing a {% data variables.product.prodname_marketplace %} listing diff --git a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/index.md b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/index.md index 8777e1791f4f..357714f8534a 100644 --- a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/index.md +++ b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/index.md @@ -12,6 +12,7 @@ redirect_from: - /marketplace/listing-on-github-marketplace versions: fpt: '*' + ghec: '*' topics: - Marketplace children: diff --git a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/setting-pricing-plans-for-your-listing.md b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/setting-pricing-plans-for-your-listing.md index 22d104757026..ed40344b6535 100644 --- a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/setting-pricing-plans-for-your-listing.md +++ b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/setting-pricing-plans-for-your-listing.md @@ -16,6 +16,7 @@ redirect_from: - /developers/github-marketplace/setting-pricing-plans-for-your-listing versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Set listing pricing plans diff --git a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/submitting-your-listing-for-publication.md b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/submitting-your-listing-for-publication.md index 6748e60e8706..bec0dc2b5dbd 100644 --- a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/submitting-your-listing-for-publication.md +++ b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/submitting-your-listing-for-publication.md @@ -7,6 +7,7 @@ redirect_from: - /developers/github-marketplace/submitting-your-listing-for-publication versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Submit your listing diff --git a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md index 6abdef12296a..1905ce84460e 100644 --- a/content/developers/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md +++ b/content/developers/github-marketplace/listing-an-app-on-github-marketplace/writing-a-listing-description-for-your-app.md @@ -13,6 +13,7 @@ redirect_from: - /developers/github-marketplace/writing-a-listing-description-for-your-app versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Write listing descriptions @@ -23,7 +24,7 @@ Here are guidelines about the fields you'll need to fill out in the **Listing de ### Listing name -Your listing's name will appear on the [{% data variables.product.prodname_marketplace %} homepage](https://github.com/marketplace). The name is limited to 255 characters and can be different from your app's name. Your listing cannot have the same name as an existing {% data variables.product.product_name %} account, unless the name is your own user or organization name. +Your listing's name will appear on the [{% data variables.product.prodname_marketplace %} homepage](https://github.com/marketplace). The name is limited to 255 characters and can be different from your app's name. Your listing cannot have the same name as an existing account on {% data variables.product.product_location %}, unless the name is your own user or organization name. ### Very short description diff --git a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/billing-customers.md b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/billing-customers.md index 05ca314c5bc9..48b22dc39e86 100644 --- a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/billing-customers.md +++ b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/billing-customers.md @@ -8,6 +8,7 @@ redirect_from: - /developers/github-marketplace/billing-customers versions: fpt: '*' + ghec: '*' topics: - Marketplace --- diff --git a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/index.md b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/index.md index e5fc13926fb8..469dfb1e9dad 100644 --- a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/index.md +++ b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/index.md @@ -10,6 +10,7 @@ redirect_from: - /marketplace/selling-your-app versions: fpt: '*' + ghec: '*' topics: - Marketplace children: diff --git a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/pricing-plans-for-github-marketplace-apps.md b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/pricing-plans-for-github-marketplace-apps.md index b1e220597a0d..999f345c3d0e 100644 --- a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/pricing-plans-for-github-marketplace-apps.md +++ b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/pricing-plans-for-github-marketplace-apps.md @@ -7,13 +7,14 @@ redirect_from: - /developers/github-marketplace/pricing-plans-for-github-marketplace-apps versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Pricing plans for apps --- {% data variables.product.prodname_marketplace %} pricing plans can be free, flat rate, or per-unit. Prices are set, displayed, and processed in US dollars. Paid plans are restricted to apps published by verified publishers. For more information about becoming a verified publisher, see "[Applying for publisher verification for your organization](/developers/github-marketplace/applying-for-publisher-verification-for-your-organization)." -Customers purchase your app using a payment method attached to their {% data variables.product.product_name %} account, without having to leave {% data variables.product.prodname_dotcom_the_website %}. You don't have to write code to perform billing transactions, but you will have to handle events from the {% data variables.product.prodname_marketplace %} API. For more information, see "[Using the {% data variables.product.prodname_marketplace %} API in your app](/developers/github-marketplace/using-the-github-marketplace-api-in-your-app)." +Customers purchase your app using a payment method attached to their account on {% data variables.product.product_location %}, without having to leave {% data variables.product.prodname_dotcom_the_website %}. You don't have to write code to perform billing transactions, but you will have to handle events from the {% data variables.product.prodname_marketplace %} API. For more information, see "[Using the {% data variables.product.prodname_marketplace %} API in your app](/developers/github-marketplace/using-the-github-marketplace-api-in-your-app)." If the app you're listing on {% data variables.product.prodname_marketplace %} has multiple plan options, you can set up corresponding pricing plans. For example, if your app has two plan options, an open source plan and a pro plan, you can set up a free pricing plan for your open source plan and a flat pricing plan for your pro plan. Each {% data variables.product.prodname_marketplace %} listing must have an annual and a monthly price for every plan that's listed. diff --git a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/receiving-payment-for-app-purchases.md b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/receiving-payment-for-app-purchases.md index 9c1d9b50b9ef..e935d2a0e956 100644 --- a/content/developers/github-marketplace/selling-your-app-on-github-marketplace/receiving-payment-for-app-purchases.md +++ b/content/developers/github-marketplace/selling-your-app-on-github-marketplace/receiving-payment-for-app-purchases.md @@ -10,6 +10,7 @@ redirect_from: - /developers/github-marketplace/receiving-payment-for-app-purchases versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Receive payment @@ -22,6 +23,6 @@ For transactions made before January 1, 2021, {% data variables.product.company_ {% note %} -**Note:** For details of the current pricing and payment terms, see "[{% data variables.product.prodname_marketplace %} developer agreement](/github/site-policy/github-marketplace-developer-agreement)." +**Note:** For details of the current pricing and payment terms, see "[{% data variables.product.prodname_marketplace %} developer agreement](/free-pro-team@latest/github/site-policy/github-marketplace-developer-agreement)." {% endnote %} diff --git a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-new-purchases-and-free-trials.md b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-new-purchases-and-free-trials.md index 068eb037d88c..bc99d680d1a3 100644 --- a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-new-purchases-and-free-trials.md +++ b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-new-purchases-and-free-trials.md @@ -9,6 +9,7 @@ redirect_from: - /developers/github-marketplace/handling-new-purchases-and-free-trials versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: New purchases & free trials diff --git a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-cancellations.md b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-cancellations.md index 74566707594e..abd181ceebe1 100644 --- a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-cancellations.md +++ b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-cancellations.md @@ -8,6 +8,7 @@ redirect_from: - /developers/github-marketplace/handling-plan-cancellations versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Plan cancellations diff --git a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-changes.md b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-changes.md index d19ba33654d4..5f150be45bcd 100644 --- a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-changes.md +++ b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/handling-plan-changes.md @@ -8,6 +8,7 @@ redirect_from: - /developers/github-marketplace/handling-plan-changes versions: fpt: '*' + ghec: '*' topics: - Marketplace --- diff --git a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/index.md b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/index.md index ca8a451d2149..42b53d329296 100644 --- a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/index.md +++ b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/index.md @@ -7,6 +7,7 @@ redirect_from: - /marketplace/integrating-with-the-github-marketplace-api versions: fpt: '*' + ghec: '*' topics: - Marketplace children: diff --git a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md index 6f455e6b6b4f..73a62b01619d 100644 --- a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md +++ b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/rest-endpoints-for-the-github-marketplace-api.md @@ -8,6 +8,7 @@ redirect_from: - /developers/github-marketplace/rest-endpoints-for-the-github-marketplace-api versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: REST API diff --git a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/testing-your-app.md b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/testing-your-app.md index 4ce4c54550da..258679dd7646 100644 --- a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/testing-your-app.md +++ b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/testing-your-app.md @@ -8,6 +8,7 @@ redirect_from: - /developers/github-marketplace/testing-your-app versions: fpt: '*' + ghec: '*' topics: - Marketplace --- diff --git a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/webhook-events-for-the-github-marketplace-api.md b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/webhook-events-for-the-github-marketplace-api.md index 5d49cb9945f2..09d39b815f76 100644 --- a/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/webhook-events-for-the-github-marketplace-api.md +++ b/content/developers/github-marketplace/using-the-github-marketplace-api-in-your-app/webhook-events-for-the-github-marketplace-api.md @@ -8,6 +8,7 @@ redirect_from: - /developers/github-marketplace/webhook-events-for-the-github-marketplace-api versions: fpt: '*' + ghec: '*' topics: - Marketplace shortTitle: Webhook events diff --git a/content/developers/index.md b/content/developers/index.md index a1785f0d76aa..742e708baf54 100644 --- a/content/developers/index.md +++ b/content/developers/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /overview - /webhooks-and-events diff --git a/content/developers/overview/about-githubs-apis.md b/content/developers/overview/about-githubs-apis.md index 9a4a6788a6bb..12b1d16b61d2 100644 --- a/content/developers/overview/about-githubs-apis.md +++ b/content/developers/overview/about-githubs-apis.md @@ -7,11 +7,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- -There are two stable versions of the GitHub API: the [REST API](/rest) and the [GraphQL API](/graphql). When using the REST API, we encourage you to [request v3 via the `Accept` header](/v3/media/#request-specific-version). For information on using the GraphQL API, see the [v4 docs](/graphql). +There are two stable versions of the GitHub API: the [REST API](/rest) and the [GraphQL API]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql). When using the REST API, we encourage you to [request v3 via the `Accept` header](/v3/media/#request-specific-version). For information on using the GraphQL API, see the [v4 docs]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql). ## Deprecated versions diff --git a/content/developers/overview/github-developer-program.md b/content/developers/overview/github-developer-program.md index efbb87951f09..6042fa838299 100644 --- a/content/developers/overview/github-developer-program.md +++ b/content/developers/overview/github-developer-program.md @@ -5,6 +5,7 @@ redirect_from: - /program versions: fpt: '*' + ghec: '*' topics: - API --- diff --git a/content/developers/overview/index.md b/content/developers/overview/index.md index 5c834b8cad08..64ed47c29794 100644 --- a/content/developers/overview/index.md +++ b/content/developers/overview/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-githubs-apis - /managing-deploy-keys diff --git a/content/developers/overview/managing-deploy-keys.md b/content/developers/overview/managing-deploy-keys.md index 903e6018b3e7..3fb0226641e6 100644 --- a/content/developers/overview/managing-deploy-keys.md +++ b/content/developers/overview/managing-deploy-keys.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -94,23 +95,23 @@ If you use multiple repositories on one server, you will need to generate a dedi In the server's SSH configuration file (usually `~/.ssh/config`), add an alias entry for each repository. For example: ```bash -Host {% ifversion fpt %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-0 - Hostname {% ifversion fpt %}github.com{% else %}my-GHE-hostname.com{% endif %} +Host {% ifversion fpt or ghec %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-0 + Hostname {% ifversion fpt or ghec %}github.com{% else %}my-GHE-hostname.com{% endif %} IdentityFile=/home/user/.ssh/repo-0_deploy_key -Host {% ifversion fpt %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-1 - Hostname {% ifversion fpt %}github.com{% else %}my-GHE-hostname.com{% endif %} +Host {% ifversion fpt or ghec %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-1 + Hostname {% ifversion fpt or ghec %}github.com{% else %}my-GHE-hostname.com{% endif %} IdentityFile=/home/user/.ssh/repo-1_deploy_key ``` -* `Host {% ifversion fpt %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-0` - The repository's alias. -* `Hostname {% ifversion fpt %}github.com{% else %}my-GHE-hostname.com{% endif %}` - Configures the hostname to use with the alias. +* `Host {% ifversion fpt or ghec %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-0` - The repository's alias. +* `Hostname {% ifversion fpt or ghec %}github.com{% else %}my-GHE-hostname.com{% endif %}` - Configures the hostname to use with the alias. * `IdentityFile=/home/user/.ssh/repo-0_deploy_key` - Assigns a private key to the alias. You can then use the hostname's alias to interact with the repository using SSH, which will use the unique deploy key assigned to that alias. For example: ```bash -$ git clone git@{% ifversion fpt %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-1:OWNER/repo-1.git +$ git clone git@{% ifversion fpt or ghec %}github.com{% else %}my-GHE-hostname.com{% endif %}-repo-1:OWNER/repo-1.git ``` ## Server-to-server tokens @@ -145,9 +146,9 @@ Since GitHub Apps are a first class actor on {% data variables.product.product_ ## Machine users -If your server needs to access multiple repositories, you can create a new {% data variables.product.product_name %} account and attach an SSH key that will be used exclusively for automation. Since this {% data variables.product.product_name %} account won't be used by a human, it's called a _machine user_. You can add the machine user as a [collaborator][collaborator] on a personal repository (granting read and write access), as an [outside collaborator][outside-collaborator] on an organization repository (granting read, write, or admin access), or to a [team][team] with access to the repositories it needs to automate (granting the permissions of the team). +If your server needs to access multiple repositories, you can create a new account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} and attach an SSH key that will be used exclusively for automation. Since this account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} won't be used by a human, it's called a _machine user_. You can add the machine user as a [collaborator][collaborator] on a personal repository (granting read and write access), as an [outside collaborator][outside-collaborator] on an organization repository (granting read, write, or admin access), or to a [team][team] with access to the repositories it needs to automate (granting the permissions of the team). -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% tip %} @@ -179,7 +180,7 @@ This means that you cannot automate the creation of accounts. But if you want to [ssh-agent-forwarding]: /guides/using-ssh-agent-forwarding/ [generating-ssh-keys]: /articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#generating-a-new-ssh-key -[tos]: /articles/github-terms-of-service/ +[tos]: /free-pro-team@latest/github/site-policy/github-terms-of-service/ [git-automation]: /articles/git-automation-with-oauth-tokens [collaborator]: /articles/inviting-collaborators-to-a-personal-repository [outside-collaborator]: /articles/adding-outside-collaborators-to-repositories-in-your-organization diff --git a/content/developers/overview/replacing-github-services.md b/content/developers/overview/replacing-github-services.md index f73fb54760c4..c06372a4515b 100644 --- a/content/developers/overview/replacing-github-services.md +++ b/content/developers/overview/replacing-github-services.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - API --- diff --git a/content/developers/overview/secret-scanning-partner-program.md b/content/developers/overview/secret-scanning-partner-program.md index a5097738885c..a67ec0063159 100644 --- a/content/developers/overview/secret-scanning-partner-program.md +++ b/content/developers/overview/secret-scanning-partner-program.md @@ -8,6 +8,7 @@ redirect_from: - /developers/overview/secret-scanning versions: fpt: '*' + ghec: '*' topics: - API shortTitle: Secret scanning diff --git a/content/developers/overview/using-ssh-agent-forwarding.md b/content/developers/overview/using-ssh-agent-forwarding.md index 6ba90db5a70e..d2aa9b253b0a 100644 --- a/content/developers/overview/using-ssh-agent-forwarding.md +++ b/content/developers/overview/using-ssh-agent-forwarding.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: SSH agent forwarding diff --git a/content/developers/webhooks-and-events/events/github-event-types.md b/content/developers/webhooks-and-events/events/github-event-types.md index 16a2b8e66853..9fc83a14a908 100644 --- a/content/developers/webhooks-and-events/events/github-event-types.md +++ b/content/developers/webhooks-and-events/events/github-event-types.md @@ -9,12 +9,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Events --- The Events API can return different types of events triggered by activity on GitHub. Each event response contains shared properties, but has a unique `payload` object determined by its event type. The [Event object common properties](#event-object-common-properties) describes the properties shared by all events, and each event type describes the `payload` properties that are unique to the specific event. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% endif %} @@ -163,7 +164,7 @@ Link: ; rel="next", {% data reusables.webhooks.member_event_api_properties %} {% data reusables.webhooks.member_properties %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## PublicEvent {% data reusables.webhooks.public_short_desc %} @@ -243,7 +244,7 @@ Key | Type | Description {% data reusables.webhooks.release_event_api_properties %} {% data reusables.webhooks.release_properties %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## SponsorshipEvent {% data reusables.webhooks.sponsorship_short_desc %} diff --git a/content/developers/webhooks-and-events/events/index.md b/content/developers/webhooks-and-events/events/index.md index 36c7d582c4bf..01884a2d6862 100644 --- a/content/developers/webhooks-and-events/events/index.md +++ b/content/developers/webhooks-and-events/events/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Events children: diff --git a/content/developers/webhooks-and-events/events/issue-event-types.md b/content/developers/webhooks-and-events/events/issue-event-types.md index d75582046113..0720e6a62ec7 100644 --- a/content/developers/webhooks-and-events/events/issue-event-types.md +++ b/content/developers/webhooks-and-events/events/issue-event-types.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Events --- @@ -130,7 +131,7 @@ Name | Type | Description `html_url` | `string` | The HTML URL of the issue comment. `issue_url` | `string` | The HTML URL of the issue. `id` | `integer` | The unique identifier of the event. -`node_id` | `string` | The [Global Node ID](/graphql/guides/using-global-node-ids) of the event. +`node_id` | `string` | The [Global Node ID]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-global-node-ids) of the event. `user` | `object` | The person who commented on the issue. `created_at` | `string` | The timestamp indicating when the comment was added. `updated_at` | `string` | The timestamp indicating when the comment was updated or created, if the comment is never updated. @@ -156,7 +157,7 @@ A commit was added to the pull request's `HEAD` branch. Name | Type | Description -----|------|-------------- `sha` | `string` | The SHA of the commit in the pull request. -`node_id` | `string` | The [Global Node ID](/graphql/guides/using-global-node-ids) of the event. +`node_id` | `string` | The [Global Node ID]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-global-node-ids) of the event. `url` | `string` | The REST API URL to retrieve the commit. `html_url` | `string` | The HTML URL of the commit. `author` | `object` | The person who authored the commit. @@ -583,7 +584,7 @@ The pull request was reviewed. Name | Type | Description -----|------|-------------- `id` | `integer` | The unique identifier of the event. -`node_id` | `string` | The [Global Node ID](/graphql/guides/using-global-node-ids) of the event. +`node_id` | `string` | The [Global Node ID]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-global-node-ids) of the event. `user` | `object` | The person who commented on the issue. `body` | `string` | The review summary text. `commit_id` | `string` | The SHA of the latest commit in the pull request at the time of the review. @@ -710,7 +711,7 @@ Someone unsubscribed from receiving notifications for an issue or pull request. {% data reusables.issue-events.issue-event-common-properties %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## user_blocked An organization owner blocked a user from the organization. This was done [through one of the blocked user's comments on the issue](/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization#blocking-a-user-in-a-comment). diff --git a/content/developers/webhooks-and-events/index.md b/content/developers/webhooks-and-events/index.md index 06b78481321b..310c52f569a0 100644 --- a/content/developers/webhooks-and-events/index.md +++ b/content/developers/webhooks-and-events/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks - Events diff --git a/content/developers/webhooks-and-events/webhooks/about-webhooks.md b/content/developers/webhooks-and-events/webhooks/about-webhooks.md index 05ac954e6e0b..c5fbc4d8c786 100644 --- a/content/developers/webhooks-and-events/webhooks/about-webhooks.md +++ b/content/developers/webhooks-and-events/webhooks/about-webhooks.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks --- diff --git a/content/developers/webhooks-and-events/webhooks/configuring-your-server-to-receive-payloads.md b/content/developers/webhooks-and-events/webhooks/configuring-your-server-to-receive-payloads.md index 7a78a1395039..bc09b2ff7b6a 100644 --- a/content/developers/webhooks-and-events/webhooks/configuring-your-server-to-receive-payloads.md +++ b/content/developers/webhooks-and-events/webhooks/configuring-your-server-to-receive-payloads.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks shortTitle: Configure server for webhooks diff --git a/content/developers/webhooks-and-events/webhooks/creating-webhooks.md b/content/developers/webhooks-and-events/webhooks/creating-webhooks.md index 6b7205ee3205..5a7e821a25da 100644 --- a/content/developers/webhooks-and-events/webhooks/creating-webhooks.md +++ b/content/developers/webhooks-and-events/webhooks/creating-webhooks.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks --- diff --git a/content/developers/webhooks-and-events/webhooks/index.md b/content/developers/webhooks-and-events/webhooks/index.md index 5c39b2cf95e1..1bdcd3275ab3 100644 --- a/content/developers/webhooks-and-events/webhooks/index.md +++ b/content/developers/webhooks-and-events/webhooks/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks children: diff --git a/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md b/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md index 1429e5382b65..6b0e363cef86 100644 --- a/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md +++ b/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks --- @@ -36,9 +37,9 @@ $ export SECRET_TOKEN=your_token ## Validating payloads from GitHub -When your secret token is set, {% data variables.product.product_name %} uses it to create a hash signature with each payload. This hash signature is included with the headers of each request as {% ifversion fpt or ghes > 2.22 or ghae %}`X-Hub-Signature-256`{% elsif ghes < 3.0 %}`X-Hub-Signature`{% endif %}. +When your secret token is set, {% data variables.product.product_name %} uses it to create a hash signature with each payload. This hash signature is included with the headers of each request as {% ifversion fpt or ghes > 2.22 or ghae or ghec %}`X-Hub-Signature-256`{% elsif ghes < 3.0 %}`X-Hub-Signature`{% endif %}. -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} {% note %} **Note:** For backward-compatibility, we also include the `X-Hub-Signature` header that is generated using the SHA-1 hash function. If possible, we recommend that you use the `X-Hub-Signature-256` header for improved security. The example below demonstrates using the `X-Hub-Signature-256` header. @@ -70,7 +71,7 @@ post '/payload' do "I got some JSON: #{push.inspect}" end -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} def verify_signature(payload_body) signature = 'sha256=' + OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new('sha256'), ENV['SECRET_TOKEN'], payload_body) return halt 500, "Signatures didn't match!" unless Rack::Utils.secure_compare(signature, request.env['HTTP_X_HUB_SIGNATURE_256']) @@ -89,7 +90,7 @@ end{% endif %} Your language and server implementations may differ from this example code. However, there are a number of very important things to point out: -* No matter which implementation you use, the hash signature starts with {% ifversion fpt or ghes > 2.22 or ghae %}`sha256=`{% elsif ghes < 3.0 %}`sha1=`{% endif %}, using the key of your secret token and your payload body. +* No matter which implementation you use, the hash signature starts with {% ifversion fpt or ghes > 2.22 or ghae or ghec %}`sha256=`{% elsif ghes < 3.0 %}`sha1=`{% endif %}, using the key of your secret token and your payload body. * Using a plain `==` operator is **not advised**. A method like [`secure_compare`][secure_compare] performs a "constant time" string comparison, which helps mitigate certain timing attacks against regular equality operators. diff --git a/content/developers/webhooks-and-events/webhooks/testing-webhooks.md b/content/developers/webhooks-and-events/webhooks/testing-webhooks.md index 19458aa36958..964e623323d6 100644 --- a/content/developers/webhooks-and-events/webhooks/testing-webhooks.md +++ b/content/developers/webhooks-and-events/webhooks/testing-webhooks.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks --- @@ -19,7 +20,7 @@ view provides some tooling for testing your deployed payloads. Every webhook has its own "Recent Deliveries" section, which lists, at a glance whether a delivery was successful (green check) or failed (red x). You can also identify when each delivery was attempted. -{% data variables.product.product_name %} keeps a log of each webhook delivery for {% ifversion fpt %} 30 {% else %} 8 {% endif %} days. +{% data variables.product.product_name %} keeps a log of each webhook delivery for {% ifversion fpt or ghec %} 30 {% else %} 8 {% endif %} days. ![Recent Deliveries view](/assets/images/webhooks_recent_deliveries.png) diff --git a/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md b/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md index 8de743f30f45..9b810fcf25a0 100644 --- a/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md +++ b/content/developers/webhooks-and-events/webhooks/webhook-events-and-payloads.md @@ -11,11 +11,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Webhooks shortTitle: Webhook events & payloads --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% endif %} @@ -53,7 +54,7 @@ Header | Description `X-GitHub-Delivery`| A [GUID](http://en.wikipedia.org/wiki/Globally_unique_identifier) to identify the delivery.{% ifversion ghes or ghae %} `X-GitHub-Enterprise-Version` | The version of the {% data variables.product.prodname_ghe_server %} instance that sent the HTTP POST payload. `X-GitHub-Enterprise-Host` | The hostname of the {% data variables.product.prodname_ghe_server %} instance that sent the HTTP POST payload.{% endif %}{% ifversion not ghae %} -`X-Hub-Signature`| This header is sent if the webhook is configured with a [`secret`](/rest/reference/repos#create-hook-config-params). This is the HMAC hex digest of the request body, and is generated using the SHA-1 hash function and the `secret` as the HMAC `key`.{% ifversion fpt or ghes > 2.22 %} `X-Hub-Signature` is provided for compatibility with existing integrations, and we recommend that you use the more secure `X-Hub-Signature-256` instead.{% endif %}{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} +`X-Hub-Signature`| This header is sent if the webhook is configured with a [`secret`](/rest/reference/repos#create-hook-config-params). This is the HMAC hex digest of the request body, and is generated using the SHA-1 hash function and the `secret` as the HMAC `key`.{% ifversion fpt or ghes > 2.22 or ghec %} `X-Hub-Signature` is provided for compatibility with existing integrations, and we recommend that you use the more secure `X-Hub-Signature-256` instead.{% endif %}{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} `X-Hub-Signature-256`| This header is sent if the webhook is configured with a [`secret`](/rest/reference/repos#create-hook-config-params). This is the HMAC hex digest of the request body, and is generated using the SHA-256 hash function and the `secret` as the HMAC `key`.{% endif %} Also, the `User-Agent` for the requests will have the prefix `GitHub-Hookshot/`. @@ -67,7 +68,7 @@ Also, the `User-Agent` for the requests will have the prefix `GitHub-Hookshot/`. > X-GitHub-Delivery: 72d3162e-cc78-11e3-81ab-4c9367dc0958{% ifversion ghes or ghae %} > X-GitHub-Enterprise-Version: 2.15.0 > X-GitHub-Enterprise-Host: example.com{% endif %}{% ifversion not ghae %} -> X-Hub-Signature: sha1=7d38cdd689735b008b3c702edd92eea23791c5f6{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} +> X-Hub-Signature: sha1=7d38cdd689735b008b3c702edd92eea23791c5f6{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} > X-Hub-Signature-256: sha256=d57c68ca6f92289e6987922ff26938930f6e66a2d161ef06abdf1859230aa23c{% endif %} > User-Agent: GitHub-Hookshot/044aadd > Content-Type: application/json @@ -99,7 +100,7 @@ Also, the `User-Agent` for the requests will have the prefix `GitHub-Hookshot/`. > } ``` -{% ifversion fpt or ghes > 3.2 or ghae-next %} +{% ifversion fpt or ghes > 3.2 or ghae-next or ghec %} ## branch_protection_rule Activity related to a branch protection rule. For more information, see "[About branch protection rules](/github/administering-a-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#about-branch-protection-rules)." @@ -189,7 +190,7 @@ Key | Type | Description {% data reusables.webhooks.repo_desc %} {% data reusables.webhooks.org_desc %} {% data reusables.webhooks.app_desc %} -`sender` | `object` | If the `action` is `reopened_by_user` or `closed_by_user`, the `sender` object will be the user that triggered the event. The `sender` object is {% ifversion fpt %}`github`{% elsif ghes > 3.0 or ghae-next %}`github-enterprise`{% else %}empty{% endif %} for all other actions. +`sender` | `object` | If the `action` is `reopened_by_user` or `closed_by_user`, the `sender` object will be the user that triggered the event. The `sender` object is {% ifversion fpt or ghec %}`github`{% elsif ghes > 3.0 or ghae-next %}`github-enterprise`{% else %}empty{% endif %} for all other actions. ### Webhook payload example @@ -322,7 +323,7 @@ Webhook events are triggered based on the specificity of the domain you register ### Webhook payload object Key | Type | Description -----|------|-------------{% ifversion fpt or ghes or ghae %} +----|------|-------------{% ifversion fpt or ghes or ghae or ghec %} `action` |`string` | The action performed. Can be `created`.{% endif %} `deployment` |`object` | The [deployment](/rest/reference/repos#list-deployments). {% data reusables.webhooks.repo_desc %} @@ -347,7 +348,7 @@ Key | Type | Description ### Webhook payload object Key | Type | Description -----|------|-------------{% ifversion fpt or ghes or ghae %} +----|------|-------------{% ifversion fpt or ghes or ghae or ghec %} `action` |`string` | The action performed. Can be `created`.{% endif %} `deployment_status` |`object` | The [deployment status](/rest/reference/repos#list-deployment-statuses). `deployment_status["state"]` |`string` | The new state. Can be `pending`, `success`, `failure`, or `error`. @@ -363,12 +364,12 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.deployment_status }} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## discussion {% data reusables.webhooks.discussions-webhooks-beta %} -Activity related to a discussion. For more information, see the "[Using the GraphQL API for discussions](/graphql/guides/using-the-graphql-api-for-discussions)." +Activity related to a discussion. For more information, see the "[Using the GraphQL API for discussions]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-the-graphql-api-for-discussions)." ### Availability - Repository webhooks @@ -393,7 +394,7 @@ Key | Type | Description {% data reusables.webhooks.discussions-webhooks-beta %} -Activity related to a comment in a discussion. For more information, see "[Using the GraphQL API for discussions](/graphql/guides/using-the-graphql-api-for-discussions)." +Activity related to a comment in a discussion. For more information, see "[Using the GraphQL API for discussions]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-the-graphql-api-for-discussions)." ### Availability @@ -406,7 +407,7 @@ Activity related to a comment in a discussion. For more information, see "[Using Key | Type | Description ----|------|------------- `action` |`string` | The action performed. Can be `created`, `edited`, or `deleted`. -`comment` | `object` | The [`discussion comment`](/graphql/guides/using-the-graphql-api-for-discussions#discussioncomment) resource. +`comment` | `object` | The [`discussion comment`]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-the-graphql-api-for-discussions#discussioncomment) resource. {% data reusables.webhooks.discussion_desc %} {% data reusables.webhooks.repo_desc_graphql %} {% data reusables.webhooks.org_desc_graphql %} @@ -614,7 +615,7 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.label.deleted }} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## marketplace_purchase Activity related to a GitHub Marketplace purchase. {% data reusables.webhooks.action_type_desc %} For more information, see the "[GitHub Marketplace](/marketplace/)." @@ -752,7 +753,7 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.organization.member_added }} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## org_block @@ -779,7 +780,7 @@ Key | Type | Description {% endif %} -{% ifversion fpt or ghae %} +{% ifversion fpt or ghae or ghec %} ## package @@ -919,7 +920,7 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.project.created }} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## public {% data reusables.webhooks.public_short_desc %} @@ -1085,7 +1086,7 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.release.published }} -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ## repository_dispatch This event occurs when a {% data variables.product.prodname_github_app %} sends a `POST` request to the "[Create a repository dispatch event](/rest/reference/repos#create-a-repository-dispatch-event)" endpoint. @@ -1123,7 +1124,7 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.repository.publicized }} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## repository_import {% data reusables.webhooks.repository_import_short_desc %} To receive this event for a personal repository, you must create an empty repository prior to the import. This event can be triggered using either the [GitHub Importer](/articles/importing-a-repository-with-github-importer/) or the [Source imports API](/rest/reference/migrations#source-imports). @@ -1166,7 +1167,7 @@ Key | Type | Description {% endif %} -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} ## secret_scanning_alert @@ -1191,7 +1192,7 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.secret_scanning_alert.reopened }} {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## security_advisory Activity related to a security advisory. A security advisory provides information about security-related vulnerabilities in software on GitHub. The security advisory dataset also powers the GitHub security alerts, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies/)." @@ -1212,7 +1213,7 @@ Key | Type | Description {{ webhookPayloadsForCurrentVersion.security_advisory.published }} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## sponsorship {% data reusables.webhooks.sponsorship_short_desc %} @@ -1381,7 +1382,7 @@ The event’s actor is the [user](/rest/reference/users) who starred a repositor {{ webhookPayloadsForCurrentVersion.watch.started }} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## workflow_dispatch This event occurs when someone triggers a workflow run on GitHub or sends a `POST` request to the "[Create a workflow dispatch event](/rest/reference/actions/#create-a-workflow-dispatch-event)" endpoint. For more information, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows#workflow_dispatch)." @@ -1395,7 +1396,7 @@ This event occurs when someone triggers a workflow run on GitHub or sends a `POS {{ webhookPayloadsForCurrentVersion.workflow_dispatch }} {% endif %} -{% ifversion fpt or ghes > 3.2 %} +{% ifversion fpt or ghes > 3.2 or ghec %} ## workflow_job @@ -1419,7 +1420,7 @@ This event occurs when someone triggers a workflow run on GitHub or sends a `POS {{ webhookPayloadsForCurrentVersion.workflow_job }} {% endif %} -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} ## workflow_run When a {% data variables.product.prodname_actions %} workflow run is requested or completed. For more information, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows#workflow_run)." diff --git a/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md b/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md index a74f0dfba653..115731eb7e25 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/about-discussions.md @@ -3,6 +3,7 @@ title: About discussions intro: 'Use discussions to ask and answer questions, share information, make announcements, and conduct or participate in a conversation about a project on {% data variables.product.product_name %}.' versions: fpt: '*' + ghec: '*' --- diff --git a/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md b/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md index a7910639ce5b..dbb1b2236e44 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/collaborating-with-maintainers-using-discussions.md @@ -5,6 +5,7 @@ intro: 'You can contribute to the goals, plans, health, and community for a proj permissions: 'People with read access to a repository can start and participate in discussions in the repository. {% data reusables.enterprise-accounts.emu-permission-interact %}' versions: fpt: '*' + ghec: '*' --- diff --git a/content/discussions/collaborating-with-your-community-using-discussions/index.md b/content/discussions/collaborating-with-your-community-using-discussions/index.md index 646f8fad4771..02683358eeb0 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/index.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/index.md @@ -4,6 +4,7 @@ shortTitle: Collaborating using discussions intro: Gather and discuss your project with community members and other maintainers. versions: fpt: '*' + ghec: '*' children: - /about-discussions - /participating-in-a-discussion diff --git a/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md b/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md index fc623e2ab220..42b02a1dca51 100644 --- a/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md +++ b/content/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion.md @@ -4,6 +4,7 @@ intro: 'You can converse with the community and maintainers in a forum within th permissions: 'People with read access to a repository can participate in discussions in the repository. {% data reusables.enterprise-accounts.emu-permission-interact %}' versions: fpt: '*' + ghec: '*' shortTitle: Participate in discussion --- diff --git a/content/discussions/guides/best-practices-for-community-conversations-on-github.md b/content/discussions/guides/best-practices-for-community-conversations-on-github.md index adcc77b1ac28..a4b3cb89380b 100644 --- a/content/discussions/guides/best-practices-for-community-conversations-on-github.md +++ b/content/discussions/guides/best-practices-for-community-conversations-on-github.md @@ -4,6 +4,7 @@ shortTitle: Best practices for community conversations intro: 'You can use discussions to brainstorm with your team, and eventually move the conversation to an issue when you are ready to scope out the work.' versions: fpt: '*' + ghec: '*' --- diff --git a/content/discussions/guides/finding-discussions-across-multiple-repositories.md b/content/discussions/guides/finding-discussions-across-multiple-repositories.md index fde842388d01..19488b1f87fa 100644 --- a/content/discussions/guides/finding-discussions-across-multiple-repositories.md +++ b/content/discussions/guides/finding-discussions-across-multiple-repositories.md @@ -3,6 +3,7 @@ title: Finding discussions across multiple repositories intro: You can easily access every discussion you've created or participated in across multiple repositories. versions: fpt: '*' + ghec: '*' shortTitle: Find discussions --- diff --git a/content/discussions/guides/granting-higher-permissions-to-top-contributors.md b/content/discussions/guides/granting-higher-permissions-to-top-contributors.md index 54e688c6180b..9bb4239fba78 100644 --- a/content/discussions/guides/granting-higher-permissions-to-top-contributors.md +++ b/content/discussions/guides/granting-higher-permissions-to-top-contributors.md @@ -3,6 +3,7 @@ title: Granting higher permissions to top contributors intro: Repository administrators can promote any community member to a moderator and maintainer. versions: fpt: '*' + ghec: '*' shortTitle: Grant higher permissions --- diff --git a/content/discussions/guides/index.md b/content/discussions/guides/index.md index 6b46a85782ac..43027521091a 100644 --- a/content/discussions/guides/index.md +++ b/content/discussions/guides/index.md @@ -4,6 +4,7 @@ shortTitle: Guides intro: Discover pathways to get started or learn best practices for participating or monitoring your community's discussions. versions: fpt: '*' + ghec: '*' children: - /best-practices-for-community-conversations-on-github - /finding-discussions-across-multiple-repositories diff --git a/content/discussions/index.md b/content/discussions/index.md index df6f67a73238..38e6cb0c5ad7 100644 --- a/content/discussions/index.md +++ b/content/discussions/index.md @@ -28,6 +28,7 @@ product_video: 'https://www.youtube-nocookie.com/embed/IpBw2SJkFyk' layout: product-landing versions: fpt: '*' + ghec: '*' communityRedirect: name: 'Provide GitHub Feedback' href: 'https://github.com/github/feedback/discussions/categories/discussions-feedback' diff --git a/content/discussions/managing-discussions-for-your-community/index.md b/content/discussions/managing-discussions-for-your-community/index.md index a40377a809a3..0483c6815f8f 100644 --- a/content/discussions/managing-discussions-for-your-community/index.md +++ b/content/discussions/managing-discussions-for-your-community/index.md @@ -4,6 +4,7 @@ shortTitle: Managing discussions intro: 'You can enable and configure {% data variables.product.prodname_discussions %} for your repository, and you can use tools on {% data variables.product.product_name %} to moderate conversations among community members.' versions: fpt: '*' + ghec: '*' children: - /managing-discussions-in-your-repository - /managing-categories-for-discussions-in-your-repository diff --git a/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository.md b/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository.md index bf90e9081b1a..536399aefb54 100644 --- a/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository.md +++ b/content/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository.md @@ -4,6 +4,7 @@ intro: 'You can categorize the discussions in your repository to organize conver permissions: Repository administrators and people with write or greater access to a repository can manage categories for discussions in the repository. versions: fpt: '*' + ghec: '*' shortTitle: Manage categories --- diff --git a/content/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository.md b/content/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository.md index 54532594b066..ad27ee9b32b8 100644 --- a/content/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository.md +++ b/content/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository.md @@ -4,6 +4,7 @@ intro: 'You can categorize, spotlight, transfer, or delete the discussions in a permissions: Repository administrators and people with write or greater access to a repository can manage discussions in the repository. versions: fpt: '*' + ghec: '*' shortTitle: Manage discussions --- diff --git a/content/discussions/managing-discussions-for-your-community/moderating-discussions.md b/content/discussions/managing-discussions-for-your-community/moderating-discussions.md index 9e0a613be6f5..c9d780d80618 100644 --- a/content/discussions/managing-discussions-for-your-community/moderating-discussions.md +++ b/content/discussions/managing-discussions-for-your-community/moderating-discussions.md @@ -4,6 +4,7 @@ intro: 'You can promote healthy collaboration by marking comments as answers, lo permissions: People with triage access to a repository can moderate discussions in the repository. versions: fpt: '*' + ghec: '*' --- @@ -17,7 +18,7 @@ versions: ## Locking discussions -It's appropriate to lock a conversation when the entire conversation is not constructive or violates your community's code of conduct or {% data variables.product.prodname_dotcom %}'s [Community Guidelines](/github/site-policy/github-community-guidelines). You can also lock a conversation to prevent comments on a discussion you want to use as an announcement to the community. When you lock a conversation, people with write access to the repository will still be able to comment on the discussion. +It's appropriate to lock a conversation when the entire conversation is not constructive or violates your community's code of conduct or {% data variables.product.prodname_dotcom %}'s [Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines). You can also lock a conversation to prevent comments on a discussion you want to use as an announcement to the community. When you lock a conversation, people with write access to the repository will still be able to comment on the discussion. {% data reusables.repositories.navigate-to-repo %} {% data reusables.discussions.discussions-tab %} diff --git a/content/discussions/quickstart.md b/content/discussions/quickstart.md index ceda4c7c6af8..7919bdedc776 100644 --- a/content/discussions/quickstart.md +++ b/content/discussions/quickstart.md @@ -4,6 +4,7 @@ intro: 'Enable {% data variables.product.prodname_discussions %} on an existing allowTitleToDifferFromFilename: true versions: fpt: '*' + ghec: '*' shortTitle: Quickstart --- diff --git a/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-campus-advisors.md b/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-campus-advisors.md index 9f9482bb9854..77e4c35b89dc 100644 --- a/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-campus-advisors.md +++ b/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-campus-advisors.md @@ -13,7 +13,7 @@ Professors, teachers and mentors can use the Campus Advisors online training to {% note %} -**Note:** As an instructor, you can't create {% data variables.product.prodname_dotcom %} accounts for your students. Students must create their own {% data variables.product.prodname_dotcom %} accounts. +**Note:** As an instructor, you can't create accounts on {% data variables.product.product_location %} for your students. Students must create their own accounts on {% data variables.product.product_location %}. {% endnote %} diff --git a/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-github-campus-program.md b/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-github-campus-program.md index 6eae0c76a7a8..e99cae3fc8f8 100644 --- a/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-github-campus-program.md +++ b/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-at-your-educational-institution/about-github-campus-program.md @@ -29,7 +29,7 @@ To read about how GitHub is used by educators, see [GitHub Education stories.](h - You must offer {% data variables.product.prodname_dotcom %} to all of your technical and academic departments and your school’s logo will be shared on the GitHub Education website as a {% data variables.product.prodname_campus_program %} Partner. -- New organizations in your enterprise are automatically added to your enterprise account. To add organizations that existed before your school joined the {% data variables.product.prodname_campus_program %}, please contact [GitHub Education Support](https://support.github.com/contact/education). For more information about administrating your enterprise, see "[Setting up and managing your enterprise](/github/setting-up-and-managing-your-enterprise)." New organizations in your enterprise are automatically added to your enterprise account. To add organizations that existed before your school joined the {% data variables.product.prodname_campus_program %}, please contact GitHub Education Support. +- New organizations in your enterprise are automatically added to your enterprise account. To add organizations that existed before your school joined the {% data variables.product.prodname_campus_program %}, please contact [GitHub Education Support](https://support.github.com/contact/education). For more information about administrating your enterprise, see the [enterprise administrators documentation](/admin). New organizations in your enterprise are automatically added to your enterprise account. To add organizations that existed before your school joined the {% data variables.product.prodname_campus_program %}, please contact GitHub Education Support. To read more about {% data variables.product.prodname_dotcom %}'s privacy practices, see ["Global Privacy Practices"](/github/site-policy/global-privacy-practices) diff --git a/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md b/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md index 8318738d9693..d369f6013f56 100644 --- a/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md +++ b/content/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github.md @@ -1,6 +1,6 @@ --- title: Finding ways to contribute to open source on GitHub -intro: 'You can find ways to contribute to open source projects on {% data variables.product.product_name %} that are relevant to you.' +intro: 'You can find ways to contribute to open source projects on {% data variables.product.product_location %} that are relevant to you.' permissions: '{% data reusables.enterprise-accounts.emu-permission-interact %}' redirect_from: - /articles/where-can-i-find-open-source-projects-to-work-on/ @@ -13,6 +13,7 @@ redirect_from: - /github/getting-started-with-github/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github versions: fpt: '*' + ghec: '*' topics: - Open Source shortTitle: Contribute to open source @@ -21,7 +22,7 @@ shortTitle: Contribute to open source If there's a particular topic that interests you, visit `github.com/topics/`. For example, if you are interested in machine learning, you can find relevant projects and good first issues by visiting https://github.com/topics/machine-learning. You can browse popular topics by visiting [Topics](https://github.com/topics). You can also search for repositories that match a topic you're interested in. For more information, see "[Searching for repositories](/search-github/searching-on-github/searching-for-repositories#search-by-topic)." -If you've been active on {% data variables.product.product_name %}, you can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in [Explore](https://github.com/explore). You can also sign up for the Explore newsletter to receive emails about opportunities to contribute to {% data variables.product.product_name %} based on your interests. To sign up, see [Explore email newsletter](https://github.com/explore/subscribe). +If you've been active on {% data variables.product.product_location %}, you can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in [Explore](https://github.com/explore). You can also sign up for the Explore newsletter to receive emails about opportunities to contribute to {% data variables.product.product_name %} based on your interests. To sign up, see [Explore email newsletter](https://github.com/explore/subscribe). Keep up with recent activity from repositories you watch and people you follow in the "All activity" section of your personal dashboard. For more information, see "[About your personal dashboard](/articles/about-your-personal-dashboard)." diff --git a/content/get-started/exploring-projects-on-github/following-people.md b/content/get-started/exploring-projects-on-github/following-people.md index d47d70fbccc4..a97990de31e8 100644 --- a/content/get-started/exploring-projects-on-github/following-people.md +++ b/content/get-started/exploring-projects-on-github/following-people.md @@ -1,6 +1,6 @@ --- title: Following people -intro: 'You can follow people on {% data variables.product.product_name %} to receive notifications about their activity{% ifversion fpt %} and discover projects in their communities{% endif %}.' +intro: 'You can follow people on {% data variables.product.product_name %} to receive notifications about their activity{% ifversion fpt or ghec %} and discover projects in their communities{% endif %}.' permissions: '{% data reusables.enterprise-accounts.emu-permission-follow %}' redirect_from: - /articles/following-people @@ -10,13 +10,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profile --- ## About followers on {% data variables.product.product_name %} -When you follow people, you'll see their public activity in the activity view of your news feed.{% ifversion fpt %} If someone you follow stars a public repository, {% data variables.product.product_name %} may recommend the repository to you in the discovery view of your news feed.{% endif %} +When you follow people, you'll see their public activity in the activity view of your news feed.{% ifversion fpt or ghec %} If someone you follow stars a public repository, {% data variables.product.product_name %} may recommend the repository to you in the discovery view of your news feed.{% endif %} You can unfollow someone if you do not wish to see their public activity on {% data variables.product.product_name %}. @@ -62,7 +63,7 @@ You can unfollow someone if you do not wish to see their public activity on {% d -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading - "[Saving repositories with stars](/articles/saving-repositories-with-stars/)" diff --git a/content/get-started/exploring-projects-on-github/index.md b/content/get-started/exploring-projects-on-github/index.md index 0c110b6fa53b..fc8500759797 100644 --- a/content/get-started/exploring-projects-on-github/index.md +++ b/content/get-started/exploring-projects-on-github/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Projects children: diff --git a/content/get-started/exploring-projects-on-github/saving-repositories-with-stars.md b/content/get-started/exploring-projects-on-github/saving-repositories-with-stars.md index ffc25019ad4e..a3c20de937b6 100644 --- a/content/get-started/exploring-projects-on-github/saving-repositories-with-stars.md +++ b/content/get-started/exploring-projects-on-github/saving-repositories-with-stars.md @@ -1,6 +1,6 @@ --- title: Saving repositories with stars -intro: 'You can star repositories and topics to keep track of projects you find interesting{% ifversion fpt %} and discover related content in your news feed{% endif %}.' +intro: 'You can star repositories and topics to keep track of projects you find interesting{% ifversion fpt or ghec %} and discover related content in your news feed{% endif %}.' redirect_from: - /articles/stars/ - /articles/about-stars/ @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Save repos with stars @@ -23,7 +24,7 @@ You can search, sort, and filter your starred repositories and topics on your {% Starring makes it easy to find a repository or topic again later. You can see all the repositories and topics you have starred by going to your {% data variables.explore.your_stars_page %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can star repositories and topics to discover similar projects on {% data variables.product.product_name %}. When you star repositories or topics, {% data variables.product.product_name %} may recommend related content in the discovery view of your news feed. For more information, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)". {% endif %} diff --git a/content/get-started/getting-started-with-git/about-remote-repositories.md b/content/get-started/getting-started-with-git/about-remote-repositories.md index 130daa04d044..52cbeed5165b 100644 --- a/content/get-started/getting-started-with-git/about-remote-repositories.md +++ b/content/get-started/getting-started-with-git/about-remote-repositories.md @@ -15,6 +15,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## About remote repositories @@ -64,15 +65,15 @@ When you `git clone`, `git fetch`, `git pull`, or `git push` to a remote reposit {% endtip %} - {% ifversion fpt %}If you'd rather use SSH but cannot connect over port 22, you might be able to use SSH over the HTTPS port. For more information, see "[Using SSH over the HTTPS port](/github/authenticating-to-github/using-ssh-over-the-https-port)."{% endif %} + {% ifversion fpt or ghec %}If you'd rather use SSH but cannot connect over port 22, you might be able to use SSH over the HTTPS port. For more information, see "[Using SSH over the HTTPS port](/github/authenticating-to-github/using-ssh-over-the-https-port)."{% endif %} ## Cloning with SSH URLs -SSH URLs provide access to a Git repository via SSH, a secure protocol. To use these URLs, you must generate an SSH keypair on your computer and add the **public** key to your {% data variables.product.product_name %} account. For more information, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/github/authenticating-to-github/connecting-to-github-with-ssh)." +SSH URLs provide access to a Git repository via SSH, a secure protocol. To use these URLs, you must generate an SSH keypair on your computer and add the **public** key to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. For more information, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/github/authenticating-to-github/connecting-to-github-with-ssh)." When you `git clone`, `git fetch`, `git pull`, or `git push` to a remote repository using SSH URLs, you'll be prompted for a password and must provide your SSH key passphrase. For more information, see "[Working with SSH key passphrases](/github/authenticating-to-github/working-with-ssh-key-passphrases)." -{% ifversion fpt %}If you are accessing an organization that uses SAML single sign-on (SSO), you must authorize your SSH key to access the organization before you authenticate. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)" and "[Authorizing an SSH key for use with SAML single sign-on](/github/authenticating-to-github/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %} +{% ifversion fpt or ghec %}If you are accessing an organization that uses SAML single sign-on (SSO), you must authorize your SSH key to access the organization before you authenticate. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)" and "[Authorizing an SSH key for use with SAML single sign-on](/github/authenticating-to-github/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)."{% endif %} {% tip %} @@ -80,7 +81,7 @@ When you `git clone`, `git fetch`, `git pull`, or `git push` to a remote reposit {% endtip %} -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ## Cloning with {% data variables.product.prodname_cli %} diff --git a/content/get-started/getting-started-with-git/associating-text-editors-with-git.md b/content/get-started/getting-started-with-git/associating-text-editors-with-git.md index 82fb135e9d89..4c6cc0bd21cf 100644 --- a/content/get-started/getting-started-with-git/associating-text-editors-with-git.md +++ b/content/get-started/getting-started-with-git/associating-text-editors-with-git.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Associate text editors --- {% mac %} diff --git a/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md b/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md index 4c9689bd749a..69ef9e83aefe 100644 --- a/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md +++ b/content/get-started/getting-started-with-git/caching-your-github-credentials-in-git.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Caching credentials --- diff --git a/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md b/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md index ebbfe9e4d81f..ec926a063b6f 100644 --- a/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md +++ b/content/get-started/getting-started-with-git/configuring-git-to-handle-line-endings.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Handle line endings --- ## About line endings diff --git a/content/get-started/getting-started-with-git/git-workflows.md b/content/get-started/getting-started-with-git/git-workflows.md index bdb22264e203..aa6c41901816 100644 --- a/content/get-started/getting-started-with-git/git-workflows.md +++ b/content/get-started/getting-started-with-git/git-workflows.md @@ -11,5 +11,6 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- You can adopt the {% data variables.product.prodname_dotcom %} flow method to standardize how your team functions and collaborates on {% data variables.product.prodname_dotcom %}. For more information, see "[{% data variables.product.prodname_dotcom %} flow](/github/getting-started-with-github/github-flow)." diff --git a/content/get-started/getting-started-with-git/ignoring-files.md b/content/get-started/getting-started-with-git/ignoring-files.md index 74ce68f26657..02f4a114ccb6 100644 --- a/content/get-started/getting-started-with-git/ignoring-files.md +++ b/content/get-started/getting-started-with-git/ignoring-files.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## Configuring ignored files for a single repository diff --git a/content/get-started/getting-started-with-git/index.md b/content/get-started/getting-started-with-git/index.md index 561bb6b8049e..04cd18c76037 100644 --- a/content/get-started/getting-started-with-git/index.md +++ b/content/get-started/getting-started-with-git/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /setting-your-username-in-git - /caching-your-github-credentials-in-git diff --git a/content/get-started/getting-started-with-git/managing-remote-repositories.md b/content/get-started/getting-started-with-git/managing-remote-repositories.md index af83cd208cc4..678c2f873358 100644 --- a/content/get-started/getting-started-with-git/managing-remote-repositories.md +++ b/content/get-started/getting-started-with-git/managing-remote-repositories.md @@ -22,6 +22,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Manage remote repositories --- ## Adding a remote repository diff --git a/content/get-started/getting-started-with-git/setting-your-username-in-git.md b/content/get-started/getting-started-with-git/setting-your-username-in-git.md index 72b923f32a1c..f0c2771123bd 100644 --- a/content/get-started/getting-started-with-git/setting-your-username-in-git.md +++ b/content/get-started/getting-started-with-git/setting-your-username-in-git.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Set your username --- ## About Git usernames diff --git a/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md b/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md index 1e32b4bc2b8d..67946db73dea 100644 --- a/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md +++ b/content/get-started/getting-started-with-git/updating-credentials-from-the-macos-keychain.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: macOS Keychain credentials --- {% tip %} diff --git a/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md b/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md index 9b5444f5f63c..6b44828e9942 100644 --- a/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md +++ b/content/get-started/getting-started-with-git/why-is-git-always-asking-for-my-password.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Git passwords --- Using an HTTPS remote URL has some advantages compared with using SSH. It's easier to set up than SSH, and usually works through strict firewalls and proxies. However, it also prompts you to enter your {% data variables.product.product_name %} credentials every time you pull or push a repository. diff --git a/content/get-started/index.md b/content/get-started/index.md index ad0a7c8043da..5c2783480f56 100644 --- a/content/get-started/index.md +++ b/content/get-started/index.md @@ -20,6 +20,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' layout: product-landing introLinks: quickstart: /github/getting-started-with-github/quickstart diff --git a/content/get-started/learning-about-github/about-github-advanced-security.md b/content/get-started/learning-about-github/about-github-advanced-security.md index e7f35d96ec11..1bb20d9b5ae2 100644 --- a/content/get-started/learning-about-github/about-github-advanced-security.md +++ b/content/get-started/learning-about-github/about-github-advanced-security.md @@ -1,11 +1,12 @@ --- title: About GitHub Advanced Security -intro: '{% data variables.product.prodname_dotcom %} makes extra security features available to customers under an {% data variables.product.prodname_advanced_security %} license.{% ifversion fpt %} These features are also enabled for public repositories on {% data variables.product.prodname_dotcom_the_website %}.{% endif %}' +intro: '{% data variables.product.prodname_dotcom %} makes extra security features available to customers under an {% data variables.product.prodname_advanced_security %} license.{% ifversion fpt or ghec %} These features are also enabled for public repositories on {% data variables.product.prodname_dotcom_the_website %}.{% endif %}' product: '{% data reusables.gated-features.ghas %}' versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Security redirect_from: @@ -17,7 +18,7 @@ shortTitle: GitHub Advanced Security {% data variables.product.prodname_dotcom %} has many features that help you improve and maintain the quality of your code. Some of these are included in all plans{% ifversion not ghae %}, such as dependency graph and {% data variables.product.prodname_dependabot_alerts %}{% endif %}. Other security features require a license for {% data variables.product.prodname_GH_advanced_security %} to run on repositories apart from public repositories on {% data variables.product.prodname_dotcom_the_website %}. -{% ifversion fpt or ghes > 3.0 %}For more information about purchasing {% data variables.product.prodname_GH_advanced_security %}, see "[About billing for {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security)."{% elsif ghae %}There is no charge for {% data variables.product.prodname_GH_advanced_security %} on {% data variables.product.prodname_ghe_managed %} during the beta release.{% endif %} +{% ifversion fpt or ghes > 3.0 or ghec %}For more information about purchasing {% data variables.product.prodname_GH_advanced_security %}, see "[About billing for {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security)."{% elsif ghae %}There is no charge for {% data variables.product.prodname_GH_advanced_security %} on {% data variables.product.prodname_ghe_managed %} during the beta release.{% endif %} ## About {% data variables.product.prodname_advanced_security %} features @@ -27,7 +28,7 @@ A {% data variables.product.prodname_GH_advanced_security %} license provides th - **{% data variables.product.prodname_secret_scanning_caps %}** - Detect secrets, for example keys and tokens, that have been checked into the repository. For more information, see "[About {% data variables.product.prodname_secret_scanning %}](/github/administering-a-repository/about-secret-scanning)." -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} - **Dependency review** - Show the full impact of changes to dependencies and see details of any vulnerable versions before you merge a pull request. For more information, see "[About dependency review](/code-security/supply-chain-security/about-dependency-review)." {% endif %} @@ -49,25 +50,19 @@ Once your system is set up, you can enable and disable these features at the org For public repositories on {% data variables.product.prodname_dotcom_the_website %}, these features are permanently on and can only be disabled if you change the visibility of the project so that the code is no longer public. -For other repositories, once you have a license for your enterprise account, you can enable and disable these features at the organization or repository level. {% ifversion fpt or ghes > 3.0 %}For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)" and "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)."{% endif %} +For other repositories, once you have a license for your enterprise account, you can enable and disable these features at the organization or repository level. {% ifversion fpt or ghes > 3.0 or ghec %}For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)" and "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)."{% endif %} {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you have an enterprise account, license use for the entire enterprise is shown on your enterprise license page. For more information, see "[Viewing your {% data variables.product.prodname_GH_advanced_security %} usage](/billing/managing-licensing-for-github-advanced-security/viewing-your-github-advanced-security-usage)." {% endif %} -{% ifversion fpt %} +{% ifversion ghec or ghes > 3.0 or ghae-next %} ## Further reading -- "[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise-account)" - -{% elsif ghes > 3.0 or ghae-next %} - -## Further reading - -- "[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise](/admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise)" +- "[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise account](/admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise)" {% endif %} diff --git a/content/get-started/learning-about-github/access-permissions-on-github.md b/content/get-started/learning-about-github/access-permissions-on-github.md index b6808f36634c..a8f2c08ca948 100644 --- a/content/get-started/learning-about-github/access-permissions-on-github.md +++ b/content/get-started/learning-about-github/access-permissions-on-github.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Permissions - Accounts @@ -23,19 +24,19 @@ A repository owned by a user account has two permission levels: the *repository ## Organization accounts -Organization members can have *owner*{% ifversion fpt %}, *billing manager*,{% endif %} or *member* roles. Owners have complete administrative access to your organization{% ifversion fpt %}, while billing managers can manage billing settings{% endif %}. Member is the default role for everyone else. You can manage access permissions for multiple members at a time with teams. For more information, see: +Organization members can have *owner*{% ifversion fpt or ghec %}, *billing manager*,{% endif %} or *member* roles. Owners have complete administrative access to your organization{% ifversion fpt or ghec %}, while billing managers can manage billing settings{% endif %}. Member is the default role for everyone else. You can manage access permissions for multiple members at a time with teams. For more information, see: - "[Permission levels for an organization](/articles/permission-levels-for-an-organization)" - "[Project board permissions for an organization](/articles/project-board-permissions-for-an-organization)" - "[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization)" - "[About teams](/articles/about-teams)" -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Enterprise accounts -*Enterprise owners* have ultimate power over the enterprise account and can take every action in the enterprise account. *Billing managers* can manage your enterprise account's billing settings. Members and outside collaborators of organizations owned by your enterprise account are automatically members of the enterprise account, although they have no access to the enterprise account itself or its settings. For more information, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise)." +*Enterprise owners* have ultimate power over the enterprise account and can take every action in the enterprise account. *Billing managers* can manage your enterprise account's billing settings. Members and outside collaborators of organizations owned by your enterprise account are automatically members of the enterprise account, although they have no access to the enterprise account itself or its settings. For more information, see "[Roles in an enterprise](/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise)." -If an enterprise uses {% data variables.product.prodname_emus %}, members are provisioned as new user accounts on {% data variables.product.prodname_dotcom %} and are fully managed by the identity provider. The {% data variables.product.prodname_managed_users %} have read-only access to repositories that are not a part of their enterprise and cannot interact with users that are not also members of the enterprise. Within the organizations owned by the enterprise, the {% data variables.product.prodname_managed_users %} can be granted the same granular access levels available for regular organizations. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +If an enterprise uses {% data variables.product.prodname_emus %}, members are provisioned as new user accounts on {% data variables.product.prodname_dotcom %} and are fully managed by the identity provider. The {% data variables.product.prodname_managed_users %} have read-only access to repositories that are not a part of their enterprise and cannot interact with users that are not also members of the enterprise. Within the organizations owned by the enterprise, the {% data variables.product.prodname_managed_users %} can be granted the same granular access levels available for regular organizations. For more information, see "[About {% data variables.product.prodname_emus %}]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation{% else %}."{% endif %} {% data reusables.gated-features.enterprise-accounts %} diff --git a/content/get-started/learning-about-github/faq-about-changes-to-githubs-plans.md b/content/get-started/learning-about-github/faq-about-changes-to-githubs-plans.md index 9e3cc42c414a..ec47a91e735b 100644 --- a/content/get-started/learning-about-github/faq-about-changes-to-githubs-plans.md +++ b/content/get-started/learning-about-github/faq-about-changes-to-githubs-plans.md @@ -3,6 +3,7 @@ title: FAQ about changes to GitHub’s plans intro: 'As of April 14, 2020, GitHub announced that all of the core GitHub features are now free for everyone.' versions: fpt: '*' + ghec: '*' topics: - GitHub redirect_from: @@ -90,6 +91,6 @@ If you’re currently an invoice customer, email your sales representative for a ## How will this impact users and organizations in regions where U.S. government sanctions are applied? -Due to U.S. trade controls law restrictions, GitHub is unable to provide private repository services and paid services to accounts in U.S. sanctioned regions. GitHub has preserved, however, access to free public repository services. Please read about [GitHub and Trade Controls](/github/site-policy/github-and-trade-controls) for more information. +Due to U.S. trade controls law restrictions, GitHub is unable to provide private repository services and paid services to accounts in U.S. sanctioned regions. GitHub has preserved, however, access to free public repository services. Please read about [GitHub and Trade Controls](/free-pro-team@latest/github/site-policy/github-and-trade-controls) for more information. GitHub will continue advocating with U.S. regulators for the greatest possible access to free code collaboration services to developers in sanctioned regions, including free private repositories. We believe that offering those free services supports U.S. foreign policy of encouraging the free flow of information and free speech in those regions. diff --git a/content/get-started/learning-about-github/github-language-support.md b/content/get-started/learning-about-github/github-language-support.md index 467221e6d849..86f01e4b445d 100644 --- a/content/get-started/learning-about-github/github-language-support.md +++ b/content/get-started/learning-about-github/github-language-support.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub redirect_from: diff --git a/content/get-started/learning-about-github/githubs-products.md b/content/get-started/learning-about-github/githubs-products.md index 4158855fdd81..a8f3a20fdd9a 100644 --- a/content/get-started/learning-about-github/githubs-products.md +++ b/content/get-started/learning-about-github/githubs-products.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - CLI @@ -76,7 +77,7 @@ In addition to the features available with {% data variables.product.prodname_fr - Draft pull requests - Team pull request reviewers - Scheduled reminders -{% ifversion fpt %} +{% ifversion fpt or ghec %} - The option to enable {% data variables.product.prodname_github_codespaces %} - Organization owners can enable {% data variables.product.prodname_github_codespaces %} for the organization by setting a spending limit and granting user permissions for members of their organization. For more information, see "[Enabling Codespaces for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization)." {% endif %} @@ -92,7 +93,7 @@ In addition to the features available with {% data variables.product.prodname_te - Additional security, compliance, and deployment controls - Authentication with SAML single sign-on - Access provisioning with SAML or SCIM -- {% data variables.product.prodname_github_connect %}{% ifversion fpt or ghae or ghes > 2.22 %} +- {% data variables.product.prodname_github_connect %}{% ifversion fpt or ghae or ghes > 2.22 or ghec %} - The option to purchase {% data variables.product.prodname_GH_advanced_security %}. For more information, see "[About {% data variables.product.prodname_GH_advanced_security %}](/github/getting-started-with-github/about-github-advanced-security)."{% endif %} {% data variables.product.prodname_ghe_cloud %} also includes: @@ -101,8 +102,8 @@ In addition to the features available with {% data variables.product.prodname_te - 50GB {% data variables.product.prodname_registry %} storage - Access control for {% data variables.product.prodname_pages %} sites. For more information, see Changing the visibility of your {% data variables.product.prodname_pages %} site" - A service level agreement for 99.9% monthly uptime -- The option to configure your enterprise for {% data variables.product.prodname_emus %}, so you can provision and manage members with your identity provider and restrict your member's contributions to just your enterprise. For more information, see "About {% data variables.product.prodname_emus %}." -- The option to centrally manage policy and billing for multiple {% data variables.product.prodname_dotcom_the_website %} organizations with an enterprise account. For more information, see "About enterprise accounts." +- The option to configure your enterprise for {% data variables.product.prodname_emus %}, so you can provision and manage members with your identity provider and restrict your member's contributions to just your enterprise. For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +- The option to centrally manage policy and billing for multiple {% data variables.product.prodname_dotcom_the_website %} organizations with an enterprise account. For more information, see "[About enterprise accounts](/enterprise-cloud@latest/admin/overview/about-enterprise-accounts)." You can set up a trial to evaluate {% data variables.product.prodname_ghe_cloud %}. For more information, see "Setting up a trial of {% data variables.product.prodname_ghe_cloud %}." diff --git a/content/get-started/learning-about-github/index.md b/content/get-started/learning-about-github/index.md index b917645d347a..af2223631307 100644 --- a/content/get-started/learning-about-github/index.md +++ b/content/get-started/learning-about-github/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - CLI diff --git a/content/get-started/learning-about-github/types-of-github-accounts.md b/content/get-started/learning-about-github/types-of-github-accounts.md index 469dda8813b5..242358a9c130 100644 --- a/content/get-started/learning-about-github/types-of-github-accounts.md +++ b/content/get-started/learning-about-github/types-of-github-accounts.md @@ -1,6 +1,6 @@ --- title: Types of GitHub accounts -intro: 'Your user account is your identity on {% data variables.product.product_location %}. Your user account can be a member of any number of organizations.{% ifversion fpt %} Organizations can belong to enterprise accounts.{% endif %}' +intro: 'Your user account is your identity on {% data variables.product.product_location %}. Your user account can be a member of any number of organizations.{% ifversion fpt or ghec %} Organizations can belong to enterprise accounts.{% endif %}' redirect_from: - /manage-multiple-clients/ - /managing-clients/ @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts - CLI @@ -20,7 +21,7 @@ topics: - Desktop - Security --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} For a full list of features for each {% data variables.product.product_name %} product, see "[{% data variables.product.prodname_dotcom %}'s products](/github/getting-started-with-github/githubs-products)." {% endif %} @@ -28,7 +29,7 @@ For a full list of features for each {% data variables.product.product_name %} p Every person who uses {% data variables.product.product_location %} has their own user account, which includes: -{% ifversion fpt %} +{% ifversion fpt or ghec %} - Unlimited public and private repositories with {% data variables.product.prodname_free_user %} - Unlimited collaborators with {% data variables.product.prodname_free_user %} @@ -42,7 +43,7 @@ Every person who uses {% data variables.product.product_location %} has their ow {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% tip %} @@ -63,12 +64,12 @@ Every person who uses {% data variables.product.product_location %} has their ow {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### {% data variables.product.prodname_emus %} With {% data variables.product.prodname_emus %}, instead of using your personal account, members of an {% data variables.product.prodname_emu_enterprise %} are provisioned accounts using the enterprise's identity provider (IdP). {% data variables.product.prodname_managed_users_caps %} authenticate using their IdP instead of a {% data variables.product.prodname_dotcom_the_website %} username and password. -{% data variables.product.prodname_managed_users_caps %} can only interact with users, repositories, and organizations that are part of their enterprise. {% data variables.product.prodname_managed_users_caps %} have read-only access to the rest of {% data variables.product.prodname_dotcom_the_website %}. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +{% data variables.product.prodname_managed_users_caps %} can only interact with users, repositories, and organizations that are part of their enterprise. {% data variables.product.prodname_managed_users_caps %} have read-only access to the rest of {% data variables.product.prodname_dotcom_the_website %}. For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} {% endif %} ## Organization accounts @@ -77,7 +78,7 @@ Organizations are shared accounts where groups of people can collaborate across {% data reusables.organizations.organizations_include %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Enterprise accounts @@ -87,6 +88,6 @@ With enterprise accounts, you can centrally manage policy and billing for multip ## Further reading -{% ifversion fpt %}- "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/articles/signing-up-for-a-new-github-account)" +{% ifversion fpt or ghec %}- "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/articles/signing-up-for-a-new-github-account)" - "[{% data variables.product.prodname_dotcom %}'s products](/articles/githubs-products)"{% endif %} - "[Creating a new organization account](/articles/creating-a-new-organization-account)" diff --git a/content/get-started/onboarding/getting-started-with-github-ae.md b/content/get-started/onboarding/getting-started-with-github-ae.md index 1691f2d9d668..34adcc9fcb8a 100644 --- a/content/get-started/onboarding/getting-started-with-github-ae.md +++ b/content/get-started/onboarding/getting-started-with-github-ae.md @@ -58,9 +58,9 @@ You can monitor {% data variables.product.product_location %} with your activity {% data reusables.getting-started.configuring-security-features %} ## Part 4: Customizing and automating work on {% data variables.product.product_location %} -You can customize and automate work in organizations in {% data variables.product.product_location %} with the {% data variables.product.prodname_dotcom %} API, {% data variables.product.prodname_actions %}, and {% data variables.product.prodname_pages %}. +You can customize and automate work in organizations in {% data variables.product.product_location %} with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, {% data variables.product.prodname_actions %}, and {% data variables.product.prodname_pages %}. -### 1. Using the {% data variables.product.prodname_dotcom %} API +### 1. Using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API {% data reusables.getting-started.api %} ### 2. Building {% data variables.product.prodname_actions %} diff --git a/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md b/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md index 495e3e2ab93b..2d25aba52ba3 100644 --- a/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md +++ b/content/get-started/onboarding/getting-started-with-github-enterprise-cloud.md @@ -3,6 +3,7 @@ title: Getting started with GitHub Enterprise Cloud intro: 'Get started with setting up and managing your {% data variables.product.prodname_ghe_cloud %} organization or enterprise account.' versions: fpt: '*' + ghec: '*' --- This guide will walk you through setting up, configuring and managing your {% data variables.product.prodname_ghe_cloud %} account as an organization or enterprise owner. @@ -63,14 +64,14 @@ To get an enterprise account created for you, contact [{% data variables.product #### 1. About enterprise accounts -An enterprise account allows you to centrally manage policy and settings for multiple {% data variables.product.prodname_dotcom %} organizations, including member access, billing and usage and security. For more information, see "[About enterprise accounts](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts)." +An enterprise account allows you to centrally manage policy and settings for multiple {% data variables.product.prodname_dotcom %} organizations, including member access, billing and usage and security. For more information, see "[About enterprise accounts](/enterprise-cloud@latest/admin/overview/about-enterprise-accounts)." #### 2. Adding organizations to your enterprise account -You can create new organizations to manage within your enterprise account. For more information, see "[Adding organizations to your enterprise](/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/adding-organizations-to-your-enterprise-account)." +You can create new organizations to manage within your enterprise account. For more information, see "[Adding organizations to your enterprise](/enterprise-cloud@latest/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise)." Contact your {% data variables.product.prodname_dotcom %} sales account representative if you want to transfer an existing organization to your enterprise account. #### 3. Viewing the subscription and usage for your enterprise account -You can view your current subscription, license usage, invoices, payment history, and other billing information for your enterprise account at any time. Both enterprise owners and billing managers can access and manage billing settings for enterprise accounts. For more information, see "[Viewing the subscription and usage for your enterprise account](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/viewing-the-subscription-and-usage-for-your-enterprise-account)." +You can view your current subscription, license usage, invoices, payment history, and other billing information for your enterprise account at any time. Both enterprise owners and billing managers can access and manage billing settings for enterprise accounts. For more information, see "[Viewing the subscription and usage for your enterprise account](/enterprise-cloud@latest/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)." ## Part 3: Managing your organization or enterprise members and teams with {% data variables.product.prodname_ghe_cloud %} @@ -90,18 +91,18 @@ You can set permissions and member roles, create and manage teams, and give peop ### Managing members of an enterprise account Managing members of an enterprise is separate from managing members or teams in an organization. It is important to note that enterprise owners or administrators cannot access organization-level settings or manage members for organizations in their enterprise unless they are made an organization owner. For more information, see the above section, "[Managing members and teams in your organization](#managing-members-and-teams-in-your-organization)." -If your enterprise uses {% data variables.product.prodname_emus %}, your members are fully managed through your identity provider. Adding members, making changes to their membership, and assigning roles is all managed using your IdP. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +If your enterprise uses {% data variables.product.prodname_emus %}, your members are fully managed through your identity provider. Adding members, making changes to their membership, and assigning roles is all managed using your IdP. For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." If your enterprise does not use {% data variables.product.prodname_emus %}, follow the steps below. #### 1. Assigning roles in an enterprise -By default, everyone in an enterprise is a member of the enterprise. There are also administrative roles, including enterprise owner and billing manager, that have different levels of access to enterprise settings and data. For more information, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/roles-in-an-enterprise)." +By default, everyone in an enterprise is a member of the enterprise. There are also administrative roles, including enterprise owner and billing manager, that have different levels of access to enterprise settings and data. For more information, see "[Roles in an enterprise](/enterprise-cloud@latest/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise)." #### 2. Inviting people to manage your enterprise -You can invite people to manage your enterprise as enterprise owners or billing managers, as well as remove those who no longer need access. For more information, see "[Inviting people to manage your enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise)." +You can invite people to manage your enterprise as enterprise owners or billing managers, as well as remove those who no longer need access. For more information, see "[Inviting people to manage your enterprise](/enterprise-cloud@latest/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise)." -You can also grant enterprise members the ability to manage support tickets in the support portal. For more information, see "[Managing support entitlements for your enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise)." +You can also grant enterprise members the ability to manage support tickets in the support portal. For more information, see "[Managing support entitlements for your enterprise](/admin/user-management/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise)." #### 3. Viewing people in your enterprise -To audit access to enterprise-owned resources or user license usage, you can view every enterprise administrator, enterprise member, and outside collaborator in your enterprise. You can see the organizations that a member belongs to and the specific repositories that an outside collaborator has access to. For more information, see "[Viewing people in your enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-people-in-your-enterprise)." +To audit access to enterprise-owned resources or user license usage, you can view every enterprise administrator, enterprise member, and outside collaborator in your enterprise. You can see the organizations that a member belongs to and the specific repositories that an outside collaborator has access to. For more information, see "[Viewing people in your enterprise](/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise)." ## Part 4: Managing security with {% data variables.product.prodname_ghe_cloud %} @@ -131,15 +132,15 @@ With {% data variables.product.prodname_emus %}, access and identity is managed #### 1. Enabling and SAML single sign-on and provisioning in your {% data variables.product.prodname_emu_enterprise %} -In an {% data variables.product.prodname_emu_enterprise %}, all members are provisioned and managed by your identity provider. You must enable SAML SSO and SCIM provisioning before you can start using your enterprise. For more information on configuring SAML SSO and provisioning for an {% data variables.product.prodname_emu_enterprise %}, see "[Configuring SAML single sign-on for Enterprise Managed Users](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users)." +In an {% data variables.product.prodname_emu_enterprise %}, all members are provisioned and managed by your identity provider. You must enable SAML SSO and SCIM provisioning before you can start using your enterprise. For more information on configuring SAML SSO and provisioning for an {% data variables.product.prodname_emu_enterprise %}, see "[Configuring SAML single sign-on for Enterprise Managed Users](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users)." #### 2. Managing teams in your {% data variables.product.prodname_emu_enterprise %} with your identity provider -You can connect teams in your organizations to security groups in your identity provider, managing membership of your teams and access to repositories through your IdP. For more information, see "[Managing team memberships with identity provider groups](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups)." +You can connect teams in your organizations to security groups in your identity provider, managing membership of your teams and access to repositories through your IdP. For more information, see "[Managing team memberships with identity provider groups](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups)." #### 3. Managing allowed IP addresses for organizations in your {% data variables.product.prodname_emu_enterprise %} -You can configure an allow list for specific IP addresses to restrict access to assets owned by organizations in your {% data variables.product.prodname_emu_enterprise %}. For more information, see "[Enforcing security settings in your enterprise account](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account#managing-allowed-ip-addresses-for-organizations-in-your-enterprise-account)." +You can configure an allow list for specific IP addresses to restrict access to assets owned by organizations in your {% data variables.product.prodname_emu_enterprise %}. For more information, see "[Enforcing policies for security settings in your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)." #### 4. Enforcing policies for Advanced Security features in your {% data variables.product.prodname_emu_enterprise %} {% data reusables.getting-started.enterprise-advanced-security %} @@ -150,12 +151,12 @@ To manage security for your enterprise, you can require two-factor authenticatio #### 1. Requiring two-factor authentication and managing allowed IP addresses for organizations in your enterprise account Enterprise owners can require that organization members, billing managers, and outside collaborators in all organizations owned by an enterprise account use two-factor authentication to secure their personal accounts. Before doing so, we recommend notifying all who have access to organizations in your enterprise. You can also configure an allow list for specific IP addresses to restrict access to assets owned by organizations in your enterprise account. -For more information on enforcing two-factor authentication and allowed IP address lists, see "[Enforcing security settings in your enterprise account](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-security-settings-in-your-enterprise-account#managing-allowed-ip-addresses-for-organizations-in-your-enterprise-account)." +For more information on enforcing two-factor authentication and allowed IP address lists, see "[Enforcing policies for security settings in your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise)." #### 2. Enabling and enforcing SAML single sign-on for organizations in your enterprise account -You can centrally manage access to your enterprise's resources, organization membership and team membership using your IdP and SAM single sign-on (SSO). Enterprise owners can enable SAML SSO across all organizations owned by an enterprise account. For more information, see "[About identity and access management for your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/about-identity-and-access-management-for-your-enterprise-account)." +You can centrally manage access to your enterprise's resources, organization membership and team membership using your IdP and SAM single sign-on (SSO). Enterprise owners can enable SAML SSO across all organizations owned by an enterprise account. For more information, see "[About identity and access management for your enterprise](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/about-identity-and-access-management-for-your-enterprise)." #### 3. Managing team synchronization -You can enable and manage team sychronization between an identity provider (IdP) and {% data variables.product.prodname_dotcom %} to allow organizations owned by your enterprise account to manage team membership with IdP groups. For more information, see "[Managing team synchronization for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/managing-team-synchronization-for-organizations-in-your-enterprise-account)." +You can enable and manage team sychronization between an identity provider (IdP) and {% data variables.product.prodname_dotcom %} to allow organizations owned by your enterprise account to manage team membership with IdP groups. For more information, see "[Managing team synchronization for organizations in your enterprise account](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)." #### 4. Enforcing policies for Advanced Security features in your enterprise account {% data reusables.getting-started.enterprise-advanced-security %} @@ -175,18 +176,18 @@ To manage and moderate your organization, you can set organization policies, man To manage and moderate your enterprise, you can set policies for organizations within the enterprise, view audit logs, configure webhooks, and restrict email notifications. #### 1. Managing policies for organizations in your enterprise account -You can choose to enforce a number of policies for all organizations owned by your enterprise, or choose to allow these policies to be set in each organization. Types of policies you can enforce include repository management, project board, and team policies. For more information, see "[Set organization policies](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account)." +You can choose to enforce a number of policies for all organizations owned by your enterprise, or choose to allow these policies to be set in each organization. Types of policies you can enforce include repository management, project board, and team policies. For more information, see "[Setting policies for your enterprise](/enterprise-cloud@latest/admin/policies)." #### 2. Viewing audit logs, configuring webhooks, and restricting email notifications for your enterprise -You can view actions from all of the organizations owned by your enterprise account in the enterprise audit log. You can also configure webhooks to receive events from organizations owned by your enterprise account. For more information, see "[Viewing the audit logs for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/viewing-the-audit-logs-for-organizations-in-your-enterprise-account)" and "[Configuring webooks for organization events in your enterprise](/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account)." +You can view actions from all of the organizations owned by your enterprise account in the enterprise audit log. You can also configure webhooks to receive events from organizations owned by your enterprise account. For more information, see "[Viewing the audit logs for organizations in your enterprise](/admin/user-management/managing-organizations-in-your-enterprise/viewing-the-audit-logs-for-organizations-in-your-enterprise)" and "[Managing global webhooks](/enterprise-cloud@latest/admin/user-management/managing-users-in-your-enterprise/managing-global-webhooks)." -You can also restrict email notifications for your enterprise account so that enterprise members can only use an email address in a verified or approved domain to receive notifications. For more information, see "[Restricting email notifications for your enterprise account](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/restricting-email-notifications-for-your-enterprise-account)." +You can also restrict email notifications for your enterprise account so that enterprise members can only use an email address in a verified or approved domain to receive notifications. For more information, see "[Restricting email notifications for your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)." ## Part 6: Customizing and automating your organization or enterprise's work on {% data variables.product.prodname_dotcom %} -Members of your organization or enterprise can use tools from the {% data variables.product.prodname_marketplace %}, the {% data variables.product.product_name %} API, and existing {% data variables.product.product_name %} features to customize and automate your work. +Members of your organization or enterprise can use tools from the {% data variables.product.prodname_marketplace %}, the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, and existing {% data variables.product.product_name %} features to customize and automate your work. ### 1. Using {% data variables.product.prodname_marketplace %} {% data reusables.getting-started.marketplace %} -### 2. Using the {% data variables.product.prodname_dotcom %} API +### 2. Using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API {% data reusables.getting-started.api %} ### 3. Building {% data variables.product.prodname_actions %} {% data reusables.getting-started.actions %} diff --git a/content/get-started/onboarding/getting-started-with-github-enterprise-server.md b/content/get-started/onboarding/getting-started-with-github-enterprise-server.md index 5d956ecb1abe..07b171117f55 100644 --- a/content/get-started/onboarding/getting-started-with-github-enterprise-server.md +++ b/content/get-started/onboarding/getting-started-with-github-enterprise-server.md @@ -85,11 +85,11 @@ You can upgrade your {% data variables.product.product_name %} license to includ {% endif %} ## Part 4: Customizing and automating your enterprise's work on {% data variables.product.prodname_dotcom %} -You can customize and automate work in organizations in your enterprise with {% data variables.product.prodname_dotcom %} and {% data variables.product.prodname_oauth_apps %}, {% data variables.product.prodname_dotcom %} API, {% data variables.product.prodname_actions %}, {% data variables.product.prodname_registry %} , and {% data variables.product.prodname_pages %}. +You can customize and automate work in organizations in your enterprise with {% data variables.product.prodname_dotcom %} and {% data variables.product.prodname_oauth_apps %}, {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, {% data variables.product.prodname_actions %}, {% data variables.product.prodname_registry %} , and {% data variables.product.prodname_pages %}. ### 1. Building {% data variables.product.prodname_github_apps %} and {% data variables.product.prodname_oauth_apps %} -You can build integrations with the {% data variables.product.prodname_dotcom %} API, such as {% data variables.product.prodname_github_apps %} or {% data variables.product.prodname_oauth_apps %}, for use in organizations in your enterprise to complement and extend your workflows. For more information, see "[About apps](/developers/apps/getting-started-with-apps/about-apps)." -### 2. Using the {% data variables.product.prodname_dotcom %} API +You can build integrations with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, such as {% data variables.product.prodname_github_apps %} or {% data variables.product.prodname_oauth_apps %}, for use in organizations in your enterprise to complement and extend your workflows. For more information, see "[About apps](/developers/apps/getting-started-with-apps/about-apps)." +### 2. Using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API {% data reusables.getting-started.api %} {% ifversion ghes %} diff --git a/content/get-started/onboarding/getting-started-with-github-team.md b/content/get-started/onboarding/getting-started-with-github-team.md index 9dd0d943ff58..f98c11638dc6 100644 --- a/content/get-started/onboarding/getting-started-with-github-team.md +++ b/content/get-started/onboarding/getting-started-with-github-team.md @@ -7,14 +7,14 @@ versions: This guide will walk you through setting up, configuring and managing your {% data variables.product.prodname_team %} account as an organization owner. -## Part 1: Configuring your {% data variables.product.product_name %} account +## Part 1: Configuring your account on {% data variables.product.product_location %} As the first steps in starting with {% data variables.product.prodname_team %}, you will need to create a user account or log into your existing account on {% data variables.product.prodname_dotcom %}, create an organization, and set up billing. ### 1. About organizations Organizations are shared accounts where businesses and open-source projects can collaborate across many projects at once. Owners and administrators can manage member access to the organization's data and projects with sophisticated security and administrative features. For more information on the features of organizations, see "[About organizations](/organizations/collaborating-with-groups-in-organizations/about-organizations#terms-of-service-and-data-protection-for-organizations)." ### 2. Creating an organization and signing up for {% data variables.product.prodname_team %} -Before creating an organization, you will need to create a user account or log in to your existing {% data variables.product.prodname_dotcom %} account. For more information, see "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/get-started/signing-up-for-github/signing-up-for-a-new-github-account)." +Before creating an organization, you will need to create a user account or log in to your existing account on {% data variables.product.product_location %}. For more information, see "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/get-started/signing-up-for-github/signing-up-for-a-new-github-account)." Once your user account is set up, you can create an organization and pick a plan. This is where you can choose a {% data variables.product.prodname_team %} subscription for your organization. For more information, see "[Creating a new organization from scratch](/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch)." @@ -66,7 +66,7 @@ You can help to make your organization more secure by recommending or requiring {% data reusables.getting-started.customizing-and-automating %} ### 1. Using {% data variables.product.prodname_marketplace %} {% data reusables.getting-started.marketplace %} -### 2. Using the {% data variables.product.prodname_dotcom %} API +### 2. Using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API {% data reusables.getting-started.api %} ### 3. Building {% data variables.product.prodname_actions %} diff --git a/content/get-started/onboarding/getting-started-with-your-github-account.md b/content/get-started/onboarding/getting-started-with-your-github-account.md index 3fe691d776b7..e40531f651d2 100644 --- a/content/get-started/onboarding/getting-started-with-your-github-account.md +++ b/content/get-started/onboarding/getting-started-with-your-github-account.md @@ -5,13 +5,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- -This guide will walk you through setting up your {% data variables.product.prodname_dotcom %} account and getting started with {% data variables.product.prodname_dotcom %}'s features for collaboration and community. +This guide will walk you through setting up your {% data variables.product.company_short %} account and getting started with {% data variables.product.product_name %}'s features for collaboration and community. ## Part 1: Configuring your {% data variables.product.prodname_dotcom %} account -{% ifversion fpt %} +{% ifversion fpt or ghec %} The first steps in starting with {% data variables.product.product_name %} are to create an account, choose a product that fits your needs best, verify your email, set up two-factor authentication, and view your profile. {% elsif ghes %} The first steps in starting with {% data variables.product.product_name %} are to access your account, set up two-factor authentication, and view your profile. @@ -19,11 +20,11 @@ The first steps in starting with {% data variables.product.product_name %} are t The first steps in starting with {% data variables.product.product_name %} are to access your account and view your profile. {% endif %} -{% ifversion fpt %}There are several types of accounts on {% data variables.product.prodname_dotcom %}. {% endif %} Every person who uses {% data variables.product.product_name %} has their own user account, which can be part of multiple organizations and teams. Your user account is your identity on {% data variables.product.product_location %} and represents you as an individual. +{% ifversion fpt or ghec %}There are several types of accounts on {% data variables.product.prodname_dotcom %}. {% endif %} Every person who uses {% data variables.product.product_name %} has their own user account, which can be part of multiple organizations and teams. Your user account is your identity on {% data variables.product.product_location %} and represents you as an individual. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### 1. Creating an account -To sign up for a {% data variables.product.prodname_dotcom %} account, navigate to https://github.com/ and follow the prompts. +To sign up for an account on {% data variables.product.product_location %}, navigate to https://github.com/ and follow the prompts. To keep your {% data variables.product.prodname_dotcom %} account secure you should use a strong and unique password. For more information, see "[Creating a strong password](/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-strong-password)." @@ -46,12 +47,12 @@ The administrator of your {% data variables.product.product_name %} instance wil You will receive an email notification once your enterprise owner for {% data variables.product.product_name %} has set up your account, allowing you to authenticate with SAML single sign-on (SSO) and access your account. {% endif %} -{% ifversion fpt or ghes %} -### {% ifversion fpt %}4.{% else %}2.{% endif %} Configuring two-factor authentication +{% ifversion fpt or ghes or ghec %} +### {% ifversion fpt or ghec %}4.{% else %}2.{% endif %} Configuring two-factor authentication Two-factor authentication, or 2FA, is an extra layer of security used when logging into websites or apps. We strongly urge you to configure 2FA for the safety of your account. For more information, see "[About two-factor authentication](/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication)." {% endif %} -### {% ifversion fpt %}5.{% elsif ghes %}3.{% else %}2.{% endif %} Viewing your {% data variables.product.product_name %} profile and contribution graph -Your {% data variables.product.product_name %} profile tells people the story of your work through the repositories and gists you've pinned, the organization memberships you've chosen to publicize, the contributions you've made, and the projects you've created. For more information, see "[About your profile](/github/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-profile)" and "[Viewing contributions on your profile](/github/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/viewing-contributions-on-your-profile)." +### {% ifversion fpt or ghec %}5.{% elsif ghes %}3.{% else %}2.{% endif %} Viewing your {% data variables.product.prodname_dotcom %} profile and contribution graph +Your {% data variables.product.prodname_dotcom %} profile tells people the story of your work through the repositories and gists you've pinned, the organization memberships you've chosen to publicize, the contributions you've made, and the projects you've created. For more information, see "[About your profile](/github/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-profile)" and "[Viewing contributions on your profile](/github/setting-up-and-managing-your-github-profile/managing-contribution-graphs-on-your-profile/viewing-contributions-on-your-profile)." ## Part 2: Using {% data variables.product.product_name %}'s tools and processes To best use {% data variables.product.product_name %}, you'll need to set up Git. Git is responsible for everything {% data variables.product.prodname_dotcom %}-related that happens locally on your computer. To effectively collaborate on {% data variables.product.product_name %}, you'll write in issues and pull requests using {% data variables.product.prodname_dotcom %} Flavored Markdown. @@ -63,7 +64,7 @@ If you plan to use Git locally on your computer, whether through the command lin If you prefer to use a visual interface, you can download and use {% data variables.product.prodname_desktop %}. {% data variables.product.prodname_desktop %} comes packaged with Git, so there is no need to install Git separately. For more information, see "[Getting started with {% data variables.product.prodname_desktop %}](/desktop/installing-and-configuring-github-desktop/overview/getting-started-with-github-desktop)." -Once you install Git, you can connect to {% data variables.product.product_name %} repositories from your local computer, whether your own repository or another user's fork. When you connect to a {% data variables.product.product_name %} repository from Git, you'll need to authenticate with {% data variables.product.product_name %} using either HTTPS or SSH. For more information, see "[About remote repositories](/get-started/getting-started-with-git/about-remote-repositories)." +Once you install Git, you can connect to {% data variables.product.product_name %} repositories from your local computer, whether your own repository or another user's fork. When you connect to a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} from Git, you'll need to authenticate with {% data variables.product.product_name %} using either HTTPS or SSH. For more information, see "[About remote repositories](/get-started/getting-started-with-git/about-remote-repositories)." ### 3. Choosing how to interact with {% data variables.product.product_name %} Everyone has their own unique workflow for interacting with {% data variables.product.prodname_dotcom %}; the interfaces and methods you use depend on your preference and what works best for your needs. @@ -76,7 +77,7 @@ For more information about how to authenticate to {% data variables.product.prod | {% data variables.product.prodname_desktop %} | {% data variables.product.prodname_desktop %} extends and simplifies your {% data variables.product.prodname_dotcom_the_website %} workflow, using a visual interface instead of text commands on the command line. For more information on getting started with {% data variables.product.prodname_desktop %}, see "[Getting started with {% data variables.product.prodname_desktop %}](/desktop/installing-and-configuring-github-desktop/overview/getting-started-with-github-desktop)." | This method is best if you need or want to work with files locally, but prefer using a visual interface to use Git and interact with {% data variables.product.product_name %}. | | IDE or text editor | You can set a default text editor, like [Atom](https://atom.io/) or [Visual Studio Code](https://code.visualstudio.com/) to open and edit your files with Git, use extensions, and view the project structure. For more information, see "[Associating text editors with Git](/github/using-git/associating-text-editors-with-git)." | This is convenient if you are working with more complex files and projects and want everything in one place, since text editors or IDEs often allow you to directly access the command line in the editor. | | Command line, with or without {% data variables.product.prodname_cli %} | For the most granular control and customization of how you use Git and interact with {% data variables.product.product_name %}, you can use the command line. For more information on using Git commands, see "[Git cheatsheet](/github/getting-started-with-github/quickstart/git-cheatsheet)."

{% data variables.product.prodname_cli %} is a separate command-line tool you can install that brings pull requests, issues, {% data variables.product.prodname_actions %}, and other {% data variables.product.prodname_dotcom %} features to your terminal, so you can do all your work in one place. For more information, see "[{% data variables.product.prodname_cli %}](/github/getting-started-with-github/using-github/github-cli)." | This is most convenient if you are already working from the command line, allowing you to avoid switching context, or if you are more comfortable using the command line. | -| {% data variables.product.prodname_dotcom %} API | {% data variables.product.prodname_dotcom %} has a REST API and GraphQL API that you can use to interact with {% data variables.product.product_name %}. For more information, see "[Getting started with the API](/github/extending-github/getting-started-with-the-api)." | The {% data variables.product.prodname_dotcom %} API would be most helpful if you wanted to automate common tasks, back up your data, or create integrations that extend {% data variables.product.prodname_dotcom %}. | +| {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API | {% data variables.product.prodname_dotcom %} has a REST API and GraphQL API that you can use to interact with {% data variables.product.product_name %}. For more information, see "[Getting started with the API](/github/extending-github/getting-started-with-the-api)." | The {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API would be most helpful if you wanted to automate common tasks, back up your data, or create integrations that extend {% data variables.product.prodname_dotcom %}. | ### 4. Writing on {% data variables.product.product_name %} To make your communication clear and organized in issues and pull requests, you can use {% data variables.product.prodname_dotcom %} Flavored Markdown for formatting, which combines an easy-to-read, easy-to-write syntax with some custom functionality. For more information, see "[About writing and formatting on {% data variables.product.prodname_dotcom %}](/github/writing-on-github/about-writing-and-formatting-on-github)." @@ -117,7 +118,7 @@ You are the owner of any repository you create in your user account and have ful As the owner of a repository you can configure several settings, including the repository's visibility, topics, and social media preview. For more information, see "[Managing repository settings](/github/administering-a-repository/managing-repository-settings)." ### 5. Setting up your project for healthy contributions -{% ifversion fpt %} +{% ifversion fpt or ghec %} To encourage collaborators in your repository, you need a community that encourages people to use, contribute to, and evangelize your project. For more information, see "[Building Welcoming Communities](https://opensource.guide/building-community/)" in the Open Source Guides. By adding files like contributing guidelines, a code of conduct, and a license to your repository you can create an environment where it's easier for collaborators to make meaningful, useful contributions. For more information, see "[Setting up your project for healthy contributions](/communities/setting-up-your-project-for-healthy-contributions)." @@ -130,12 +131,12 @@ By adding files like contributing guidelines, a code of conduct, and support res You can use GitHub Issues to organize your work with issues and pull requests and manage your workflow with project boards. For more information, see "[About issues](/issues/tracking-your-work-with-issues/about-issues)" and "[About project boards](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards)." ### 7. Managing notifications -Notifications provide updates about the activity on {% data variables.product.product_name %} you've subscribed to or participated in. If you're no longer interested in a conversation, you can unsubscribe, unwatch, or customize the types of notifications you'll receive in the future. For more information, see "[About notifications](/github/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications)." +Notifications provide updates about the activity on {% data variables.product.prodname_dotcom %} you've subscribed to or participated in. If you're no longer interested in a conversation, you can unsubscribe, unwatch, or customize the types of notifications you'll receive in the future. For more information, see "[About notifications](/github/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications)." ### 8. Working with {% data variables.product.prodname_pages %} -You can use {% data variables.product.prodname_pages %} to create and host a website directly from a {% data variables.product.product_name %} repository. For more information, see "[About {% data variables.product.prodname_pages %}](/pages/getting-started-with-github-pages/about-github-pages)." +You can use {% data variables.product.prodname_pages %} to create and host a website directly from a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. For more information, see "[About {% data variables.product.prodname_pages %}](/pages/getting-started-with-github-pages/about-github-pages)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### 9. Using {% data variables.product.prodname_discussions %} You can enable {% data variables.product.prodname_discussions %} for your repository to help build a community around your project. Maintainers, contributors and visitors can use discussions to share announcements, ask and answer questions, and participate in conversations around goals. For more information, see "[About discussions](/discussions/collaborating-with-your-community-using-discussions/about-discussions)." {% endif %} @@ -143,20 +144,20 @@ You can enable {% data variables.product.prodname_discussions %} for your reposi {% data reusables.getting-started.customizing-and-automating %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### 1. Using {% data variables.product.prodname_marketplace %} {% data reusables.getting-started.marketplace %} {% endif %} -### {% ifversion fpt %}2.{% else %}1.{% endif %} Using the {% data variables.product.prodname_dotcom %} API +### {% ifversion fpt or ghec %}2.{% else %}1.{% endif %} Using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API {% data reusables.getting-started.api %} -### {% ifversion fpt %}3.{% else %}2.{% endif %} Building {% data variables.product.prodname_actions %} +### {% ifversion fpt or ghec %}3.{% else %}2.{% endif %} Building {% data variables.product.prodname_actions %} {% data reusables.getting-started.actions %} -### {% ifversion fpt %}4.{% else %}3.{% endif %} Publishing and managing {% data variables.product.prodname_registry %} +### {% ifversion fpt or ghec %}4.{% else %}3.{% endif %} Publishing and managing {% data variables.product.prodname_registry %} {% data reusables.getting-started.packages %} -{% ifversion fpt or ghae or ghes > 2.22 %} +{% ifversion fpt or ghae or ghes > 2.22 or ghec %} ## Part 5: Building securely on {% data variables.product.product_name %} {% data variables.product.product_name %} has a variety of security features that help keep code and secrets secure in repositories. Some features are available for all repositories, while others are only available for public repositories and repositories with a {% data variables.product.prodname_GH_advanced_security %} license. For an overview of {% data variables.product.product_name %} security features, see "[{% data variables.product.prodname_dotcom %} security features](/code-security/getting-started/github-security-features)." @@ -166,7 +167,7 @@ As a repository administrator, you can secure your repositories by configuring r For more information on steps you can take to secure your repositories, see "[Securing your repository](/code-security/getting-started/securing-your-repository)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### 2. Managing your dependencies A large part of building securely is maintaining your project's dependencies to ensure that all packages and applications you depend on are updated and secure. You can manage your repository's dependencies on {% data variables.product.product_name %} by exploring the dependency graph for your repository, using Dependabot to automatically raise pull requests to keep your dependencies up-to-date, and receiving Dependabot alerts and security updates for vulnerable dependencies. @@ -186,13 +187,15 @@ For more information, see "[Securing your software supply chain](/code-security/ ### 3. Learning with {% data variables.product.prodname_learning %} {% data reusables.getting-started.learning-lab %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### 4. Supporting the open source community {% data reusables.getting-started.sponsors %} ### 5. Contacting {% data variables.contact.github_support %} {% data reusables.getting-started.contact-support %} +{% ifversion fpt %} ## Further reading - "[Getting started with {% data variables.product.prodname_team %}](/get-started/onboarding/getting-started-with-github-team)" {% endif %} +{% endif %} diff --git a/content/get-started/onboarding/index.md b/content/get-started/onboarding/index.md index a258e00fdcd4..b8228a6736f1 100644 --- a/content/get-started/onboarding/index.md +++ b/content/get-started/onboarding/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /getting-started-with-your-github-account - /getting-started-with-github-team diff --git a/content/get-started/quickstart/be-social.md b/content/get-started/quickstart/be-social.md index 4a293d6e0f23..3ef4f64c282f 100644 --- a/content/get-started/quickstart/be-social.md +++ b/content/get-started/quickstart/be-social.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Profile - Pull requests @@ -22,7 +23,7 @@ To learn about accessing your personal dashboard, see "[About your personal dash ## Following people -When you follow someone on {% data variables.product.product_location %}, you'll get notifications on your personal dashboard about their activity. For more information, see "[About your personal dashboard](/articles/about-your-personal-dashboard)." +When you follow someone on {% data variables.product.prodname_dotcom %}, you'll get notifications on your personal dashboard about their activity. For more information, see "[About your personal dashboard](/articles/about-your-personal-dashboard)." Click **Follow** on a person's profile page to follow them. @@ -30,7 +31,7 @@ Click **Follow** on a person's profile page to follow them. ## Watching a repository -You can watch a repository to receive notifications for new pull requests and issues. When the owner updates the repository, you'll see the changes in your personal dashboard. For more information see {% ifversion fpt or ghae or ghes %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions){% else %}"[Watching and unwatching repositories](/github/receiving-notifications-about-activity-on-github/watching-and-unwatching-repositories){% endif %}." +You can watch a repository to receive notifications for new pull requests and issues. When the owner updates the repository, you'll see the changes in your personal dashboard. For more information see {% ifversion fpt or ghae or ghes or ghec %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions){% else %}"[Watching and unwatching repositories](/github/receiving-notifications-about-activity-on-github/watching-and-unwatching-repositories){% endif %}." Click **Watch** at the top of a repository to watch it. diff --git a/content/get-started/quickstart/communicating-on-github.md b/content/get-started/quickstart/communicating-on-github.md index a064f7a0ccb8..6ef7d110068b 100644 --- a/content/get-started/quickstart/communicating-on-github.md +++ b/content/get-started/quickstart/communicating-on-github.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues @@ -22,7 +23,7 @@ topics: {% data variables.product.product_name %} provides built-in collaborative communication tools allowing you to interact closely with your community. This quickstart guide will show you how to pick the right tool for your needs. -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can create and participate in issues, pull requests, {% data variables.product.prodname_discussions %}, and team discussions, depending on the type of conversation you'd like to have. {% endif %} {% ifversion ghes or ghae %} @@ -39,7 +40,7 @@ You can create and participate in issues, pull requests and team discussions, de - allow you to comment directly on proposed changes suggested by others. - are specific to a repository. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### {% data variables.product.prodname_discussions %} - are like a forum, and are best used for open-form ideas and discussions where collaboration is important. - may span many repositories. @@ -98,7 +99,7 @@ The **Files changed** tab of the pull request shows the implemented fix. - The user creates a pull request with the fix. - A repository maintainer reviews the pull request, comments on it, and merges it. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Scenarios for {% data variables.product.prodname_discussions %} - I have a question that's not necessarily related to specific files in the repository. @@ -115,7 +116,7 @@ This example shows the {% data variables.product.prodname_discussions %} welcome This community maintainer started a discussion to welcome the community, and to ask members to introduce themselves. This post fosters an inviting atmosphere for visitors and contributors. The post also clarifies that the team's happy to help with contributions to the repository. {% endif %} -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ### Scenarios for team discussions - I have a question that's not necessarily related to specific files in the repository. @@ -123,7 +124,7 @@ This community maintainer started a discussion to welcome the community, and to - I want to start or participate in an open-ended conversation. - I want to make an announcement to my team. -{% ifversion fpt %} +{% ifversion fpt or ghec %} As you can see, team discussions are very similar to {% data variables.product.prodname_discussions %}. For {% data variables.product.prodname_dotcom_the_website %}, we recommend using {% data variables.product.prodname_discussions %} as the starting point for conversations. You can use {% data variables.product.prodname_discussions %} to collaborate with any community on {% data variables.product.prodname_dotcom %}. If you are part of an organization, and would like to initiate conversations within your organization or team within that organization, you should use team discussions. {% endif %} @@ -148,7 +149,7 @@ For issues, for example, you can tag issues with labels for quicker searching an For pull requests, you can create draft pull requests if your proposed changes are still a work in progress. Draft pull requests cannot be merged until they're marked as ready for review. For more information, see "[About pull requests](/github/collaborating-with-issues-and-pull-requests/about-pull-requests#draft-pull-requests)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} For {% data variables.product.prodname_discussions %}, you can set up a code of conduct and pin discussions that contain important information for your community. For more information, see "[About discussions](/discussions/collaborating-with-your-community-using-discussions/about-discussions)." {% endif %} diff --git a/content/get-started/quickstart/create-a-repo.md b/content/get-started/quickstart/create-a-repo.md index 3ce78ff69e6a..2610f8cb1f2d 100644 --- a/content/get-started/quickstart/create-a-repo.md +++ b/content/get-started/quickstart/create-a-repo.md @@ -5,11 +5,12 @@ redirect_from: - /articles/create-a-repo - /github/getting-started-with-github/create-a-repo - /github/getting-started-with-github/quickstart/create-a-repo -intro: 'To put your project up on {% data variables.product.product_location %}, you''ll need to create a repository for it to live in.' +intro: 'To put your project up on {% data variables.product.prodname_dotcom %}, you''ll need to create a repository for it to live in.' versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues @@ -18,9 +19,9 @@ topics: --- ## Create a repository -{% ifversion fpt %} +{% ifversion fpt or ghec %} -You can store a variety of projects in {% data variables.product.product_name %} repositories, including open source projects. With [open source projects](http://opensource.org/about), you can share code to make better, more reliable software. You can use repositories to collaborate with others and track your work. For more information, see "[About repositories](/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-repositories)." +You can store a variety of projects in {% data variables.product.prodname_dotcom %} repositories, including open source projects. With [open source projects](http://opensource.org/about), you can share code to make better, more reliable software. You can use repositories to collaborate with others and track your work. For more information, see "[About repositories](/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-repositories)." {% elsif ghes or ghae %} @@ -28,7 +29,7 @@ You can store a variety of projects in {% data variables.product.product_name %} {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} @@ -141,12 +142,12 @@ Congratulations! You have now created a repository, including a *README* file, a {% webui %} -You can now clone a {% data variables.product.product_name %} repository to create a local copy on your computer. From your local repository you can commit, and create a pull request to update the changes in the upstream repository. For more information, see "[Cloning a repository](/github/creating-cloning-and-archiving-repositories/cloning-a-repository)" and "[Set up Git](/articles/set-up-git)." +You can now clone a {% data variables.product.prodname_dotcom %} repository to create a local copy on your computer. From your local repository you can commit, and create a pull request to update the changes in the upstream repository. For more information, see "[Cloning a repository](/github/creating-cloning-and-archiving-repositories/cloning-a-repository)" and "[Set up Git](/articles/set-up-git)." {% endwebui %} -You can find interesting projects and repositories on {% data variables.product.product_name %} and make changes to them by creating a fork of the repository. For more information see, "[Fork a repository](/articles/fork-a-repo)." +You can find interesting projects and repositories on {% data variables.product.prodname_dotcom %} and make changes to them by creating a fork of the repository. For more information see, "[Fork a repository](/articles/fork-a-repo)." -Each repository in {% data variables.product.product_name %} is owned by a person or an organization. You can interact with the people, repositories, and organizations by connecting and following them on {% data variables.product.product_name %}. For more information see "[Be social](/articles/be-social)." +Each repository in {% data variables.product.prodname_dotcom %} is owned by a person or an organization. You can interact with the people, repositories, and organizations by connecting and following them on {% data variables.product.prodname_dotcom %}. For more information see "[Be social](/articles/be-social)." {% data reusables.support.connect-in-the-forum-bootcamp %} diff --git a/content/get-started/quickstart/fork-a-repo.md b/content/get-started/quickstart/fork-a-repo.md index 0156686518b0..a3a959faac03 100644 --- a/content/get-started/quickstart/fork-a-repo.md +++ b/content/get-started/quickstart/fork-a-repo.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues @@ -36,7 +37,7 @@ Open source software is based on the idea that by sharing code, we can make bett For more information about applying open source principles to your organization's development work on {% data variables.product.product_location %}, see {% data variables.product.prodname_dotcom %}'s white paper "[An introduction to innersource](https://resources.github.com/whitepapers/introduction-to-innersource/)." -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} When creating your public repository from a fork of someone's project, make sure to include a license file that determines how you want your project to be shared with others. For more information, see "[Choose an open source license](https://choosealicense.com/)" at choosealicense.com. @@ -55,7 +56,7 @@ If you haven't yet, you should first [set up Git](/articles/set-up-git). Don't f You might fork a project to propose changes to the upstream, or original, repository. In this case, it's good practice to regularly sync your fork with the upstream repository. To do this, you'll need to use Git on the command line. You can practice setting the upstream repository using the same [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository you just forked. -1. On {% data variables.product.product_location %}, navigate to the [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository. +1. On {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_location %}{% endif %}, navigate to the [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository. 2. In the top-right corner of the page, click **Fork**. ![Fork button](/assets/images/help/repository/fork_button.jpg) @@ -89,7 +90,7 @@ Right now, you have a fork of the Spoon-Knife repository, but you don't have the {% include tool-switcher %} {% webui %} -1. On {% data variables.product.product_name %}, navigate to **your fork** of the Spoon-Knife repository. +1. On {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_location %}{% endif %}, navigate to **your fork** of the Spoon-Knife repository. {% data reusables.repositories.copy-clone-url %} {% data reusables.command_line.open_the_multi_os_terminal %} {% data reusables.command_line.change-current-directory-clone %} @@ -139,7 +140,7 @@ When you fork a project in order to propose changes to the original repository, {% include tool-switcher %} {% webui %} -1. On {% data variables.product.product_name %}, navigate to the [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository. +1. On {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_location %}{% endif %}, navigate to the [octocat/Spoon-Knife](https://github.com/octocat/Spoon-Knife) repository. {% data reusables.repositories.copy-clone-url %} {% data reusables.command_line.open_the_multi_os_terminal %} 4. Change directories to the location of the fork you cloned. @@ -200,7 +201,7 @@ You can make any changes to a fork, including: ## Find another repository to fork Fork a repository to start contributing to a project. {% data reusables.repositories.you-can-fork %} -{% ifversion fpt %}You can browse [Explore](https://github.com/explore) to find projects and start contributing to open source repositories. For more information, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)." +{% ifversion fpt or ghec %}You can browse [Explore](https://github.com/explore) to find projects and start contributing to open source repositories. For more information, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)." {% endif %} diff --git a/content/get-started/quickstart/git-and-github-learning-resources.md b/content/get-started/quickstart/git-and-github-learning-resources.md index bf9e072a3974..b045d70bc635 100644 --- a/content/get-started/quickstart/git-and-github-learning-resources.md +++ b/content/get-started/quickstart/git-and-github-learning-resources.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' authors: - GitHub shortTitle: Learning resources @@ -21,7 +22,7 @@ Familiarize yourself with Git by visiting the [official Git project site](https: ## Using {% data variables.product.product_name %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data variables.product.prodname_learning %} offers free interactive courses that are built into {% data variables.product.prodname_dotcom %} with instant automated feedback and help. Learn to open your first pull request, make your first open source contribution, create a {% data variables.product.prodname_pages %} site, and more. For more information about course offerings, see [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}). @@ -57,6 +58,6 @@ Our {% data variables.product.prodname_dotcom %} [YouTube Training and Guides ch An interactive [online Git course](http://www.codeschool.com/courses/git-real) from [Code School](http://codeschool.com) has seven levels with dozens of exercises in a fun game format. Feel free to adapt our [.gitignore templates](https://github.com/github/gitignore) to meet your needs. -Extend your {% data variables.product.prodname_dotcom %} reach through {% ifversion fpt %}[integrations](/articles/about-integrations){% else %}integrations{% endif %}, or by installing [{% data variables.product.prodname_desktop %}](https://desktop.github.com) and the robust [Atom](https://atom.io) text editor. +Extend your {% data variables.product.prodname_dotcom %} reach through {% ifversion fpt or ghec %}[integrations](/articles/about-integrations){% else %}integrations{% endif %}, or by installing [{% data variables.product.prodname_desktop %}](https://desktop.github.com) and the robust [Atom](https://atom.io) text editor. Learn how to launch and grow your open source project with the [Open Source Guides](https://opensource.guide/). diff --git a/content/get-started/quickstart/git-cheatsheet.md b/content/get-started/quickstart/git-cheatsheet.md index 75105af5055a..b056aa2eb846 100644 --- a/content/get-started/quickstart/git-cheatsheet.md +++ b/content/get-started/quickstart/git-cheatsheet.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' intro: This Git cheat sheet is a time saver when you forget a command or don't want to use help in the CLI. --- Learning all available Git commands at once can be a daunting task. You can use "[Git Cheat Sheets](https://training.github.com/)" for a quick reference to frequently used commands. The "Using Git" cheat sheet is available in several languages. diff --git a/content/get-started/quickstart/github-flow.md b/content/get-started/quickstart/github-flow.md index 94f784dbdec6..0e86e470d251 100644 --- a/content/get-started/quickstart/github-flow.md +++ b/content/get-started/quickstart/github-flow.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Fundamentals @@ -23,14 +24,14 @@ miniTocMaxHeadingLevel: 3 ## Prerequisites -To follow {% data variables.product.prodname_dotcom %} flow, you will need {% data variables.product.prodname_dotcom %} account and a repository. For information on how to create an account, see "[Signing up for {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/signing-up-for-github)." For information on how to create a repository, see "[Create a repo](/github/getting-started-with-github/create-a-repo)."{% ifversion fpt %} For information on how to find an existing repository to contribute to, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)."{% endif %} +To follow {% data variables.product.prodname_dotcom %} flow, you will need {% data variables.product.prodname_dotcom %} account and a repository. For information on how to create an account, see "[Signing up for {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/signing-up-for-github)." For information on how to create a repository, see "[Create a repo](/github/getting-started-with-github/create-a-repo)."{% ifversion fpt or ghec %} For information on how to find an existing repository to contribute to, see "[Finding ways to contribute to open source on {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)."{% endif %} ## Following {% data variables.product.prodname_dotcom %} flow {% tip %} -{% ifversion fpt %} -**Tip:** You can complete all steps of {% data variables.product.prodname_dotcom %} flow through {% data variables.product.prodname_dotcom %} web interface, command line and [{% data variables.product.prodname_cli %}](https://cli.github.com), or [{% data variables.product.prodname_desktop %}](/desktop). +{% ifversion fpt or ghec %} +**Tip:** You can complete all steps of {% data variables.product.prodname_dotcom %} flow through {% data variables.product.prodname_dotcom %} web interface, command line and [{% data variables.product.prodname_cli %}](https://cli.github.com), or [{% data variables.product.prodname_desktop %}](/free-pro-team@latest/desktop). {% else %} **Tip:** You can complete all steps of {% data variables.product.prodname_dotcom %} flow through {% data variables.product.prodname_dotcom %} web interface or through the command line and [{% data variables.product.prodname_cli %}](https://cli.github.com). {% endif %} diff --git a/content/get-started/quickstart/github-glossary.md b/content/get-started/quickstart/github-glossary.md index 39a4df199cf8..18434a518223 100644 --- a/content/get-started/quickstart/github-glossary.md +++ b/content/get-started/quickstart/github-glossary.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% for term in site.data.glossaries.external %} ### {% data glossaries.external[forloop.index0].term %} diff --git a/content/get-started/quickstart/index.md b/content/get-started/quickstart/index.md index 9ec9e023f5bb..00ef39c97336 100644 --- a/content/get-started/quickstart/index.md +++ b/content/get-started/quickstart/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues diff --git a/content/get-started/quickstart/set-up-git.md b/content/get-started/quickstart/set-up-git.md index a984e7652e4e..836d69cabcf4 100644 --- a/content/get-started/quickstart/set-up-git.md +++ b/content/get-started/quickstart/set-up-git.md @@ -12,11 +12,12 @@ redirect_from: - /articles/set-up-git - /github/getting-started-with-github/set-up-git - /github/getting-started-with-github/quickstart/set-up-git -intro: 'At the heart of {% data variables.product.product_name %} is an open source version control system (VCS) called Git. Git is responsible for everything {% data variables.product.product_name %}-related that happens locally on your computer.' +intro: 'At the heart of {% data variables.product.prodname_dotcom %} is an open source version control system (VCS) called Git. Git is responsible for everything {% data variables.product.prodname_dotcom %}-related that happens locally on your computer.' versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues @@ -25,7 +26,7 @@ topics: --- ## Using Git -To use Git on the command line, you'll need to download, install, and configure Git on your computer. You can also install {% data variables.product.prodname_cli %} to use {% data variables.product.product_name %} from the command line. For more information, see "[About {% data variables.product.prodname_cli %}](/github-cli/github-cli/about-github-cli)." +To use Git on the command line, you'll need to download, install, and configure Git on your computer. You can also install {% data variables.product.prodname_cli %} to use {% data variables.product.prodname_dotcom %} from the command line. For more information, see "[About {% data variables.product.prodname_cli %}](/github-cli/github-cli/about-github-cli)." If you want to work with Git locally, but don't want to use the command line, you can instead download and install the [{% data variables.product.prodname_desktop %}]({% data variables.product.desktop_link %}) client. For more information, see "[Installing and configuring {% data variables.product.prodname_desktop %}](/desktop/installing-and-configuring-github-desktop/)." @@ -44,7 +45,7 @@ If you don't need to work with files locally, {% data variables.product.product_ ## Next steps: Authenticating with {% data variables.product.prodname_dotcom %} from Git -When you connect to a {% data variables.product.product_name %} repository from Git, you'll need to authenticate with {% data variables.product.product_name %} using either HTTPS or SSH. +When you connect to a {% data variables.product.prodname_dotcom %} repository from Git, you'll need to authenticate with {% data variables.product.product_name %} using either HTTPS or SSH. {% note %} @@ -62,10 +63,10 @@ If you [clone with SSH](/github/getting-started-with-github/about-remote-reposit ## Celebrate -Congratulations, you now have Git and {% data variables.product.product_name %} all set up! You may now choose to create a repository where you can put your projects. This is a great way to back up your code and makes it easy to share the code around the world. For more information see "[Create a repository](/articles/create-a-repo)". +Congratulations, you now have Git and {% data variables.product.prodname_dotcom %} all set up! You may now choose to create a repository where you can put your projects. This is a great way to back up your code and makes it easy to share the code around the world. For more information see "[Create a repository](/articles/create-a-repo)". You can create a copy of a repository by forking it and propose the changes that you want to see without affecting the upstream repository. For more information see "[Fork a repository](/articles/fork-a-repo)." -Each repository in {% data variables.product.product_name %} is owned by a person or an organization. You can interact with the people, repositories, and organizations by connecting and following them on {% data variables.product.product_name %}. For more information see "[Be social](/articles/be-social)." +Each repository on {% data variables.product.prodname_dotcom %} is owned by a person or an organization. You can interact with the people, repositories, and organizations by connecting and following them on {% data variables.product.product_name %}. For more information see "[Be social](/articles/be-social)." {% data reusables.support.connect-in-the-forum-bootcamp %} diff --git a/content/get-started/signing-up-for-github/index.md b/content/get-started/signing-up-for-github/index.md index 118c07fd292c..d5796380d64a 100644 --- a/content/get-started/signing-up-for-github/index.md +++ b/content/get-started/signing-up-for-github/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Accounts children: diff --git a/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-cloud.md b/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-cloud.md index 1fe5edd68d0e..ba8a064edd18 100644 --- a/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-cloud.md +++ b/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-cloud.md @@ -7,6 +7,7 @@ redirect_from: - /github/getting-started-with-github/signing-up-for-github/setting-up-a-trial-of-github-enterprise-cloud versions: fpt: '*' + ghec: '*' ghes: '*' topics: - Accounts diff --git a/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-server.md b/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-server.md index 8da7286744eb..2f786d49a43d 100644 --- a/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-server.md +++ b/content/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-server.md @@ -8,6 +8,7 @@ redirect_from: - /github/getting-started-with-github/signing-up-for-github/setting-up-a-trial-of-github-enterprise-server versions: fpt: '*' + ghec: '*' ghes: '*' topics: - Accounts @@ -15,9 +16,9 @@ shortTitle: Enterprise Server trial --- ## About trials of {% data variables.product.prodname_ghe_server %} -You can request a 45-day trial to evaluate {% data variables.product.prodname_ghe_server %}. Your trial will be installed as a virtual appliance, with options for on-premises or cloud deployment. For a list of supported visualization platforms, see "[Setting up a GitHub Enterprise Server instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)." +You can request a 45-day trial to evaluate {% data variables.product.prodname_ghe_server %}. Your trial will be installed as a virtual appliance, with options for on-premises or cloud deployment. For a list of supported visualization platforms, see "[Setting up a GitHub Enterprise Server instance](/enterprise-server@latest/admin/installation/setting-up-a-github-enterprise-server-instance)." -{% ifversion ghes %}{% data variables.product.prodname_dependabot %}{% else %}Security{% endif %} alerts and {% data variables.product.prodname_github_connect %} are not currently available in trials of {% data variables.product.prodname_ghe_server %}. For a demonstration of these features, contact {% data variables.contact.contact_enterprise_sales %}. For more information about these features, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)" and "[Connecting your enterprise account to {% data variables.product.prodname_dotcom_the_website %}](/admin/configuration/managing-connections-between-your-enterprise-accounts/connecting-your-enterprise-account-to-github-enterprise-cloud)." +{% ifversion ghes %}{% data variables.product.prodname_dependabot %}{% else %}Security{% endif %} alerts and {% data variables.product.prodname_github_connect %} are not currently available in trials of {% data variables.product.prodname_ghe_server %}. For a demonstration of these features, contact {% data variables.contact.contact_enterprise_sales %}. For more information about these features, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)" and "[Connecting your enterprise account to {% data variables.product.prodname_ghe_cloud %}](/enterprise-server@latest/admin/configuration/managing-connections-between-your-enterprise-accounts/connecting-your-enterprise-account-to-github-enterprise-cloud)." Trials are also available for {% data variables.product.prodname_ghe_cloud %}. For more information, see "[Setting up a trial of {% data variables.product.prodname_ghe_cloud %}](/articles/setting-up-a-trial-of-github-enterprise-cloud)." @@ -27,23 +28,23 @@ Trials are also available for {% data variables.product.prodname_ghe_cloud %}. F {% data variables.product.prodname_ghe_server %} is installed as a virtual appliance. Determine the best person in your organization to set up a virtual machine, and ask that person to submit a [trial request](https://enterprise.github.com/trial). You can begin your trial immediately after submitting a request. -To set up an account for the {% data variables.product.prodname_enterprise %} Web portal, click the link in the email you received after submitting your trial request, and follow the prompts. Then, download your license file. For more information, see "[Managing your license for {% data variables.product.prodname_enterprise %}](/billing/managing-your-license-for-github-enterprise)." +To set up an account for the {% data variables.product.prodname_enterprise %} Web portal, click the link in the email you received after submitting your trial request, and follow the prompts. Then, download your license file. For more information, see "[Managing your license for {% data variables.product.prodname_enterprise %}](/enterprise-server@latest/billing/managing-your-license-for-github-enterprise)." -To install {% data variables.product.prodname_ghe_server %}, download the necessary components and upload your license file. For more information, see the instructions for your chosen visualization platform in "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/enterprise/admin/installation/setting-up-a-github-enterprise-server-instance)." +To install {% data variables.product.prodname_ghe_server %}, download the necessary components and upload your license file. For more information, see the instructions for your chosen visualization platform in "[Setting up a {% data variables.product.prodname_ghe_server %} instance](/enterprise-server@latest/admin/installation/setting-up-a-github-enterprise-server-instance)." ## Next steps To get the most out of your trial, follow these steps: -1. [Create an organization](/enterprise/admin/user-management/creating-organizations). +1. [Create an organization](/enterprise-server@latest/admin/user-management/creating-organizations). 2. To learn the basics of using {% data variables.product.prodname_dotcom %}, see: - [Quick start guide to {% data variables.product.prodname_dotcom %}](https://resources.github.com/webcasts/Quick-start-guide-to-GitHub/) webcast - [Understanding the {% data variables.product.prodname_dotcom %} flow](https://guides.github.com/introduction/flow/) in {% data variables.product.prodname_dotcom %} Guides - [Hello World](https://guides.github.com/activities/hello-world/) in {% data variables.product.prodname_dotcom %} Guides -3. To configure your instance to meet your organization's needs, see "[Configuring your enterprise](/enterprise/admin/configuration/configuring-your-enterprise)." -4. To integrate {% data variables.product.prodname_ghe_server %} with your identity provider, see "[Using SAML](/enterprise/admin/user-management/using-saml)" and "[Using LDAP](/enterprise/admin/authentication/using-ldap)." +3. To configure your instance to meet your organization's needs, see "[Configuring your enterprise](/enterprise-server@latest/admin/configuration/configuring-your-enterprise)." +4. To integrate {% data variables.product.prodname_ghe_server %} with your identity provider, see "[Using SAML](/enterprise-server@latest/admin/user-management/using-saml)" and "[Using LDAP](/enterprise-server@latest/admin/authentication/using-ldap)." 5. Invite an unlimited number of people to join your trial. - - Add users to your {% data variables.product.prodname_ghe_server %} instance using built-in authentication or your configured identity provider. For more information, see "[Using built in authentication](/enterprise/admin/user-management/using-built-in-authentication)." + - Add users to your {% data variables.product.prodname_ghe_server %} instance using built-in authentication or your configured identity provider. For more information, see "[Using built in authentication](/enterprise-server@latest/admin/user-management/using-built-in-authentication)." - To invite people to become account administrators, visit the [{% data variables.product.prodname_enterprise %} Web portal](https://enterprise.github.com/login). {% note %} @@ -62,4 +63,4 @@ If you haven't upgraded by the last day of your trial, you'll receive an email n ## Further reading -- "[Setting up a trial of {% data variables.product.prodname_ghe_cloud %}](/articles/setting-up-a-trial-of-github-enterprise-cloud)" +- "[Setting up a trial of {% data variables.product.prodname_ghe_cloud %}](/get-started/signing-up-for-github/setting-up-a-trial-of-github-enterprise-cloud)" diff --git a/content/get-started/signing-up-for-github/signing-up-for-a-new-github-account.md b/content/get-started/signing-up-for-github/signing-up-for-a-new-github-account.md index c70f73b94e4c..6735d3d15d18 100644 --- a/content/get-started/signing-up-for-github/signing-up-for-a-new-github-account.md +++ b/content/get-started/signing-up-for-github/signing-up-for-a-new-github-account.md @@ -1,17 +1,18 @@ --- title: Signing up for a new GitHub account shortTitle: Sign up for a new GitHub account -intro: '{% data variables.product.product_name %} offers user accounts for individuals and organizations for teams of people working together.' +intro: '{% data variables.product.company_short %} offers user accounts for individuals and organizations for teams of people working together.' redirect_from: - /articles/signing-up-for-a-new-github-account - /github/getting-started-with-github/signing-up-for-a-new-github-account - /github/getting-started-with-github/signing-up-for-github/signing-up-for-a-new-github-account versions: fpt: '*' + ghec: '*' topics: - Accounts --- -For more information about account types and products, see "[Types of {% data variables.product.prodname_dotcom %} accounts](/articles/types-of-github-accounts)" and "[{% data variables.product.product_name %}'s products](/articles/github-s-products)." +For more information about account types and products, see "[Types of {% data variables.product.prodname_dotcom %} accounts](/articles/types-of-github-accounts)" and "[{% data variables.product.company_short %}'s products](/articles/github-s-products)." {% data reusables.accounts.create-account %} 1. Follow the prompts to create your personal account or organization. diff --git a/content/get-started/signing-up-for-github/verifying-your-email-address.md b/content/get-started/signing-up-for-github/verifying-your-email-address.md index b14fe7f1525b..bab72cc1e64d 100644 --- a/content/get-started/signing-up-for-github/verifying-your-email-address.md +++ b/content/get-started/signing-up-for-github/verifying-your-email-address.md @@ -9,6 +9,7 @@ redirect_from: - /github/getting-started-with-github/signing-up-for-github/verifying-your-email-address versions: fpt: '*' + ghec: '*' topics: - Accounts shortTitle: Verify your email address @@ -58,11 +59,11 @@ If you do not verify your email address, you will not be able to: The verification link expires after 24 hours. If you don't verify your email within 24 hours, you can request another email verification link. For more information, see "[Verifying your email address](/articles/verifying-your-email-address)." -If you click on the link in the confirmation email within 24 hours and you are directed to an error page, you should ensure that you're signed into the correct {% data variables.product.prodname_dotcom %} account. +If you click on the link in the confirmation email within 24 hours and you are directed to an error page, you should ensure that you're signed into the correct account on {% data variables.product.product_location %}. -1. {% data variables.product.signout_link %} of your personal {% data variables.product.prodname_dotcom %} account. +1. {% data variables.product.signout_link %} of your personal account on {% data variables.product.product_location %}. 2. Quit and restart your browser. -3. {% data variables.product.signin_link %} to your personal {% data variables.product.prodname_dotcom %} account. +3. {% data variables.product.signin_link %} to your personal account on {% data variables.product.product_location %}. 4. Click on the verification link in the email we sent you. ## Further reading diff --git a/content/get-started/using-git/about-git-rebase.md b/content/get-started/using-git/about-git-rebase.md index 824c16ebe49a..506896e2dad0 100644 --- a/content/get-started/using-git/about-git-rebase.md +++ b/content/get-started/using-git/about-git-rebase.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- Typically, you would use `git rebase` to: diff --git a/content/get-started/using-git/about-git-subtree-merges.md b/content/get-started/using-git/about-git-subtree-merges.md index 77fe20b86262..1e415bca6c64 100644 --- a/content/get-started/using-git/about-git-subtree-merges.md +++ b/content/get-started/using-git/about-git-subtree-merges.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## About subtree merges diff --git a/content/get-started/using-git/dealing-with-non-fast-forward-errors.md b/content/get-started/using-git/dealing-with-non-fast-forward-errors.md index 6dd4c4607b51..46e0c1673eab 100644 --- a/content/get-started/using-git/dealing-with-non-fast-forward-errors.md +++ b/content/get-started/using-git/dealing-with-non-fast-forward-errors.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Non-fast-forward error --- If another person has pushed to the same branch as you, Git won't be able to push your changes: diff --git a/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md b/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md index e8c3daae8bae..44430df44033 100644 --- a/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md +++ b/content/get-started/using-git/dealing-with-special-characters-in-branch-and-tag-names.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Special characters in names --- diff --git a/content/get-started/using-git/getting-changes-from-a-remote-repository.md b/content/get-started/using-git/getting-changes-from-a-remote-repository.md index a596e0d7f55c..6b71cc6a02e0 100644 --- a/content/get-started/using-git/getting-changes-from-a-remote-repository.md +++ b/content/get-started/using-git/getting-changes-from-a-remote-repository.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Get changes from a remote --- ## Options for getting changes @@ -82,5 +83,5 @@ to take the branch back to where it was in before you pulled. ## Further reading -- ["Working with Remotes" from the _Pro Git_ book](https://git-scm.com/book/en/Git-Basics-Working-with-Remotes)"{% ifversion fpt %} +- ["Working with Remotes" from the _Pro Git_ book](https://git-scm.com/book/en/Git-Basics-Working-with-Remotes)"{% ifversion fpt or ghec %} - "[Troubleshooting connectivity problems](/articles/troubleshooting-connectivity-problems)"{% endif %} diff --git a/content/get-started/using-git/index.md b/content/get-started/using-git/index.md index 27ece3b34547..bfa3aee026b8 100644 --- a/content/get-started/using-git/index.md +++ b/content/get-started/using-git/index.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /pushing-commits-to-a-remote-repository - /getting-changes-from-a-remote-repository diff --git a/content/get-started/using-git/pushing-commits-to-a-remote-repository.md b/content/get-started/using-git/pushing-commits-to-a-remote-repository.md index 2ab5e3afee29..bb4133748752 100644 --- a/content/get-started/using-git/pushing-commits-to-a-remote-repository.md +++ b/content/get-started/using-git/pushing-commits-to-a-remote-repository.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Push commits to a remote --- ## About `git push` diff --git a/content/get-started/using-git/resolving-merge-conflicts-after-a-git-rebase.md b/content/get-started/using-git/resolving-merge-conflicts-after-a-git-rebase.md index 3f000a7b62bf..c13fa781f7f8 100644 --- a/content/get-started/using-git/resolving-merge-conflicts-after-a-git-rebase.md +++ b/content/get-started/using-git/resolving-merge-conflicts-after-a-git-rebase.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Resolve conflicts after rebase --- After you reorder and manipulate commits using `git rebase`, should a merge conflict occur, Git will tell you so with the following message printed to the terminal: diff --git a/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md b/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md index 0bc537c43952..486fc035def6 100644 --- a/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md +++ b/content/get-started/using-git/splitting-a-subfolder-out-into-a-new-repository.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Splitting a subfolder --- If you create a new clone of the repository, you won't lose any of your Git history or changes when you split a folder into a separate repository. @@ -47,7 +48,7 @@ If you create a new clone of the repository, you won't lose any of your Git hist The repository should now only contain the files that were in your subfolder(s). 6. [Create a new repository](/articles/creating-a-new-repository/) on {% data variables.product.product_name %}. -7. At the top of your new {% data variables.product.product_name %} repository's Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. +7. At the top of your new repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}'s Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. ![Copy remote repository URL field](/assets/images/help/repository/copy-remote-repository-url-quick-setup.png) {% tip %} diff --git a/content/get-started/using-git/using-git-rebase-on-the-command-line.md b/content/get-started/using-git/using-git-rebase-on-the-command-line.md index c2b3ea07890a..793e4eaa9215 100644 --- a/content/get-started/using-git/using-git-rebase-on-the-command-line.md +++ b/content/get-started/using-git/using-git-rebase-on-the-command-line.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Git rebase --- ## Using Git rebase diff --git a/content/get-started/using-github/exploring-early-access-releases-with-feature-preview.md b/content/get-started/using-github/exploring-early-access-releases-with-feature-preview.md index 6bbadfabf442..a75ba046ad9a 100644 --- a/content/get-started/using-github/exploring-early-access-releases-with-feature-preview.md +++ b/content/get-started/using-github/exploring-early-access-releases-with-feature-preview.md @@ -7,13 +7,14 @@ redirect_from: - /github/getting-started-with-github/using-github/exploring-early-access-releases-with-feature-preview versions: fpt: '*' + ghec: '*' topics: - Early access shortTitle: Feature preview --- ## {% data variables.product.prodname_dotcom %}'s release cycle -{% data variables.product.product_name %}'s products and features can go through multiple release phases. +{% data variables.product.prodname_dotcom %}'s products and features can go through multiple release phases. | Phase | Description | |-------|-------------| diff --git a/content/get-started/using-github/github-cli.md b/content/get-started/using-github/github-cli.md index 977d614119b1..16e401bd3710 100644 --- a/content/get-started/using-github/github-cli.md +++ b/content/get-started/using-github/github-cli.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - CLI --- diff --git a/content/get-started/using-github/github-desktop.md b/content/get-started/using-github/github-desktop.md index d9c0b7048ed2..51ccc1a2d940 100644 --- a/content/get-started/using-github/github-desktop.md +++ b/content/get-started/using-github/github-desktop.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Desktop redirect_from: diff --git a/content/get-started/using-github/github-for-mobile.md b/content/get-started/using-github/github-for-mobile.md index 00002d37ad13..797aa9b77305 100644 --- a/content/get-started/using-github/github-for-mobile.md +++ b/content/get-started/using-github/github-for-mobile.md @@ -4,6 +4,7 @@ intro: 'Triage, collaborate, and manage your work on {% data variables.product.p versions: fpt: '*' ghes: '>=3.0' + ghec: '*' topics: - Mobile redirect_from: @@ -42,7 +43,7 @@ You can be simultaneously signed into mobile with one user account on {% data va You must install {% data variables.product.prodname_mobile %} 1.4 or later on your device to use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}. -To use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, {% data variables.product.product_location %} must be version 3.0 or greater, and your enterprise owner must enable mobile support for your enterprise. For more information, see {% ifversion ghes %}"[Release notes](/enterprise-server/admin/release-notes)" and {% endif %}"[Managing {% data variables.product.prodname_mobile %} for your enterprise](/admin/configuration/managing-github-for-mobile-for-your-enterprise)." +To use {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, {% data variables.product.product_location %} must be version 3.0 or greater, and your enterprise owner must enable mobile support for your enterprise. For more information, see {% ifversion ghes %}"[Release notes](/enterprise-server/admin/release-notes)" and {% endif %}"[Managing {% data variables.product.prodname_mobile %} for your enterprise]({% ifversion not ghes %}/enterprise-server@latest{% endif %}/admin/configuration/managing-github-for-mobile-for-your-enterprise){% ifversion not ghes %}" in the {% data variables.product.prodname_ghe_server %} documentation.{% else %}."{% endif %} During the beta for {% data variables.product.prodname_mobile %} with {% data variables.product.prodname_ghe_server %}, you must be signed in with a user account on {% data variables.product.prodname_dotcom_the_website %}. diff --git a/content/get-started/using-github/index.md b/content/get-started/using-github/index.md index ee2de5ce0726..755abf7e620e 100644 --- a/content/get-started/using-github/index.md +++ b/content/get-started/using-github/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /exploring-early-access-releases-with-feature-preview - /supported-browsers diff --git a/content/get-started/using-github/keyboard-shortcuts.md b/content/get-started/using-github/keyboard-shortcuts.md index 7f1eb32efcf2..5a410badd409 100644 --- a/content/get-started/using-github/keyboard-shortcuts.md +++ b/content/get-started/using-github/keyboard-shortcuts.md @@ -1,6 +1,6 @@ --- title: Keyboard shortcuts -intro: 'Nearly every page on {% data variables.product.product_name %} has a keyboard shortcut to perform actions faster.' +intro: 'Nearly every page on {% data variables.product.prodname_dotcom %} has a keyboard shortcut to perform actions faster.' redirect_from: - /articles/using-keyboard-shortcuts/ - /categories/75/articles/ @@ -12,10 +12,11 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## About keyboard shortcuts -Typing ? in {% data variables.product.product_name %} brings up a dialog box that lists the keyboard shortcuts available for that page. You can use these keyboard shortcuts to perform actions across the site without using your mouse to navigate. +Typing ? on {% data variables.product.prodname_dotcom %} brings up a dialog box that lists the keyboard shortcuts available for that page. You can use these keyboard shortcuts to perform actions across the site without using your mouse to navigate. Below is a list of some of the available keyboard shortcuts. @@ -24,7 +25,7 @@ Below is a list of some of the available keyboard shortcuts. | Keyboard shortcut | Description |-----------|------------ |s or / | Focus the search bar. For more information, see "[About searching on {% data variables.product.company_short %}](/search-github/getting-started-with-searching-on-github/about-searching-on-github)." -|g n | Go to your notifications. For more information, see {% ifversion fpt or ghes or ghae %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[About notifications](/github/receiving-notifications-about-activity-on-github/about-notifications){% endif %}." +|g n | Go to your notifications. For more information, see {% ifversion fpt or ghes or ghae or ghec %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[About notifications](/github/receiving-notifications-about-activity-on-github/about-notifications){% endif %}." |esc | When focused on a user, issue, or pull request hovercard, closes the hovercard and refocuses on the element the hovercard is in ## Repositories @@ -33,16 +34,16 @@ Below is a list of some of the available keyboard shortcuts. |-----------|------------ |g c | Go to the **Code** tab |g i | Go to the **Issues** tab. For more information, see "[About issues](/articles/about-issues)." -|g p | Go to the **Pull requests** tab. For more information, see "[About pull requests](/articles/about-pull-requests)."{% ifversion fpt or ghes %} +|g p | Go to the **Pull requests** tab. For more information, see "[About pull requests](/articles/about-pull-requests)."{% ifversion fpt or ghes or ghec %} |g a | Go to the **Actions** tab. For more information, see "[About Actions](/actions/getting-started-with-github-actions/about-github-actions)."{% endif %} |g b | Go to the **Projects** tab. For more information, see "[About project boards](/articles/about-project-boards)." -|g w | Go to the **Wiki** tab. For more information, see "[About wikis](/communities/documenting-your-project-with-wikis/about-wikis)."{% ifversion fpt %} +|g w | Go to the **Wiki** tab. For more information, see "[About wikis](/communities/documenting-your-project-with-wikis/about-wikis)."{% ifversion fpt or ghec %} |g g | Go to the **Discussions** tab. For more information, see "[About discussions](/discussions/collaborating-with-your-community-using-discussions/about-discussions)."{% endif %} ## Source code editing | Keyboard shortcut | Description -|-----------|------------{% ifversion fpt %} +|-----------|------------{% ifversion fpt or ghec %} |.| Opens a repository or pull request in the web-based editor. For more information, see "[Web-based editor](/codespaces/developing-in-codespaces/web-based-editor)."{% endif %} | control b or command b | Inserts Markdown formatting for bolding text | control i or command i | Inserts Markdown formatting for italicizing text @@ -78,15 +79,15 @@ For more keyboard shortcuts, see the [CodeMirror documentation](https://codemirr | Keyboard shortcut | Description |-----------|------------ | control b or command b | Inserts Markdown formatting for bolding text -| control i or command i | Inserts Markdown formatting for italicizing text{% ifversion fpt or ghae-next or ghes > 3.1 %} +| control i or command i | Inserts Markdown formatting for italicizing text{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} | control e or command e | Inserts Markdown formatting for code or a command within a line{% endif %} | control k or command k | Inserts Markdown formatting for creating a link -| control shift p or command shift p| Toggles between the **Write** and **Preview** comment tabs{% ifversion fpt or ghae-next or ghes > 3.2 %} +| control shift p or command shift p| Toggles between the **Write** and **Preview** comment tabs{% ifversion fpt or ghae-next or ghes > 3.2 or ghec %} | control shift 7 or command shift 7 | Inserts Markdown formatting for an ordered list | control shift 8 or command shift 8 | Inserts Markdown formatting for an unordered list{% endif %} | control enter | Submits a comment -| control . and then control [saved reply number] | Opens saved replies menu and then autofills comment field with a saved reply. For more information, see "[About saved replies](/articles/about-saved-replies)."{% ifversion fpt or ghae-next or ghes > 3.2 %} -| control shift . or command shift. | Inserts Markdown formatting for a quote{% endif %}{% ifversion fpt %} +| control . and then control [saved reply number] | Opens saved replies menu and then autofills comment field with a saved reply. For more information, see "[About saved replies](/articles/about-saved-replies)."{% ifversion fpt or ghae-next or ghes > 3.2 or ghec %} +| control shift . or command shift. | Inserts Markdown formatting for a quote{% endif %}{% ifversion fpt or ghec %} |control g or command g | Insert a suggestion. For more information, see "[Reviewing proposed changes in a pull request](/articles/reviewing-proposed-changes-in-a-pull-request)." |{% endif %} | r | Quote the selected text in your reply. For more information, see "[Basic writing and formatting syntax](/articles/basic-writing-and-formatting-syntax#quoting-text)." | @@ -110,7 +111,7 @@ For more keyboard shortcuts, see the [CodeMirror documentation](https://codemirr |m | Set a milestone. For more information, see "[Associating milestones with issues and pull requests](/articles/associating-milestones-with-issues-and-pull-requests/)." |l | Apply a label. For more information, see "[Applying labels to issues and pull requests](/articles/applying-labels-to-issues-and-pull-requests/)." |a | Set an assignee. For more information, see "[Assigning issues and pull requests to other {% data variables.product.company_short %} users](/articles/assigning-issues-and-pull-requests-to-other-github-users/)." -|cmd + shift + p or control + shift + p | Toggles between the **Write** and **Preview** tabs{% ifversion fpt %} +|cmd + shift + p or control + shift + p | Toggles between the **Write** and **Preview** tabs{% ifversion fpt or ghec %} |alt and click | When creating an issue from a task list, open the new issue form in the current tab by holding alt and clicking the {% octicon "issue-opened" aria-label="The issue opened icon" %} in the upper-right corner of the task. For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)." |shift and click | When creating an issue from a task list, open the new issue form in a new tab by holding shift and clicking the {% octicon "issue-opened" aria-label="The issue opened icon" %} in the upper-right corner of the task. For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)." |command or control + shift and click | When creating an issue from a task list, open the new issue form in the new window by holding command or control + shift and clicking the {% octicon "issue-opened" aria-label="The issue opened icon" %} in the upper-right corner of the task. For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)."{% endif %} @@ -124,7 +125,7 @@ For more keyboard shortcuts, see the [CodeMirror documentation](https://codemirr |j | Move selection down in the list |k | Move selection up in the list | cmd + shift + enter | Add a single comment on a pull request diff | -| alt and click | Toggle between collapsing and expanding all outdated review comments in a pull request by holding down `alt` and clicking **Show outdated** or **Hide outdated**.|{% ifversion fpt or ghes or ghae %} +| alt and click | Toggle between collapsing and expanding all outdated review comments in a pull request by holding down `alt` and clicking **Show outdated** or **Hide outdated**.|{% ifversion fpt or ghes or ghae or ghec %} | Click, then shift and click | Comment on multiple lines of a pull request by clicking a line number, holding shift, then clicking another line number. For more information, see "[Commenting on a pull request](/github/collaborating-with-issues-and-pull-requests/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request)."|{% endif %} ## Project boards @@ -167,7 +168,7 @@ For more keyboard shortcuts, see the [CodeMirror documentation](https://codemirr |-----------|------------ |esc | Close the card preview pane -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## {% data variables.product.prodname_actions %} | Keyboard shortcut | Description @@ -182,7 +183,7 @@ For more keyboard shortcuts, see the [CodeMirror documentation](https://codemirr ## Notifications -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} | Keyboard shortcut | Description |-----------|------------ |e | Mark as done diff --git a/content/get-started/using-github/supported-browsers.md b/content/get-started/using-github/supported-browsers.md index 513e2bb2dd6e..09f22fc51852 100644 --- a/content/get-started/using-github/supported-browsers.md +++ b/content/get-started/using-github/supported-browsers.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## Firefox Extended Support Release diff --git a/content/get-started/using-github/troubleshooting-connectivity-problems.md b/content/get-started/using-github/troubleshooting-connectivity-problems.md index e625ba58fec0..948f1bc8052c 100644 --- a/content/get-started/using-github/troubleshooting-connectivity-problems.md +++ b/content/get-started/using-github/troubleshooting-connectivity-problems.md @@ -7,6 +7,7 @@ redirect_from: - /github/getting-started-with-github/using-github/troubleshooting-connectivity-problems versions: fpt: '*' + ghec: '*' shortTitle: Connectivity problems --- Most often, connection problems occur because a firewall, proxy server, corporate network, or other network is configured in a way that blocks {% data variables.product.prodname_dotcom %}. diff --git a/content/github-cli/github-cli/about-github-cli.md b/content/github-cli/github-cli/about-github-cli.md index 901a29d93958..f9e5342264b8 100644 --- a/content/github-cli/github-cli/about-github-cli.md +++ b/content/github-cli/github-cli/about-github-cli.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - CLI type: overview diff --git a/content/github-cli/github-cli/creating-github-cli-extensions.md b/content/github-cli/github-cli/creating-github-cli-extensions.md index 517999778cd9..2f0c082cba23 100644 --- a/content/github-cli/github-cli/creating-github-cli-extensions.md +++ b/content/github-cli/github-cli/creating-github-cli-extensions.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - CLI --- diff --git a/content/github-cli/github-cli/github-cli-reference.md b/content/github-cli/github-cli/github-cli-reference.md index c6672ce62802..d57c6efbb070 100644 --- a/content/github-cli/github-cli/github-cli-reference.md +++ b/content/github-cli/github-cli/github-cli-reference.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - CLI type: reference diff --git a/content/github-cli/github-cli/index.md b/content/github-cli/github-cli/index.md index 3a9e10f3eebf..1fc2eca21a19 100644 --- a/content/github-cli/github-cli/index.md +++ b/content/github-cli/github-cli/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-github-cli - /quickstart diff --git a/content/github-cli/github-cli/quickstart.md b/content/github-cli/github-cli/quickstart.md index b80b47581c23..5cc3ec7b96c5 100644 --- a/content/github-cli/github-cli/quickstart.md +++ b/content/github-cli/github-cli/quickstart.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - CLI type: overview @@ -25,7 +26,7 @@ shortTitle: Quickstart gh auth login ``` - {% ifversion not fpt %} + {% ifversion not fpt or ghec %} To authenticate to {% data variables.product.product_location %}, use the `--hostname` flag. ```shell diff --git a/content/github-cli/github-cli/using-github-cli-extensions.md b/content/github-cli/github-cli/using-github-cli-extensions.md index 27a2bc54fc0f..c0f6c663f280 100644 --- a/content/github-cli/github-cli/using-github-cli-extensions.md +++ b/content/github-cli/github-cli/using-github-cli-extensions.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - CLI --- diff --git a/content/github-cli/index.md b/content/github-cli/index.md index faf849d27b8c..bc0ec642e582 100644 --- a/content/github-cli/index.md +++ b/content/github-cli/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /github-cli introLinks: diff --git a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/about-merge-conflicts.md b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/about-merge-conflicts.md index dfacd92cb1a9..e52ffda61037 100644 --- a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/about-merge-conflicts.md +++ b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/about-merge-conflicts.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/index.md b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/index.md index b2cd622eefe4..d429ab684ea6 100644 --- a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/index.md +++ b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests children: diff --git a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github.md b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github.md index 7636956c587d..f2be63428fea 100644 --- a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github.md +++ b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Resolve merge conflicts diff --git a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md index 07c81494e93a..1f757cf30c11 100644 --- a/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md +++ b/content/github/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-using-the-command-line.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Resolve merge conflicts in Git diff --git a/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks.md b/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks.md index dd526b7749b9..3a19dcecaa2a 100644 --- a/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks.md +++ b/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/index.md b/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/index.md index 2e7874c2e480..d6a113006c2d 100644 --- a/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/index.md +++ b/content/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests children: diff --git a/content/github/collaborating-with-pull-requests/getting-started/about-collaborative-development-models.md b/content/github/collaborating-with-pull-requests/getting-started/about-collaborative-development-models.md index a15d411ced33..5b89b8d00820 100644 --- a/content/github/collaborating-with-pull-requests/getting-started/about-collaborative-development-models.md +++ b/content/github/collaborating-with-pull-requests/getting-started/about-collaborative-development-models.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Collaborative development diff --git a/content/github/collaborating-with-pull-requests/getting-started/index.md b/content/github/collaborating-with-pull-requests/getting-started/index.md index 86b43f9a2faa..26fac57e4201 100644 --- a/content/github/collaborating-with-pull-requests/getting-started/index.md +++ b/content/github/collaborating-with-pull-requests/getting-started/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues diff --git a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md index 7712b212be8e..7bc936b2af57 100644 --- a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md +++ b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md index 6dfbf31ed898..53f9020b36cc 100644 --- a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: '*' + ghec: '*' topics: - Pull requests redirect_from: @@ -17,7 +18,7 @@ shortTitle: Merge PR automatically If you enable auto-merge for a pull request, the pull request will merge automatically when all required reviews are met and status checks have passed. Auto-merge prevents you from waiting around for requirements to be met, so you can move on to other tasks. -Before you can use auto-merge with a pull request, auto-merge must be enabled for the repository. For more information, see "[Managing auto-merge for pull requests in your repository](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository)."{% ifversion fpt or ghae-next or ghes > 3.1 %} +Before you can use auto-merge with a pull request, auto-merge must be enabled for the repository. For more information, see "[Managing auto-merge for pull requests in your repository](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository)."{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} After you enable auto-merge for a pull request, if someone who does not have write permissions to the repository pushes new changes to the head branch or switches the base branch of the pull request, auto-merge will be disabled. For example, if a maintainer enables auto-merge for a pull request from a fork, auto-merge will be disabled after a contributor pushes new changes to the pull request.{% endif %} diff --git a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/closing-a-pull-request.md b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/closing-a-pull-request.md index 806da578650d..4ae8fb9e7495 100644 --- a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/closing-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/closing-a-pull-request.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/index.md b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/index.md index ca8efd7179f0..5ccbf2f3300f 100644 --- a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/index.md +++ b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests children: diff --git a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md index 66d2685780ea..a9034ae414e2 100644 --- a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/reverting-a-pull-request.md b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/reverting-a-pull-request.md index 0f264140d0e5..d1f59456c0cc 100644 --- a/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/reverting-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/reverting-a-pull-request.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/github/collaborating-with-pull-requests/index.md b/content/github/collaborating-with-pull-requests/index.md index 671fa677abef..d01fd5a235dc 100644 --- a/content/github/collaborating-with-pull-requests/index.md +++ b/content/github/collaborating-with-pull-requests/index.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests children: diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md index 02fe14899574..b2317499e697 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- @@ -27,11 +28,11 @@ You must have write access to a repository to create a branch, open a pull reque {% data reusables.branches.new-repo-default-branch %} The default branch is the branch that {% data variables.product.prodname_dotcom %} displays when anyone visits your repository. The default branch is also the initial branch that Git checks out locally when someone clones the repository. {% data reusables.branches.default-branch-automatically-base-branch %} -By default, {% data variables.product.product_name %} names the default branch {% ifversion fpt or ghes > 2.22 or ghae %}`main`{% else %}`master`{% endif %} in any new repository. +By default, {% data variables.product.product_name %} names the default branch {% ifversion fpt or ghes > 2.22 or ghae or ghec %}`main`{% else %}`master`{% endif %} in any new repository. {% data reusables.branches.change-default-branch %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} {% data reusables.branches.set-default-branch %} diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-comparing-branches-in-pull-requests.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-comparing-branches-in-pull-requests.md index ba43e59b93c0..501926b611a3 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-comparing-branches-in-pull-requests.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-comparing-branches-in-pull-requests.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Compare branches diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests.md index 1db679a4a0c1..f1c7a330b0e2 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- @@ -31,7 +32,7 @@ Once you've created a pull request, you can push commits from your topic branch Other contributors can review your proposed changes, add review comments, contribute to the pull request discussion, and even add commits to the pull request. -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can see information about the branch's current deployment status and past deployment activity on the "Conversation" tab. For more information, see "[Viewing deployment activity for a repository](/repositories/viewing-activity-and-data-for-your-repository/viewing-deployment-activity-for-your-repository)." {% endif %} @@ -71,4 +72,4 @@ The compare and pull request pages use different methods to calculate the diff f - "[Pull request](/articles/github-glossary/#pull-request)" in the {% data variables.product.prodname_dotcom %} glossary - "[About branches](/articles/about-branches)" - "[Commenting on a pull request](/articles/commenting-on-a-pull-request)" -- "[Closing a pull request](/articles/closing-a-pull-request)" \ No newline at end of file +- "[Closing a pull request](/articles/closing-a-pull-request)" diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-base-branch-of-a-pull-request.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-base-branch-of-a-pull-request.md index 56c3f41b1850..aee1d27f960b 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-base-branch-of-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-base-branch-of-a-pull-request.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Change the base branch diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request.md index 6b2cbb691b34..1d6e17d27094 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request.md @@ -1,6 +1,6 @@ --- title: Changing the stage of a pull request -intro: 'You can mark a draft pull request as ready for review{% ifversion fpt or ghae or ghes %} or convert a pull request to a draft{% endif %}.' +intro: 'You can mark a draft pull request as ready for review{% ifversion fpt or ghae or ghes or ghec %} or convert a pull request to a draft{% endif %}.' permissions: People with write permissions to a repository and pull request authors can change the stage of a pull request. product: '{% data reusables.gated-features.draft-prs %}' redirect_from: @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Change the state @@ -19,7 +20,7 @@ shortTitle: Change the state {% data reusables.pull_requests.mark-ready-review %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} {% tip %} **Tip**: You can also mark a pull request as ready for review using the {% data variables.product.prodname_cli %}. For more information, see "[`gh pr ready`](https://cli.github.com/manual/gh_pr_ready)" in the {% data variables.product.prodname_cli %} documentation. @@ -32,7 +33,7 @@ shortTitle: Change the state 3. In the merge box, click **Ready for review**. ![Ready for review button](/assets/images/help/pull_requests/ready-for-review-button.png) -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} ## Converting a pull request to a draft diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/committing-changes-to-a-pull-request-branch-created-from-a-fork.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/committing-changes-to-a-pull-request-branch-created-from-a-fork.md index ee64e5d57fc1..359754b363ff 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/committing-changes-to-a-pull-request-branch-created-from-a-fork.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/committing-changes-to-a-pull-request-branch-created-from-a-fork.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Commit to PR branch from fork diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork.md index f9c5e3c8a028..1f345a168b3f 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Create a PR from a fork diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request.md index a6de0ecedf42..75a1eb836df8 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- @@ -152,7 +153,7 @@ gh pr create --web {% enddesktop %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% codespaces %} diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository.md index b9af00cdf3cb..bedcbd48873d 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Create & delete branches diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/index.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/index.md index 0b8c179b24be..4e4a74e9cd24 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/index.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests children: diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/requesting-a-pull-request-review.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/requesting-a-pull-request-review.md index b3f8e55514c3..c00f5a54d4a5 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/requesting-a-pull-request-review.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/requesting-a-pull-request-review.md @@ -9,13 +9,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Request a PR review --- Owners and collaborators on a repository owned by a user account can assign pull request reviews. Organization members with triage permissions to a repository can assign a pull request review. -Owners or collaborators can assign a pull request review to any person that has been explicitly granted [read access](/articles/access-permissions-on-github) to a user-owned repository. Organization members can assign a pull request review to any person or team with read access to a repository. The requested reviewer or team will receive a notification that you asked them to review the pull request. {% ifversion fpt or ghae or ghes %}If you request a review from a team and code review assignment is enabled, specific members will be requested and the team will be removed as a reviewer. For more information, see "[Managing code review assignment for your team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team)."{% endif %} +Owners or collaborators can assign a pull request review to any person that has been explicitly granted [read access](/articles/access-permissions-on-github) to a user-owned repository. Organization members can assign a pull request review to any person or team with read access to a repository. The requested reviewer or team will receive a notification that you asked them to review the pull request. {% ifversion fpt or ghae or ghes or ghec %}If you request a review from a team and code review assignment is enabled, specific members will be requested and the team will be removed as a reviewer. For more information, see "[Managing code review assignment for your team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team)."{% endif %} {% note %} diff --git a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/using-query-parameters-to-create-a-pull-request.md b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/using-query-parameters-to-create-a-pull-request.md index 9a161eb0aa7a..80af21d87b0b 100644 --- a/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/using-query-parameters-to-create-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/using-query-parameters-to-create-a-pull-request.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews.md index 5cbc998667c0..2afb36ffb8bc 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: About PR reviews @@ -17,11 +18,11 @@ shortTitle: About PR reviews After a pull request is opened, anyone with *read* access can review and comment on the changes it proposes. You can also suggest specific changes to lines of code, which the author can apply directly from the pull request. For more information, see "[Reviewing proposed changes in a pull request](/articles/reviewing-proposed-changes-in-a-pull-request)." -Repository owners and collaborators can request a pull request review from a specific person. Organization members can also request a pull request review from a team with read access to the repository. For more information, see "[Requesting a pull request review](/articles/requesting-a-pull-request-review)." {% ifversion fpt or ghae or ghes %}You can specify a subset of team members to be automatically assigned in the place of the whole team. For more information, see "[Managing code review assignment for your team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team)."{% endif %} +Repository owners and collaborators can request a pull request review from a specific person. Organization members can also request a pull request review from a team with read access to the repository. For more information, see "[Requesting a pull request review](/articles/requesting-a-pull-request-review)." {% ifversion fpt or ghae or ghes or ghec %}You can specify a subset of team members to be automatically assigned in the place of the whole team. For more information, see "[Managing code review assignment for your team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team)."{% endif %} Reviews allow for discussion of proposed changes and help ensure that the changes meet the repository's contributing guidelines and other quality standards. You can define which individuals or teams own certain types or areas of code in a CODEOWNERS file. When a pull request modifies code that has a defined owner, that individual or team will automatically be requested as a reviewer. For more information, see "[About code owners](/articles/about-code-owners/)." -{% ifversion fpt %}You can schedule reminders for pull requests that need to be reviewed. For more information, see "[Managing scheduled reminders for pull requests](/github/setting-up-and-managing-organizations-and-teams/managing-scheduled-reminders-for-pull-requests)."{% endif %} +{% ifversion fpt or ghec %}You can schedule reminders for pull requests that need to be reviewed. For more information, see "[Managing scheduled reminders for pull requests](/github/setting-up-and-managing-organizations-and-teams/managing-scheduled-reminders-for-pull-requests)."{% endif %} ![Header of review requesting changes with line comments](/assets/images/help/pull_requests/review-header-with-line-comment.png) diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/approving-a-pull-request-with-required-reviews.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/approving-a-pull-request-with-required-reviews.md index e33e8490000f..03292b425708 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/approving-a-pull-request-with-required-reviews.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/approving-a-pull-request-with-required-reviews.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Required reviews diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally.md index ca0978d8f1ec..717a4185e4c5 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Check out a PR locally @@ -27,7 +28,7 @@ shortTitle: Check out a PR locally {% webui %} {% data reusables.repositories.sidebar-pr %} -2. In the list of pull requests, click the pull request you'd like to modify.{% ifversion fpt %} +2. In the list of pull requests, click the pull request you'd like to modify.{% ifversion fpt or ghec %} 3. To choose where you'd like to open the pull request, select the **Open with {% octicon "triangle-down" aria-label="The down triangle icon" %}** drop-down and click one of the tabs. ![Link to access command line pull request instructions](/assets/images/help/pull_requests/open-with-button.png){% else %} 3. In the merge box, click **command line instructions**. Follow the sequence of steps to bring down the proposed pull request. diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md index 10f24324a67f..47703f98d5bf 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Comment on a PR @@ -60,5 +61,5 @@ Anyone watching the pull request or repository will receive a notification of yo ## Further reading - "[Writing on GitHub](/github/writing-on-github)" -{% ifversion fpt %}- "[Reporting abuse or spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)" +{% ifversion fpt or ghec %}- "[Reporting abuse or spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)" {% endif %} diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review.md index 75d615f838cd..579d9f30f9ff 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Dismiss a PR review diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/filtering-files-in-a-pull-request.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/filtering-files-in-a-pull-request.md index d94fd2bea831..7ff197c57485 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/filtering-files-in-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/filtering-files-in-a-pull-request.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Filter files diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/finding-changed-methods-and-functions-in-a-pull-request.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/finding-changed-methods-and-functions-in-a-pull-request.md index 0c0ddc1e35b4..601f9c073756 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/finding-changed-methods-and-functions-in-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/finding-changed-methods-and-functions-in-a-pull-request.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Methods & functions diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/incorporating-feedback-in-your-pull-request.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/incorporating-feedback-in-your-pull-request.md index cb35d4e4ef8b..703357f0cc92 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/incorporating-feedback-in-your-pull-request.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/incorporating-feedback-in-your-pull-request.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Incorporate feedback diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/index.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/index.md index ad7558ad4d41..d4cfc98d1307 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/index.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests children: diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-dependency-changes-in-a-pull-request.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-dependency-changes-in-a-pull-request.md index 10993eed5844..8b9d8115c69a 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-dependency-changes-in-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-dependency-changes-in-a-pull-request.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>= 3.2' ghae: "issue-4864" + ghec: '*' type: how_to topics: - Pull requests diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md index c52a0374f3dd..ebedefdbf91e 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Review proposed changes @@ -39,7 +40,7 @@ Before you submit your review, your line comments are _pending_ and only visible ![Cancel review button](/assets/images/help/pull_requests/cancel-review-button.png) {% endwebui %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% codespaces %} @@ -52,7 +53,7 @@ For more information on reviewing pull requests in {% data variables.product.pro {% endcodespaces %} {% endif %} -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} ## Reviewing dependency changes {% data reusables.dependency-review.beta %} diff --git a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/viewing-a-pull-request-review.md b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/viewing-a-pull-request-review.md index f98665c38adc..0d4f7173dbb1 100644 --- a/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/viewing-a-pull-request-review.md +++ b/content/github/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/viewing-a-pull-request-review.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: View a PR review diff --git a/content/github/collaborating-with-pull-requests/working-with-forks/about-forks.md b/content/github/collaborating-with-pull-requests/working-with-forks/about-forks.md index 6c9aab48efb8..1ab8ff0d9a49 100644 --- a/content/github/collaborating-with-pull-requests/working-with-forks/about-forks.md +++ b/content/github/collaborating-with-pull-requests/working-with-forks/about-forks.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- @@ -19,15 +20,15 @@ Forking a repository is similar to copying a repository, with two major differen {% data reusables.repositories.you-can-fork %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} -If you're a member of a {% data variables.product.prodname_emu_enterprise %}, there are further restrictions on the repositories you can fork. {% data reusables.enterprise-accounts.emu-forks %} For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +If you're a member of a {% data variables.product.prodname_emu_enterprise %}, there are further restrictions on the repositories you can fork. {% data reusables.enterprise-accounts.emu-forks %} For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} {% endif %} {% data reusables.repositories.desktop-fork %} -Deleting a fork will not delete the original upstream repository. You can make any changes you want to your fork—add collaborators, rename files, generate {% data variables.product.prodname_pages %}—with no effect on the original.{% ifversion fpt %} You cannot restore a deleted forked repository. For more information, see "[Restoring a deleted repository](/articles/restoring-a-deleted-repository)."{% endif %} +Deleting a fork will not delete the original upstream repository. You can make any changes you want to your fork—add collaborators, rename files, generate {% data variables.product.prodname_pages %}—with no effect on the original.{% ifversion fpt or ghec %} You cannot restore a deleted forked repository. For more information, see "[Restoring a deleted repository](/articles/restoring-a-deleted-repository)."{% endif %} In open source projects, forks are often used to iterate on ideas or changes before they are offered back to the upstream repository. When you make changes in your user-owned fork and open a pull request that compares your work to the upstream repository, you can give anyone with push access to the upstream repository permission to push changes to your pull request branch. This speeds up collaboration by allowing repository maintainers the ability to make commits or run tests locally to your pull request branch from a user-owned fork before merging. You cannot give push permissions to a fork owned by an organization. @@ -39,5 +40,5 @@ If you want to create a new repository from the contents of an existing reposito - "[About collaborative development models](/articles/about-collaborative-development-models)" - "[Creating a pull request from a fork](/articles/creating-a-pull-request-from-a-fork)" -- [Open Source Guides](https://opensource.guide/){% ifversion fpt %} +- [Open Source Guides](https://opensource.guide/){% ifversion fpt or ghec %} - [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}){% endif %} diff --git a/content/github/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork.md b/content/github/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork.md index 1ba03d387625..fdd20306d294 100644 --- a/content/github/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork.md +++ b/content/github/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Allow changes to a branch diff --git a/content/github/collaborating-with-pull-requests/working-with-forks/configuring-a-remote-for-a-fork.md b/content/github/collaborating-with-pull-requests/working-with-forks/configuring-a-remote-for-a-fork.md index 51f0d994d36d..e6a34780b71d 100644 --- a/content/github/collaborating-with-pull-requests/working-with-forks/configuring-a-remote-for-a-fork.md +++ b/content/github/collaborating-with-pull-requests/working-with-forks/configuring-a-remote-for-a-fork.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Configure a remote diff --git a/content/github/collaborating-with-pull-requests/working-with-forks/index.md b/content/github/collaborating-with-pull-requests/working-with-forks/index.md index 068eabeaca3b..35170244680c 100644 --- a/content/github/collaborating-with-pull-requests/working-with-forks/index.md +++ b/content/github/collaborating-with-pull-requests/working-with-forks/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests children: diff --git a/content/github/collaborating-with-pull-requests/working-with-forks/merging-an-upstream-repository-into-your-fork.md b/content/github/collaborating-with-pull-requests/working-with-forks/merging-an-upstream-repository-into-your-fork.md index c6d2225cac85..1e86e472a002 100644 --- a/content/github/collaborating-with-pull-requests/working-with-forks/merging-an-upstream-repository-into-your-fork.md +++ b/content/github/collaborating-with-pull-requests/working-with-forks/merging-an-upstream-repository-into-your-fork.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Merge an upstream repo diff --git a/content/github/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md b/content/github/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md index aec4249f8b35..156d1c00c38c 100644 --- a/content/github/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md +++ b/content/github/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md @@ -9,11 +9,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Syncing a fork from the web UI diff --git a/content/github/collaborating-with-pull-requests/working-with-forks/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility.md b/content/github/collaborating-with-pull-requests/working-with-forks/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility.md index f95078d0d8b5..43fe51978c4a 100644 --- a/content/github/collaborating-with-pull-requests/working-with-forks/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility.md +++ b/content/github/collaborating-with-pull-requests/working-with-forks/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Deleted or changes visibility @@ -20,7 +21,7 @@ shortTitle: Deleted or changes visibility When you delete a private repository, all of its private forks are also deleted. -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Deleting a public repository @@ -32,7 +33,7 @@ When you delete a public repository, one of the existing public forks is chosen {% data reusables.repositories.private_forks_inherit_permissions %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Changing a public repository to a private repository @@ -58,7 +59,7 @@ If a private repository is made public and then deleted, its private forks will {% endif %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} ## Changing the visibility of an internal repository @@ -82,4 +83,4 @@ If you change the visibility of an internal repository and then delete the repos - "[About forks](/articles/about-forks)" - "[Managing the forking policy for your repository](/github/administering-a-repository/managing-the-forking-policy-for-your-repository)" - "[Managing the forking policy for your organization](/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)" -- "{% ifversion fpt %}[Enforcing repository management policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-repository-management-policies-in-your-enterprise-account#enforcing-a-policy-on-forking-private-or-internal-repositories){% else %}[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-on-forking-private-or-internal-repositories){% endif %}" +- "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-on-forking-private-or-internal-repositories)" diff --git a/content/github/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md b/content/github/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md index d1debcb666f5..50fdf7f4f861 100644 --- a/content/github/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md +++ b/content/github/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## About commits @@ -16,7 +17,7 @@ versions: You can add a co-author on any commits you collaborate on. For more information, see "[Creating a commit with multiple authors](/github/committing-changes-to-your-project/creating-a-commit-with-multiple-authors)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can also create a commit on behalf of an organization. For more information, see "[Creating a commit on behalf of an organization](/github/committing-changes-to-your-project/creating-a-commit-on-behalf-of-an-organization)."{% endif %} Rebasing allows you to change a series of commits and can modify the order of the commits in your timeline. For more information, see "[About git rebase](/github/getting-started-with-github/about-git-rebase)." diff --git a/content/github/committing-changes-to-your-project/creating-and-editing-commits/changing-a-commit-message.md b/content/github/committing-changes-to-your-project/creating-and-editing-commits/changing-a-commit-message.md index d4d1d240c5b1..4fe6fb41a9b5 100644 --- a/content/github/committing-changes-to-your-project/creating-and-editing-commits/changing-a-commit-message.md +++ b/content/github/committing-changes-to-your-project/creating-and-editing-commits/changing-a-commit-message.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## Rewriting the most recent commit message @@ -24,7 +25,7 @@ If the commit only exists in your local repository and has not been pushed to {% 2. Type `git commit --amend` and press **Enter**. 3. In your text editor, edit the commit message, and save the commit. - You can add a co-author by adding a trailer to the commit. For more information, see "[Creating a commit with multiple authors](/articles/creating-a-commit-with-multiple-authors)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} - You can create commits on behalf of your organization by adding a trailer to the commit. For more information, see "[Creating a commit on behalf of an organization](/articles/creating-a-commit-on-behalf-of-an-organization)" {% endif %} diff --git a/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-on-behalf-of-an-organization.md b/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-on-behalf-of-an-organization.md index 2303ae033d28..68f42df6635c 100644 --- a/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-on-behalf-of-an-organization.md +++ b/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-on-behalf-of-an-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/committing-changes-to-your-project/creating-a-commit-on-behalf-of-an-organization versions: fpt: '*' + ghec: '*' shortTitle: On behalf of an organization --- {% note %} diff --git a/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md b/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md index 58d0c57da634..5ad64c8bd825 100644 --- a/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md +++ b/content/github/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors.md @@ -8,13 +8,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: With multiple authors --- ## Required co-author information -Before you can add a co-author to a commit, you must know the appropriate email to use for each co-author. For the co-author's commit to count as a contribution, you must use the email associated with their {% data variables.product.product_name %} account. +Before you can add a co-author to a commit, you must know the appropriate email to use for each co-author. For the co-author's commit to count as a contribution, you must use the email associated with their account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %} If a person chooses to keep their email address private, you should use their {% data variables.product.product_name %}-provided `no-reply` email to protect their privacy. Otherwise, the co-author's email will be available to the public in the commit message. If you want to keep your email private, you can choose to use a {% data variables.product.product_name %}-provided `no-reply` email for Git operations and ask other co-authors to list your `no-reply` email in commit trailers. diff --git a/content/github/committing-changes-to-your-project/creating-and-editing-commits/index.md b/content/github/committing-changes-to-your-project/creating-and-editing-commits/index.md index d98e6a538bf3..bc0c3dcc4000 100644 --- a/content/github/committing-changes-to-your-project/creating-and-editing-commits/index.md +++ b/content/github/committing-changes-to-your-project/creating-and-editing-commits/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-commits - /creating-a-commit-with-multiple-authors diff --git a/content/github/committing-changes-to-your-project/index.md b/content/github/committing-changes-to-your-project/index.md index c9e90512c516..f65098867f94 100644 --- a/content/github/committing-changes-to-your-project/index.md +++ b/content/github/committing-changes-to-your-project/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /creating-and-editing-commits - /viewing-and-comparing-commits diff --git a/content/github/committing-changes-to-your-project/troubleshooting-commits/commit-exists-on-github-but-not-in-my-local-clone.md b/content/github/committing-changes-to-your-project/troubleshooting-commits/commit-exists-on-github-but-not-in-my-local-clone.md index f6a3d4e60313..e586d28adc04 100644 --- a/content/github/committing-changes-to-your-project/troubleshooting-commits/commit-exists-on-github-but-not-in-my-local-clone.md +++ b/content/github/committing-changes-to-your-project/troubleshooting-commits/commit-exists-on-github-but-not-in-my-local-clone.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Commit missing in local clone --- When you use `git show` to view a specific commit on the command line, you may get a fatal error. diff --git a/content/github/committing-changes-to-your-project/troubleshooting-commits/index.md b/content/github/committing-changes-to-your-project/troubleshooting-commits/index.md index aaf95fb085e5..f0cac830b945 100644 --- a/content/github/committing-changes-to-your-project/troubleshooting-commits/index.md +++ b/content/github/committing-changes-to-your-project/troubleshooting-commits/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /commit-exists-on-github-but-not-in-my-local-clone - /why-are-my-commits-linked-to-the-wrong-user diff --git a/content/github/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md b/content/github/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md index c67b82cf9c26..38c05c79e669 100644 --- a/content/github/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md +++ b/content/github/committing-changes-to-your-project/troubleshooting-commits/why-are-my-commits-linked-to-the-wrong-user.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Linked to wrong user --- {% tip %} @@ -19,7 +20,7 @@ shortTitle: Linked to wrong user ## Commits are linked to another user -If your commits are linked to another user, that means the email address in your local Git configuration settings is connected to that user's account on {% data variables.product.product_name %}. In this case, you can change the email in your local Git configuration settings{% ifversion ghae %} to the address associated with your account on {% data variables.product.product_name %} to link your future commits. Old commits will not be linked. For more information, see "[Setting your commit email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#setting-your-commit-email-address-in-git)."{% else %} and add the new email address to your {% data variables.product.product_name %} account to link future commits to your account. +If your commits are linked to another user, that means the email address in your local Git configuration settings is connected to that user's account on {% data variables.product.product_name %}. In this case, you can change the email in your local Git configuration settings{% ifversion ghae %} to the address associated with your account on {% data variables.product.product_name %} to link your future commits. Old commits will not be linked. For more information, see "[Setting your commit email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#setting-your-commit-email-address-in-git)."{% else %} and add the new email address to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} account to link future commits to your account. 1. To change the email address in your local Git configuration, follow the steps in "[Setting your commit email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address#setting-your-commit-email-address-in-git)". If you work on multiple machines, you will need to change this setting on each one. 2. Add the email address from step 2 to your account settings by following the steps in "[Adding an email address to your GitHub account](/articles/adding-an-email-address-to-your-github-account)".{% endif %} diff --git a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/commit-branch-and-tag-labels.md b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/commit-branch-and-tag-labels.md index 7e28919cb2f4..5f8f81084130 100644 --- a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/commit-branch-and-tag-labels.md +++ b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/commit-branch-and-tag-labels.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Branch & tag labels --- If your commit is not on the default branch, an indicator will show the branches which contain the commit. If the commit is part of an unmerged pull request, it will show a link. diff --git a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/comparing-commits.md b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/comparing-commits.md index e573f8934068..37bc196240db 100644 --- a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/comparing-commits.md +++ b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/comparing-commits.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- To compare different versions of your repository, append `/compare` to your repository's path. @@ -28,10 +29,10 @@ Here's an example of a [comparison between two branches](https://github.com/octo ## Comparing tags -Comparing release tags will show you changes to your repository since the last release. {% ifversion fpt or ghae or ghes %} +Comparing release tags will show you changes to your repository since the last release. {% ifversion fpt or ghae or ghes or ghec %} For more information, see "[Comparing releases](/github/administering-a-repository/comparing-releases)."{% endif %} -{% ifversion fpt or ghae or ghes %}To compare tags, you can select a tag name from the `compare` drop-down menu at the top of the page.{% else %} Instead of typing a branch name, type the name of your tag in the `compare` drop down menu.{% endif %} +{% ifversion fpt or ghae or ghes or ghec %}To compare tags, you can select a tag name from the `compare` drop-down menu at the top of the page.{% else %} Instead of typing a branch name, type the name of your tag in the `compare` drop down menu.{% endif %} Here's an example of a [comparison between two tags](https://github.com/octocat/linguist/compare/v2.2.0...octocat:v2.3.3). diff --git a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/differences-between-commit-views.md b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/differences-between-commit-views.md index 628fbde35f7e..b47451401002 100644 --- a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/differences-between-commit-views.md +++ b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/differences-between-commit-views.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Commit views --- On {% data variables.product.product_name %}, you can see the commit history of a repository by: diff --git a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/index.md b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/index.md index 8f85475e8234..5a6d71857265 100644 --- a/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/index.md +++ b/content/github/committing-changes-to-your-project/viewing-and-comparing-commits/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /commit-branch-and-tag-labels - /comparing-commits diff --git a/content/github/customizing-your-github-workflow/exploring-integrations/about-github-marketplace.md b/content/github/customizing-your-github-workflow/exploring-integrations/about-github-marketplace.md index bb8a5b026df6..d943c3326f32 100644 --- a/content/github/customizing-your-github-workflow/exploring-integrations/about-github-marketplace.md +++ b/content/github/customizing-your-github-workflow/exploring-integrations/about-github-marketplace.md @@ -6,6 +6,7 @@ redirect_from: - /github/customizing-your-github-workflow/about-github-marketplace versions: fpt: '*' + ghec: '*' --- You can discover, browse, and install free and paid tools, including {% data variables.product.prodname_github_apps %}, {% data variables.product.prodname_oauth_apps %}, and {% data variables.product.prodname_actions %}, in [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace). diff --git a/content/github/customizing-your-github-workflow/exploring-integrations/about-integrations.md b/content/github/customizing-your-github-workflow/exploring-integrations/about-integrations.md index 877ef1d0b937..a0bd85173112 100644 --- a/content/github/customizing-your-github-workflow/exploring-integrations/about-integrations.md +++ b/content/github/customizing-your-github-workflow/exploring-integrations/about-integrations.md @@ -6,12 +6,13 @@ redirect_from: - /github/customizing-your-github-workflow/about-integrations versions: fpt: '*' + ghec: '*' --- You can install integrations in your personal account or organizations you own. You can also install {% data variables.product.prodname_github_apps %} from a third-party in a specific repository where you have admin permissions or which is owned by your organization. ## Differences between {% data variables.product.prodname_github_apps %} and {% data variables.product.prodname_oauth_apps %} -Integrations can be {% data variables.product.prodname_github_apps %}, {% data variables.product.prodname_oauth_apps %}, or anything that utilizes {% data variables.product.product_name %} APIs or webhooks. +Integrations can be {% data variables.product.prodname_github_apps %}, {% data variables.product.prodname_oauth_apps %}, or anything that utilizes {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs or webhooks. {% data variables.product.prodname_github_apps %} offer granular permissions and request access to only what the app needs. {% data variables.product.prodname_github_apps %} also offer specific user-level permissions that each user must authorize individually when an app is installed or when the integrator changes the permissions requested by the app. diff --git a/content/github/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md b/content/github/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md index 4adfd2516a77..ceaaf6c438f2 100644 --- a/content/github/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md +++ b/content/github/customizing-your-github-workflow/exploring-integrations/github-extensions-and-integrations.md @@ -7,6 +7,7 @@ redirect_from: - /github/customizing-your-github-workflow/github-extensions-and-integrations versions: fpt: '*' + ghec: '*' shortTitle: Extensions & integrations --- ## Editor tools @@ -31,7 +32,7 @@ With the {% data variables.product.prodname_dotcom %} for Visual Studio Code ext ## Project management tools -You can integrate your {% data variables.product.product_name %} personal account or organization with third-party project management tools, such as Jira. +You can integrate your personal or organization account on {% data variables.product.product_location %} with third-party project management tools, such as Jira. ### Jira Cloud and {% data variables.product.product_name %}.com integration @@ -39,7 +40,7 @@ You can integrate Jira Cloud with your personal or organization account to scan ## Team communication tools -You can integrate your {% data variables.product.product_name %} personal account or organization with third-party team communication tools, such as Slack or Microsoft Teams. +You can integrate your personal or organization account on {% data variables.product.product_location %} with third-party team communication tools, such as Slack or Microsoft Teams. ### Slack and {% data variables.product.product_name %} integration diff --git a/content/github/customizing-your-github-workflow/exploring-integrations/index.md b/content/github/customizing-your-github-workflow/exploring-integrations/index.md index 53a88e9e72db..db2742822e45 100644 --- a/content/github/customizing-your-github-workflow/exploring-integrations/index.md +++ b/content/github/customizing-your-github-workflow/exploring-integrations/index.md @@ -5,6 +5,7 @@ redirect_from: - /articles/exploring-integrations versions: fpt: '*' + ghec: '*' children: - /about-integrations - /about-github-marketplace diff --git a/content/github/customizing-your-github-workflow/index.md b/content/github/customizing-your-github-workflow/index.md index 090ae7e65362..63c17da508e4 100644 --- a/content/github/customizing-your-github-workflow/index.md +++ b/content/github/customizing-your-github-workflow/index.md @@ -4,6 +4,7 @@ redirect_from: - /categories/customizing-your-github-workflow versions: fpt: '*' + ghec: '*' children: - /exploring-integrations - /purchasing-and-installing-apps-in-github-marketplace diff --git a/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/index.md b/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/index.md index 2bb129030fa7..52d679074950 100644 --- a/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/index.md +++ b/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/index.md @@ -5,6 +5,7 @@ redirect_from: - /articles/purchasing-and-installing-apps-in-github-marketplace versions: fpt: '*' + ghec: '*' children: - /installing-an-app-in-your-personal-account - /installing-an-app-in-your-organization diff --git a/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-organization.md b/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-organization.md index f35ab8d429e4..bc8823e913a0 100644 --- a/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-organization.md +++ b/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/customizing-your-github-workflow/installing-an-app-in-your-organization versions: fpt: '*' + ghec: '*' shortTitle: Install app organization --- {% data reusables.marketplace.marketplace-apps-only %} diff --git a/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-personal-account.md b/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-personal-account.md index 79c33d0ecc18..ff2c70857c1c 100644 --- a/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-personal-account.md +++ b/content/github/customizing-your-github-workflow/purchasing-and-installing-apps-in-github-marketplace/installing-an-app-in-your-personal-account.md @@ -6,6 +6,7 @@ redirect_from: - /github/customizing-your-github-workflow/installing-an-app-in-your-personal-account versions: fpt: '*' + ghec: '*' shortTitle: Install app user account --- {% data reusables.marketplace.marketplace-apps-only %} diff --git a/content/github/extending-github/about-webhooks.md b/content/github/extending-github/about-webhooks.md index 2788abdc0b08..427f5d57d0a3 100644 --- a/content/github/extending-github/about-webhooks.md +++ b/content/github/extending-github/about-webhooks.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% tip %} @@ -25,6 +26,6 @@ Webhooks can be triggered whenever a variety of actions are performed on a repos * A {% data variables.product.prodname_pages %} site is built * A new member is added to a team -Using the {% data variables.product.product_name %} API, you can make these webhooks update an external issue tracker, trigger CI builds, update a backup mirror, or even deploy to your production server. +Using the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, you can make these webhooks update an external issue tracker, trigger CI builds, update a backup mirror, or even deploy to your production server. To set up a new webhook, you'll need access to an external server and familiarity with the technical procedures involved. For help on building a webhook, including a full list of actions you can associate with, see "[Webhooks](/webhooks)." diff --git a/content/github/extending-github/getting-started-with-the-api.md b/content/github/extending-github/getting-started-with-the-api.md index 701b09d53bed..3f1a0f8ad33b 100644 --- a/content/github/extending-github/getting-started-with-the-api.md +++ b/content/github/extending-github/getting-started-with-the-api.md @@ -6,14 +6,15 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Get started API --- -To automate common tasks, back up your data, or create integrations that extend {% data variables.product.product_name %}, you can use the {% data variables.product.product_name %} API. +To automate common tasks, back up your data, or create integrations that extend {% data variables.product.product_name %}, you can use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API. -For more information about the API, see the [GitHub REST API](/rest) and [GitHub GraphQL API](/graphql). You can also stay current with API-related news by following the [{% data variables.product.prodname_dotcom %} Developer blog](https://developer.github.com/changes/). +For more information about the API, see the [GitHub REST API](/rest) and [GitHub GraphQL API]({% ifversion ghec %}/free-pro-team@latest/{% endif %}/graphql). You can also stay current with API-related news by following the [{% data variables.product.prodname_dotcom %} Developer blog](https://developer.github.com/changes/). ## Further reading -- "[Backing up a repository](/articles/backing-up-a-repository)"{% ifversion fpt %} +- "[Backing up a repository](/articles/backing-up-a-repository)"{% ifversion fpt or ghec %} - "[About integrations](/articles/about-integrations)"{% endif %} diff --git a/content/github/extending-github/git-automation-with-oauth-tokens.md b/content/github/extending-github/git-automation-with-oauth-tokens.md index 1cffd5aee06a..74e36bcd98ed 100644 --- a/content/github/extending-github/git-automation-with-oauth-tokens.md +++ b/content/github/extending-github/git-automation-with-oauth-tokens.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Automate with OAuth tokens --- @@ -18,7 +19,7 @@ Create a personal access token on your application settings page. For more infor {% tip %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} **Tips:** - You must verify your email address before you can create a personal access token. For more information, see "[Verifying your email address](/articles/verifying-your-email-address)." - {% data reusables.user_settings.review_oauth_tokens_tip %} @@ -28,7 +29,7 @@ Create a personal access token on your application settings page. For more infor {% endtip %} -{% ifversion fpt %}{% data reusables.user_settings.removes-personal-access-tokens %}{% endif %} +{% ifversion fpt or ghec %}{% data reusables.user_settings.removes-personal-access-tokens %}{% endif %} ## Step 2: Clone a repository diff --git a/content/github/extending-github/index.md b/content/github/extending-github/index.md index 143e6cd130bd..8101fa0bb426 100644 --- a/content/github/extending-github/index.md +++ b/content/github/extending-github/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /getting-started-with-the-api - /git-automation-with-oauth-tokens diff --git a/content/github/importing-your-projects-to-github/importing-source-code-to-github/about-github-importer.md b/content/github/importing-your-projects-to-github/importing-source-code-to-github/about-github-importer.md index ebed77a9e8a5..7d4393d53175 100644 --- a/content/github/importing-your-projects-to-github/importing-source-code-to-github/about-github-importer.md +++ b/content/github/importing-your-projects-to-github/importing-source-code-to-github/about-github-importer.md @@ -6,6 +6,7 @@ redirect_from: - /github/importing-your-projects-to-github/about-github-importer versions: fpt: '*' + ghec: '*' --- GitHub Importer is a tool that quickly imports source code repositories, including commits and revision history, to GitHub for you. diff --git a/content/github/importing-your-projects-to-github/importing-source-code-to-github/adding-an-existing-project-to-github-using-the-command-line.md b/content/github/importing-your-projects-to-github/importing-source-code-to-github/adding-an-existing-project-to-github-using-the-command-line.md index 89eafcc04efc..3533c8c67a48 100644 --- a/content/github/importing-your-projects-to-github/importing-source-code-to-github/adding-an-existing-project-to-github-using-the-command-line.md +++ b/content/github/importing-your-projects-to-github/importing-source-code-to-github/adding-an-existing-project-to-github-using-the-command-line.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Add a project locally --- @@ -26,7 +27,7 @@ shortTitle: Add a project locally ## Adding a project to {% data variables.product.product_name %} with {% data variables.product.prodname_cli %} -{% data variables.product.prodname_cli %} is an open source tool for using {% data variables.product.product_name %} from your computer's command line. {% data variables.product.prodname_cli %} can simplify the process of adding an existing project to {% data variables.product.product_name %} using the command line. To learn more about {% data variables.product.prodname_cli %}, see "[About {% data variables.product.prodname_cli %}](/github-cli/github-cli/about-github-cli)." +{% data variables.product.prodname_cli %} is an open source tool for using {% data variables.product.prodname_dotcom %} from your computer's command line. {% data variables.product.prodname_cli %} can simplify the process of adding an existing project to {% data variables.product.product_name %} using the command line. To learn more about {% data variables.product.prodname_cli %}, see "[About {% data variables.product.prodname_cli %}](/github-cli/github-cli/about-github-cli)." 1. In the command line, navigate to the root directory of your project. 1. Initialize the local directory as a Git repository. @@ -76,7 +77,7 @@ shortTitle: Add a project locally $ git commit -m "First commit" # Commits the tracked changes and prepares them to be pushed to a remote repository. {% data reusables.git.reset-head-to-previous-commit-codeblock %} ``` -7. At the top of your {% data variables.product.product_name %} repository's Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. +7. At the top of your repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}'s Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. ![Copy remote repository URL field](/assets/images/help/repository/copy-remote-repository-url-quick-setup.png) 8. In Terminal, [add the URL for the remote repository](/github/getting-started-with-github/managing-remote-repositories) where your local repository will be pushed. ```shell @@ -113,7 +114,7 @@ shortTitle: Add a project locally $ git commit -m "First commit" # Commits the tracked changes and prepares them to be pushed to a remote repository. {% data reusables.git.reset-head-to-previous-commit-codeblock %} ``` -7. At the top of your {% data variables.product.product_name %} repository's Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. +7. At the top of your repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}'s Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. ![Copy remote repository URL field](/assets/images/help/repository/copy-remote-repository-url-quick-setup.png) 8. In the Command prompt, [add the URL for the remote repository](/github/getting-started-with-github/managing-remote-repositories) where your local repository will be pushed. ```shell @@ -150,7 +151,7 @@ shortTitle: Add a project locally $ git commit -m "First commit" # Commits the tracked changes and prepares them to be pushed to a remote repository. {% data reusables.git.reset-head-to-previous-commit-codeblock %} ``` -7. At the top of your {% data variables.product.product_name %} repository's Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. +7. At the top of your repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}'s Quick Setup page, click {% octicon "clippy" aria-label="The copy to clipboard icon" %} to copy the remote repository URL. ![Copy remote repository URL field](/assets/images/help/repository/copy-remote-repository-url-quick-setup.png) 8. In Terminal, [add the URL for the remote repository](/github/getting-started-with-github/managing-remote-repositories) where your local repository will be pushed. ```shell diff --git a/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line.md b/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line.md index 035cbe4024fb..f453e9e87eaa 100644 --- a/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line.md +++ b/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Import repo locally --- Before you start, make sure you know: @@ -22,7 +23,7 @@ For purposes of demonstration, we'll use: - An external account named **extuser** - An external Git host named `https://external-host.com` - A {% data variables.product.product_name %} personal user account named **ghuser** -- A {% data variables.product.product_name %} repository named **repo.git** +- A repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} named **repo.git** {% endtip %} @@ -36,7 +37,7 @@ For purposes of demonstration, we'll use: ```shell $ cd repo.git $ git push --mirror https://{% data variables.command_line.codeblock %}/ghuser/repo.git - # Pushes the mirror to the new {% data variables.product.product_name %} repository + # Pushes the mirror to the new repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} ``` 4. Remove the temporary local repository. ```shell diff --git a/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md b/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md index 6254070a83fb..49e5d539077e 100644 --- a/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md +++ b/content/github/importing-your-projects-to-github/importing-source-code-to-github/importing-a-repository-with-github-importer.md @@ -7,6 +7,7 @@ redirect_from: - /github/importing-your-projects-to-github/importing-a-repository-with-github-importer versions: fpt: '*' + ghec: '*' shortTitle: Use GitHub Importer --- {% tip %} diff --git a/content/github/importing-your-projects-to-github/importing-source-code-to-github/index.md b/content/github/importing-your-projects-to-github/importing-source-code-to-github/index.md index fcd9af055726..9d3b4ca0f00e 100644 --- a/content/github/importing-your-projects-to-github/importing-source-code-to-github/index.md +++ b/content/github/importing-your-projects-to-github/importing-source-code-to-github/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-github-importer - /importing-a-repository-with-github-importer diff --git a/content/github/importing-your-projects-to-github/importing-source-code-to-github/source-code-migration-tools.md b/content/github/importing-your-projects-to-github/importing-source-code-to-github/source-code-migration-tools.md index 2a65de185de8..9f13cacba458 100644 --- a/content/github/importing-your-projects-to-github/importing-source-code-to-github/source-code-migration-tools.md +++ b/content/github/importing-your-projects-to-github/importing-source-code-to-github/source-code-migration-tools.md @@ -9,9 +9,10 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Code migration tools --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} We recommend using [GitHub Importer](/articles/about-github-importer) to import projects from Subversion, Mercurial, Team Foundation Version Control (TFVC), or another Git repository. You can also use these external tools to convert your project to Git. @@ -45,7 +46,7 @@ For more information about moving from TFVC (a centralized version control syste {% endtip %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading diff --git a/content/github/importing-your-projects-to-github/importing-source-code-to-github/updating-commit-author-attribution-with-github-importer.md b/content/github/importing-your-projects-to-github/importing-source-code-to-github/updating-commit-author-attribution-with-github-importer.md index 3a927ee1279d..afab67ef1f31 100644 --- a/content/github/importing-your-projects-to-github/importing-source-code-to-github/updating-commit-author-attribution-with-github-importer.md +++ b/content/github/importing-your-projects-to-github/importing-source-code-to-github/updating-commit-author-attribution-with-github-importer.md @@ -6,6 +6,7 @@ redirect_from: - /github/importing-your-projects-to-github/updating-commit-author-attribution-with-github-importer versions: fpt: '*' + ghec: '*' shortTitle: Update author GitHub Importer --- GitHub Importer looks for GitHub users whose email addresses match the authors of the commits in the repository you're importing. You can then connect a commit to its author using their email address or the author's GitHub username. diff --git a/content/github/importing-your-projects-to-github/index.md b/content/github/importing-your-projects-to-github/index.md index 9a9873803163..726276928c3a 100644 --- a/content/github/importing-your-projects-to-github/index.md +++ b/content/github/importing-your-projects-to-github/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /importing-source-code-to-github - /working-with-subversion-on-github diff --git a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/index.md b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/index.md index 173ff52bdf3c..c4d6f21fd1df 100644 --- a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/index.md +++ b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/index.md @@ -6,6 +6,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' children: - /what-are-the-differences-between-subversion-and-git - /support-for-subversion-clients diff --git a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/subversion-properties-supported-by-github.md b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/subversion-properties-supported-by-github.md index 468cfbdf63dd..30c06a302a62 100644 --- a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/subversion-properties-supported-by-github.md +++ b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/subversion-properties-supported-by-github.md @@ -7,6 +7,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' shortTitle: Properties supported by GitHub --- ## Executable files (svn:executable) diff --git a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/support-for-subversion-clients.md b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/support-for-subversion-clients.md index 271eba4d7219..9e792b29554f 100644 --- a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/support-for-subversion-clients.md +++ b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/support-for-subversion-clients.md @@ -7,6 +7,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' shortTitle: Support for Subversion clients --- GitHub supports Subversion clients via the HTTPS protocol. We use a Subversion bridge to communicate svn commands to GitHub. diff --git a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/what-are-the-differences-between-subversion-and-git.md b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/what-are-the-differences-between-subversion-and-git.md index 2d35c2198489..210871bbb55d 100644 --- a/content/github/importing-your-projects-to-github/working-with-subversion-on-github/what-are-the-differences-between-subversion-and-git.md +++ b/content/github/importing-your-projects-to-github/working-with-subversion-on-github/what-are-the-differences-between-subversion-and-git.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' shortTitle: Subversion & Git differences --- ## Directory structure @@ -48,7 +49,7 @@ A *subproject* is a project that's developed and managed somewhere outside of yo In SVN, a subproject is called an *SVN external*. In Git, it's called a *Git submodule*. Although conceptually similar, Git submodules are not kept up-to-date automatically; you must explicitly ask for a new version to be brought into your project. -For more information, see “[Git Tools Submodules](https://git-scm.com/book/en/Git-Tools-Submodules)" in the Git documentation. +For more information, see "[Git Tools Submodules](https://git-scm.com/book/en/Git-Tools-Submodules)" in the Git documentation. ## Preserving history diff --git a/content/github/index.md b/content/github/index.md index 24eeb811d783..7ba0e5108d03 100644 --- a/content/github/index.md +++ b/content/github/index.md @@ -7,11 +7,11 @@ redirect_from: intro: 'Documentation, guides, and help topics for software developers, designers, and project managers. Covers using Git, pull requests, issues, wikis, gists, and everything you need to make the most of GitHub for development.' versions: fpt: '*' + ghec: '*' ghes: '*' ghae: '*' children: - /copilot - - /setting-up-and-managing-your-enterprise - /writing-on-github - /committing-changes-to-your-project - /collaborating-with-pull-requests @@ -24,4 +24,5 @@ children: - /understanding-how-github-uses-and-protects-your-data - /site-policy - /site-policy-deprecated + - /setting-up-and-managing-your-enterprise --- diff --git a/content/github/setting-up-and-managing-your-enterprise.md b/content/github/setting-up-and-managing-your-enterprise.md new file mode 100644 index 000000000000..a7020abfe9f9 --- /dev/null +++ b/content/github/setting-up-and-managing-your-enterprise.md @@ -0,0 +1,25 @@ +--- +title: Setting up and managing your enterprise +shortTitle: Enterprise management +redirect_from: + - /github/setting-up-and-managing-your-enterprise-account + - /categories/setting-up-and-managing-your-enterprise-account +versions: + fpt: '*' + ghec: '*' + ghes: '*' + ghae: '*' +topics: + - Enterprise + - Policies +--- + +## This documentation has moved + +{% ifversion fpt or ghec %} +Enterprise owners on {% data variables.product.prodname_dotcom_the_website %} can now find documentation about enterprise management in the new {% data variables.product.prodname_ghe_cloud %} version of "[Enterprise administrators]({% ifversion fpt or ghec %}/enterprise-cloud@latest{% endif %}/admin#all-docs)." + +For more information about the {% data variables.product.prodname_ghe_cloud %} version of GitHub Docs, see [{% data variables.product.prodname_blog %}](https://github.blog/changelog/2021-10-15-ghec-version-docs/). +{% else %} +Enterprise owners on {% data variables.product.product_name %} can now find documentation about enterprise management in "[Enterprise administrators](/admin#all-docs)." +{% endif %} diff --git a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/about-identity-and-access-management-for-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/about-identity-and-access-management-for-your-enterprise-account.md deleted file mode 100644 index 93ed1f53a368..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/about-identity-and-access-management-for-your-enterprise-account.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: About identity and access management for your enterprise account -intro: 'You can centrally manage access to your enterprise''s resources, organization membership, and team membership using your identity provider (IdP).' -product: '{% data reusables.gated-features.enterprise-accounts %}' -versions: - fpt: '*' -topics: - - Enterprise -redirect_from: - - /github/setting-up-and-managing-your-enterprise/about-identity-and-access-management-for-your-enterprise-account -shortTitle: IAM for your enterprise ---- -## About identity and access management for your enterprise account - -{% data reusables.saml.dotcom-saml-explanation %} {% data reusables.saml.about-saml-enterprise-accounts %} For more information, see "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." - -After you enable SAML SSO, depending on the IdP you use, you may be able to enable additional identity and access management features. {% data reusables.scim.enterprise-account-scim %} - -If you use Azure AD as your IDP, you can use team synchronization to manage team membership within each organization. {% data reusables.identity-and-permissions.about-team-sync %} For more information, see "[Managing team synchronization for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise-account)." - -{% data reusables.saml.switching-from-org-to-enterprise %} For more information, see "[Switching your SAML configuration from an organization to an enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account)." - -## About {% data variables.product.prodname_emus %} - -{% data reusables.enterprise-accounts.emu-short-summary %} - -Configuring {% data variables.product.prodname_emus %} for SAML single-sign on and user provisioning involves following a different process than you would for an enterprise that isn't using {% data variables.product.prodname_managed_users %}. If your enterprise uses {% data variables.product.prodname_emus %}, see "[Configuring SAML single sign-on for Enterprise Managed Users](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users)." - -## Supported IdPs - -We test and officially support the following IdPs. For SAML SSO, we offer limited support for all identity providers that implement the SAML 2.0 standard. For more information, see the [SAML Wiki](https://wiki.oasis-open.org/security) on the OASIS website. - -IdP | SAML | Team synchronization | ---- | :--: | :-------: | -Active Directory Federation Services (AD FS) | {% octicon "check-circle-fill" aria-label= "The check icon" %} | | -Azure Active Directory (Azure AD) | {% octicon "check-circle-fill" aria-label="The check icon" %} | {% octicon "check-circle-fill" aria-label="The check icon" %} | -OneLogin | {% octicon "check-circle-fill" aria-label="The check icon" %} | | -PingOne | {% octicon "check-circle-fill" aria-label="The check icon" %} | | -Shibboleth | {% octicon "check-circle-fill" aria-label="The check icon" %} | | \ No newline at end of file diff --git a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account.md deleted file mode 100644 index da1f5ed99f2a..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account.md +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: Enforcing SAML single sign-on for organizations in your enterprise account -intro: 'You can control and secure access to resources like repositories, issues, and pull requests by enforcing SAML single sign-on (SSO) and centralized authentication through an IdP across all organizations owned by an enterprise account.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -permissions: Enterprise owners can enforce SAML single sign-on for organizations in an enterprise account. -versions: - fpt: '*' -topics: - - Enterprise -redirect_from: - - /github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enabling-saml-single-sign-on-for-organizations-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/enabling-saml-single-sign-on-for-organizations-in-your-enterprise-account -shortTitle: Enforce SAML ---- - -{% data reusables.enterprise-accounts.emu-saml-note %} - -## About SAML single sign-on for enterprise accounts - -{% data reusables.saml.dotcom-saml-explanation %} For more information, see "[About identity and access management with SAML single sign-on](/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on)." - -{% data reusables.saml.about-saml-enterprise-accounts %} - -{% data reusables.saml.about-saml-access-enterprise-account %} For more information, see "[Viewing and managing a user's SAML access to your enterprise account](/github/setting-up-and-managing-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise-account)." - -{% data reusables.saml.saml-supported-idps %} - -{% data reusables.scim.enterprise-account-scim %} - -## Enforcing SAML single-sign on for organizations in your enterprise account - -{% note %} - -**Notes:** - -- When you enable SAML SSO for your enterprise, the enterprise configuration will override any existing organization-level SAML configurations. {% data reusables.saml.switching-from-org-to-enterprise %} For more information, see "[Switching your SAML configuration from an organization to an enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account)." -- When you enforce SAML SSO for an organization, {% data variables.product.company_short %} removes any members of the organization that have not authenticated successfully with your SAML IdP. When you require SAML SSO for your enterprise, {% data variables.product.company_short %} does not remove members of the enterprise that have not authenticated successfully with your SAML IdP. The next time a member accesses the enterprise's resources, the member must authenticate with your SAML IdP. - -{% endnote %} - -For more detailed information about how to enable SAML using Okta, see "[Configuring SAML single sign-on for your enterprise account using Okta](/github/setting-up-and-managing-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta)." - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.settings-tab %} -{% data reusables.enterprise-accounts.security-tab %} -4. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Under "SAML single sign-on", select **Require SAML authentication**. - ![Checkbox for enabling SAML SSO](/assets/images/help/business-accounts/enable-saml-auth-enterprise.png) -6. In the **Sign on URL** field, type the HTTPS endpoint of your IdP for single sign-on requests. This value is available in your IdP configuration. -![Field for the URL that members will be forwarded to when signing in](/assets/images/help/saml/saml_sign_on_url_business.png) -7. Optionally, in the **Issuer** field, type your SAML issuer URL to verify the authenticity of sent messages. -![Field for the SAML issuer's name](/assets/images/help/saml/saml_issuer.png) -8. Under **Public Certificate**, paste a certificate to verify SAML responses. -![Field for the public certificate from your identity provider](/assets/images/help/saml/saml_public_certificate.png) -9. To verify the integrity of the requests from your SAML issuer, click {% octicon "pencil" aria-label="The edit icon" %}. Then in the "Signature Method" and "Digest Method" drop-downs, choose the hashing algorithm used by your SAML issuer. -![Drop-downs for the Signature Method and Digest method hashing algorithms used by your SAML issuer](/assets/images/help/saml/saml_hashing_method.png) -10. Before enabling SAML SSO for your enterprise, click **Test SAML configuration** to ensure that the information you've entered is correct. ![Button to test SAML configuration before enforcing](/assets/images/help/saml/saml_test.png) -11. Click **Save**. diff --git a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/index.md b/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/index.md deleted file mode 100644 index 3f5d37c22d06..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/index.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Configuring identity and access management for your enterprise account -intro: You can manage SAML single sign-on and team synchronization for your enterprise. -product: '{% data reusables.gated-features.enterprise-accounts %}' -versions: - fpt: '*' -topics: - - Enterprise -children: - - /about-identity-and-access-management-for-your-enterprise-account - - /enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account - - /configuring-saml-single-sign-on-for-your-enterprise-account-using-okta - - /managing-team-synchronization-for-organizations-in-your-enterprise-account - - /switching-your-saml-configuration-from-an-organization-to-an-enterprise-account -shortTitle: Configure IAM ---- - diff --git a/content/github/setting-up-and-managing-your-enterprise/index.md b/content/github/setting-up-and-managing-your-enterprise/index.md deleted file mode 100644 index 8d939d47379e..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/index.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: Setting up and managing your enterprise -shortTitle: Your enterprise -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /github/setting-up-and-managing-your-enterprise-account - - /categories/setting-up-and-managing-your-enterprise-account -versions: - fpt: '*' - ghes: '*' - ghae: '*' -topics: - - Enterprise -children: - - /managing-your-enterprise-account - - /managing-users-in-your-enterprise - - /managing-your-enterprise-users-with-your-identity-provider - - /managing-organizations-in-your-enterprise-account - - /configuring-identity-and-access-management-for-your-enterprise-account - - /setting-policies-for-organizations-in-your-enterprise-account ---- - diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account.md deleted file mode 100644 index d10cecd174f0..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: Configuring webhooks for organization events in your enterprise account -intro: Enterprise owners can configure webhooks for events in organizations owned by an enterprise account. -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/configuring-webhooks-for-organization-events-in-your-business-account/ - - /articles/configuring-webhooks-for-organization-events-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise-account/configuring-webhooks-for-organization-events-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/configuring-webhooks-for-organization-events-in-your-enterprise-account -versions: - fpt: '*' -topics: - - Enterprise -shortTitle: Configure webhooks ---- -You can configure webhooks to receive events from organizations owned by your enterprise account. For more information about webhooks, see "[Webhooks](/webhooks/)." - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.settings-tab %} -{% data reusables.enterprise-accounts.hooks-tab %} -4. Next to "Webhooks", click **Add webhook**. - ![Add webhook button in the Webhooks sidebar](/assets/images/help/business-accounts/add-webhook-button.png) -5. Type a payload URL, then optionally customize the configuration. For more information, see "[Creating webhooks](/webhooks/creating/#creating-webhooks)." - ![Fields for payload URL and other customization options](/assets/images/help/business-accounts/webhook-payload-url-and-customization-options.png) -6. Under "Which events would you like to trigger this webhook?", select **Let me select individual events**. - ![Selecting individual events](/assets/images/help/business-accounts/webhook-let-me-select-individual-events.png) -7. Select one or more enterprise account events for your webhook to receive. For more information, see "[Event types and payloads](/webhooks/event-payloads/)." - ![Selecting individual events](/assets/images/help/business-accounts/webhook-selected-events.png) -8. To receive the selected events for triggered webhooks, select **Active**. - ![Selecting individual events](/assets/images/help/business-accounts/webhook-active.png) -9. Click **Add webhook**. diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/index.md b/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/index.md deleted file mode 100644 index 3babf01d3a80..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/index.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: Managing organizations in your enterprise account -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/managing-organizations-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise-account/managing-organizations-in-your-enterprise-account -versions: - fpt: '*' -topics: - - Enterprise -children: - - /adding-organizations-to-your-enterprise-account - - /managing-unowned-organizations-in-your-enterprise-account - - /viewing-the-audit-logs-for-organizations-in-your-enterprise-account - - /streaming-the-audit-logs-for-organizations-in-your-enterprise-account - - /configuring-webhooks-for-organization-events-in-your-enterprise-account -shortTitle: Manage organizations ---- - diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/index.md b/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/index.md deleted file mode 100644 index ecd8179bf35c..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/index.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: Managing users in your enterprise -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise-account/managing-users-in-your-enterprise-account - - /articles/managing-users-in-your-enterprise-account - - /articles/managing-users-in-your-enterprise -versions: - fpt: '*' - ghes: '*' - ghae: '*' -topics: - - Enterprise -children: - - /roles-in-an-enterprise - - /inviting-people-to-manage-your-enterprise - - /managing-support-entitlements-for-your-enterprise - - /viewing-people-in-your-enterprise - - /viewing-and-managing-a-users-saml-access-to-your-enterprise -shortTitle: Manage users ---- - diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md b/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md deleted file mode 100644 index f51b7f48f8f2..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/viewing-people-in-your-enterprise.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: Viewing people in your enterprise -intro: 'To audit access to enterprise-owned resources or user license usage, enterprise owners can view every administrator and member of the enterprise.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /github/setting-up-and-managing-your-enterprise-account/viewing-people-in-your-enterprise-account - - /articles/viewing-people-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/viewing-people-in-your-enterprise -versions: - fpt: '*' - ghes: '*' - ghae: '*' -topics: - - Enterprise -shortTitle: View people in your enterprise ---- -## Viewing enterprise owners{% ifversion fpt %} and billing managers{% endif %} - -You can view enterprise owners {% ifversion fpt %} and billing managers, {% endif %}as well as a list of pending invitations to become owners{% ifversion fpt %} and billing managers. You can filter the list of enterprise administrators by role{% endif %}. You can find a specific person by searching for their username or full name. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.people-tab %} -{% data reusables.enterprise-accounts.administrators-tab %} -{% ifversion fpt %}1. Optionally, to view a list of pending invitations, click **_NUMBER_ pending**. - !["NUMBER pending" button to the right of search and filter options](/assets/images/help/enterprises/administrators-pending.png){% endif %} - -## Viewing members and outside collaborators - -You can view the number of pending members and outside collaborators. You can filter the list of members by {% ifversion fpt %}deployment ({% data variables.product.prodname_ghe_cloud %} or {% data variables.product.prodname_ghe_server %}),{% endif %} role{% ifversion fpt %}, and{% else %} or {% endif %} organization. You can filter the list of outside collaborators by the visibility of the repositories the collaborator has access to. You can find a specific person by searching for their username or display name. - -You can view {% ifversion fpt %}all the {% data variables.product.prodname_ghe_cloud %} organizations and {% data variables.product.prodname_ghe_server %} instances that a member belongs to, and {% endif %}which repositories an outside collaborator has access to{% ifversion fpt %}, {% endif %} by clicking on the person's name. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.people-tab %} -1. Optionally, to view a list of outside collaborators rather than the list of members, click **Outside collaborators**. - ![Outside collaborators tab on the Organization members page](/assets/images/help/business-accounts/outside-collaborators-tab.png) -{% ifversion fpt %}1. Optionally, to view a list of pending invitations, click **_NUMBER_ pending**. - !["NUMBER pending" button to the right of search and filter options](/assets/images/help/enterprises/members-pending.png){% endif %} - -## Further reading - -- "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise)" diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts.md b/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts.md deleted file mode 100644 index 47dbfe597691..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: About enterprise accounts -intro: 'With {% data variables.product.product_name %}, you can use an enterprise account to {% ifversion fpt %}enable collaboration between your organizations, while giving{% elsif ghes or ghae %}give{% endif %} administrators a single point of visibility and management.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/about-github-business-accounts/ - - /articles/about-enterprise-accounts - - /github/setting-up-and-managing-your-enterprise-account/about-enterprise-accounts - - /github/setting-up-and-managing-your-enterprise/about-enterprise-accounts -versions: - fpt: '*' - ghes: '*' -topics: - - Accounts - - Enterprise ---- - -{% data reusables.enterprise-accounts.about-enterprise-accounts %} diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/index.md b/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/index.md deleted file mode 100644 index d727f2970184..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/index.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: Managing your enterprise account -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/managing-your-enterprise-account -versions: - fpt: '*' - ghes: '*' -topics: - - Enterprise -children: - - /about-enterprise-accounts - - /verifying-or-approving-a-domain-for-your-enterprise-account - - /managing-licenses-for-visual-studio-subscription-with-github-enterprise - - /connecting-an-azure-subscription-to-your-enterprise -shortTitle: Manage your enterprise ---- - diff --git a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/verifying-or-approving-a-domain-for-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/verifying-or-approving-a-domain-for-your-enterprise-account.md deleted file mode 100644 index 52828bcbcafc..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/verifying-or-approving-a-domain-for-your-enterprise-account.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: Verifying or approving a domain for your enterprise account -intro: 'You can verify your ownership of domains with {% data variables.product.company_short %} to confirm the identity of organizations owned by your enterprise account. You can also approve domains that {% data variables.product.company_short %} can send email notifications to for members of organizations owned by your enterprise account.' -product: '{% data reusables.gated-features.verify-and-approve-domain %}' -versions: - fpt: '*' -permissions: Enterprise owners can verify or approve a domain for an enterprise account. -redirect_from: - - /github/setting-up-and-managing-your-enterprise/verifying-your-enterprise-accounts-domain - - /github/articles/verifying-your-enterprise-accounts-domain - - /early-access/github/articles/verifying-your-enterprise-accounts-domain - - /github/setting-up-and-managing-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account -type: how_to -topics: - - Enterprise - - Notifications - - Organizations - - Policy -shortTitle: Verify or approve a domain ---- -## About domain verification - -{% data reusables.enterprise-accounts.domains-about-verification %} - -## About domain approval - -{% data reusables.enterprise-accounts.domains-about-approval %} - -## Verifying a domain for your enterprise account - -{% data reusables.enterprise-accounts.domains-verifying %} - -## Approving a domain for your enterprise account - -{% data reusables.enterprise-accounts.domains-approving %} - -## Removing an approved or verified domain - -{% data reusables.enterprise-accounts.domains-removing %} diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account.md deleted file mode 100644 index ab63338deb12..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -title: Configuring the retention period for GitHub Actions artifacts and logs in your enterprise account -intro: 'Enterprise owners can configure the retention period for {% data variables.product.prodname_actions %} artifacts and logs in an enterprise account.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /github/setting-up-and-managing-your-enterprise-account/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account -miniTocMaxHeadingLevel: 3 -versions: - fpt: '*' - ghes: '>=3.0' - ghae: '*' -topics: - - Enterprise -shortTitle: Configure Actions retention ---- -{% data reusables.actions.about-artifact-log-retention %} - -## Setting the retention period for an enterprise - -{% data reusables.enterprise_site_admin_settings.access-settings %} -{% data reusables.enterprise_site_admin_settings.business %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -{% data reusables.github-actions.change-retention-period-for-artifacts-logs %} diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account.md deleted file mode 100644 index bf01374d307f..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: Enforcing a policy on dependency insights in your enterprise account -intro: 'Across all organizations owned by your enterprise account, you can allow or disallow members to see dependency insights, or allow owners to administer the setting on the organization level.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/enforcing-a-policy-on-dependency-insights/ - - /articles/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise-account/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account -versions: - fpt: '*' -topics: - - Enterprise -shortTitle: Policy for dependency insights ---- -In organizations owned by an enterprise account, organization owners can set limitations for viewing organization dependency insights. For more information, see "[Changing the visibility of your organization's dependency insights](/articles/changing-the-visibility-of-your-organizations-dependency-insights)." - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. In the enterprise account sidebar, click **Organizations**. - ![Organizations tab in the enterprise account sidebar](/assets/images/help/business-accounts/settings-policies-org-tab.png) -4. Under "Organization policies", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Under "Organization policies", use the drop-down menu and choose a policy. - ![Drop-down menu with organization policies options](/assets/images/help/business-accounts/organization-policy-drop-down.png) diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account.md deleted file mode 100644 index 19a8e8dc2374..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account.md +++ /dev/null @@ -1,82 +0,0 @@ ---- -title: Enforcing GitHub Actions policies in your enterprise account -intro: 'Enterprise owners can disable, enable, and limit {% data variables.product.prodname_actions %} for an enterprise account.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /github/setting-up-and-managing-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account -miniTocMaxHeadingLevel: 3 -versions: - fpt: '*' -topics: - - Enterprise -shortTitle: Policies for GitHub Actions ---- -## About {% data variables.product.prodname_actions %} permissions for your enterprise account - -By default, {% data variables.product.prodname_actions %} is enabled in all organizations owned by an enterprise account. You can choose to disable {% data variables.product.prodname_actions %} for all organizations owned by an enterprise account, or only allow specified organizations. You can also limit the use of public actions, so that people can only use local actions that exist in your organization. - -For more information about {% data variables.product.prodname_actions %}, see "[About {% data variables.product.prodname_actions %}](/actions/getting-started-with-github-actions/about-github-actions)." - -## Managing {% data variables.product.prodname_actions %} permissions for your enterprise account - -You can disable all workflows for an enterprise or set a policy that configures which actions can be used in an organization. - -{% data reusables.actions.actions-use-policy-settings %} - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -{% data reusables.actions.enterprise-actions-permissions %} -1. Click **Save**. - -## Allowing specific actions to run - -{% data reusables.actions.allow-specific-actions-intro %} - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -1. Under **Policies**, select **Allow select actions** and add your required actions to the list. - ![Add actions to allow list](/assets/images/help/organizations/enterprise-actions-policy-allow-list.png) - -## Configuring required approval for workflows from public forks - -{% data reusables.actions.workflow-run-approve-public-fork %} - -You can configure this behavior for your enterprise using the procedure below. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -{% data reusables.github-actions.workflows-from-public-fork-setting %} - -{% data reusables.actions.workflow-run-approve-link %} - -## Enabling workflows for private repository forks - -{% data reusables.github-actions.private-repository-forks-overview %} - -### Configuring the private fork policy for your enterprise account - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -{% data reusables.github-actions.private-repository-forks-configure %} - -## Setting the permissions of the `GITHUB_TOKEN` for your enterprise - -{% data reusables.github-actions.workflow-permissions-intro %} - -You can set the default permissions for the `GITHUB_TOKEN` in the settings for your enterprise, organizations, or repositories. If you choose the restricted option as the default in your enterprise settings, this prevents the more permissive setting being chosen in the organization or repository settings. - -{% data reusables.github-actions.workflow-permissions-modifying %} - -### Configuring the default `GITHUB_TOKEN` permissions - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.actions-tab %} -1. Under **Workflow permissions**, choose whether you want the `GITHUB_TOKEN` to have read and write access for all scopes, or just read access for the `contents` scope. - ![Set GITHUB_TOKEN permissions for this enterprise](/assets/images/help/settings/actions-workflow-permissions-enterprise.png) -1. Click **Save** to apply the settings. diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-policies-for-advanced-security-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-policies-for-advanced-security-in-your-enterprise-account.md deleted file mode 100644 index 262190b1ec94..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-policies-for-advanced-security-in-your-enterprise-account.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: Enforcing policies for Advanced Security in your enterprise account -intro: 'Enterprise owners can enforce policies to manage {% data variables.product.prodname_GH_advanced_security %} features for organizations owned by an enterprise account.' -product: '{% data reusables.gated-features.ghas %}' -versions: - fpt: '*' -redirect_from: - - /github/setting-up-and-managing-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise-account -shortTitle: Policies for Advanced Security ---- -## About {% data variables.product.prodname_GH_advanced_security %} - -{% data reusables.advanced-security.ghas-helps-developers %} - -## Enforcing a policy for {% data variables.product.prodname_advanced_security %} features - -{% data reusables.advanced-security.about-ghas-organization-policy %} - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -{% data reusables.enterprise-accounts.advanced-security-policies %} -{% data reusables.enterprise-accounts.advanced-security-organization-policy-drop-down %} -{% data reusables.enterprise-accounts.advanced-security-individual-organization-policy-drop-down %} diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-repository-management-policies-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-repository-management-policies-in-your-enterprise-account.md deleted file mode 100644 index 0d9b7f9f8852..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-repository-management-policies-in-your-enterprise-account.md +++ /dev/null @@ -1,99 +0,0 @@ ---- -title: Enforcing repository management policies in your enterprise account -intro: 'Enterprise owners can enforce certain repository management policies for all organizations owned by an enterprise account, or allow policies to be set in each organization.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/enforcing-repository-management-settings-for-organizations-in-your-business-account/ - - /articles/enforcing-repository-management-policies-for-organizations-in-your-enterprise-account/ - - /articles/enforcing-repository-management-policies-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise-account/enforcing-repository-management-policies-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/enforcing-repository-management-policies-in-your-enterprise-account -versions: - fpt: '*' -topics: - - Enterprise -shortTitle: Policies for repositories ---- -For more information, see "[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization)." - -## Enforcing a policy on base repository permissions - -Across all organizations owned by your enterprise account, you can set a base repository permission level (none, read, write, or admin) for organization members, or allow owners to administer the setting on the organization level. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -4. On the **Repository policies** tab, under "Base permissions", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Under "Base permissions", use the drop-down menu and choose a policy. - ![Drop-down menu with repository permissions policy options](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) - -## Enforcing a policy on creating repositories - -Across all organizations owned by your enterprise account, you can allow members to create repositories, restrict repository creation to organization owners, or allow owners to administer the setting on the organization level. If you allow members to create repositories, you can choose whether members can create any combination of public, private, and internal repositories. {% data reusables.repositories.internal-repo-default %} For more information about internal repositories, see "[Creating an internal repository](/articles/creating-an-internal-repository)." - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Repository creation", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -{% data reusables.enterprise-accounts.repo-creation-policy %} -{% data reusables.enterprise-accounts.repo-creation-types %} -6. Click **Save**. - -## Enforcing a policy on forking private or internal repositories - -Across all organizations owned by your enterprise account, you can allow people with access to a private or internal repository to fork the repository, never allow forking of private or internal repositories, or allow owners to administer the setting on the organization level. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Repository forking", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -4. Under "Repository forking", use the drop-down menu and choose a policy. - ![Drop-down menu with repository forking policy options](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png) - -## Enforcing a policy on inviting outside collaborators to repositories - -Across all organizations owned by your enterprise account, you can allow members to invite outside collaborators to repositories, restrict outside collaborator invitations to organization owners, or allow owners to administer the setting on the organization level. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Repository invitations", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -4. Under "Repository invitations", use the drop-down menu and choose a policy. - ![Drop-down menu with outside collaborator invitation policy options](/assets/images/help/business-accounts/repository-invitation-policy-drop-down.png) - -## Enforcing a policy on changing repository visibility - -Across all organizations owned by your enterprise account, you can allow members with admin permissions to change a repository's visibility, restrict repository visibility changes to organization owners, or allow owners to administer the setting on the organization level. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Repository visibility change", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -{% data reusables.enterprise-accounts.repository-visibility-policy %} - -## Enforcing a policy on deleting or transferring repositories - -Across all organizations owned by your enterprise account, you can allow members with admin permissions to delete or transfer a repository, restrict repository deletion and transfers to organization owners, or allow owners to administer the setting on the organization level. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Repository deletion and transfer", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -{% data reusables.enterprise-accounts.repository-deletion-policy %} - -## Enforcing a policy on deleting issues - -Across all organizations owned by your enterprise account, you can allow members with admin permissions to delete issues in a repository, restrict issue deletion to organization owners, or allow owners to administer the setting on the organization level. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Repository issue deletion", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -4. Under "Repository issue deletion", use the drop-down menu and choose a policy. - ![Drop-down menu with issue deletion policy options](/assets/images/help/business-accounts/repository-issue-deletion-policy-drop-down.png) - -## Enforcing a policy on the default branch name - -Across all organizations owned by your enterprise account, you can set the default branch name for any new repositories that members create. You can choose to enforce that default branch name across all organizations or allow individual organizations to set a different one. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. On the **Repository policies** tab, under "Default branch name", enter the default branch name that new repositories should use. - ![Text box for entering default branch name](/assets/images/help/business-accounts/default-branch-name-text.png) -4. Optionally, to enforce the default branch name for all organizations in the enterprise, select **Enforce across this enterprise**. - ![Enforcement checkbox](/assets/images/help/business-accounts/default-branch-name-enforce.png) -5. Click **Update**. - ![Update button](/assets/images/help/business-accounts/default-branch-name-update.png) diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-team-policies-in-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-team-policies-in-your-enterprise-account.md deleted file mode 100644 index 1ca0adec4e0b..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-team-policies-in-your-enterprise-account.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Enforcing team policies in your enterprise account -intro: 'Enterprise owners can enforce certain team policies for all organizations owned by an enterprise account, or allow policies to be set in each organization.' -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/enforcing-team-settings-for-organizations-in-your-business-account/ - - /articles/enforcing-team-policies-for-organizations-in-your-enterprise-account/ - - /articles/enforcing-team-policies-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise-account/enforcing-team-policies-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise/enforcing-team-policies-in-your-enterprise-account -versions: - fpt: '*' -topics: - - Enterprise -shortTitle: Enforce team policies ---- -## Enforcing a policy for team discussions - -Across all organizations owned by your enterprise account, you can enable or disable team discussions, or allow owners to administer the setting on the organization level. For more information, see "[About team discussions](/organizations/collaborating-with-your-team/about-team-discussions/)." - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.policies-tab %} -3. In the enterprise account sidebar, click **Teams**. - ![Teams tab in the enterprise account sidebar](/assets/images/help/business-accounts/settings-teams-tab.png) -4. Under "Team discussions", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Under "Team discussions", use the drop-down menu and choose a policy. - ![Drop-down menu with team discussion policy options](/assets/images/help/business-accounts/team-discussion-policy-drop-down.png) diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/index.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/index.md deleted file mode 100644 index 202f5a9bd14f..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/index.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -title: Setting policies for organizations in your enterprise account -product: '{% data reusables.gated-features.enterprise-accounts %}' -redirect_from: - - /articles/setting-policies-for-organizations-in-your-enterprise-account - - /github/setting-up-and-managing-your-enterprise-account/setting-policies-for-organizations-in-your-enterprise-account -versions: - fpt: '*' -topics: - - Enterprise -children: - - /enforcing-repository-management-policies-in-your-enterprise-account - - /enforcing-project-board-policies-in-your-enterprise-account - - /enforcing-team-policies-in-your-enterprise-account - - /enforcing-security-settings-in-your-enterprise-account - - /restricting-email-notifications-for-your-enterprise-account - - /enforcing-a-policy-on-dependency-insights-in-your-enterprise-account - - /enforcing-github-actions-policies-in-your-enterprise-account - - /configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account - - /enforcing-policies-for-advanced-security-in-your-enterprise-account -shortTitle: Set organization policies ---- - diff --git a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/restricting-email-notifications-for-your-enterprise-account.md b/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/restricting-email-notifications-for-your-enterprise-account.md deleted file mode 100644 index 8057199e936f..000000000000 --- a/content/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/restricting-email-notifications-for-your-enterprise-account.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: Restricting email notifications for your enterprise account -intro: You can prevent your enterprise's information from leaking into personal email accounts by restricting the domains where members can receive email notifications about activity in organizations owned by your enterprise account. -product: '{% data reusables.gated-features.restrict-email-domain %}' -versions: - fpt: '*' -permissions: Enterprise owners can restrict email notifications for an enterprise account. -redirect_from: - - /github/setting-up-and-managing-your-enterprise/restricting-email-notifications-for-your-enterprise-account-to-approved-domains - - /github/setting-up-and-managing-your-enterprise/restricting-email-notifications-for-your-enterprise-account -type: how_to -topics: - - Enterprise - - Notifications - - Policy -shortTitle: Restrict email notifications ---- -## About email restrictions for your enterprise account - -{% data reusables.enterprise-accounts.email-restrictions-about %} - -## Restricting email notifications for your enterprise account - -{% data reusables.enterprise-accounts.email-restrictions-restricting %} diff --git a/content/github/understanding-how-github-uses-and-protects-your-data/about-githubs-use-of-your-data.md b/content/github/understanding-how-github-uses-and-protects-your-data/about-githubs-use-of-your-data.md index 25c323d286fe..b1f24ca1d460 100644 --- a/content/github/understanding-how-github-uses-and-protects-your-data/about-githubs-use-of-your-data.md +++ b/content/github/understanding-how-github-uses-and-protects-your-data/about-githubs-use-of-your-data.md @@ -6,6 +6,7 @@ redirect_from: intro: '{% data variables.product.product_name %} uses your repository''s data to connect you to relevant tools, people, projects, and information.' versions: fpt: '*' + ghec: '*' topics: - Policy - Legal @@ -20,7 +21,7 @@ shortTitle: GitHub's use of your data {% data reusables.user_settings.export-data %} For more information, see "[Requesting an archive of your personal account's data](/articles/requesting-an-archive-of-your-personal-account-s-data)." -If you opt in to data use for a private repository, we will continue to treat your private data, source code, or trade secrets as confidential and private consistent with our [Terms of Service](/articles/github-terms-of-service/). The information we learn only comes from aggregated data. For more information, see "[Managing data use settings for your private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository)." +If you opt in to data use for a private repository, we will continue to treat your private data, source code, or trade secrets as confidential and private consistent with our [Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service). The information we learn only comes from aggregated data. For more information, see "[Managing data use settings for your private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository)." We'll announce substantial new features that use metadata or aggregate data on the [{% data variables.product.prodname_dotcom %} blog](https://github.com/blog). @@ -34,6 +35,6 @@ To detect potential security vulnerabilities, {% data variables.product.product_ ## Privacy and data sharing -Private repository data is scanned by machine and never read by {% data variables.product.product_name %} staff. Human eyes will never see the contents of your private repositories, except as described in our [Terms of Service](/articles/github-terms-of-service/#3-access). +Private repository data is scanned by machine and never read by {% data variables.product.product_name %} staff. Human eyes will never see the contents of your private repositories, except as described in our [Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service#3-access). Your individual personal or repository data will not be shared with third parties. We may share aggregate data learned from our analysis with our partners. diff --git a/content/github/understanding-how-github-uses-and-protects-your-data/index.md b/content/github/understanding-how-github-uses-and-protects-your-data/index.md index 49af0c5a7b73..2522996a778a 100644 --- a/content/github/understanding-how-github-uses-and-protects-your-data/index.md +++ b/content/github/understanding-how-github-uses-and-protects-your-data/index.md @@ -4,6 +4,7 @@ redirect_from: - /categories/understanding-how-github-uses-and-protects-your-data versions: fpt: '*' + ghec: '*' children: - /about-githubs-use-of-your-data - /requesting-an-archive-of-your-personal-accounts-data diff --git a/content/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository.md b/content/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository.md index bb1ec90ae4e8..c682319d40f1 100644 --- a/content/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository.md +++ b/content/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository.md @@ -6,6 +6,7 @@ redirect_from: - /github/understanding-how-github-uses-and-protects-your-data/opting-into-or-out-of-data-use-for-your-private-repository versions: fpt: '*' + ghec: '*' topics: - Policy - Legal diff --git a/content/github/understanding-how-github-uses-and-protects-your-data/opting-into-or-out-of-the-github-archive-program-for-your-public-repository.md b/content/github/understanding-how-github-uses-and-protects-your-data/opting-into-or-out-of-the-github-archive-program-for-your-public-repository.md index 6e61384f8d5d..3d7ea3615466 100644 --- a/content/github/understanding-how-github-uses-and-protects-your-data/opting-into-or-out-of-the-github-archive-program-for-your-public-repository.md +++ b/content/github/understanding-how-github-uses-and-protects-your-data/opting-into-or-out-of-the-github-archive-program-for-your-public-repository.md @@ -4,6 +4,7 @@ intro: 'You can manage whether {% data variables.product.prodname_dotcom %} incl permissions: 'People with admin permissions to a public repository can opt into or out of the {% data variables.product.prodname_archive %}.' versions: fpt: '*' + ghec: '*' topics: - Policy - Legal diff --git a/content/github/understanding-how-github-uses-and-protects-your-data/requesting-an-archive-of-your-personal-accounts-data.md b/content/github/understanding-how-github-uses-and-protects-your-data/requesting-an-archive-of-your-personal-accounts-data.md index c853c39fdae4..e717ad7d13e0 100644 --- a/content/github/understanding-how-github-uses-and-protects-your-data/requesting-an-archive-of-your-personal-accounts-data.md +++ b/content/github/understanding-how-github-uses-and-protects-your-data/requesting-an-archive-of-your-personal-accounts-data.md @@ -6,6 +6,7 @@ redirect_from: intro: '{% data reusables.user_settings.export-data %}' versions: fpt: '*' + ghec: '*' topics: - Policy - Legal diff --git a/content/github/working-with-github-support/about-github-premium-support-for-github-enterprise-cloud.md b/content/github/working-with-github-support/about-github-premium-support-for-github-enterprise-cloud.md index 5d6e7321f8de..d31732d6b37a 100644 --- a/content/github/working-with-github-support/about-github-premium-support-for-github-enterprise-cloud.md +++ b/content/github/working-with-github-support/about-github-premium-support-for-github-enterprise-cloud.md @@ -6,6 +6,7 @@ redirect_from: - /articles/about-github-premium-support-for-github-enterprise-cloud versions: fpt: '*' + ghec: '*' topics: - Jobs shortTitle: GitHub Premium Support @@ -19,7 +20,7 @@ shortTitle: GitHub Premium Support - {% data reusables.support.data-protection-and-privacy %} -- This article contains the terms of {% data variables.contact.premium_support %} for {% data variables.product.prodname_ghe_cloud %} customers. The terms may be different for customers of {% data variables.product.prodname_ghe_server %} or {% data variables.product.prodname_enterprise %} customers who purchase {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %} together. For more information, see "[About {% data variables.contact.premium_support %} for {% data variables.product.prodname_ghe_server %}](/enterprise/admin/guides/enterprise-support/about-github-premium-support-for-github-enterprise-server)" and "[About {% data variables.contact.premium_support %} for {% data variables.product.prodname_enterprise %}](/enterprise/admin/guides/enterprise-support/about-github-premium-support-for-github-enterprise)." +- This article contains the terms of {% data variables.contact.premium_support %} for {% data variables.product.prodname_ghe_cloud %} customers. The terms may be different for customers of {% data variables.product.prodname_ghe_server %} or {% data variables.product.prodname_enterprise %} customers who purchase {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %} together. For more information, see "[About {% data variables.contact.premium_support %} for {% data variables.product.prodname_ghe_server %}](/enterprise-server@latest/admin/guides/enterprise-support/about-github-premium-support-for-github-enterprise-server)" and "[About {% data variables.contact.premium_support %} for {% data variables.product.prodname_enterprise %}](/enterprise-server@latest/admin/guides/enterprise-support/about-github-premium-support-for-github-enterprise)." {% endnote %} diff --git a/content/github/working-with-github-support/about-github-support.md b/content/github/working-with-github-support/about-github-support.md index bdda57a3ff42..514e4dc8f00e 100644 --- a/content/github/working-with-github-support/about-github-support.md +++ b/content/github/working-with-github-support/about-github-support.md @@ -5,6 +5,7 @@ redirect_from: - /articles/about-github-support versions: fpt: '*' + ghec: '*' topics: - Jobs --- @@ -35,4 +36,4 @@ To report account, security, and abuse issues, or to receive assisted support fo If {% data variables.contact.github_support %} needs to access a private repository to address your support request, the owner of the repository will receive an email with a link to accept or decline temporary access. The owner will have 20 days to accept or decline the request before the request expires. If the owner accepts the request, {% data variables.contact.github_support %} will have access the repository for five days. -{% data variables.contact.github_support %} will never access your private repositories without your explicit consent. For more information, see the [Terms of Service](/articles/github-terms-of-service#3-access). +{% data variables.contact.github_support %} will never access your private repositories without your explicit consent. For more information, see the [Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service#3-access). diff --git a/content/github/working-with-github-support/github-enterprise-cloud-support.md b/content/github/working-with-github-support/github-enterprise-cloud-support.md index 97283ac6e957..4a9c89127e7a 100644 --- a/content/github/working-with-github-support/github-enterprise-cloud-support.md +++ b/content/github/working-with-github-support/github-enterprise-cloud-support.md @@ -7,6 +7,7 @@ redirect_from: intro: '{% data variables.product.prodname_ghe_cloud %} includes a target eight-hour response time for priority support requests, Monday to Friday in your local time zone.' versions: fpt: '*' + ghec: '*' topics: - Jobs shortTitle: GitHub Enterprise Cloud diff --git a/content/github/working-with-github-support/github-marketplace-support.md b/content/github/working-with-github-support/github-marketplace-support.md index fabe4df96ec5..b3e4160631f1 100644 --- a/content/github/working-with-github-support/github-marketplace-support.md +++ b/content/github/working-with-github-support/github-marketplace-support.md @@ -5,6 +5,7 @@ redirect_from: - /articles/github-marketplace-support versions: fpt: '*' + ghec: '*' topics: - Jobs shortTitle: GitHub Marketplace diff --git a/content/github/working-with-github-support/index.md b/content/github/working-with-github-support/index.md index 69e85c798af0..1c4aa89d989d 100644 --- a/content/github/working-with-github-support/index.md +++ b/content/github/working-with-github-support/index.md @@ -5,6 +5,7 @@ redirect_from: - /forum versions: fpt: '*' + ghec: '*' topics: - Jobs children: diff --git a/content/github/working-with-github-support/submitting-a-ticket.md b/content/github/working-with-github-support/submitting-a-ticket.md index a93a38e1d1d4..78687fc63816 100644 --- a/content/github/working-with-github-support/submitting-a-ticket.md +++ b/content/github/working-with-github-support/submitting-a-ticket.md @@ -5,6 +5,7 @@ redirect_from: - /articles/submitting-a-ticket versions: fpt: '*' + ghec: '*' topics: - Jobs --- @@ -13,7 +14,7 @@ If your account uses a paid {% data variables.product.prodname_dotcom %} product {% data reusables.enterprise-accounts.support-entitlements %} -If you do not have an enterprise account, please use the {% data variables.contact.enterprise_portal %} to submit tickets. For more information about enterprise accounts, see "[About enterprise accounts](/github/setting-up-and-managing-your-enterprise/about-enterprise-accounts)." +If you do not have an enterprise account, please use the {% data variables.contact.enterprise_portal %} to submit tickets. For more information about enterprise accounts, see "[About enterprise accounts](/enterprise-cloud@latest/admin/overview/about-enterprise-accounts)." ## Submitting a ticket using the {% data variables.contact.support_portal %} diff --git a/content/github/writing-on-github/editing-and-sharing-content-with-gists/creating-gists.md b/content/github/writing-on-github/editing-and-sharing-content-with-gists/creating-gists.md index 56c880ce06ae..15a2177662e6 100644 --- a/content/github/writing-on-github/editing-and-sharing-content-with-gists/creating-gists.md +++ b/content/github/writing-on-github/editing-and-sharing-content-with-gists/creating-gists.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## About gists @@ -36,7 +37,7 @@ You'll receive a notification when: - Someone mentions you in a gist. - You subscribe to a gist, by clicking **Subscribe** at the top of any gist. -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} You can pin gists to your profile so other people can see them easily. For more information, see "[Pinning items to your profile](/articles/pinning-items-to-your-profile)." @@ -48,7 +49,7 @@ Since gists are Git repositories, you can view their full commit history, comple You can download a ZIP file of a gist by clicking the **Download ZIP** button at the top of the gist. You can embed a gist in any text field that supports Javascript, such as a blog post. To get the embed code, click the clipboard icon next to the **Embed** URL of a gist. To embed a specific gist file, append the **Embed** URL with `?file=FILENAME`. -{% ifversion fpt %} +{% ifversion fpt or ghec %} Gist supports mapping GeoJSON files. These maps are displayed in embedded gists, so you can easily share and embed maps. For more information, see "[Working with non-code files](/repositories/working-with-files/using-files/working-with-non-code-files#mapping-geojson-files-on-github)." @@ -58,7 +59,7 @@ Gist supports mapping GeoJSON files. These maps are displayed in embedded gists, Follow the steps below to create a gist. -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} {% note %} You can also create a gist using the {% data variables.product.prodname_cli %}. For more information, see "[`gh gist create`](https://cli.github.com/manual/gh_gist_create)" in the {% data variables.product.prodname_cli %} documentation. diff --git a/content/github/writing-on-github/editing-and-sharing-content-with-gists/forking-and-cloning-gists.md b/content/github/writing-on-github/editing-and-sharing-content-with-gists/forking-and-cloning-gists.md index 8bc52253b9a9..337158020610 100644 --- a/content/github/writing-on-github/editing-and-sharing-content-with-gists/forking-and-cloning-gists.md +++ b/content/github/writing-on-github/editing-and-sharing-content-with-gists/forking-and-cloning-gists.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## Forking gists diff --git a/content/github/writing-on-github/editing-and-sharing-content-with-gists/index.md b/content/github/writing-on-github/editing-and-sharing-content-with-gists/index.md index f9959847adb2..2c4f0958a82f 100644 --- a/content/github/writing-on-github/editing-and-sharing-content-with-gists/index.md +++ b/content/github/writing-on-github/editing-and-sharing-content-with-gists/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /creating-gists - /forking-and-cloning-gists diff --git a/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md b/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md index 2fb7079744e5..6f485430eed7 100644 --- a/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md +++ b/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/about-writing-and-formatting-on-github.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Write & format on GitHub --- [Markdown](http://daringfireball.net/projects/markdown/) is an easy-to-read, easy-to-write syntax for formatting plain text. diff --git a/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md b/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md index 17f8f235d5b9..7bb8283adb86 100644 --- a/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md +++ b/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Basic formatting syntax --- ## Headings @@ -54,7 +55,7 @@ Text that is not a quote ## Quoting code -You can call out code or a command within a sentence with single backticks. The text within the backticks will not be formatted.{% ifversion fpt or ghae-next or ghes > 3.1 %} You can also press the `command` or `Ctrl` + `e` keyboard shortcut to insert the backticks for a code block within a line of Markdown.{% endif %} +You can call out code or a command within a sentence with single backticks. The text within the backticks will not be formatted.{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} You can also press the `command` or `Ctrl` + `e` keyboard shortcut to insert the backticks for a code block within a line of Markdown.{% endif %} ```markdown Use `git status` to list all new or modified files that haven't yet been committed. @@ -79,7 +80,7 @@ For more information, see "[Creating and highlighting code blocks](/articles/cre ## Links -You can create an inline link by wrapping link text in brackets `[ ]`, and then wrapping the URL in parentheses `( )`. {% ifversion fpt or ghae-next or ghes > 3.1 %}You can also use the keyboard shortcut `command + k` to create a link.{% endif %} +You can create an inline link by wrapping link text in brackets `[ ]`, and then wrapping the URL in parentheses `( )`. {% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}You can also use the keyboard shortcut `command + k` to create a link.{% endif %} `This site was built using [GitHub Pages](https://pages.github.com/).` @@ -107,7 +108,7 @@ You can display an image by adding `!` and wrapping the alt text in`[ ]`. Then w ![Rendered Image](/assets/images/help/writing/image-rendered.png) -{% data variables.product.product_name %} supports embedding images into your issues, pull requests{% ifversion fpt %}, discussions{% endif %}, comments and `.md` files. You can display an image from your repository, add a link to an online image, or upload an image. For more information, see "[Uploading assets](#uploading-assets)." +{% data variables.product.product_name %} supports embedding images into your issues, pull requests{% ifversion fpt or ghec %}, discussions{% endif %}, comments and `.md` files. You can display an image from your repository, add a link to an online image, or upload an image. For more information, see "[Uploading assets](#uploading-assets)." {% tip %} @@ -207,7 +208,7 @@ For more information, see "[About task lists](/articles/about-task-lists)." ## Mentioning people and teams -You can mention a person or [team](/articles/setting-up-teams/) on {% data variables.product.product_name %} by typing `@` plus their username or team name. This will trigger a notification and bring their attention to the conversation. People will also receive a notification if you edit a comment to mention their username or team name. For more information about notifications, see {% ifversion fpt or ghes or ghae %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[About notifications](/github/receiving-notifications-about-activity-on-github/about-notifications){% endif %}." +You can mention a person or [team](/articles/setting-up-teams/) on {% data variables.product.product_name %} by typing `@` plus their username or team name. This will trigger a notification and bring their attention to the conversation. People will also receive a notification if you edit a comment to mention their username or team name. For more information about notifications, see {% ifversion fpt or ghes or ghae or ghec %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[About notifications](/github/receiving-notifications-about-activity-on-github/about-notifications){% endif %}." `@github/support What do you think about these updates?` @@ -235,7 +236,7 @@ Some {% data variables.product.prodname_github_apps %} provide information in {% ![Content attachment](/assets/images/github-apps/content_reference_attachment.png) -To see content attachments, you must have a {% data variables.product.prodname_github_app %} that uses the Content Attachments API installed on the repository.{% ifversion fpt %} For more information, see "[Installing an app in your personal account](/articles/installing-an-app-in-your-personal-account)" and "[Installing an app in your organization](/articles/installing-an-app-in-your-organization)."{% endif %} +To see content attachments, you must have a {% data variables.product.prodname_github_app %} that uses the Content Attachments API installed on the repository.{% ifversion fpt or ghec %} For more information, see "[Installing an app in your personal account](/articles/installing-an-app-in-your-personal-account)" and "[Installing an app in your organization](/articles/installing-an-app-in-your-organization)."{% endif %} Content attachments will not be displayed for URLs that are part of a markdown link. @@ -261,7 +262,7 @@ For a full list of available emoji and codes, check out [the Emoji-Cheat-Sheet]( You can create a new paragraph by leaving a blank line between lines of text. -{% ifversion fpt or ghae-next or ghes > 3.3 %} +{% ifversion fpt or ghae-next or ghes > 3.3 or ghec %} ## Footnotes You can add footnotes to your content by using this bracket syntax: @@ -295,7 +296,7 @@ You can tell {% data variables.product.product_name %} to ignore (or escape) Mar For more information, see Daring Fireball's "[Markdown Syntax](https://daringfireball.net/projects/markdown/syntax#backslash)." -{% ifversion fpt or ghes > 3.2 or ghae-issue-5232 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-5232 or ghec %} ## Disabling Markdown rendering diff --git a/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/index.md b/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/index.md index 7368e696bf0d..2acde49fb356 100644 --- a/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/index.md +++ b/content/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-writing-and-formatting-on-github - /basic-writing-and-formatting-syntax diff --git a/content/github/writing-on-github/index.md b/content/github/writing-on-github/index.md index c59b342c85c8..bb6fca840138 100644 --- a/content/github/writing-on-github/index.md +++ b/content/github/writing-on-github/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /getting-started-with-writing-and-formatting-on-github - /working-with-advanced-formatting diff --git a/content/github/writing-on-github/working-with-advanced-formatting/attaching-files.md b/content/github/writing-on-github/working-with-advanced-formatting/attaching-files.md index 42dde65c0400..9d18e2e33a04 100644 --- a/content/github/writing-on-github/working-with-advanced-formatting/attaching-files.md +++ b/content/github/writing-on-github/working-with-advanced-formatting/attaching-files.md @@ -10,13 +10,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- {% warning %} -**Warning:** If you add an image{% ifversion fpt or ghes > 3.1 or ghae-next %} or video{% endif %} to a pull request or issue comment, anyone can view the anonymized URL without authentication, even if the pull request is in a private repository{% ifversion ghes %}, or if private mode is enabled{% endif %}. To keep sensitive media files private, serve them from a private network or server that requires authentication. {% ifversion fpt %}For more information on anonymized URLs see "[About anonymized URLs](/github/authenticating-to-github/about-anonymized-urls)".{% endif %} +**Warning:** If you add an image{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} or video{% endif %} to a pull request or issue comment, anyone can view the anonymized URL without authentication, even if the pull request is in a private repository{% ifversion ghes %}, or if private mode is enabled{% endif %}. To keep sensitive media files private, serve them from a private network or server that requires authentication. {% ifversion fpt or ghec %}For more information on anonymized URLs see "[About anonymized URLs](/github/authenticating-to-github/about-anonymized-urls)".{% endif %} {% endwarning %} @@ -31,7 +32,7 @@ To attach a file to an issue or pull request conversation, drag and drop it into {% endtip %} The maximum file size is: -- 10MB for images and gifs{% ifversion fpt %} +- 10MB for images and gifs{% ifversion fpt or ghec %} - 10MB for videos uploaded to a repository owned by a user or organization on a free GitHub plan - 100MB for videos uploaded to a repository owned by a user or organization on a paid GitHub plan{% elsif fpt or ghes > 3.1 or ghae-next %} - 100MB for videos{% endif %} @@ -46,7 +47,7 @@ We support these files: * Microsoft Word (*.docx*), Powerpoint (*.pptx*), and Excel (*.xlsx*) documents * Text files (*.txt*) * PDFs (*.pdf*) -* ZIP (*.zip*, *.gz*){% ifversion fpt or ghes > 3.1 or ghae-next %} +* ZIP (*.zip*, *.gz*){% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} * Video (*.mp4*, *.mov*) {% note %} diff --git a/content/github/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md b/content/github/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md index 26d8d0d20137..f8f9d93bcf0c 100644 --- a/content/github/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md +++ b/content/github/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Auto linked references --- ## URLs @@ -38,7 +39,7 @@ Within conversations on {% data variables.product.product_name %}, references to | `Username/Repository#` and issue or pull request number | jlord/sheetsee.js#26 | [jlord/sheetsee.js#26](https://github.com/jlord/sheetsee.js/issues/26) | `Organization_name/Repository#` and issue or pull request number | github/linguist#4039 | [github/linguist#4039](https://github.com/github/linguist/pull/4039) -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you reference an issue, pull request, or discussion in a list, the reference will unfurl to show the title and state instead. For more information about task lists, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)." {% endif %} diff --git a/content/github/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md b/content/github/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md index 0b63ea287dad..7d4e304c1f94 100644 --- a/content/github/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md +++ b/content/github/writing-on-github/working-with-advanced-formatting/creating-a-permanent-link-to-a-code-snippet.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Permanent links to code diff --git a/content/github/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md b/content/github/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md index a6b7d2128c14..41c722b7a07f 100644 --- a/content/github/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md +++ b/content/github/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Create code blocks --- diff --git a/content/github/writing-on-github/working-with-advanced-formatting/index.md b/content/github/writing-on-github/working-with-advanced-formatting/index.md index 27a3ca41c967..c2e064cd17e9 100644 --- a/content/github/writing-on-github/working-with-advanced-formatting/index.md +++ b/content/github/writing-on-github/working-with-advanced-formatting/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /organizing-information-with-tables - /creating-and-highlighting-code-blocks diff --git a/content/github/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md b/content/github/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md index 083856343d74..a997bf2251c6 100644 --- a/content/github/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md +++ b/content/github/writing-on-github/working-with-advanced-formatting/organizing-information-with-tables.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Organized data with tables --- ## Creating a table diff --git a/content/github/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md b/content/github/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md index 3dc026b870f3..9b0155b25c6e 100644 --- a/content/github/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md +++ b/content/github/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Issues - Pull requests @@ -12,7 +13,7 @@ topics: ## Linking a pull request to an issue -To link a pull request to an issue to{% ifversion fpt or ghes or ghae %} show that a fix is in progress and to{% endif %} automatically close the issue when someone merges the pull request, type one of the following keywords followed by a reference to the issue. For example, `Closes #10` or `Fixes octo-org/octo-repo#100`. +To link a pull request to an issue to{% ifversion fpt or ghes or ghae or ghec %} show that a fix is in progress and to{% endif %} automatically close the issue when someone merges the pull request, type one of the following keywords followed by a reference to the issue. For example, `Closes #10` or `Fixes octo-org/octo-repo#100`. * close * closes diff --git a/content/github/writing-on-github/working-with-saved-replies/about-saved-replies.md b/content/github/writing-on-github/working-with-saved-replies/about-saved-replies.md index 18c96b748a1e..727087db2889 100644 --- a/content/github/writing-on-github/working-with-saved-replies/about-saved-replies.md +++ b/content/github/writing-on-github/working-with-saved-replies/about-saved-replies.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ![Saved replies](/assets/images/help/settings/saved-replies.png) diff --git a/content/github/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md b/content/github/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md index ab651e3393d4..b8960d5f3faa 100644 --- a/content/github/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md +++ b/content/github/writing-on-github/working-with-saved-replies/creating-a-saved-reply.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.saved_replies %} diff --git a/content/github/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md b/content/github/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md index ebfeafc802bc..bf57aa4b72ba 100644 --- a/content/github/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md +++ b/content/github/writing-on-github/working-with-saved-replies/deleting-a-saved-reply.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.saved_replies %} diff --git a/content/github/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md b/content/github/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md index f9044baa0f33..6962e12ae721 100644 --- a/content/github/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md +++ b/content/github/writing-on-github/working-with-saved-replies/editing-a-saved-reply.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.saved_replies %} diff --git a/content/github/writing-on-github/working-with-saved-replies/index.md b/content/github/writing-on-github/working-with-saved-replies/index.md index 913a42ec09fd..caeec12eb07e 100644 --- a/content/github/writing-on-github/working-with-saved-replies/index.md +++ b/content/github/writing-on-github/working-with-saved-replies/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-saved-replies - /creating-a-saved-reply diff --git a/content/github/writing-on-github/working-with-saved-replies/using-saved-replies.md b/content/github/writing-on-github/working-with-saved-replies/using-saved-replies.md index 6d2c4a981237..dea09bb976c6 100644 --- a/content/github/writing-on-github/working-with-saved-replies/using-saved-replies.md +++ b/content/github/writing-on-github/working-with-saved-replies/using-saved-replies.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-issue-pr %} diff --git a/content/graphql/guides/forming-calls-with-graphql.md b/content/graphql/guides/forming-calls-with-graphql.md index 7ba33fd21463..9feaa56aad9b 100644 --- a/content/graphql/guides/forming-calls-with-graphql.md +++ b/content/graphql/guides/forming-calls-with-graphql.md @@ -19,7 +19,7 @@ To communicate with the GraphQL server, you'll need an OAuth token with the righ Follow the steps in "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)" to create a token. The scopes you require depends on the type of data you're trying to request. For example, select the **User** scopes to request user data. If you need access to repository information, select the appropriate **Repository** scopes. -{% ifversion fpt %} +{% ifversion fpt or ghec %} To match the behavior of the [GraphQL Explorer](/graphql/guides/using-the-explorer), request the following scopes: diff --git a/content/graphql/guides/managing-enterprise-accounts.md b/content/graphql/guides/managing-enterprise-accounts.md index f2a8dc33f4ec..dc42eb2d4b5a 100644 --- a/content/graphql/guides/managing-enterprise-accounts.md +++ b/content/graphql/guides/managing-enterprise-accounts.md @@ -58,7 +58,7 @@ For some example queries, see "[An example query using the Enterprise Accounts A - `admin:enterprise` The enterprise account specific scopes are: - - `admin:enterprise`: Gives full control of enterprises (includes {% ifversion ghes > 3.2 or fpt or ghae %}`manage_runners:enterprise`, {% endif %}`manage_billing:enterprise` and `read:enterprise`) + - `admin:enterprise`: Gives full control of enterprises (includes {% ifversion ghes > 3.2 or fpt or ghae or ghec %}`manage_runners:enterprise`, {% endif %}`manage_billing:enterprise` and `read:enterprise`) - `manage_billing:enterprise`: Read and write enterprise billing data.{% ifversion ghes > 3.2 or fpt or ghae %} - `manage_runners:enterprise`: Access to manage GitHub Actions enterprise runners and runner-groups.{% endif %} - `read:enterprise`: Read enterprise profile data. diff --git a/content/graphql/guides/using-the-explorer.md b/content/graphql/guides/using-the-explorer.md index 91c12ef91a87..f99ffcf65aaa 100644 --- a/content/graphql/guides/using-the-explorer.md +++ b/content/graphql/guides/using-the-explorer.md @@ -13,7 +13,7 @@ topics: ## About the GraphQL Explorer -{% ifversion fpt %} +{% ifversion fpt or ghec %} [GraphQL Explorer](/graphql/overview/explorer) is an instance of [GraphiQL](https://github.com/graphql/graphiql), which is a "graphical interactive in-browser GraphQL IDE." diff --git a/content/graphql/overview/public-schema.md b/content/graphql/overview/public-schema.md index c84401afe278..a765b6b9b1da 100644 --- a/content/graphql/overview/public-schema.md +++ b/content/graphql/overview/public-schema.md @@ -15,7 +15,7 @@ You can [perform introspection](/graphql/guides/introduction-to-graphql#discover Alternatively, you can download the latest version of the public schema here: -{% ifversion fpt %} +{% ifversion fpt or ghec %} [{% octicon "desktop-download" aria-label="The desktop download icon" %} `schema.docs.graphql`](/public/schema.docs.graphql) diff --git a/content/index.md b/content/index.md index 03e89d916be9..1687c36e6be9 100644 --- a/content/index.md +++ b/content/index.md @@ -1,5 +1,5 @@ --- -title: '{% data variables.product.product_name %}{% ifversion fpt %}.com{% endif %} Help Documentation' +title: '{% data variables.product.product_name %}{% ifversion fpt or ghec%}.com{% endif %} Help Documentation' featuredLinks: gettingStarted: - /github/getting-started-with-github/set-up-git diff --git a/content/issues/index.md b/content/issues/index.md index ad7ab1b19f96..cfcdb3668746 100644 --- a/content/issues/index.md +++ b/content/issues/index.md @@ -32,6 +32,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /tracking-your-work-with-issues - /trying-out-the-new-projects-experience diff --git a/content/issues/organizing-your-work-with-project-boards/index.md b/content/issues/organizing-your-work-with-project-boards/index.md index 39e3cd6e4ab3..a24fa36cc3ac 100644 --- a/content/issues/organizing-your-work-with-project-boards/index.md +++ b/content/issues/organizing-your-work-with-project-boards/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Issues - Projects diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-automation-for-project-boards.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-automation-for-project-boards.md index 655038eeae82..900568a794fe 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-automation-for-project-boards.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-automation-for-project-boards.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Automation for project boards @@ -42,5 +43,5 @@ You can track the progress on your project board. Cards in the "To do", "In prog For more information, see "[Tracking progress on your project board](/github/managing-your-work-on-github/tracking-progress-on-your-project-board)." ## Further reading -- "[Configuring automation for project boards](/articles/configuring-automation-for-project-boards)"{% ifversion fpt %} +- "[Configuring automation for project boards](/articles/configuring-automation-for-project-boards)"{% ifversion fpt or ghec %} - "[Copying a project board](/articles/copying-a-project-board)"{% endif %} diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md index 325e936a076a..c249cff06b93 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- @@ -20,7 +21,7 @@ Project boards are made up of issues, pull requests, and notes that are categori Project board cards contain relevant metadata for issues and pull requests, like labels, assignees, the status, and who opened it. {% data reusables.project-management.edit-in-project %} -You can create notes within columns to serve as task reminders, references to issues and pull requests from any repository on {% data variables.product.product_name %}, or to add information related to the project board. You can create a reference card for another project board by adding a link to a note. If the note isn't sufficient for your needs, you can convert it to an issue. For more information on converting project board notes to issues, see "[Adding notes to a project board](/articles/adding-notes-to-a-project-board)." +You can create notes within columns to serve as task reminders, references to issues and pull requests from any repository on {% data variables.product.product_location %}, or to add information related to the project board. You can create a reference card for another project board by adding a link to a note. If the note isn't sufficient for your needs, you can convert it to an issue. For more information on converting project board notes to issues, see "[Adding notes to a project board](/articles/adding-notes-to-a-project-board)." Types of project boards: @@ -66,7 +67,7 @@ For more information on automation for project boards, see "[About automation fo ## Further reading - "[Creating a project board](/articles/creating-a-project-board)" -- "[Editing a project board](/articles/editing-a-project-board)"{% ifversion fpt %} +- "[Editing a project board](/articles/editing-a-project-board)"{% ifversion fpt or ghec %} - "[Copying a project board](/articles/copying-a-project-board)"{% endif %} - "[Adding issues and pull requests to a project board](/articles/adding-issues-and-pull-requests-to-a-project-board)" - "[Project board permissions for an organization](/articles/project-board-permissions-for-an-organization)" diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md index 2b0d4dc68a65..39e797a668c9 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Change visibility diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/closing-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/closing-a-project-board.md index 8ca041da1831..9f18900231c1 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/closing-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/closing-a-project-board.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/configuring-automation-for-project-boards.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/configuring-automation-for-project-boards.md index 0df067338228..2ae5bae7d4cb 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/configuring-automation-for-project-boards.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/configuring-automation-for-project-boards.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Configure automation diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/copying-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/copying-a-project-board.md index 2400242c3384..a2d035825947 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/copying-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/copying-a-project-board.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-your-work-on-github/copying-a-project-board versions: fpt: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md index 55984a73f8bb..7c8414db294c 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- @@ -88,7 +89,7 @@ You can also configure workflow automations to keep your project board in sync w ## Further reading - "[About projects boards](/articles/about-project-boards)" -- "[Editing a project board](/articles/editing-a-project-board)"{% ifversion fpt %} +- "[Editing a project board](/articles/editing-a-project-board)"{% ifversion fpt or ghec %} - "[Copying a project board](/articles/copying-a-project-board)"{% endif %} - "[Closing a project board](/articles/closing-a-project-board)" - "[About automation for project boards](/articles/about-automation-for-project-boards)" diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/deleting-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/deleting-a-project-board.md index 8b55b513163d..412effe37c63 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/deleting-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/deleting-a-project-board.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/editing-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/editing-a-project-board.md index 5953164eaea2..989a8bd6864b 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/editing-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/editing-a-project-board.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/index.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/index.md index f2f7f64c0cdf..ada41ccd408e 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/index.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Issues - Projects diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/linking-a-repository-to-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/linking-a-repository-to-a-project-board.md index f13a50bfd34b..af0603925242 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/linking-a-repository-to-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/linking-a-repository-to-a-project-board.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Link repository to board diff --git a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/reopening-a-closed-project-board.md b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/reopening-a-closed-project-board.md index 82dc592a1990..7073a1660440 100644 --- a/content/issues/organizing-your-work-with-project-boards/managing-project-boards/reopening-a-closed-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/managing-project-boards/reopening-a-closed-project-board.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Reopen project board diff --git a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-issues-and-pull-requests-to-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-issues-and-pull-requests-to-a-project-board.md index 105d11e72688..36efb50a8225 100644 --- a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-issues-and-pull-requests-to-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-issues-and-pull-requests-to-a-project-board.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Add issues & PRs to board diff --git a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-notes-to-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-notes-to-a-project-board.md index 6f85c5dd8cf9..7f7ba3de8eb8 100644 --- a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-notes-to-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-notes-to-a-project-board.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Add notes to board diff --git a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/archiving-cards-on-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/archiving-cards-on-a-project-board.md index 67f1000e690b..938d51f49bb8 100644 --- a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/archiving-cards-on-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/archiving-cards-on-a-project-board.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Archive cards on board diff --git a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/filtering-cards-on-a-project-board.md b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/filtering-cards-on-a-project-board.md index 2a6a8d5bb962..8ef74e191977 100644 --- a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/filtering-cards-on-a-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/filtering-cards-on-a-project-board.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Filter cards on board @@ -28,7 +29,7 @@ You can also use the "Filter cards" search bar at the top of each project board - Filter by check status using `status:pending`, `status:success`, or `status:failure` - Filter cards by type using `type:issue`, `type:pr`, or `type:note` - Filter cards by state and type using `is:open`, `is:closed`, or `is:merged`; and `is:issue`, `is:pr`, or `is:note` -- Filter cards by issues that are linked to a pull request by a closing reference using `linked:pr`{% ifversion fpt or ghes or ghae %} +- Filter cards by issues that are linked to a pull request by a closing reference using `linked:pr`{% ifversion fpt or ghes or ghae or ghec %} - Filter cards by repository in an organization-wide project board using `repo:ORGANIZATION/REPOSITORY`{% endif %} 1. Navigate to the project board that contains the cards you want to filter. diff --git a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/index.md b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/index.md index ec3483f2c4a6..563070720c8b 100644 --- a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/index.md +++ b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Issues - Projects diff --git a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/tracking-progress-on-your-project-board.md b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/tracking-progress-on-your-project-board.md index 432a735259df..dde14695eeb8 100644 --- a/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/tracking-progress-on-your-project-board.md +++ b/content/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/tracking-progress-on-your-project-board.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Track progress on board diff --git a/content/issues/tracking-your-work-with-issues/about-issues.md b/content/issues/tracking-your-work-with-issues/about-issues.md index dace393faf66..5a905d656161 100644 --- a/content/issues/tracking-your-work-with-issues/about-issues.md +++ b/content/issues/tracking-your-work-with-issues/about-issues.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues @@ -22,28 +23,28 @@ Issues let you track your work on {% data variables.product.company_short %}, wh ## Quickly create issues -Issues can be created in a variety of ways, so you can choose the most convenient method for your workflow. For example, you can create an issue from a repository,{% ifversion fpt %} an item in a task list,{% endif %} a note in a project, a comment in an issue or pull request, a specific line of code, or a URL query. You can also create an issue from your platform of choice: through the web UI, {% data variables.product.prodname_desktop %}, {% data variables.product.prodname_cli %}, GraphQL and REST APIs, or {% data variables.product.prodname_mobile %}. For more information, see "[Creating an issue](/issues/tracking-your-work-with-issues/creating-issues/creating-an-issue)." +Issues can be created in a variety of ways, so you can choose the most convenient method for your workflow. For example, you can create an issue from a repository,{% ifversion fpt or ghec %} an item in a task list,{% endif %} a note in a project, a comment in an issue or pull request, a specific line of code, or a URL query. You can also create an issue from your platform of choice: through the web UI, {% data variables.product.prodname_desktop %}, {% data variables.product.prodname_cli %}, GraphQL and REST APIs, or {% data variables.product.prodname_mobile %}. For more information, see "[Creating an issue](/issues/tracking-your-work-with-issues/creating-issues/creating-an-issue)." ## Track work -You can organize and prioritize issues with projects. {% ifversion fpt %}To track issues as part of a larger issue, you can use task lists.{% endif %} To categorize related issues, you can use labels and milestones. +You can organize and prioritize issues with projects. {% ifversion fpt or ghec %}To track issues as part of a larger issue, you can use task lists.{% endif %} To categorize related issues, you can use labels and milestones. -For more information about projects, see {% ifversion fpt %}"[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" and {% endif %}"[Organizing your work with project boards](/issues/organizing-your-work-with-project-boards)." {% ifversion fpt %}For more information about task lists, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)." {% endif %}For more information about labels and milestones, see "[Using labels and milestones to track work](/issues/using-labels-and-milestones-to-track-work)." +For more information about projects, see {% ifversion fpt or ghec %}"[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" and {% endif %}"[Organizing your work with project boards](/issues/organizing-your-work-with-project-boards)." {% ifversion fpt or ghec %}For more information about task lists, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)." {% endif %}For more information about labels and milestones, see "[Using labels and milestones to track work](/issues/using-labels-and-milestones-to-track-work)." ## Stay up to date -To stay updated on the most recent comments in an issue, you can subscribe to an issue to receive notifications about the latest comments. To quickly find links to recently updated issues you're subscribed to, visit your dashboard. For more information, see {% ifversion fpt or ghes or ghae %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[About notifications](/github/receiving-notifications-about-activity-on-github/about-notifications){% endif %}" and "[About your personal dashboard](/articles/about-your-personal-dashboard)." +To stay updated on the most recent comments in an issue, you can subscribe to an issue to receive notifications about the latest comments. To quickly find links to recently updated issues you're subscribed to, visit your dashboard. For more information, see {% ifversion fpt or ghes or ghae or ghec %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[About notifications](/github/receiving-notifications-about-activity-on-github/about-notifications){% endif %}" and "[About your personal dashboard](/articles/about-your-personal-dashboard)." ## Community management -To help contributors open meaningful issues that provide the information that you need, you can use {% ifversion fpt %}issue forms and {% endif %}issue templates. For more information, see "[Using templates to encourage useful issues and pull requests](/communities/using-templates-to-encourage-useful-issues-and-pull-requests)." +To help contributors open meaningful issues that provide the information that you need, you can use {% ifversion fpt or ghec %}issue forms and {% endif %}issue templates. For more information, see "[Using templates to encourage useful issues and pull requests](/communities/using-templates-to-encourage-useful-issues-and-pull-requests)." -{% ifversion fpt %}To maintain a healthy community, you can report comments that violate {% data variables.product.prodname_dotcom %}'s [Community Guidelines](/articles/github-community-guidelines). For more information, see "[Reporting abuse or spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)."{% endif %} +{% ifversion fpt or ghec %}To maintain a healthy community, you can report comments that violate {% data variables.product.prodname_dotcom %}'s [Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines). For more information, see "[Reporting abuse or spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)."{% endif %} ## Efficient communication You can @mention collaborators who have access to your repository in an issue to draw their attention to a comment. To link related issues in the same repository, you can type `#` followed by part of the issue title and then clicking the issue that you want to link. To communicate responsibility, you can assign issues. If you find yourself frequently typing the same comment, you can use saved replies. -{% ifversion fpt %} For more information, see "[Basic writing and formatting syntax](/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax)" and "[Assigning issues and pull requests to other GitHub users](/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users)." +{% ifversion fpt or ghec %} For more information, see "[Basic writing and formatting syntax](/github/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax)" and "[Assigning issues and pull requests to other GitHub users](/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users)." ## Comparing issues and discussions diff --git a/content/issues/tracking-your-work-with-issues/about-task-lists.md b/content/issues/tracking-your-work-with-issues/about-task-lists.md index e3014201cbf1..4ec7027560f4 100644 --- a/content/issues/tracking-your-work-with-issues/about-task-lists.md +++ b/content/issues/tracking-your-work-with-issues/about-task-lists.md @@ -10,12 +10,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** Improved task lists are currently in beta and subject to change. @@ -27,9 +28,9 @@ topics: A task list is a set of tasks that each render on a separate line with a clickable checkbox. You can select or deselect the checkboxes to mark the tasks as complete or incomplete. -You can use Markdown to create a task list in any comment on {% data variables.product.product_name %}. {% ifversion fpt %}If you reference an issue, pull request, or discussion in a task list, the reference will unfurl to show the title and state.{% endif %} +You can use Markdown to create a task list in any comment on {% data variables.product.product_name %}. {% ifversion fpt or ghec %}If you reference an issue, pull request, or discussion in a task list, the reference will unfurl to show the title and state.{% endif %} -{% ifversion not fpt %} +{% ifversion not fpt or ghec %} You can view task list summary information in issue and pull request lists, when the task list is in the initial comment. {% else %} diff --git a/content/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users.md b/content/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users.md index dedd8a01f7a7..08ca47660eee 100644 --- a/content/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users.md +++ b/content/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Assign issues & PRs diff --git a/content/issues/tracking-your-work-with-issues/creating-an-issue.md b/content/issues/tracking-your-work-with-issues/creating-an-issue.md index aa879595ffc8..fe6e36756e92 100644 --- a/content/issues/tracking-your-work-with-issues/creating-an-issue.md +++ b/content/issues/tracking-your-work-with-issues/creating-an-issue.md @@ -1,7 +1,7 @@ --- title: Creating an issue intro: 'Issues can be created in a variety of ways, so you can choose the most convenient method for your workflow.' -permissions: People with read access can create an issue in a repository where issues are enabled. {% data reusables.enterprise-accounts.emu-permission-repo %} +permissions: 'People with read access can create an issue in a repository where issues are enabled. {% data reusables.enterprise-accounts.emu-permission-repo %}' redirect_from: - /github/managing-your-work-on-github/managing-your-work-with-issues-and-pull-requests/creating-an-issue - /articles/creating-an-issue @@ -22,6 +22,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests - Issues @@ -97,7 +98,7 @@ You can open a new issue from a specific line or lines of code in a file or pull {% data reusables.repositories.assign-an-issue-as-project-maintainer %} {% data reusables.repositories.submit-new-issue %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Creating an issue from discussion @@ -119,7 +120,7 @@ When you create an issue from a discussion, the contents of the discussion post If you're using a project board to track and prioritize your work, you can convert project board notes to issues. For more information, see "[About project boards](/github/managing-your-work-on-github/about-project-boards)" and "[Adding notes to a project board](/github/managing-your-work-on-github/adding-notes-to-a-project-board#converting-a-note-to-an-issue)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Creating an issue from a task list item diff --git a/content/issues/tracking-your-work-with-issues/deleting-an-issue.md b/content/issues/tracking-your-work-with-issues/deleting-an-issue.md index 3391d8ebfbf9..edbc1b66ca91 100644 --- a/content/issues/tracking-your-work-with-issues/deleting-an-issue.md +++ b/content/issues/tracking-your-work-with-issues/deleting-an-issue.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests.md b/content/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests.md index 67859d6f3a29..a76a73cf55f4 100644 --- a/content/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests.md +++ b/content/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests.md @@ -37,6 +37,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Issues - Pull requests @@ -105,7 +106,7 @@ You can filter a repository's list of pull requests to find: - Pull requests that [require a review](/github/administering-a-repository/about-protected-branches#require-pull-request-reviews-before-merging) before they can be merged - Pull requests that a reviewer has approved - Pull requests in which a reviewer has asked for changes -- Pull requests that you have reviewed{% ifversion fpt or ghae or ghes > 3.2 %} +- Pull requests that you have reviewed{% ifversion fpt or ghae or ghes > 3.2 or ghec %} - Pull requests that someone has asked you directly to review{% endif %} - Pull requests that [someone has asked you, or a team you're a member of, to review](/articles/requesting-a-pull-request-review) @@ -168,7 +169,7 @@ With issue and pull request search terms, you can: - Filter issues and pull requests by label: `state:open type:issue label:"bug"` - Filter out search terms by using `-` before the term: `state:open type:issue -author:octocat` -{% ifversion fpt or ghes > 3.2 or ghae-next %} +{% ifversion fpt or ghes > 3.2 or ghae-next or ghec %} {% tip %} **Tip:** You can filter issues and pull requests by label using logical OR or using logical AND. @@ -178,7 +179,7 @@ With issue and pull request search terms, you can: {% endtip %} {% endif %} -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} For issues, you can also use search to: - Filter for issues that are linked to a pull request by a closing reference: `linked:pr` @@ -191,9 +192,9 @@ For pull requests, you can also use search to: - Filter pull requests that a reviewer has approved: `state:open type:pr review:approved` - Filter pull requests in which a reviewer has asked for changes: `state:open type:pr review:changes_requested` - Filter pull requests by [reviewer](/articles/about-pull-request-reviews/): `state:open type:pr reviewed-by:octocat` -- Filter pull requests by the specific user [requested for review](/articles/requesting-a-pull-request-review): `state:open type:pr review-requested:octocat`{% ifversion fpt or ghae or ghes > 3.2 %} +- Filter pull requests by the specific user [requested for review](/articles/requesting-a-pull-request-review): `state:open type:pr review-requested:octocat`{% ifversion fpt or ghae or ghes > 3.2 or ghec %} - Filter pull requests that someone has asked you directly to review: `state:open type:pr user-review-requested:@me`{% endif %} -- Filter pull requests by the team requested for review: `state:open type:pr team-review-requested:github/atom`{% ifversion fpt or ghes or ghae %} +- Filter pull requests by the team requested for review: `state:open type:pr team-review-requested:github/atom`{% ifversion fpt or ghes or ghae or ghec %} - Filter for pull requests that are linked to an issue that the pull request may close: `linked:issue`{% endif %} ## Sorting issues and pull requests diff --git a/content/issues/tracking-your-work-with-issues/index.md b/content/issues/tracking-your-work-with-issues/index.md index c8f3b877b3b9..9a186eabfb42 100644 --- a/content/issues/tracking-your-work-with-issues/index.md +++ b/content/issues/tracking-your-work-with-issues/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Issues children: diff --git a/content/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue.md b/content/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue.md index 6f6539c8b016..0b4dee4a0e20 100644 --- a/content/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue.md +++ b/content/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Link PR to issue @@ -25,7 +26,7 @@ shortTitle: Link PR to issue ## About linked issues and pull requests -You can link an issue to a pull request {% ifversion fpt or ghes or ghae %}manually or {% endif %}using a supported keyword in the pull request description. +You can link an issue to a pull request {% ifversion fpt or ghes or ghae or ghec %}manually or {% endif %}using a supported keyword in the pull request description. When you link a pull request to the issue the pull request addresses, collaborators can see that someone is working on the issue. @@ -53,12 +54,12 @@ Issue in the same repository | *KEYWORD* #*ISSUE-NUMBER* | `Closes #10` Issue in a different repository | *KEYWORD* *OWNER*/*REPOSITORY*#*ISSUE-NUMBER* | `Fixes octo-org/octo-repo#100` Multiple issues | Use full syntax for each issue | `Resolves #10, resolves #123, resolves octo-org/octo-repo#100` -{% ifversion fpt or ghes or ghae %}Only manually linked pull requests can be manually unlinked. To unlink an issue that you linked using a keyword, you must edit the pull request description to remove the keyword.{% endif %} +{% ifversion fpt or ghes or ghae or ghec %}Only manually linked pull requests can be manually unlinked. To unlink an issue that you linked using a keyword, you must edit the pull request description to remove the keyword.{% endif %} You can also use closing keywords in a commit message. The issue will be closed when you merge the commit into the default branch, but the pull request that contains the commit will not be listed as a linked pull request. -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ## Manually linking a pull request to an issue Anyone with write permissions to a repository can manually link a pull request to an issue. diff --git a/content/issues/tracking-your-work-with-issues/marking-issues-or-pull-requests-as-a-duplicate.md b/content/issues/tracking-your-work-with-issues/marking-issues-or-pull-requests-as-a-duplicate.md index 1f7569383ff3..a881d682d765 100644 --- a/content/issues/tracking-your-work-with-issues/marking-issues-or-pull-requests-as-a-duplicate.md +++ b/content/issues/tracking-your-work-with-issues/marking-issues-or-pull-requests-as-a-duplicate.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/issues/tracking-your-work-with-issues/pinning-an-issue-to-your-repository.md b/content/issues/tracking-your-work-with-issues/pinning-an-issue-to-your-repository.md index 6d81803e06a2..3680f23ed2bc 100644 --- a/content/issues/tracking-your-work-with-issues/pinning-an-issue-to-your-repository.md +++ b/content/issues/tracking-your-work-with-issues/pinning-an-issue-to-your-repository.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Pin an issue diff --git a/content/issues/tracking-your-work-with-issues/planning-and-tracking-work-for-your-team-or-project.md b/content/issues/tracking-your-work-with-issues/planning-and-tracking-work-for-your-team-or-project.md index c111ea0f0004..a7e70369d637 100644 --- a/content/issues/tracking-your-work-with-issues/planning-and-tracking-work-for-your-team-or-project.md +++ b/content/issues/tracking-your-work-with-issues/planning-and-tracking-work-for-your-team-or-project.md @@ -5,11 +5,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- ## Introduction You can use {% data variables.product.prodname_dotcom %} repositories, issues, project boards, and other tools to plan and track your work, whether working on an individual project or cross-functional team. -In this guide, you will learn how to create and set up a repository for collaborating with a group of people, create issue templates{% ifversion fpt %} and forms{% endif %}, open issues and use task lists to break down work, and establish a project board for organizing and tracking issues. +In this guide, you will learn how to create and set up a repository for collaborating with a group of people, create issue templates{% ifversion fpt or ghec %} and forms{% endif %}, open issues and use task lists to break down work, and establish a project board for organizing and tracking issues. ## Creating a repository When starting a new project, initiative, or feature, the first step is to create a repository. Repositories contain all of your project's files and give you a place to collaborate with others and manage your work. For more information, see "[Creating a new repository](/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/creating-a-new-repository)." @@ -41,7 +42,7 @@ You can use issues to track the different types of work that your cross-function - Feature requests: Your team or users can create issues to request an improvement to your product or project. - Bugs: Your team or users can create issues to report a bug. -Depending on the type of repository and project you are working on, you may prioritize certain types of issues over others. Once you have identified the most common issue types for your team, you can create issue templates {% ifversion fpt %}and forms{% endif %} for your repository. Issue templates {% ifversion fpt %}and forms{% endif %} allow you to create a standardized list of templates that a contributor can choose from when they open an issue in your repository. For more information, see "[Configuring issue templates for your repository](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository)." +Depending on the type of repository and project you are working on, you may prioritize certain types of issues over others. Once you have identified the most common issue types for your team, you can create issue templates {% ifversion fpt or ghec %}and forms{% endif %} for your repository. Issue templates {% ifversion fpt or ghec %}and forms{% endif %} allow you to create a standardized list of templates that a contributor can choose from when they open an issue in your repository. For more information, see "[Configuring issue templates for your repository](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository)." ### Issue template example Below we are creating an issue template for reporting a bug in Project Octocat. @@ -60,7 +61,7 @@ Here is an example of an issue created for a large initiative, front-end work, i ![Creating large initiative issue example](/assets/images/help/issues/quickstart-create-large-initiative-issue.png) ### Task list example -You can use task lists to break larger issues down into smaller tasks and to track issues as part of a larger goal. {% ifversion fpt %} Task lists have additional functionality when added to the body of an issue. You can see the number of tasks completed out of the total at the top of the issue, and if someone closes an issue linked in the task list, the checkbox will automatically be marked as complete.{% endif %} For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)." +You can use task lists to break larger issues down into smaller tasks and to track issues as part of a larger goal. {% ifversion fpt or ghec %} Task lists have additional functionality when added to the body of an issue. You can see the number of tasks completed out of the total at the top of the issue, and if someone closes an issue linked in the task list, the checkbox will automatically be marked as complete.{% endif %} For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)." Below we have added a task list to our Project Octocat issue, breaking it down into smaller issues. @@ -85,7 +86,7 @@ Below is an example of a `front-end` label that we created and added to the issu ![Adding a label to an issue example](/assets/images/help/issues/quickstart-add-label-to-issue.png) ## Adding issues to a project board -{% ifversion fpt %}You can use projects on {% data variables.product.prodname_dotcom %}, currently in limited public beta, to plan and track the work for your team. A project is a customizable spreadsheet that integrates with your issues and pull requests on {% data variables.product.prodname_dotcom %}, automatically staying up-to-date with the information on {% data variables.product.prodname_dotcom %}. You can customize the layout by filtering, sorting, and grouping your issues and PRs. To get started with projects, see "[Quickstart for projects (beta)](/issues/trying-out-the-new-projects-experience/quickstart)." +{% ifversion fpt or ghec %}You can use projects on {% data variables.product.prodname_dotcom %}, currently in limited public beta, to plan and track the work for your team. A project is a customizable spreadsheet that integrates with your issues and pull requests on {% data variables.product.prodname_dotcom %}, automatically staying up-to-date with the information on {% data variables.product.prodname_dotcom %}. You can customize the layout by filtering, sorting, and grouping your issues and PRs. To get started with projects, see "[Quickstart for projects (beta)](/issues/trying-out-the-new-projects-experience/quickstart)." ### Project (beta) example Here is the table view of an example project, populated with the Project Octocat issues we have created. @@ -97,7 +98,7 @@ We can also view the same project as a board. {% endif %} -You can {% ifversion fpt %} also use the existing{% else %} use{% endif %} project boards on {% data variables.product.prodname_dotcom %} to plan and track your or your team's work. Project boards are made up of issues, pull requests, and notes that are categorized as cards in columns of your choosing. You can create project boards for feature work, high-level roadmaps, or even release checklists. For more information, see "[About project boards](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards)." +You can {% ifversion fpt or ghec %} also use the existing{% else %} use{% endif %} project boards on {% data variables.product.prodname_dotcom %} to plan and track your or your team's work. Project boards are made up of issues, pull requests, and notes that are categorized as cards in columns of your choosing. You can create project boards for feature work, high-level roadmaps, or even release checklists. For more information, see "[About project boards](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards)." ### Project board example Below is a project board for our example Project Octocat with the issue we created, and the smaller issues we broke it down into, added to it. @@ -111,6 +112,6 @@ You have now learned about the tools {% data variables.product.prodname_dotcom % - "[About issues and pull request templates](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates)" for learning more about issue templates - "[Managing labels](/issues/using-labels-and-milestones-to-track-work/managing-labels)" for learning how to create, edit and delete labels - "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)" for learning more about task lists -{% ifversion fpt %} - "[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" for learning more about the new projects experience, currently in limited public beta +{% ifversion fpt or ghec %} - "[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" for learning more about the new projects experience, currently in limited public beta - "[Customizing your project (beta) views](/issues/trying-out-the-new-projects-experience/customizing-your-project-views)" for learning how to customize views for projects, currently in limited public beta{% endif %} - "[About project boards](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards)" for learning how to manage project boards diff --git a/content/issues/tracking-your-work-with-issues/quickstart.md b/content/issues/tracking-your-work-with-issues/quickstart.md index 218b84f4fbee..06fb0055f441 100644 --- a/content/issues/tracking-your-work-with-issues/quickstart.md +++ b/content/issues/tracking-your-work-with-issues/quickstart.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: quick_start topics: - Issues @@ -28,7 +29,7 @@ First, create an issue. There are multiple ways to create an issue; you can choo {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-issues %} {% data reusables.repositories.new_issue %} -1. In this example, we will start with a blank issue. Your repository may use issue templates{% ifversion fpt %} and issue forms{% endif %} to encourage contributors to provide specific information. If your repository uses issue templates, {% ifversion fpt or ghes %}click **Open a blank issue**{% else %}click **Open a regular issue.**{% endif %}. +1. In this example, we will start with a blank issue. Your repository may use issue templates{% ifversion fpt or ghec %} and issue forms{% endif %} to encourage contributors to provide specific information. If your repository uses issue templates, {% ifversion fpt or ghes or ghec %}click **Open a blank issue**{% else %}click **Open a regular issue.**{% endif %}. ![blank issue](/assets/images/help/issues/blank-issue.png) @@ -70,7 +71,7 @@ To communicate responsibility, you can assign the issue to a member of your orga ## Adding the issue to a project -You can add the issue to an existing project. {% ifversion fpt %}If you are using projects (beta), you can also populate metadata for the project. {% endif %} For more information about projects, see {% ifversion fpt %}"[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" and {% endif %}"[Organizing your work with project boards](/issues/organizing-your-work-with-project-boards)". +You can add the issue to an existing project. {% ifversion fpt or ghec %}If you are using projects (beta), you can also populate metadata for the project. {% endif %} For more information about projects, see {% ifversion fpt or ghec %}"[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" and {% endif %}"[Organizing your work with project boards](/issues/organizing-your-work-with-project-boards)". ![issue with projects](/assets/images/help/issues/issue-project.png) @@ -96,5 +97,5 @@ You can use issues for a wide range of purposes. For example: Here are some helpful resources for taking your next steps with {% data variables.product.prodname_github_issues %}: - To learn more about issues, see "[About issues](/issues/tracking-your-work-with-issues/about-issues)." -- To learn more about how projects can help you with planning and tracking, see {% ifversion fpt %}"[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" or {% endif %}"[Organizing your work with project boards](/issues/organizing-your-work-with-project-boards)". -- To learn more about using issue templates{% ifversion fpt %} and issue forms{% endif %} to encourage contributors to provide specific information, see "[Using templates to encourage useful issues and pull requests](/communities/using-templates-to-encourage-useful-issues-and-pull-requests)." +- To learn more about how projects can help you with planning and tracking, see {% ifversion fpt or ghec %}"[About projects (beta)](/issues/trying-out-the-new-projects-experience/about-projects)" or {% endif %}"[Organizing your work with project boards](/issues/organizing-your-work-with-project-boards)". +- To learn more about using issue templates{% ifversion fpt or ghec %} and issue forms{% endif %} to encourage contributors to provide specific information, see "[Using templates to encourage useful issues and pull requests](/communities/using-templates-to-encourage-useful-issues-and-pull-requests)." diff --git a/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md b/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md index 29d05db67c43..2251ae758448 100644 --- a/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md +++ b/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md @@ -10,13 +10,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Transfer an issue --- To transfer an open issue to another repository, you must have write permissions on the repository the issue is in and the repository you're transferring the issue to. For more information, see "[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization)." -You can only transfer issues between repositories owned by the same user or organization account. {% ifversion fpt or ghes %}You can't transfer an issue from a private repository to a public repository.{% endif %} +You can only transfer issues between repositories owned by the same user or organization account. {% ifversion fpt or ghes or ghec %}You can't transfer an issue from a private repository to a public repository.{% endif %} When you transfer an issue, comments and assignees are retained. The issue's labels and milestones are not retained. This issue will stay on any user-owned or organization-wide project boards and be removed from any repository project boards. For more information, see "[About project boards](/articles/about-project-boards)." diff --git a/content/issues/tracking-your-work-with-issues/viewing-all-of-your-issues-and-pull-requests.md b/content/issues/tracking-your-work-with-issues/viewing-all-of-your-issues-and-pull-requests.md index 0a219eaa4246..91fc7f6b01c6 100644 --- a/content/issues/tracking-your-work-with-issues/viewing-all-of-your-issues-and-pull-requests.md +++ b/content/issues/tracking-your-work-with-issues/viewing-all-of-your-issues-and-pull-requests.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: View all your issues & PRs @@ -23,4 +24,4 @@ Your issues and pull request dashboards are available at the top of any page. On ## Further reading -- {% ifversion fpt or ghes or ghae %}”[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions#reviewing-repositories-that-youre-watching){% else %}”[Listing the repositories you're watching](/github/receiving-notifications-about-activity-on-github/listing-the-repositories-youre-watching){% endif %}" +- {% ifversion fpt or ghes or ghae or ghec %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions#reviewing-repositories-that-youre-watching){% else %}"[Listing the repositories you're watching](/github/receiving-notifications-about-activity-on-github/listing-the-repositories-youre-watching){% endif %}" diff --git a/content/issues/trying-out-the-new-projects-experience/about-projects.md b/content/issues/trying-out-the-new-projects-experience/about-projects.md index d96c0bbd576e..a0b22e99ec5f 100644 --- a/content/issues/trying-out-the-new-projects-experience/about-projects.md +++ b/content/issues/trying-out-the-new-projects-experience/about-projects.md @@ -5,6 +5,7 @@ allowTitleToDifferFromFilename: true miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: overview topics: - Projects diff --git a/content/issues/trying-out-the-new-projects-experience/automating-projects.md b/content/issues/trying-out-the-new-projects-experience/automating-projects.md index 73c1f86539ab..99d0068272be 100644 --- a/content/issues/trying-out-the-new-projects-experience/automating-projects.md +++ b/content/issues/trying-out-the-new-projects-experience/automating-projects.md @@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.actions %}' allowTitleToDifferFromFilename: true versions: fpt: '*' + ghec: '*' type: how_to topics: - Projects diff --git a/content/issues/trying-out-the-new-projects-experience/best-practices-for-managing-projects.md b/content/issues/trying-out-the-new-projects-experience/best-practices-for-managing-projects.md index 8d04574a7768..3633f6c1a9dd 100644 --- a/content/issues/trying-out-the-new-projects-experience/best-practices-for-managing-projects.md +++ b/content/issues/trying-out-the-new-projects-experience/best-practices-for-managing-projects.md @@ -5,6 +5,7 @@ allowTitleToDifferFromFilename: true miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: overview topics: - Projects diff --git a/content/issues/trying-out-the-new-projects-experience/creating-a-project.md b/content/issues/trying-out-the-new-projects-experience/creating-a-project.md index 3e7c65eaafb6..5f1f408ab5d2 100644 --- a/content/issues/trying-out-the-new-projects-experience/creating-a-project.md +++ b/content/issues/trying-out-the-new-projects-experience/creating-a-project.md @@ -5,6 +5,7 @@ allowTitleToDifferFromFilename: true miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: quick_start topics: - Projects diff --git a/content/issues/trying-out-the-new-projects-experience/customizing-your-project-views.md b/content/issues/trying-out-the-new-projects-experience/customizing-your-project-views.md index 40e66b412756..95642051cb31 100644 --- a/content/issues/trying-out-the-new-projects-experience/customizing-your-project-views.md +++ b/content/issues/trying-out-the-new-projects-experience/customizing-your-project-views.md @@ -4,6 +4,7 @@ intro: 'Display the information you need by changing the layout, grouping, sorti allowTitleToDifferFromFilename: true versions: fpt: '*' + ghec: '*' type: reference topics: - Projects diff --git a/content/issues/trying-out-the-new-projects-experience/index.md b/content/issues/trying-out-the-new-projects-experience/index.md index 14b9d17e533b..499f4c31c598 100644 --- a/content/issues/trying-out-the-new-projects-experience/index.md +++ b/content/issues/trying-out-the-new-projects-experience/index.md @@ -4,6 +4,7 @@ shortTitle: Projects (beta) intro: 'Build customized projects to track your work in {% data variables.product.company_short %}.' versions: fpt: '*' + ghec: '*' topics: - Issues - Projects diff --git a/content/issues/trying-out-the-new-projects-experience/quickstart.md b/content/issues/trying-out-the-new-projects-experience/quickstart.md index caf6118b0d02..b4434ba23f3c 100644 --- a/content/issues/trying-out-the-new-projects-experience/quickstart.md +++ b/content/issues/trying-out-the-new-projects-experience/quickstart.md @@ -5,6 +5,7 @@ allowTitleToDifferFromFilename: true miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' type: quick_start topics: - Projects diff --git a/content/issues/trying-out-the-new-projects-experience/using-the-api-to-manage-projects.md b/content/issues/trying-out-the-new-projects-experience/using-the-api-to-manage-projects.md index 677f7e608329..e0bfa83a530f 100644 --- a/content/issues/trying-out-the-new-projects-experience/using-the-api-to-manage-projects.md +++ b/content/issues/trying-out-the-new-projects-experience/using-the-api-to-manage-projects.md @@ -3,6 +3,7 @@ title: Using the API to manage projects (beta) intro: You can use the GraphQL API to find information about projects and to update projects. versions: fpt: '*' + ghec: '*' miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true type: how_to @@ -53,13 +54,13 @@ gh api graphql --header 'GraphQL-Features: projects_next_graphql' -f query=' }' -f organization=$my_org -F number=$my_num ``` -For more information, see "[Forming calls with GraphQL](/graphql/guides/forming-calls-with-graphql#working-with-variables)." +For more information, see "[Forming calls with GraphQL]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/guides/forming-calls-with-graphql#working-with-variables)." {% endcli %} ## Finding information about projects -Use queries to get data about projects. For more information, see "[About queries](/graphql/guides/forming-calls-with-graphql#about-queries)." +Use queries to get data about projects. For more information, see "[About queries]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/guides/forming-calls-with-graphql#about-queries)." ### Finding the node ID of a project @@ -264,7 +265,7 @@ A project may contain items that a user does not have permission to view. In thi ## Updating projects -Use mutations to update projects. For more information, see "[About mutations](/graphql/guides/forming-calls-with-graphql#about-mutations)." +Use mutations to update projects. For more information, see "[About mutations]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/forming-calls-with-graphql#about-mutations)." {% note %} @@ -355,7 +356,7 @@ gh api graphql --header 'GraphQL-Features: projects_next_graphql' -f query=' {% note %} -**Note:** You cannot use `updateProjectNextItemField` to change `Assignees`, `Labels`, `Milestone`, or `Repository` because these fields are properties of pull requests and issues, not of project items. Instead, you must use the [addAssigneesToAssignable](/graphql/reference/mutations#addassigneestoassignable), [removeAssigneesFromAssignable](/graphql/reference/mutations#removeassigneesfromassignable), [addLabelsToLabelable](/graphql/reference/mutations#addlabelstolabelable), [removeLabelsFromLabelable](/graphql/reference/mutations#removelabelsfromlabelable), [updateIssue](/graphql/reference/mutations#updateissue), [updatePullRequest](/graphql/reference/mutations#updatepullrequest), or [transferIssue](/graphql/reference/mutations#transferissue) mutations. +**Note:** You cannot use `updateProjectNextItemField` to change `Assignees`, `Labels`, `Milestone`, or `Repository` because these fields are properties of pull requests and issues, not of project items. Instead, you must use the [addAssigneesToAssignable]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#addassigneestoassignable), [removeAssigneesFromAssignable]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#removeassigneesfromassignable), [addLabelsToLabelable]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#addlabelstolabelable), [removeLabelsFromLabelable]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#removelabelsfromlabelable), [updateIssue]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#updateissue), [updatePullRequest]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#updatepullrequest), or [transferIssue]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#transferissue) mutations. {% endnote %} @@ -437,9 +438,9 @@ gh api graphql --header 'GraphQL-Features: projects_next_graphql' -f query=' #### ProjectNext -- [Closable](/graphql/reference/interfaces#closable) -- [Node](/graphql/reference/interfaces#node) -- [Updatable](/graphql/reference/interfaces#updatable) +- [Closable]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/interfaces#closable) +- [Node]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/interfaces#node) +- [Updatable]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/interfaces#updatable) **Fields** @@ -509,7 +510,7 @@ Name | Description #### ProjectNextItem -- [Node](/graphql/reference/interfaces#node) +- [Node]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/interfaces#node) An item in a `ProjectNext`. @@ -553,7 +554,7 @@ Name | Description #### ProjectNextItemFieldValue -- [Node](/graphql/reference/interfaces#node) +- [Node]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/interfaces#node) A value of a field in an item in a `ProjectNext`. diff --git a/content/issues/using-labels-and-milestones-to-track-work/about-milestones.md b/content/issues/using-labels-and-milestones-to-track-work/about-milestones.md index 713d8127ecff..2508de2cd6c6 100644 --- a/content/issues/using-labels-and-milestones-to-track-work/about-milestones.md +++ b/content/issues/using-labels-and-milestones-to-track-work/about-milestones.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- diff --git a/content/issues/using-labels-and-milestones-to-track-work/associating-milestones-with-issues-and-pull-requests.md b/content/issues/using-labels-and-milestones-to-track-work/associating-milestones-with-issues-and-pull-requests.md index 42be11257819..017f06b4c202 100644 --- a/content/issues/using-labels-and-milestones-to-track-work/associating-milestones-with-issues-and-pull-requests.md +++ b/content/issues/using-labels-and-milestones-to-track-work/associating-milestones-with-issues-and-pull-requests.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Add to milestones diff --git a/content/issues/using-labels-and-milestones-to-track-work/creating-and-editing-milestones-for-issues-and-pull-requests.md b/content/issues/using-labels-and-milestones-to-track-work/creating-and-editing-milestones-for-issues-and-pull-requests.md index e09c73853037..8f6b594b5069 100644 --- a/content/issues/using-labels-and-milestones-to-track-work/creating-and-editing-milestones-for-issues-and-pull-requests.md +++ b/content/issues/using-labels-and-milestones-to-track-work/creating-and-editing-milestones-for-issues-and-pull-requests.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Create & edit milestones diff --git a/content/issues/using-labels-and-milestones-to-track-work/filtering-issues-and-pull-requests-by-milestone.md b/content/issues/using-labels-and-milestones-to-track-work/filtering-issues-and-pull-requests-by-milestone.md index 9bbabbc7236b..74cb657dd582 100644 --- a/content/issues/using-labels-and-milestones-to-track-work/filtering-issues-and-pull-requests-by-milestone.md +++ b/content/issues/using-labels-and-milestones-to-track-work/filtering-issues-and-pull-requests-by-milestone.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Filter by milestone diff --git a/content/issues/using-labels-and-milestones-to-track-work/index.md b/content/issues/using-labels-and-milestones-to-track-work/index.md index 68bcdf21582b..d92db64cc7c1 100644 --- a/content/issues/using-labels-and-milestones-to-track-work/index.md +++ b/content/issues/using-labels-and-milestones-to-track-work/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Issues children: diff --git a/content/issues/using-labels-and-milestones-to-track-work/managing-labels.md b/content/issues/using-labels-and-milestones-to-track-work/managing-labels.md index 602e6be9ef11..f9cf9324010b 100644 --- a/content/issues/using-labels-and-milestones-to-track-work/managing-labels.md +++ b/content/issues/using-labels-and-milestones-to-track-work/managing-labels.md @@ -1,6 +1,6 @@ --- title: Managing labels -intro: 'You can classify {% ifversion fpt %}issues, pull requests, and discussions{% else %}issues and pull requests{% endif %} by creating, editing, applying, and deleting labels.' +intro: 'You can classify {% ifversion fpt or ghec %}issues, pull requests, and discussions{% else %}issues and pull requests{% endif %} by creating, editing, applying, and deleting labels.' permissions: '{% data reusables.enterprise-accounts.emu-permission-repo %}' redirect_from: - /github/managing-your-work-on-github/managing-your-work-with-issues-and-pull-requests/managing-labels @@ -24,12 +24,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- ## About labels -You can manage your work on {% data variables.product.product_name %} by creating labels to categorize {% ifversion fpt %}issues, pull requests, and discussions{% else %}issues and pull requests{% endif %}. You can apply labels in the repository the label was created in. Once a label exists, you can use the label on any {% ifversion fpt %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} within that repository. +You can manage your work on {% data variables.product.product_name %} by creating labels to categorize {% ifversion fpt or ghec %}issues, pull requests, and discussions{% else %}issues and pull requests{% endif %}. You can apply labels in the repository the label was created in. Once a label exists, you can use the label on any {% ifversion fpt or ghec %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} within that repository. ## About default labels @@ -37,21 +38,21 @@ You can manage your work on {% data variables.product.product_name %} by creatin Label | Description --- | --- -`bug` | Indicates an unexpected problem or unintended behavior{% ifversion fpt or ghes %} +`bug` | Indicates an unexpected problem or unintended behavior{% ifversion fpt or ghes or ghec %} `documentation` | Indicates a need for improvements or additions to documentation{% endif %} -`duplicate` | Indicates similar {% ifversion fpt %}issues, pull requests, or discussions{% else %}issues or pull requests{% endif %} +`duplicate` | Indicates similar {% ifversion fpt or ghec %}issues, pull requests, or discussions{% else %}issues or pull requests{% endif %} `enhancement` | Indicates new feature requests `good first issue` | Indicates a good issue for first-time contributors `help wanted` | Indicates that a maintainer wants help on an issue or pull request -`invalid` | Indicates that an {% ifversion fpt %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} is no longer relevant -`question` | Indicates that an {% ifversion fpt %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} needs more information -`wontfix` | Indicates that work won't continue on an {% ifversion fpt %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} +`invalid` | Indicates that an {% ifversion fpt or ghec %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} is no longer relevant +`question` | Indicates that an {% ifversion fpt or ghec %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} needs more information +`wontfix` | Indicates that work won't continue on an {% ifversion fpt or ghec %}issue, pull request, or discussion{% else %}issue or pull request{% endif %} Default labels are included in every new repository when the repository is created, but you can edit or delete the labels later. Issues with the `good first issue` label are used to populate the repository's `contribute` page. For an example of a `contribute` page, see [github/docs/contribute](https://github.com/github/docs/contribute). -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} Organization owners can customize the default labels for repositories in their organization. For more information, see "[Managing default labels for repositories in your organization](/articles/managing-default-labels-for-repositories-in-your-organization)." {% endif %} @@ -72,7 +73,7 @@ Anyone with write access to a repository can create a label. Anyone with triage access to a repository can apply and dismiss labels. -1. Navigate to the {% ifversion fpt %}issue, pull request, or discussion{% else %}issue or pull request{% endif %}. +1. Navigate to the {% ifversion fpt or ghec %}issue, pull request, or discussion{% else %}issue or pull request{% endif %}. 1. In the right sidebar, to the right of "Labels", click {% octicon "gear" aria-label="The gear icon" %}, then click a label. !["Labels" drop-down menu](/assets/images/help/issues/labels-drop-down.png) @@ -101,6 +102,6 @@ Deleting a label will remove the label from issues and pull requests. {% data reusables.project-management.delete-label %} ## Further reading -- "[Filtering and searching issues and pull requests](/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests)"{% ifversion fpt or ghes %} -- "[Managing default labels for repositories in your organization](/articles/managing-default-labels-for-repositories-in-your-organization)"{% endif %}{% ifversion fpt %} +- "[Filtering and searching issues and pull requests](/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests)"{% ifversion fpt or ghes or ghec %} +- "[Managing default labels for repositories in your organization](/articles/managing-default-labels-for-repositories-in-your-organization)"{% endif %}{% ifversion fpt or ghec %} - "[Encouraging helpful contributions to your project with labels](/communities/setting-up-your-project-for-healthy-contributions/encouraging-helpful-contributions-to-your-project-with-labels)"{% endif %} diff --git a/content/issues/using-labels-and-milestones-to-track-work/viewing-your-milestones-progress.md b/content/issues/using-labels-and-milestones-to-track-work/viewing-your-milestones-progress.md index 0d956772c7f2..96af1b237527 100644 --- a/content/issues/using-labels-and-milestones-to-track-work/viewing-your-milestones-progress.md +++ b/content/issues/using-labels-and-milestones-to-track-work/viewing-your-milestones-progress.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: View progress to milestone diff --git a/content/organizations/collaborating-with-groups-in-organizations/about-organizations.md b/content/organizations/collaborating-with-groups-in-organizations/about-organizations.md index ca73fbe1df3f..ca0b67b39a19 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/about-organizations.md +++ b/content/organizations/collaborating-with-groups-in-organizations/about-organizations.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -17,7 +18,7 @@ topics: {% data reusables.organizations.organizations_include %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Organizations and enterprise accounts Enterprise accounts allow owners to centrally manage policy and billing for multiple {% data variables.product.prodname_dotcom_the_website %} organizations. diff --git a/content/organizations/collaborating-with-groups-in-organizations/about-your-organization-dashboard.md b/content/organizations/collaborating-with-groups-in-organizations/about-your-organization-dashboard.md index e212192f16d9..cb6bcf0755c9 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/about-your-organization-dashboard.md +++ b/content/organizations/collaborating-with-groups-in-organizations/about-your-organization-dashboard.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -34,7 +35,7 @@ In the left sidebar of your dashboard, you can access your organization's top re In the "All activity" section of your news feed, you can view updates from other teams and repositories in your organization. -The "All activity" section shows all recent activity in the organization, including activity in repositories you're not subscribed to and of people you're not following. For more information, see {% ifversion fpt or ghes or ghae %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[Watching and unwatching repositories](/github/receiving-notifications-about-activity-on-github/watching-and-unwatching-repositories){% endif %}" and "[Following people](/articles/following-people)." +The "All activity" section shows all recent activity in the organization, including activity in repositories you're not subscribed to and of people you're not following. For more information, see {% ifversion fpt or ghes or ghae or ghec %}"[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications){% else %}"[Watching and unwatching repositories](/github/receiving-notifications-about-activity-on-github/watching-and-unwatching-repositories){% endif %}" and "[Following people](/articles/following-people)." For instance, the organization news feed shows updates when someone in the organization: - Creates a new branch. @@ -42,7 +43,7 @@ For instance, the organization news feed shows updates when someone in the organ - Submits a pull request review comment. - Forks a repository. - Creates a wiki page. - - Pushes commits.{% ifversion fpt or ghes %} + - Pushes commits.{% ifversion fpt or ghes or ghec %} - Creates a public repository.{% endif %} ## Further information diff --git a/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md b/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md index baa91ef9cbe7..e6ffdbf9b4b8 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md +++ b/content/organizations/collaborating-with-groups-in-organizations/about-your-organizations-news-feed.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -20,10 +21,10 @@ An organization's news feed shows other people's activity on repositories owned ## Accessing your organization's news feed -1. {% data variables.product.signin_link %} to your {% data variables.product.product_name %} account. +1. {% data variables.product.signin_link %} to your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. 2. Open your {% data reusables.user_settings.personal_dashboard %}. 3. Click the account context switcher in the upper-left corner of the page. ![Context switcher button in Enterprise](/assets/images/help/organizations/account_context_switcher.png) -4. Select an organization from the drop-down menu.{% ifversion fpt %} +4. Select an organization from the drop-down menu.{% ifversion fpt or ghec %} ![Context switcher menu in dotcom](/assets/images/help/organizations/account-context-switcher-selected-dotcom.png){% else %} ![Context switcher menu in Enterprise](/assets/images/help/organizations/account_context_switcher.png){% endif %} diff --git a/content/organizations/collaborating-with-groups-in-organizations/accessing-your-organizations-settings.md b/content/organizations/collaborating-with-groups-in-organizations/accessing-your-organizations-settings.md index 394bf728b5f1..4b89a45f7b90 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/accessing-your-organizations-settings.md +++ b/content/organizations/collaborating-with-groups-in-organizations/accessing-your-organizations-settings.md @@ -14,12 +14,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Access organization settings --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% tip %} diff --git a/content/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch.md b/content/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch.md index fe6dc85ac7a4..636346e7a9bf 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch.md +++ b/content/organizations/collaborating-with-groups-in-organizations/creating-a-new-organization-from-scratch.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' redirect_from: - /articles/creating-a-new-organization-from-scratch - /admin/user-management/creating-organizations @@ -20,10 +21,10 @@ When you create a new organization from scratch, it doesn't have any repositorie {% data reusables.user_settings.access_settings %} {% data reusables.user_settings.organizations %} {% data reusables.organizations.new-organization %} -4. Follow the prompts to create your organization. {% ifversion fpt %}For more information about the plans available for your team, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/githubs-products)."{% endif %} +4. Follow the prompts to create your organization. {% ifversion fpt or ghec %}For more information about the plans available for your team, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/githubs-products)."{% endif %} ## Further reading -{% ifversion fpt %} +{% ifversion fpt or ghec %} - "[Setting your billing email](/articles/setting-your-billing-email)"{% endif %} - "[About organizations](/articles/about-organizations)" diff --git a/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md b/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md index 904e0de8543c..0c0435aa17cb 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md +++ b/content/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile.md @@ -3,6 +3,7 @@ title: Customizing your organization's profile intro: You can share information about your organization by customizing your organization's profile versions: fpt: '*' + ghec: '*' topics: - Organizations shortTitle: Customize organization profile diff --git a/content/organizations/collaborating-with-groups-in-organizations/index.md b/content/organizations/collaborating-with-groups-in-organizations/index.md index eaa83862824a..07f25f15ef40 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/index.md +++ b/content/organizations/collaborating-with-groups-in-organizations/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization.md b/content/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization.md index b4b162a13125..9fae3c941120 100644 --- a/content/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization.md +++ b/content/organizations/collaborating-with-groups-in-organizations/viewing-insights-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/viewing-insights-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -62,5 +63,5 @@ With dependency insights you can view vulnerabilities, licenses, and other impor ## Further reading - "[About organizations](/organizations/collaborating-with-groups-in-organizations/about-organizations)" - "[Exploring the dependencies of a repository](/github/visualizing-repository-data-with-graphs/exploring-the-dependencies-of-a-repository)" - - "[Changing the visibility of your organization's dependency insights](/organizations/managing-organization-settings/changing-the-visibility-of-your-organizations-dependency-insights)" - - "[Enforcing a policy on dependency insights in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account)" + - "[Changing the visibility of your organization's dependency insights](/organizations/managing-organization-settings/changing-the-visibility-of-your-organizations-dependency-insights)"{% ifversion ghec %} +- "[Enforcing policies for dependency insights in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-dependency-insights-in-your-enterprise)"{% endif %} diff --git a/content/organizations/collaborating-with-your-team/about-team-discussions.md b/content/organizations/collaborating-with-your-team/about-team-discussions.md index fa6ea92a2804..92530700df90 100644 --- a/content/organizations/collaborating-with-your-team/about-team-discussions.md +++ b/content/organizations/collaborating-with-your-team/about-team-discussions.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community --- @@ -31,7 +32,7 @@ When someone posts or replies to a public discussion on a team's page, members o {% tip %} -**Tip:** Depending on your notification settings, you'll receive updates by email, the web notifications page on {% data variables.product.product_name %}, or both. For more information, see {% ifversion fpt or ghae or ghes %}"[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications){% else %}"[About email notifications](/github/receiving-notifications-about-activity-on-github/about-email-notifications)" and "[About web notifications](/github/receiving-notifications-about-activity-on-github/about-web-notifications){% endif %}." +**Tip:** Depending on your notification settings, you'll receive updates by email, the web notifications page on {% data variables.product.product_name %}, or both. For more information, see {% ifversion fpt or ghae or ghes or ghec %}"[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications){% else %}"[About email notifications](/github/receiving-notifications-about-activity-on-github/about-email-notifications)" and "[About web notifications](/github/receiving-notifications-about-activity-on-github/about-web-notifications){% endif %}." {% endtip %} @@ -39,7 +40,7 @@ By default, if your username is mentioned in a team discussion, you'll receive n To turn off notifications for team discussions, you can unsubscribe to a specific discussion post or change your notification settings to unwatch or completely ignore a specific team's discussions. You can subscribe to notifications for a specific discussion post even if you're unwatching that team's discussions. -For more information, see {% ifversion fpt or ghae or ghes %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions){% else %}"[Subscribing to and unsubscribing from notifications](/github/receiving-notifications-about-activity-on-github/subscribing-to-and-unsubscribing-from-notifications){% endif %}" and "[Nested teams](/articles/about-teams/#nested-teams)." +For more information, see {% ifversion fpt or ghae or ghes or ghec %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions){% else %}"[Subscribing to and unsubscribing from notifications](/github/receiving-notifications-about-activity-on-github/subscribing-to-and-unsubscribing-from-notifications){% endif %}" and "[Nested teams](/articles/about-teams/#nested-teams)." ## Further reading diff --git a/content/organizations/collaborating-with-your-team/creating-a-team-discussion.md b/content/organizations/collaborating-with-your-team/creating-a-team-discussion.md index f61f0b9890dc..06390fbd5ecb 100644 --- a/content/organizations/collaborating-with-your-team/creating-a-team-discussion.md +++ b/content/organizations/collaborating-with-your-team/creating-a-team-discussion.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Create a team discussion diff --git a/content/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion.md b/content/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion.md index 886b5a0a6fb7..b7d6170b7e90 100644 --- a/content/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion.md +++ b/content/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community shortTitle: Manage a team discussion diff --git a/content/organizations/collaborating-with-your-team/index.md b/content/organizations/collaborating-with-your-team/index.md index 796a71a92161..fd807b4d48d2 100644 --- a/content/organizations/collaborating-with-your-team/index.md +++ b/content/organizations/collaborating-with-your-team/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community children: diff --git a/content/organizations/collaborating-with-your-team/pinning-a-team-discussion.md b/content/organizations/collaborating-with-your-team/pinning-a-team-discussion.md index e729f42b79a8..4de2485ec7dd 100644 --- a/content/organizations/collaborating-with-your-team/pinning-a-team-discussion.md +++ b/content/organizations/collaborating-with-your-team/pinning-a-team-discussion.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Community --- diff --git a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/about-two-factor-authentication-and-saml-single-sign-on.md b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/about-two-factor-authentication-and-saml-single-sign-on.md index 751e3b77db9d..070066509330 100644 --- a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/about-two-factor-authentication-and-saml-single-sign-on.md +++ b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/about-two-factor-authentication-and-saml-single-sign-on.md @@ -7,18 +7,19 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/about-two-factor-authentication-and-saml-single-sign-on versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: 2FA & SAML single sign-on --- -Two-factor authentication (2FA) provides basic authentication for organization members. By enabling 2FA, organization administrators limit the likelihood that a member's {% data variables.product.product_name %} account could be compromised. For more information on 2FA, see "[About two-factor authentication](/articles/about-two-factor-authentication)." +Two-factor authentication (2FA) provides basic authentication for organization members. By enabling 2FA, organization administrators limit the likelihood that a member's account on {% data variables.product.product_location %} could be compromised. For more information on 2FA, see "[About two-factor authentication](/articles/about-two-factor-authentication)." To add additional authentication measures, organization administrators can also [enable SAML single sign-on (SSO)](/articles/enabling-and-testing-saml-single-sign-on-for-your-organization) so that organization members must use single sign-on to access an organization. For more information on SAML SSO, see "[About identity and access management with SAML single sign-on](/articles/about-identity-and-access-management-with-saml-single-sign-on)." If both 2FA and SAML SSO are enabled, organization members must do the following: -- Use 2FA to log in to their {% data variables.product.product_name %} account +- Use 2FA to log in to their account on {% data variables.product.product_location %} - Use single sign-on to access the organization - Use an authorized token for API or Git access and use single sign-on to authorize the token diff --git a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/index.md b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/index.md index 538b88a86ed4..de06dd49fdce 100644 --- a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/index.md +++ b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/index.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/granting-access-to-your-organization-with-saml-single-sign-on versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/managing-bots-and-service-accounts-with-saml-single-sign-on.md b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/managing-bots-and-service-accounts-with-saml-single-sign-on.md index 6d38c704e733..d95dd10f2e73 100644 --- a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/managing-bots-and-service-accounts-with-saml-single-sign-on.md +++ b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/managing-bots-and-service-accounts-with-saml-single-sign-on.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/managing-bots-and-service-accounts-with-saml-single-sign-on versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md index 6fac15b47582..6e2afcadba24 100644 --- a/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md +++ b/content/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization.md @@ -9,6 +9,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/viewing-and-managing-a-members-saml-access-to-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -17,7 +18,7 @@ shortTitle: Manage SAML access ## About SAML access to your organization -When you enable SAML single sign-on for your organization, each organization member can link their external identity on your identity provider (IdP) to their existing {% data variables.product.product_name %} account. To access your organization's resources on {% data variables.product.product_name %}, the member must have an active SAML session in their browser. To access your organization's resources using the API or Git, the member must use a personal access token or SSH key that the member has authorized for use with your organization. +When you enable SAML single sign-on for your organization, each organization member can link their external identity on your identity provider (IdP) to their existing account on {% data variables.product.product_location %}. To access your organization's resources on {% data variables.product.product_name %}, the member must have an active SAML session in their browser. To access your organization's resources using the API or Git, the member must use a personal access token or SSH key that the member has authorized for use with your organization. You can view and revoke each member's linked identity, active sessions, and authorized credentials on the same page. @@ -73,5 +74,5 @@ When available, the entry will include SCIM data. For more information, see "[Ab ## Further reading -- "[About identity and access management with SAML single sign-on](/articles/about-identity-and-access-management-with-saml-single-sign-on)" -- "[Viewing and managing a user's SAML access to your enterprise account](/github/setting-up-and-managing-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise-account)" +- "[About identity and access management with SAML single sign-on](/articles/about-identity-and-access-management-with-saml-single-sign-on)"{% ifversion ghec %} +- "[Viewing and managing a user's SAML access to your enterprise account](/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise)"{% endif %} diff --git a/content/organizations/index.md b/content/organizations/index.md index 413ff1602bb6..f212c92ae2cc 100644 --- a/content/organizations/index.md +++ b/content/organizations/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/keeping-your-organization-secure/index.md b/content/organizations/keeping-your-organization-secure/index.md index 6eae6207d45e..78b47fb89467 100644 --- a/content/organizations/keeping-your-organization-secure/index.md +++ b/content/organizations/keeping-your-organization-secure/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization.md b/content/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization.md index 64a0a00a99a6..bb538e6131d2 100644 --- a/content/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: versions: fpt: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -25,7 +26,7 @@ You can restrict access to organization assets by configuring an allow list for If you set up an allow list you can also choose to automatically add to your allow list any IP addresses configured for {% data variables.product.prodname_github_apps %} that you install in your organization. The creator of a {% data variables.product.prodname_github_app %} can configure an allow list for their application, specifying the IP addresses at which the application runs. By inheriting their allow list into yours, you avoid connection requests from the application being refused. For more information, see "[Allowing access by {% data variables.product.prodname_github_apps %}](#allowing-access-by-github-apps)." -You can also configure allowed IP addresses for the organizations in an enterprise account. For more information, see {% ifversion ghae %}"[Restricting network traffic to your enterprise](/admin/configuration/restricting-network-traffic-to-your-enterprise)." {% else %}"[Enforcing security settings in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-security-settings-in-your-enterprise-account#managing-allowed-ip-addresses-for-organizations-in-your-enterprise-account)."{% endif %} +You can also configure allowed IP addresses for the organizations in an enterprise account. For more information, see "[Enforcing policies for security settings in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise)." ## Adding an allowed IP address diff --git a/content/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization.md b/content/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization.md index b0b78ebcc7a1..198b67c4cb05 100644 --- a/content/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -17,7 +18,7 @@ shortTitle: Manage security & analysis ## About management of security and analysis settings -{% data variables.product.prodname_dotcom %} can help secure the repositories in your organization. You can manage the security and analysis features for all existing or new repositories that members create in your organization. {% ifversion fpt %}If you have a license for {% data variables.product.prodname_GH_advanced_security %} then you can also manage access to these features. {% data reusables.advanced-security.more-info-ghas %}{% endif %} +{% data variables.product.prodname_dotcom %} can help secure the repositories in your organization. You can manage the security and analysis features for all existing or new repositories that members create in your organization. {% ifversion fpt or ghec %}If you have a license for {% data variables.product.prodname_GH_advanced_security %} then you can also manage access to these features. {% data reusables.advanced-security.more-info-ghas %}{% endif %} {% data reusables.security.some-security-and-analysis-features-are-enabled-by-default %} {% data reusables.security.security-and-analysis-features-enable-read-only %} @@ -30,7 +31,7 @@ shortTitle: Manage security & analysis The page that's displayed allows you to enable or disable all security and analysis features for the repositories in your organization. -{% ifversion fpt %}If your organization belongs to an enterprise with a license for {% data variables.product.prodname_GH_advanced_security %}, the page will also contain options to enable and disable {% data variables.product.prodname_advanced_security %} features. Any repositories that use {% data variables.product.prodname_GH_advanced_security %} are listed at the bottom of the page.{% endif %} +{% ifversion fpt or ghec %}If your organization belongs to an enterprise with a license for {% data variables.product.prodname_GH_advanced_security %}, the page will also contain options to enable and disable {% data variables.product.prodname_advanced_security %} features. Any repositories that use {% data variables.product.prodname_GH_advanced_security %} are listed at the bottom of the page.{% endif %} {% ifversion ghes > 3.0 %}If you have a license for {% data variables.product.prodname_GH_advanced_security %}, the page will also contain options to enable and disable {% data variables.product.prodname_advanced_security %} features. Any repositories that use {% data variables.product.prodname_GH_advanced_security %} are listed at the bottom of the page.{% endif %} @@ -38,7 +39,7 @@ The page that's displayed allows you to enable or disable all security and analy ## Enabling or disabling a feature for all existing repositories -You can enable or disable features for all repositories. {% ifversion fpt %}The impact of your changes on repositories in your organization is determined by their visibility: +You can enable or disable features for all repositories. {% ifversion fpt or ghec %}The impact of your changes on repositories in your organization is determined by their visibility: - **Dependency graph** - Your changes affect only private repositories because the feature is always enabled for public repositories. - **{% data variables.product.prodname_dependabot_alerts %}** - Your changes affect all repositories. @@ -49,8 +50,8 @@ You can enable or disable features for all repositories. {% ifversion fpt %}The {% data reusables.advanced-security.note-org-enable-uses-seats %} 1. Go to the security and analysis settings for your organization. For more information, see "[Displaying the security and analysis settings](#displaying-the-security-and-analysis-settings)." -2. Under "Configure security and analysis features", to the right of the feature, click **Disable all** or **Enable all**. {% ifversion fpt or ghes > 3.0 %}The control for "{% data variables.product.prodname_GH_advanced_security %}" is disabled if you have no available seats in your {% data variables.product.prodname_GH_advanced_security %} license.{% endif %} - {% ifversion fpt %} +2. Under "Configure security and analysis features", to the right of the feature, click **Disable all** or **Enable all**. {% ifversion fpt or ghes > 3.0 or ghec %}The control for "{% data variables.product.prodname_GH_advanced_security %}" is disabled if you have no available seats in your {% data variables.product.prodname_GH_advanced_security %} license.{% endif %} + {% ifversion fpt or ghec %} !["Enable all" or "Disable all" button for "Configure security and analysis" features](/assets/images/help/organizations/security-and-analysis-disable-or-enable-all-ghas-dotcom.png) {% endif %} {% ifversion ghes > 3.0 %} @@ -62,18 +63,18 @@ You can enable or disable features for all repositories. {% ifversion fpt %}The {% ifversion ghae %} !["Enable all" or "Disable all" button for "Configure security and analysis" features](/assets/images/enterprise/github-ae/organizations/security-and-analysis-disable-or-enable-all-ghae.png) {% endif %} - {% ifversion fpt or ghes = 3.0 %} + {% ifversion fpt or ghes = 3.0 or ghec %} 3. Optionally, enable the feature by default for new repositories in your organization. - {% ifversion fpt %} + {% ifversion fpt or ghec %} !["Enable by default" option for new repositories](/assets/images/help/organizations/security-and-analysis-enable-by-default-in-modal.png) {% endif %} {% ifversion ghes = 3.0 %} !["Enable by default" option for new repositories](/assets/images/enterprise/3.0/organizations/security-and-analysis-secret-scanning-enable-by-default.png) {% endif %} {% endif %} - {% ifversion fpt or ghes = 3.0 %} + {% ifversion fpt or ghes = 3.0 or ghec %} 4. Click **Disable FEATURE** or **Enable FEATURE** to disable or enable the feature for all the repositories in your organization. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ![Button to disable or enable feature](/assets/images/help/organizations/security-and-analysis-enable-dependency-graph.png) {% endif %} {% ifversion ghes = 3.0 %} @@ -90,8 +91,8 @@ You can enable or disable features for all repositories. {% ifversion fpt %}The ## Enabling or disabling a feature automatically when new repositories are added 1. Go to the security and analysis settings for your organization. For more information, see "[Displaying the security and analysis settings](#displaying-the-security-and-analysis-settings)." -2. Under "Configure security and analysis features", to the right of the feature, enable or disable the feature by default for new repositories{% ifversion fpt %}, or all new private repositories,{% endif %} in your organization. - {% ifversion fpt %} +2. Under "Configure security and analysis features", to the right of the feature, enable or disable the feature by default for new repositories{% ifversion fpt or ghec %}, or all new private repositories,{% endif %} in your organization. + {% ifversion fpt or ghec %} ![Checkbox for enabling or disabling a feature for new repositories](/assets/images/help/organizations/security-and-analysis-enable-or-disable-feature-checkbox-dotcom.png) {% endif %} {% ifversion ghes > 3.0 %} @@ -104,7 +105,7 @@ You can enable or disable features for all repositories. {% ifversion fpt %}The ![Checkbox for enabling or disabling a feature for new repositories](/assets/images/enterprise/github-ae/organizations/security-and-analysis-enable-or-disable-secret-scanning-checkbox-ghae.png) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Allowing {% data variables.product.prodname_dependabot %} to access private dependencies @@ -127,7 +128,7 @@ To allow {% data variables.product.prodname_dependabot %} to access a private {% !["X" button to remove a repository](/assets/images/help/organizations/dependabot-private-repository-list.png) {% endif %} -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} ## Removing access to {% data variables.product.prodname_GH_advanced_security %} from individual repositories in an organization @@ -151,7 +152,7 @@ You can manage access to {% data variables.product.prodname_GH_advanced_security ## Further reading - "[Securing your repository](/code-security/getting-started/securing-your-repository)" -- "[About secret scanning](/github/administering-a-repository/about-secret-scanning)"{% ifversion fpt %} +- "[About secret scanning](/github/administering-a-repository/about-secret-scanning)"{% ifversion fpt or ghec %} - "[Keeping your dependencies updated automatically](/github/administering-a-repository/keeping-your-dependencies-updated-automatically)"{% endif %}{% ifversion not ghae %} - "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)" - "[Managing vulnerabilities in your project's dependencies](/github/managing-security-vulnerabilities/managing-vulnerabilities-in-your-projects-dependencies)"{% endif %} diff --git a/content/organizations/keeping-your-organization-secure/preparing-to-require-two-factor-authentication-in-your-organization.md b/content/organizations/keeping-your-organization-secure/preparing-to-require-two-factor-authentication-in-your-organization.md index 944b632cfe03..f468be7bce00 100644 --- a/content/organizations/keeping-your-organization-secure/preparing-to-require-two-factor-authentication-in-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/preparing-to-require-two-factor-authentication-in-your-organization.md @@ -7,12 +7,13 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Prepare to require 2FA --- -We recommend that you notify {% ifversion fpt %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} at least one week before you require 2FA in your organization. +We recommend that you notify {% ifversion fpt or ghec %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} at least one week before you require 2FA in your organization. When you require use of two-factor authentication for your organization, members, outside collaborators, and billing managers (including bot accounts) who do not use 2FA will be removed from the organization and lose access to its repositories. They will also lose access to their forks of the organization's private repositories. diff --git a/content/organizations/keeping-your-organization-secure/requiring-two-factor-authentication-in-your-organization.md b/content/organizations/keeping-your-organization-secure/requiring-two-factor-authentication-in-your-organization.md index 312b488fee66..0470018a0230 100644 --- a/content/organizations/keeping-your-organization-secure/requiring-two-factor-authentication-in-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/requiring-two-factor-authentication-in-your-organization.md @@ -1,12 +1,13 @@ --- title: Requiring two-factor authentication in your organization -intro: 'Organization owners can require {% ifversion fpt %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} to enable two-factor authentication for their personal accounts, making it harder for malicious actors to access an organization''s repositories and settings.' +intro: 'Organization owners can require {% ifversion fpt or ghec %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} to enable two-factor authentication for their personal accounts, making it harder for malicious actors to access an organization''s repositories and settings.' redirect_from: - /articles/requiring-two-factor-authentication-in-your-organization - /github/setting-up-and-managing-organizations-and-teams/requiring-two-factor-authentication-in-your-organization versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams @@ -15,11 +16,11 @@ shortTitle: Require 2FA in organization ## About two-factor authentication for organizations -{% data reusables.two_fa.about-2fa %} You can require all {% ifversion fpt %}members, outside collaborators, and billing managers{% else %}members and outside collaborators{% endif %} in your organization to enable two-factor authentication on {% data variables.product.product_name %}. For more information about two-factor authentication, see "[Securing your account with two-factor authentication (2FA)](/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa)." +{% data reusables.two_fa.about-2fa %} You can require all {% ifversion fpt or ghec %}members, outside collaborators, and billing managers{% else %}members and outside collaborators{% endif %} in your organization to enable two-factor authentication on {% data variables.product.product_name %}. For more information about two-factor authentication, see "[Securing your account with two-factor authentication (2FA)](/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} -You can also require two-factor authentication for organizations in an enterprise. For more information, see "[Enforcing security settings in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-security-settings-in-your-enterprise-account#requiring-two-factor-authentication-for-organizations-in-your-enterprise-account)." +You can also require two-factor authentication for organizations in an enterprise. For more information, see "[Enforcing policies for security settings in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise)." {% endif %} @@ -27,8 +28,8 @@ You can also require two-factor authentication for organizations in an enterpris **Warnings:** -- When you require use of two-factor authentication for your organization, {% ifversion fpt %}members, outside collaborators, and billing managers{% else %}members and outside collaborators{% endif %} (including bot accounts) who do not use 2FA will be removed from the organization and lose access to its repositories. They will also lose access to their forks of the organization's private repositories. You can [reinstate their access privileges and settings](/articles/reinstating-a-former-member-of-your-organization) if they enable two-factor authentication for their personal account within three months of their removal from your organization. -- If an organization owner, member,{% ifversion fpt %} billing manager,{% endif %} or outside collaborator disables 2FA for their personal account after you've enabled required two-factor authentication, they will automatically be removed from the organization. +- When you require use of two-factor authentication for your organization, {% ifversion fpt or ghec %}members, outside collaborators, and billing managers{% else %}members and outside collaborators{% endif %} (including bot accounts) who do not use 2FA will be removed from the organization and lose access to its repositories. They will also lose access to their forks of the organization's private repositories. You can [reinstate their access privileges and settings](/articles/reinstating-a-former-member-of-your-organization) if they enable two-factor authentication for their personal account within three months of their removal from your organization. +- If an organization owner, member,{% ifversion fpt or ghec %} billing manager,{% endif %} or outside collaborator disables 2FA for their personal account after you've enabled required two-factor authentication, they will automatically be removed from the organization. - If you're the sole owner of an organization that requires two-factor authentication, you won't be able to disable 2FA for your personal account without disabling required two-factor authentication for the organization. {% endwarning %} @@ -37,9 +38,9 @@ You can also require two-factor authentication for organizations in an enterpris ## Prerequisites -Before you can require {% ifversion fpt %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} to use two-factor authentication, you must enable two-factor authentication for your account on {% data variables.product.product_name %}. For more information, see "[Securing your account with two-factor authentication (2FA)](/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa)." +Before you can require {% ifversion fpt or ghec %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} to use two-factor authentication, you must enable two-factor authentication for your account on {% data variables.product.product_name %}. For more information, see "[Securing your account with two-factor authentication (2FA)](/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa)." -Before you require use of two-factor authentication, we recommend notifying {% ifversion fpt %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} and asking them to set up 2FA for their accounts. You can see if members and outside collaborators already use 2FA. For more information, see "[Viewing whether users in your organization have 2FA enabled](/organizations/keeping-your-organization-secure/viewing-whether-users-in-your-organization-have-2fa-enabled)." +Before you require use of two-factor authentication, we recommend notifying {% ifversion fpt or ghec %}organization members, outside collaborators, and billing managers{% else %}organization members and outside collaborators{% endif %} and asking them to set up 2FA for their accounts. You can see if members and outside collaborators already use 2FA. For more information, see "[Viewing whether users in your organization have 2FA enabled](/organizations/keeping-your-organization-secure/viewing-whether-users-in-your-organization-have-2fa-enabled)." ## Requiring two-factor authentication in your organization @@ -48,7 +49,7 @@ Before you require use of two-factor authentication, we recommend notifying {% i {% data reusables.organizations.security %} {% data reusables.organizations.require_two_factor_authentication %} {% data reusables.organizations.removed_outside_collaborators %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 8. If any members or outside collaborators are removed from the organization, we recommend sending them an invitation that can reinstate their former privileges and access to your organization. They must enable two-factor authentication before they can accept your invitation. {% endif %} @@ -63,7 +64,7 @@ To view people who were automatically removed from your organization for non-com {% data reusables.audit_log.audit_log_sidebar_for_org_admins %} 4. Enter your search query. To search for: - Organization members removed, use `action:org.remove_member` in your search query - - Outside collaborators removed, use `action:org.remove_outside_collaborator` in your search query{% ifversion fpt %} + - Outside collaborators removed, use `action:org.remove_outside_collaborator` in your search query{% ifversion fpt or ghec %} - Billing managers removed, use `action:org.remove_billing_manager`in your search query{% endif %} You can also view people who were removed from your organization by using a [time frame](/articles/reviewing-the-audit-log-for-your-organization/#search-based-on-time-of-action) in your search. diff --git a/content/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization.md b/content/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization.md index 35d06e4b0018..563e88b923d1 100644 --- a/content/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization.md @@ -11,6 +11,7 @@ redirect_from: versions: fpt: '*' ghes: '>=3.2' + ghec: '*' type: how_to topics: - Enterprise @@ -22,17 +23,15 @@ shortTitle: Restrict email notifications ## About email restrictions -When restricted email notifications are enabled in an organization, members can only use an email address associated with a verified or approved domain to receive email notifications about organization activity. +When restricted email notifications are enabled in an organization, members can only use an email address associated with a verified or approved domain to receive email notifications about organization activity. For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)." {% data reusables.enterprise-accounts.approved-domains-beta-note %} -For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)." - {% data reusables.notifications.email-restrictions-verification %} Outside collaborators are not subject to restrictions on email notifications for verified or approved domains. For more information about outside collaborators, see "[Permission levels for an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/permission-levels-for-an-organization#outside-collaborators)." -If your organization is owned by an enterprise account, organization members will be able to receive notifications from any domains verified or approved for the enterprise account, in addition to any domains verified or approved for the organization. {% ifversion fpt %}For more information, see "[Verifying or approving a domain for your enterprise account](/github/setting-up-and-managing-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account)."{% endif %}{% ifversion ghes > 3.1 %}For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %} +If your organization is owned by an enterprise account, organization members will be able to receive notifications from any domains verified or approved for the enterprise account, in addition to any domains verified or approved for the organization. For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)." ## Restricting email notifications diff --git a/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md b/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md index 54f669e6e267..ca65bf9e20f4 100644 --- a/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/reviewing-the-audit-log-for-your-organization.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -32,10 +33,10 @@ The audit log lists events triggered by activities that affect your organization To search for specific events, use the `action` qualifier in your query. Actions listed in the audit log are grouped within the following categories: | Category name | Description -|------------------|-------------------{% ifversion fpt %} +|------------------|-------------------{% ifversion fpt or ghec %} | [`account`](#account-category-actions) | Contains all activities related to your organization account. | [`advisory_credit`](#advisory_credit-category-actions) | Contains all activities related to crediting a contributor for a security advisory in the {% data variables.product.prodname_advisory_database %}. For more information, see "[About {% data variables.product.prodname_dotcom %} Security Advisories](/github/managing-security-vulnerabilities/about-github-security-advisories)." -| [`billing`](#billing-category-actions) | Contains all activities related to your organization's billing.{% ifversion fpt or ghes > 2.22 or ghae %} +| [`billing`](#billing-category-actions) | Contains all activities related to your organization's billing.{% ifversion fpt or ghes > 2.22 or ghae or ghec %} | [`business`](#business-category-actions) | Contains activities related to business settings for an enterprise. |{% endif %} | [`codespaces`](#codespaces-category-actions) | Contains all activities related to your organization's codespaces. | [`dependabot_alerts`](#dependabot_alerts-category-actions) | Contains organization-level configuration activities for {% data variables.product.prodname_dependabot %} alerts in existing repositories. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." @@ -45,34 +46,34 @@ To search for specific events, use the `action` qualifier in your query. Actions | [`dependency_graph`](#dependency_graph-category-actions) | Contains organization-level configuration activities for dependency graphs for repositories. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." | [`dependency_graph_new_repos`](#dependency_graph_new_repos-category-actions) | Contains organization-level configuration activities for new repositories created in the organization.{% endif %} | [`discussion_post`](#discussion_post-category-actions) | Contains all activities related to discussions posted to a team page. -| [`discussion_post_reply`](#discussion_post_reply-category-actions) | Contains all activities related to replies to discussions posted to a team page.{% ifversion fpt or ghes %} +| [`discussion_post_reply`](#discussion_post_reply-category-actions) | Contains all activities related to replies to discussions posted to a team page.{% ifversion fpt or ghes or ghec %} | [`enterprise`](#enterprise-category-actions) | Contains activities related to enterprise settings. | {% endif %} | [`hook`](#hook-category-actions) | Contains all activities related to webhooks. | [`integration_installation_request`](#integration_installation_request-category-actions) | Contains all activities related to organization member requests for owners to approve integrations for use in the organization. | | [`ip_allow_list`](#ip_allow_list) | Contains activitites related to enabling or disabling the IP allow list for an organization. | [`ip_allow_list_entry`](#ip_allow_list_entry) | Contains activities related to the creation, deletion, and editing of an IP allow list entry for an organization. -| [`issue`](#issue-category-actions) | Contains activities related to deleting an issue. {% ifversion fpt %} +| [`issue`](#issue-category-actions) | Contains activities related to deleting an issue. {% ifversion fpt or ghec %} | [`marketplace_agreement_signature`](#marketplace_agreement_signature-category-actions) | Contains all activities related to signing the {% data variables.product.prodname_marketplace %} Developer Agreement. -| [`marketplace_listing`](#marketplace_listing-category-actions) | Contains all activities related to listing apps in {% data variables.product.prodname_marketplace %}.{% endif %}{% ifversion fpt or ghes > 3.0 %} +| [`marketplace_listing`](#marketplace_listing-category-actions) | Contains all activities related to listing apps in {% data variables.product.prodname_marketplace %}.{% endif %}{% ifversion fpt or ghes > 3.0 or ghec %} | [`members_can_create_pages`](#members_can_create_pages-category-actions) | Contains all activities related to managing the publication of {% data variables.product.prodname_pages %} sites for repositories in the organization. For more information, see "[Managing the publication of {% data variables.product.prodname_pages %} sites for your organization](/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization)." | {% endif %} -| [`org`](#org-category-actions) | Contains activities related to organization membership.{% ifversion fpt %} -| [`org_credential_authorization`](#org_credential_authorization-category-actions) | Contains all activities related to authorizing credentials for use with SAML single sign-on.{% endif %}{% ifversion fpt or ghes or ghae %} +| [`org`](#org-category-actions) | Contains activities related to organization membership.{% ifversion fpt or ghec %} +| [`org_credential_authorization`](#org_credential_authorization-category-actions) | Contains all activities related to authorizing credentials for use with SAML single sign-on.{% endif %}{% ifversion fpt or ghes or ghae or ghec %} | [`organization_label`](#organization_label-category-actions) | Contains all activities related to default labels for repositories in your organization.{% endif %} -| [`oauth_application`](#oauth_application-category-actions) | Contains all activities related to OAuth Apps.{% ifversion fpt or ghes > 3.0 %} -| [`packages`](#packages-category-actions) | Contains all activities related to {% data variables.product.prodname_registry %}.{% endif %}{% ifversion fpt %} +| [`oauth_application`](#oauth_application-category-actions) | Contains all activities related to OAuth Apps.{% ifversion fpt or ghes > 3.0 or ghec %} +| [`packages`](#packages-category-actions) | Contains all activities related to {% data variables.product.prodname_registry %}.{% endif %}{% ifversion fpt or ghec %} | [`payment_method`](#payment_method-category-actions) | Contains all activities related to how your organization pays for GitHub.{% endif %} | [`profile_picture`](#profile_picture-category-actions) | Contains all activities related to your organization's profile picture. | [`project`](#project-category-actions) | Contains all activities related to project boards. | [`protected_branch`](#protected_branch-category-actions) | Contains all activities related to protected branches. -| [`repo`](#repo-category-actions) | Contains activities related to the repositories owned by your organization.{% ifversion fpt %} +| [`repo`](#repo-category-actions) | Contains activities related to the repositories owned by your organization.{% ifversion fpt or ghec %} | [`repository_advisory`](#repository_advisory-category-actions) | Contains repository-level activities related to security advisories in the {% data variables.product.prodname_advisory_database %}. For more information, see "[About {% data variables.product.prodname_dotcom %} Security Advisories](/github/managing-security-vulnerabilities/about-github-security-advisories)." -| [`repository_content_analysis`](#repository_content_analysis-category-actions) | Contains all activities related to [enabling or disabling data use for a private repository](/articles/about-github-s-use-of-your-data).{% endif %}{% ifversion fpt %} -| [`repository_dependency_graph`](#repository_dependency_graph-category-actions) | Contains repository-level activities related to enabling or disabling the dependency graph for a {% ifversion fpt %}private {% endif %}repository. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} -| [`repository_secret_scanning`](#repository_secret_scanning-category-actions) | Contains repository-level activities related to secret scanning. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." {% endif %}{% ifversion fpt or ghes or ghae-issue-4864 %} -| [`repository_vulnerability_alert`](#repository_vulnerability_alert-category-actions) | Contains all activities related to [{% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies).{% endif %}{% ifversion fpt %} -| [`repository_vulnerability_alerts`](#repository_vulnerability_alerts-category-actions) | Contains repository-level configuration activities for {% data variables.product.prodname_dependabot %} alerts. {% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} +| [`repository_content_analysis`](#repository_content_analysis-category-actions) | Contains all activities related to [enabling or disabling data use for a private repository](/articles/about-github-s-use-of-your-data).{% endif %}{% ifversion fpt or ghec %} +| [`repository_dependency_graph`](#repository_dependency_graph-category-actions) | Contains repository-level activities related to enabling or disabling the dependency graph for a {% ifversion fpt or ghec %}private {% endif %}repository. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} +| [`repository_secret_scanning`](#repository_secret_scanning-category-actions) | Contains repository-level activities related to secret scanning. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." {% endif %}{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} +| [`repository_vulnerability_alert`](#repository_vulnerability_alert-category-actions) | Contains all activities related to [{% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies).{% endif %}{% ifversion fpt or ghec %} +| [`repository_vulnerability_alerts`](#repository_vulnerability_alerts-category-actions) | Contains repository-level configuration activities for {% data variables.product.prodname_dependabot %} alerts. {% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} | [`secret_scanning`](#secret_scanning-category-actions) | Contains organization-level configuration activities for secret scanning in existing repositories. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." -| [`secret_scanning_new_repos`](#secret_scanning_new_repos-category-actions) | Contains organization-level configuration activities for secret scanning for new repositories created in the organization. {% endif %}{% ifversion fpt %} +| [`secret_scanning_new_repos`](#secret_scanning_new_repos-category-actions) | Contains organization-level configuration activities for secret scanning for new repositories created in the organization. {% endif %}{% ifversion fpt or ghec %} | [`sponsors`](#sponsors-category-actions) | Contains all events related to sponsor buttons (see "[Displaying a sponsor button in your repository](/articles/displaying-a-sponsor-button-in-your-repository)"){% endif %} | [`team`](#team-category-actions) | Contains all activities related to teams in your organization. | [`team_discussions`](#team_discussions-category-actions) | Contains activities related to managing team discussions for an organization. @@ -110,7 +111,7 @@ Using the qualifier `country`, you can filter events in the audit log based on t * `country:Mexico` finds all events that occurred in Mexico. * `country:"United States"` all finds events that occurred in the United States. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Exporting the audit log {% data reusables.audit_log.export-log %} @@ -119,9 +120,9 @@ Using the qualifier `country`, you can filter events in the audit log based on t ## Using the audit log API -You can interact with the audit log using the GraphQL API{% ifversion fpt %} or the REST API{% endif %}. +You can interact with the audit log using the GraphQL API{% ifversion fpt or ghec %} or the REST API{% endif %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %} The audit log API requires {% data variables.product.prodname_ghe_cloud %}. {% data reusables.enterprise.link-to-ghec-trial %} ### Using the GraphQL API @@ -137,15 +138,15 @@ The audit log API requires {% data variables.product.prodname_ghe_cloud %}. {% d To ensure your intellectual property is secure, and you maintain compliance for your organization, you can use the audit log GraphQL API to keep copies of your audit log data and monitor: {% data reusables.audit_log.audit-log-api-info %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} Note that you can't retrieve Git events using the GraphQL API. To retrieve Git events, use the REST API instead. For more information, see "[`git` category actions](#git-category-actions)." {% endif %} The GraphQL response can include data for up to 90 to 120 days. -For example, you can make a GraphQL request to see all the new organization members added to your organization. For more information, see the "[GraphQL API Audit Log](/graphql/reference/interfaces#auditentry/)." +For example, you can make a GraphQL request to see all the new organization members added to your organization. For more information, see the "[GraphQL API Audit Log]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/interfaces#auditentry/)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Using the REST API @@ -168,7 +169,7 @@ For more information about the audit log REST API, see "[Organizations](/rest/re An overview of some of the most common actions that are recorded as events in the audit log. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `account` category actions | Action | Description @@ -179,7 +180,7 @@ An overview of some of the most common actions that are recorded as events in th | `pending_subscription_change` | Triggered when a [{% data variables.product.prodname_marketplace %} free trial starts or expires](/articles/about-billing-for-github-marketplace/). {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `advisory_credit` category actions | Action | Description @@ -190,7 +191,7 @@ An overview of some of the most common actions that are recorded as events in th | `destroy` | Triggered when the administrator of a security advisory removes someone from the credit section. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `billing` category actions | Action | Description @@ -199,16 +200,16 @@ An overview of some of the most common actions that are recorded as events in th | `change_email` | Triggered when your organization's [billing email address](/articles/setting-your-billing-email) changes. {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ### `business` category actions | Action | Description -|------------------|-------------------{% endif %}{% ifversion fpt %} -| `set_actions_fork_pr_approvals_policy` | Triggered when the setting for requiring approvals for workflows from public forks is changed for an enterprise. For more information, see "[Requiring approval for workflows from public forks](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account#requiring-approval-for-workflows-from-public-forks)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} -| `set_actions_retention_limit` | Triggered when the retention period for {% data variables.product.prodname_actions %} artifacts and logs is changed for an enterprise. For more information, see "[Configuring the retention period for {% data variables.product.prodname_actions %} artifacts and logs in your enterprise account](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-enterprise-account)."{% endif %}{% ifversion fpt or ghes > 2.22 %} -| `set_fork_pr_workflows_policy` | Triggered when the policy for workflows on private repository forks is changed. For more information, see "{% ifversion fpt %}[Enabling workflows for private repository forks](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-github-actions-policies-in-your-enterprise-account#enabling-workflows-for-private-repository-forks){% else ifversion ghes > 2.22 %}[Enabling workflows for private repository forks](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enforcing-github-actions-policies-for-your-enterprise#enabling-workflows-for-private-repository-forks){% endif %}."{% endif %} +|------------------|-------------------{% endif %}{% ifversion fpt or ghec %} +| `set_actions_fork_pr_approvals_policy` | Triggered when the setting for requiring approvals for workflows from public forks is changed for an enterprise. For more information, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-fork-pull-requests-in-your-enterprise)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} +| `set_actions_retention_limit` | Triggered when the retention period for {% data variables.product.prodname_actions %} artifacts and logs is changed for an enterprise. For more information, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-artifact-and-log-retention-in-your-enterprise)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghec %} +| `set_fork_pr_workflows_policy` | Triggered when the policy for workflows on private repository forks is changed. For more information, see "{% ifversion fpt or ghec%}[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-fork-pull-requests-in-private-repositories){% else ifversion ghes > 2.22 %}[Enabling workflows for private repository forks](/admin/github-actions/enabling-github-actions-for-github-enterprise-server/enforcing-github-actions-policies-for-your-enterprise#enabling-workflows-for-private-repository-forks){% endif %}."{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `codespaces` category actions | Action | Description @@ -222,22 +223,22 @@ An overview of some of the most common actions that are recorded as events in th | `manage_access_and_security` | Triggered when a user updates [which repositories a codespace can access](/github/developing-online-with-codespaces/managing-access-and-security-for-codespaces). {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `dependabot_alerts` category actions | Action | Description |------------------|------------------- -| `disable` | Triggered when an organization owner disables {% data variables.product.prodname_dependabot_alerts %} for all existing {% ifversion fpt %}private {% endif %}repositories. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." -| `enable` | Triggered when an organization owner enables {% data variables.product.prodname_dependabot_alerts %} for all existing {% ifversion fpt %}private {% endif %}repositories. +| `disable` | Triggered when an organization owner disables {% data variables.product.prodname_dependabot_alerts %} for all existing {% ifversion fpt or ghec %}private {% endif %}repositories. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." +| `enable` | Triggered when an organization owner enables {% data variables.product.prodname_dependabot_alerts %} for all existing {% ifversion fpt or ghec %}private {% endif %}repositories. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `dependabot_alerts_new_repos` category actions | Action | Description |------------------|------------------- -| `disable` | Triggered when an organization owner disables {% data variables.product.prodname_dependabot_alerts %} for all new {% ifversion fpt %}private {% endif %}repositories. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." -| `enable` | Triggered when an organization owner enables {% data variables.product.prodname_dependabot_alerts %} for all new {% ifversion fpt %}private {% endif %}repositories. +| `disable` | Triggered when an organization owner disables {% data variables.product.prodname_dependabot_alerts %} for all new {% ifversion fpt or ghec %}private {% endif %}repositories. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)." +| `enable` | Triggered when an organization owner enables {% data variables.product.prodname_dependabot_alerts %} for all new {% ifversion fpt or ghec %}private {% endif %}repositories. ### `dependabot_security_updates` category actions @@ -254,7 +255,7 @@ An overview of some of the most common actions that are recorded as events in th | `enable` | Triggered when an organization owner enables {% data variables.product.prodname_dependabot_security_updates %} for all new repositories. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `dependency_graph` category actions | Action | Description @@ -284,14 +285,14 @@ An overview of some of the most common actions that are recorded as events in th | `update` | Triggered when [a reply to a team discussion post is edited](/articles/managing-disruptive-comments/#editing-a-comment). | `destroy` | Triggered when [a reply to a team discussion post is deleted](/articles/managing-disruptive-comments/#deleting-a-comment). -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ### `enterprise` category actions {% data reusables.actions.actions-audit-events-for-enterprise %} {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `environment` category actions | Action | Description @@ -302,7 +303,7 @@ An overview of some of the most common actions that are recorded as events in th | `update_actions_secret` | Triggered when a secret in an environment is updated. For more information, see ["Environment secrets](/actions/reference/environments#environment-secrets)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `git` category actions {% note %} @@ -360,7 +361,7 @@ An overview of some of the most common actions that are recorded as events in th |------------------|------------------- | `destroy` | Triggered when an organization owner or someone with admin permissions in a repository deletes an issue from an organization-owned repository. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `marketplace_agreement_signature` category actions @@ -380,7 +381,7 @@ An overview of some of the most common actions that are recorded as events in th {% endif %} -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} ### `members_can_create_pages` category actions @@ -397,57 +398,57 @@ For more information, see "[Managing the publication of {% data variables.produc | Action | Description |------------------|------------------- -| `add_member` | Triggered when a user joins an organization.{% ifversion fpt or ghes > 3.0 or ghae-next %} +| `add_member` | Triggered when a user joins an organization.{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} | `advanced_security_policy_selected_member_disabled` | Triggered when an enterprise owner prevents {% data variables.product.prodname_GH_advanced_security %} features from being enabled for repositories owned by the organization. {% data reusables.advanced-security.more-information-about-enforcement-policy %} -| `advanced_security_policy_selected_member_enabled` | Triggered when an enterprise owner allows {% data variables.product.prodname_GH_advanced_security %} features to be enabled for repositories owned by the organization. {% data reusables.advanced-security.more-information-about-enforcement-policy %}{% endif %}{% ifversion fpt %} +| `advanced_security_policy_selected_member_enabled` | Triggered when an enterprise owner allows {% data variables.product.prodname_GH_advanced_security %} features to be enabled for repositories owned by the organization. {% data reusables.advanced-security.more-information-about-enforcement-policy %}{% endif %}{% ifversion fpt or ghec %} | `audit_log_export` | Triggered when an organization admin [creates an export of the organization audit log](#exporting-the-audit-log). If the export included a query, the log will list the query used and the number of audit log entries matching that query. | `block_user` | Triggered when an organization owner [blocks a user from accessing the organization's repositories](/communities/maintaining-your-safety-on-github/blocking-a-user-from-your-organization). -| `cancel_invitation` | Triggered when an organization invitation has been revoked. {% endif %}{% ifversion fpt or ghes %} -| `create_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is created for an organization. For more information, see "[Creating encrypted secrets for an organization](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-an-organization)."{% endif %} {% ifversion fpt %} +| `cancel_invitation` | Triggered when an organization invitation has been revoked. {% endif %}{% ifversion fpt or ghes or ghec %} +| `create_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is created for an organization. For more information, see "[Creating encrypted secrets for an organization](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-an-organization)."{% endif %} {% ifversion fpt or ghec %} | `disable_oauth_app_restrictions` | Triggered when an owner [disables {% data variables.product.prodname_oauth_app %} access restrictions](/articles/disabling-oauth-app-access-restrictions-for-your-organization) for your organization. | `disable_saml` | Triggered when an organization admin disables SAML single sign-on for an organization.{% endif %} | `disable_member_team_creation_permission` | Triggered when an organization owner limits team creation to owners. For more information, see "[Setting team creation permissions in your organization](/articles/setting-team-creation-permissions-in-your-organization)." |{% ifversion not ghae %} -| `disable_two_factor_requirement` | Triggered when an owner disables a two-factor authentication requirement for all members{% ifversion fpt %}, billing managers,{% endif %} and outside collaborators in an organization.{% endif %}{% ifversion fpt %} +| `disable_two_factor_requirement` | Triggered when an owner disables a two-factor authentication requirement for all members{% ifversion fpt or ghec %}, billing managers,{% endif %} and outside collaborators in an organization.{% endif %}{% ifversion fpt or ghec %} | `enable_oauth_app_restrictions` | Triggered when an owner [enables {% data variables.product.prodname_oauth_app %} access restrictions](/articles/enabling-oauth-app-access-restrictions-for-your-organization) for your organization. | `enable_saml` | Triggered when an organization admin [enables SAML single sign-on](/articles/enabling-and-testing-saml-single-sign-on-for-your-organization) for an organization.{% endif %} | `enable_member_team_creation_permission` | Triggered when an organization owner allows members to create teams. For more information, see "[Setting team creation permissions in your organization](/articles/setting-team-creation-permissions-in-your-organization)." |{% ifversion not ghae %} -| `enable_two_factor_requirement` | Triggered when an owner requires two-factor authentication for all members{% ifversion fpt %}, billing managers,{% endif %} and outside collaborators in an organization.{% endif %}{% ifversion fpt %} +| `enable_two_factor_requirement` | Triggered when an owner requires two-factor authentication for all members{% ifversion fpt or ghec %}, billing managers,{% endif %} and outside collaborators in an organization.{% endif %}{% ifversion fpt or ghec %} | `invite_member` | Triggered when [a new user was invited to join your organization](/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization). | `oauth_app_access_approved` | Triggered when an owner [grants organization access to an {% data variables.product.prodname_oauth_app %}](/articles/approving-oauth-apps-for-your-organization/). | `oauth_app_access_denied` | Triggered when an owner [disables a previously approved {% data variables.product.prodname_oauth_app %}'s access](/articles/denying-access-to-a-previously-approved-oauth-app-for-your-organization) to your organization. | `oauth_app_access_requested` | Triggered when an organization member requests that an owner grant an {% data variables.product.prodname_oauth_app %} access to your organization.{% endif %} | `register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to an organization](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-an-organization)." -| `remove_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is removed.{% ifversion fpt %} +| `remove_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is removed.{% ifversion fpt or ghec %} | `remove_billing_manager` | Triggered when an [owner removes a billing manager from an organization](/articles/removing-a-billing-manager-from-your-organization/) or when [two-factor authentication is required in an organization](/articles/requiring-two-factor-authentication-in-your-organization) and a billing manager doesn't use 2FA or disables 2FA. |{% endif %} | `remove_member` | Triggered when an [owner removes a member from an organization](/articles/removing-a-member-from-your-organization/){% ifversion not ghae %} or when [two-factor authentication is required in an organization](/articles/requiring-two-factor-authentication-in-your-organization) and an organization member doesn't use 2FA or disables 2FA{% endif %}. Also triggered when an [organization member removes themselves](/articles/removing-yourself-from-an-organization/) from an organization.| | `remove_outside_collaborator` | Triggered when an owner removes an outside collaborator from an organization{% ifversion not ghae %} or when [two-factor authentication is required in an organization](/articles/requiring-two-factor-authentication-in-your-organization) and an outside collaborator does not use 2FA or disables 2FA{% endif %}. | -| `remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from an organization](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-organization)." {% ifversion fpt %} +| `remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from an organization](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-an-organization)." {% ifversion fpt or ghec %} | `revoke_external_identity` | Triggered when an organization owner revokes a member's linked identity. For more information, see "[Viewing and managing a member's SAML access to your organization](/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization#viewing-and-revoking-a-linked-identity)." | `revoke_sso_session` | Triggered when an organization owner revokes a member's SAML session. For more information, see "[Viewing and managing a member's SAML access to your organization](/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization#viewing-and-revoking-a-linked-identity)." {% endif %} | `runner_group_created` | Triggered when a self-hosted runner group is created. For more information, see "[Creating a self-hosted runner group for an organization](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization)." -| `runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."{% ifversion fpt or ghes > 2.22 or ghae %} +| `runner_group_removed` | Triggered when a self-hosted runner group is removed. For more information, see "[Removing a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)."{% ifversion fpt or ghes > 2.22 or ghae or ghec %} | `runner_group_updated` | Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."{% endif %} | `runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see [Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group). | `runner_group_runner_removed` | Triggered when the REST API is used to remove a self-hosted runner from a group. For more information, see "[Remove a self-hosted runner from a group for an organization](/rest/reference/actions#remove-a-self-hosted-runner-from-a-group-for-an-organization)." | `runner_group_runners_updated`| Triggered when a runner group's list of members is updated. For more information, see "[Set self-hosted runners in a group for an organization](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)."{% ifversion ghes = 2.22 %} | `runner_group_renamed` | Triggered when the self-hosted runner group is renamed. -| `runner_group_visiblity_updated` | Triggered when the visibility settings of the self-hosted runner group are changed.{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} +| `runner_group_visiblity_updated` | Triggered when the visibility settings of the self-hosted runner group are changed.{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} | `self_hosted_runner_online` | Triggered when the runner application is started. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)." -| `self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %}{% ifversion fpt or ghes %} -| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% endif %}{% ifversion fpt %} -| `set_actions_fork_pr_approvals_policy` | Triggered when the setting for requiring approvals for workflows from public forks is changed for an organization. For more information, see "[Requiring approval for workflows from public forks](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#requiring-approval-for-workflows-from-public-forks)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} -| `set_actions_retention_limit` | Triggered when the retention period for {% data variables.product.prodname_actions %} artifacts and logs is changed. For more information, see "[Configuring the retention period for {% data variables.product.prodname_actions %} artifacts and logs in your organization](/organizations/managing-organization-settings/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-organization)."{% endif %}{% ifversion fpt or ghes > 2.22 %} -| `set_fork_pr_workflows_policy` | Triggered when the policy for workflows on private repository forks is changed. For more information, see "[Enabling workflows for private repository forks](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#enabling-workflows-for-private-repository-forks)."{% endif %}{% ifversion fpt %} -| `unblock_user` | Triggered when an organization owner [unblocks a user from an organization](/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization).{% endif %}{% ifversion fpt or ghes %} -| `update_actions_secret` |Triggered when a {% data variables.product.prodname_actions %} secret is updated.{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} +| `self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %}{% ifversion fpt or ghes or ghec %} +| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% endif %}{% ifversion fpt or ghec %} +| `set_actions_fork_pr_approvals_policy` | Triggered when the setting for requiring approvals for workflows from public forks is changed for an organization. For more information, see "[Requiring approval for workflows from public forks](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#requiring-approval-for-workflows-from-public-forks)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} +| `set_actions_retention_limit` | Triggered when the retention period for {% data variables.product.prodname_actions %} artifacts and logs is changed. For more information, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise#enforcing-a-policy-for-artifact-and-log-retention-in-your-enterprise)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghec %} +| `set_fork_pr_workflows_policy` | Triggered when the policy for workflows on private repository forks is changed. For more information, see "[Enabling workflows for private repository forks](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#enabling-workflows-for-private-repository-forks)."{% endif %}{% ifversion fpt or ghec %} +| `unblock_user` | Triggered when an organization owner [unblocks a user from an organization](/communities/maintaining-your-safety-on-github/unblocking-a-user-from-your-organization).{% endif %}{% ifversion fpt or ghes or ghec %} +| `update_actions_secret` |Triggered when a {% data variables.product.prodname_actions %} secret is updated.{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} | `update_new_repository_default_branch_setting` | Triggered when an owner changes the name of the default branch for new repositories in the organization. For more information, see "[Managing the default branch name for repositories in your organization](/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization)."{% endif %} | `update_default_repository_permission` | Triggered when an owner changes the default repository permission level for organization members. | `update_member` | Triggered when an owner changes a person's role from owner to member or member to owner. -| `update_member_repository_creation_permission` | Triggered when an owner changes the create repository permission for organization members.{% ifversion fpt %} +| `update_member_repository_creation_permission` | Triggered when an owner changes the create repository permission for organization members.{% ifversion fpt or ghec %} | `update_saml_provider_settings` | Triggered when an organization's SAML provider settings are updated. | `update_terms_of_service` | Triggered when an organization changes between the Standard Terms of Service and the Corporate Terms of Service. For more information, see "[Upgrading to the Corporate Terms of Service](/articles/upgrading-to-the-corporate-terms-of-service)."{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `org_credential_authorization` category actions | Action | Description @@ -458,7 +459,7 @@ For more information, see "[Managing the publication of {% data variables.produc {% endif %} -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ### `organization_label` category actions | Action | Description @@ -479,7 +480,7 @@ For more information, see "[Managing the publication of {% data variables.produc | `revoke_tokens` | Triggered when an {% data variables.product.prodname_oauth_app %}'s user tokens are revoked. | `transfer` | Triggered when an existing {% data variables.product.prodname_oauth_app %} is transferred to a new organization. -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} ### `packages` category actions | Action | Description | @@ -492,7 +493,7 @@ For more information, see "[Managing the publication of {% data variables.produc {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `payment_method` category actions @@ -537,13 +538,13 @@ For more information, see "[Managing the publication of {% data variables.produc | `update_required_status_checks_enforcement_level ` | Triggered when enforcement of required status checks is updated on a branch. | `update_strict_required_status_checks_policy` | Triggered when the requirement for a branch to be up to date before merging is changed. | `rejected_ref_update ` | Triggered when a branch update attempt is rejected. -| `policy_override ` | Triggered when a branch protection requirement is overridden by a repository administrator.{% ifversion fpt or ghes or ghae %} +| `policy_override ` | Triggered when a branch protection requirement is overridden by a repository administrator.{% ifversion fpt or ghes or ghae or ghec %} | `update_allow_force_pushes_enforcement_level ` | Triggered when force pushes are enabled or disabled for a protected branch. | `update_allow_deletions_enforcement_level ` | Triggered when branch deletion is enabled or disabled for a protected branch. | `update_linear_history_requirement_enforcement_level ` | Triggered when required linear commit history is enabled or disabled for a protected branch. {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ### `pull_request` category actions @@ -584,7 +585,7 @@ For more information, see "[Managing the publication of {% data variables.produc | `access` | Triggered when a user [changes the visibility](/github/administering-a-repository/setting-repository-visibility) of a repository in the organization. | `actions_enabled` | Triggered when {% data variables.product.prodname_actions %} is enabled for a repository. Can be viewed using the UI. This event is not included when you access the audit log using the REST API. For more information, see "[Using the REST API](#using-the-rest-api)." | `add_member` | Triggered when a user accepts an [invitation to have collaboration access to a repository](/articles/inviting-collaborators-to-a-personal-repository). -| `add_topic` | Triggered when a repository admin [adds a topic](/articles/classifying-your-repository-with-topics) to a repository.{% ifversion fpt or ghes > 3.0 or ghae-next %} +| `add_topic` | Triggered when a repository admin [adds a topic](/articles/classifying-your-repository-with-topics) to a repository.{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} | `advanced_security_disabled` | Triggered when a repository administrator disables {% data variables.product.prodname_GH_advanced_security %} features for the repository. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)." | `advanced_security_enabled` | Triggered when a repository administrator enables {% data variables.product.prodname_GH_advanced_security %} features for the repository. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository).".{% endif %} | `archived` | Triggered when a repository admin [archives a repository](/articles/about-archiving-repositories).{% ifversion ghes %} @@ -592,29 +593,29 @@ For more information, see "[Managing the publication of {% data variables.produc | `config.enable_anonymous_git_access` | Triggered when [anonymous Git read access is enabled](/enterprise/{{ currentVersion }}/user/articles/enabling-anonymous-git-read-access-for-a-repository) in a public repository. | `config.lock_anonymous_git_access` | Triggered when a repository's [anonymous Git read access setting is locked](/enterprise/{{ currentVersion }}/admin/guides/user-management/preventing-users-from-changing-anonymous-git-read-access). | `config.unlock_anonymous_git_access` | Triggered when a repository's [anonymous Git read access setting is unlocked](/enterprise/{{ currentVersion }}/admin/guides/user-management/preventing-users-from-changing-anonymous-git-read-access).{% endif %} -| `create` | Triggered when [a new repository is created](/articles/creating-a-new-repository).{% ifversion fpt or ghes %} +| `create` | Triggered when [a new repository is created](/articles/creating-a-new-repository).{% ifversion fpt or ghes or ghec %} | `create_actions_secret` |Triggered when a {% data variables.product.prodname_actions %} secret is created for a repository. For more information, see "[Creating encrypted secrets for a repository](/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-a-repository)."{% endif %} -| `destroy` | Triggered when [a repository is deleted](/articles/deleting-a-repository).{% ifversion fpt %} +| `destroy` | Triggered when [a repository is deleted](/articles/deleting-a-repository).{% ifversion fpt or ghec %} | `disable` | Triggered when a repository is disabled (e.g., for [insufficient funds](/articles/unlocking-a-locked-account)).{% endif %} -| `enable` | Triggered when a repository is re-enabled.{% ifversion fpt or ghes %} +| `enable` | Triggered when a repository is re-enabled.{% ifversion fpt or ghes or ghec %} | `remove_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is removed.{% endif %} | `remove_member` | Triggered when a user is [removed from a repository as a collaborator](/articles/removing-a-collaborator-from-a-personal-repository). | `register_self_hosted_runner` | Triggered when a new self-hosted runner is registered. For more information, see "[Adding a self-hosted runner to a repository](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository)." | `remove_self_hosted_runner` | Triggered when a self-hosted runner is removed. For more information, see "[Removing a runner from a repository](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)." | `remove_topic` | Triggered when a repository admin removes a topic from a repository. -| `rename` | Triggered when [a repository is renamed](/articles/renaming-a-repository).{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} +| `rename` | Triggered when [a repository is renamed](/articles/renaming-a-repository).{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} | `self_hosted_runner_online` | Triggered when the runner application is started. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)." -| `self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %}{% ifversion fpt or ghes %} -| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% endif %}{% ifversion fpt %} -| `set_actions_fork_pr_approvals_policy` | Triggered when the setting for requiring approvals for workflows from public forks is changed. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-required-approval-for-workflows-from-public-forks)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} -| `set_actions_retention_limit` | Triggered when the retention period for {% data variables.product.prodname_actions %} artifacts and logs is changed. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-repository)."{% endif %}{% ifversion fpt or ghes > 2.22 %} +| `self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %}{% ifversion fpt or ghes or ghec %} +| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% endif %}{% ifversion fpt or ghec %} +| `set_actions_fork_pr_approvals_policy` | Triggered when the setting for requiring approvals for workflows from public forks is changed. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-required-approval-for-workflows-from-public-forks)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} +| `set_actions_retention_limit` | Triggered when the retention period for {% data variables.product.prodname_actions %} artifacts and logs is changed. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-repository)."{% endif %}{% ifversion fpt or ghes > 2.22 or ghec %} | `set_fork_pr_workflows_policy` | Triggered when the policy for workflows on private repository forks is changed. For more information, see "[Managing {% data variables.product.prodname_actions %} settings for a repository](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#enabling-workflows-for-private-repository-forks)."{% endif %} | `transfer` | Triggered when [a repository is transferred](/articles/how-to-transfer-a-repository). | `transfer_start` | Triggered when a repository transfer is about to occur. -| `unarchived` | Triggered when a repository admin unarchives a repository.{% ifversion fpt or ghes %} +| `unarchived` | Triggered when a repository admin unarchives a repository.{% ifversion fpt or ghes or ghec %} | `update_actions_secret` | Triggered when a {% data variables.product.prodname_actions %} secret is updated.{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `repository_advisory` category actions @@ -636,33 +637,33 @@ For more information, see "[Managing the publication of {% data variables.produc | `enable` | Triggered when an organization owner or person with admin access to the repository [enables data use settings for a private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository). | `disable` | Triggered when an organization owner or person with admin access to the repository [disables data use settings for a private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository). -{% endif %}{% ifversion fpt %} +{% endif %}{% ifversion fpt or ghec %} ### `repository_dependency_graph` category actions | Action | Description |------------------|------------------- -| `disable` | Triggered when a repository owner or person with admin access to the repository disables the dependency graph for a {% ifversion fpt %}private {% endif %}repository. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." -| `enable` | Triggered when a repository owner or person with admin access to the repository enables the dependency graph for a {% ifversion fpt %}private {% endif %}repository. +| `disable` | Triggered when a repository owner or person with admin access to the repository disables the dependency graph for a {% ifversion fpt or ghec %}private {% endif %}repository. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." +| `enable` | Triggered when a repository owner or person with admin access to the repository enables the dependency graph for a {% ifversion fpt or ghec %}private {% endif %}repository. -{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} +{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ### `repository_secret_scanning` category actions | Action | Description |------------------|------------------- -| `disable` | Triggered when a repository owner or person with admin access to the repository disables secret scanning for a {% ifversion fpt %}private {% endif %}repository. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." -| `enable` | Triggered when a repository owner or person with admin access to the repository enables secret scanning for a {% ifversion fpt %}private {% endif %}repository. +| `disable` | Triggered when a repository owner or person with admin access to the repository disables secret scanning for a {% ifversion fpt or ghec %}private {% endif %}repository. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." +| `enable` | Triggered when a repository owner or person with admin access to the repository enables secret scanning for a {% ifversion fpt or ghec %}private {% endif %}repository. -{% endif %}{% ifversion fpt or ghes or ghae-issue-4864 %} +{% endif %}{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} ### `repository_vulnerability_alert` category actions | Action | Description |------------------|------------------- -| `create` | Triggered when {% data variables.product.product_name %} creates a {% ifversion fpt or ghes %}{% data variables.product.prodname_dependabot %}{% else %}security{% endif %} alert for a repository that uses a vulnerable dependency. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." -| `dismiss` | Triggered when an organization owner or person with admin access to the repository dismisses a {% ifversion fpt or ghes %}{% data variables.product.prodname_dependabot %}{% else %}security{% endif %} alert about a vulnerable dependency. +| `create` | Triggered when {% data variables.product.product_name %} creates a {% ifversion fpt or ghes or ghec %}{% data variables.product.prodname_dependabot %}{% else %}security{% endif %} alert for a repository that uses a vulnerable dependency. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." +| `dismiss` | Triggered when an organization owner or person with admin access to the repository dismisses a {% ifversion fpt or ghes or ghec %}{% data variables.product.prodname_dependabot %}{% else %}security{% endif %} alert about a vulnerable dependency. | `resolve` | Triggered when someone with write access to a repository pushes changes to update and resolve a vulnerability in a project dependency. -{% endif %}{% ifversion fpt %} +{% endif %}{% ifversion fpt or ghec %} ### `repository_vulnerability_alerts` category actions | Action | Description @@ -671,24 +672,24 @@ For more information, see "[Managing the publication of {% data variables.produc | `disable` | Triggered when a repository owner or person with admin access to the repository disables {% data variables.product.prodname_dependabot_alerts %}. | `enable` | Triggered when a repository owner or person with admin access to the repository enables {% data variables.product.prodname_dependabot_alerts %}. -{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} +{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ### `secret_scanning` category actions | Action | Description |------------------|------------------- -| `disable` | Triggered when an organization owner disables secret scanning for all existing{% ifversion fpt %}, private{% endif %} repositories. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." -| `enable` | Triggered when an organization owner enables secret scanning for all existing{% ifversion fpt %}, private{% endif %} repositories. +| `disable` | Triggered when an organization owner disables secret scanning for all existing{% ifversion fpt or ghec %}, private{% endif %} repositories. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." +| `enable` | Triggered when an organization owner enables secret scanning for all existing{% ifversion fpt or ghec %}, private{% endif %} repositories. ### `secret_scanning_new_repos` category actions | Action | Description |------------------|------------------- -| `disable` | Triggered when an organization owner disables secret scanning for all new {% ifversion fpt %}private {% endif %}repositories. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." -| `enable` | Triggered when an organization owner enables secret scanning for all new {% ifversion fpt %}private {% endif %}repositories. +| `disable` | Triggered when an organization owner disables secret scanning for all new {% ifversion fpt or ghec %}private {% endif %}repositories. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." +| `enable` | Triggered when an organization owner enables secret scanning for all new {% ifversion fpt or ghec %}private {% endif %}repositories. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### `sponsors` category actions | Action | Description @@ -720,9 +721,9 @@ For more information, see "[Managing the publication of {% data variables.produc | `add_repository` | Triggered when a team is given control of a repository. | `change_parent_team` | Triggered when a child team is created or [a child team's parent is changed](/articles/moving-a-team-in-your-organization-s-hierarchy). | `change_privacy` | Triggered when a team's privacy level is changed. -| `create` | Triggered when a new team is created.{% ifversion fpt or ghes > 2.22 or ghae %} +| `create` | Triggered when a new team is created.{% ifversion fpt or ghes > 2.22 or ghae or ghec %} `demote_maintainer` | Triggered when a user was demoted from a team maintainer to a team member. For more information, see "[Giving "team maintainer" permissions to an organization member](/organizations/managing-peoples-access-to-your-organization-with-roles/giving-team-maintainer-permissions-to-an-organization-member)."{% endif %} -| `destroy` | Triggered when a team is deleted from the organization.{% ifversion fpt or ghes > 2.22 or ghae %} +| `destroy` | Triggered when a team is deleted from the organization.{% ifversion fpt or ghes > 2.22 or ghae or ghec %} `team.promote_maintainer` | Triggered when a user was promoted from a team member to a team maintainer. For more information, see "[Giving "team maintainer" permissions to an organization member](/organizations/managing-peoples-access-to-your-organization-with-roles/giving-team-maintainer-permissions-to-an-organization-member)."{% endif %} | `remove_member` | Triggered when a member of an organization is [removed from a team](/articles/removing-organization-members-from-a-team). | `remove_repository` | Triggered when a repository is no longer under a team's control. diff --git a/content/organizations/keeping-your-organization-secure/reviewing-your-organizations-installed-integrations.md b/content/organizations/keeping-your-organization-secure/reviewing-your-organizations-installed-integrations.md index a864d42dbbaa..284f1e75d6e4 100644 --- a/content/organizations/keeping-your-organization-secure/reviewing-your-organizations-installed-integrations.md +++ b/content/organizations/keeping-your-organization-secure/reviewing-your-organizations-installed-integrations.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/keeping-your-organization-secure/viewing-whether-users-in-your-organization-have-2fa-enabled.md b/content/organizations/keeping-your-organization-secure/viewing-whether-users-in-your-organization-have-2fa-enabled.md index 43be41007012..9de8916d6573 100644 --- a/content/organizations/keeping-your-organization-secure/viewing-whether-users-in-your-organization-have-2fa-enabled.md +++ b/content/organizations/keeping-your-organization-secure/viewing-whether-users-in-your-organization-have-2fa-enabled.md @@ -7,6 +7,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams @@ -15,7 +16,7 @@ shortTitle: Usage of 2FA in organization {% note %} -**Note:** You can require that all members{% ifversion fpt %}, including, owners, billing managers and{% else %} and{% endif %} outside collaborators in your organization have two-factor authentication enabled. For more information, see "[Requiring two-factor authentication in your organization](/articles/requiring-two-factor-authentication-in-your-organization)." +**Note:** You can require that all members{% ifversion fpt or ghec %}, including, owners, billing managers and{% else %} and{% endif %} outside collaborators in your organization have two-factor authentication enabled. For more information, see "[Requiring two-factor authentication in your organization](/articles/requiring-two-factor-authentication-in-your-organization)." {% endnote %} diff --git a/content/organizations/managing-access-to-your-organizations-apps/adding-github-app-managers-in-your-organization.md b/content/organizations/managing-access-to-your-organizations-apps/adding-github-app-managers-in-your-organization.md index 3e902c17f5aa..8a888cf9fd85 100644 --- a/content/organizations/managing-access-to-your-organizations-apps/adding-github-app-managers-in-your-organization.md +++ b/content/organizations/managing-access-to-your-organizations-apps/adding-github-app-managers-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -35,7 +36,7 @@ For more information about {% data variables.product.prodname_github_app %} mana 1. Under "App managers", type the username of the person you want to designate as a GitHub App manager for the app, and click **Grant**. ![Add a {% data variables.product.prodname_github_app %} manager for a specific app](/assets/images/help/organizations/add-github-app-manager-for-app.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading - "[About {% data variables.product.prodname_dotcom %} Marketplace](/articles/about-github-marketplace/)" diff --git a/content/organizations/managing-access-to-your-organizations-apps/index.md b/content/organizations/managing-access-to-your-organizations-apps/index.md index 99940c68dade..fd5509eb387b 100644 --- a/content/organizations/managing-access-to-your-organizations-apps/index.md +++ b/content/organizations/managing-access-to-your-organizations-apps/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-apps/removing-github-app-managers-from-your-organization.md b/content/organizations/managing-access-to-your-organizations-apps/removing-github-app-managers-from-your-organization.md index f602f67a38b8..9add5b0c53aa 100644 --- a/content/organizations/managing-access-to-your-organizations-apps/removing-github-app-managers-from-your-organization.md +++ b/content/organizations/managing-access-to-your-organizations-apps/removing-github-app-managers-from-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -35,7 +36,7 @@ For more information about {% data variables.product.prodname_github_app %} mana 1. Under "App managers", find the username of the person you want to remove {% data variables.product.prodname_github_app %} manager permissions from, and click **Revoke**. ![Revoke {% data variables.product.prodname_github_app %} manager permissions](/assets/images/help/organizations/github-app-manager-revoke-permissions-individual-app.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading - "[About {% data variables.product.prodname_dotcom %} Marketplace](/articles/about-github-marketplace/)" diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md b/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md index efc29941b740..668d2bb60a21 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/index.md b/content/organizations/managing-access-to-your-organizations-project-boards/index.md index 3742e6924599..9606c54fbbb8 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/index.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md b/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md index 2a28fd903a02..eb56ea9417e7 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md b/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md index 014bc073f51c..e42ea86ceef9 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md b/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md index 168ff395ad3d..6757a7dfcbb6 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md b/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md index 8f64be0bf7b5..2123ca4ac115 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md b/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md index 3c5daa0f91c6..1cdde005609e 100644 --- a/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md +++ b/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization.md b/content/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization.md index 21bcc8123372..bb7de7ef9418 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -26,7 +27,7 @@ If your organization [requires members and outside collaborators to use two-fact {% data reusables.organizations.outside_collaborator_forks %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} To further support your team's collaboration abilities, you can upgrade to {% data variables.product.prodname_ghe_cloud %}, which includes features like protected branches and code owners on private repositories. {% data reusables.enterprise.link-to-ghec-trial %} {% endif %} @@ -34,7 +35,7 @@ To further support your team's collaboration abilities, you can upgrade to {% da {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.repositories.navigate-to-manage-access %} {% data reusables.organizations.invite-teams-or-people %} 5. In the search field, start typing the name of person you want to invite, then click a name in the list of matches. diff --git a/content/organizations/managing-access-to-your-organizations-repositories/canceling-an-invitation-to-become-an-outside-collaborator-in-your-organization.md b/content/organizations/managing-access-to-your-organizations-repositories/canceling-an-invitation-to-become-an-outside-collaborator-in-your-organization.md index cfa770790e33..5baf20a233ae 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/canceling-an-invitation-to-become-an-outside-collaborator-in-your-organization.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/canceling-an-invitation-to-become-an-outside-collaborator-in-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/canceling-an-invitation-to-become-an-outside-collaborator-in-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-repositories/converting-an-organization-member-to-an-outside-collaborator.md b/content/organizations/managing-access-to-your-organizations-repositories/converting-an-organization-member-to-an-outside-collaborator.md index 04501892e389..a19240c25935 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/converting-an-organization-member-to-an-outside-collaborator.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/converting-an-organization-member-to-an-outside-collaborator.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -29,7 +30,7 @@ For more information, see "[Permission levels for an organization](/organization We recommend reviewing the organization member's access to repositories to ensure their access is as you expect. For more information, see "[Managing an individual's access to an organization repository](/articles/managing-an-individual-s-access-to-an-organization-repository)." -When you convert an organization member to an outside collaborator, their privileges as organization members are saved for three months so that you can restore their membership privileges if you{% ifversion fpt %} invite them to rejoin{% else %} add them back to{% endif %} your organization within that time frame. For more information, see "[Reinstating a former member of your organization](/articles/reinstating-a-former-member-of-your-organization)." +When you convert an organization member to an outside collaborator, their privileges as organization members are saved for three months so that you can restore their membership privileges if you{% ifversion fpt or ghec %} invite them to rejoin{% else %} add them back to{% endif %} your organization within that time frame. For more information, see "[Reinstating a former member of your organization](/articles/reinstating-a-former-member-of-your-organization)." {% data reusables.profile.access_org %} {% data reusables.user_settings.access_org %} diff --git a/content/organizations/managing-access-to-your-organizations-repositories/converting-an-outside-collaborator-to-an-organization-member.md b/content/organizations/managing-access-to-your-organizations-repositories/converting-an-outside-collaborator-to-an-organization-member.md index a4a4131378de..17c45665654a 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/converting-an-outside-collaborator-to-an-organization-member.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/converting-an-outside-collaborator-to-an-organization-member.md @@ -1,6 +1,6 @@ --- title: Converting an outside collaborator to an organization member -intro: 'If you would like to give an outside collaborator on your organization''s repositories broader permissions within your organization, you can {% ifversion fpt %}invite them to become a member of{% else %}make them a member of{% endif %} the organization.' +intro: 'If you would like to give an outside collaborator on your organization''s repositories broader permissions within your organization, you can {% ifversion fpt or ghec %}invite them to become a member of{% else %}make them a member of{% endif %} the organization.' redirect_from: - /articles/converting-an-outside-collaborator-to-an-organization-member - /github/setting-up-and-managing-organizations-and-teams/converting-an-outside-collaborator-to-an-organization-member @@ -8,31 +8,32 @@ versions: fpt: '*' ghes: '*' ghae: '*' -permissions: 'Organization owners can {% ifversion fpt %}invite users to join{% else %}add users to{% endif %} an organization.' + ghec: '*' +permissions: 'Organization owners can {% ifversion fpt or ghec %}invite users to join{% else %}add users to{% endif %} an organization.' topics: - Organizations - Teams shortTitle: Convert collaborator to member --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} If your organization is on a paid per-user subscription, an unused license must be available before you can invite a new member to join the organization or reinstate a former organization member. For more information, see "[About per-user pricing](/articles/about-per-user-pricing)." {% data reusables.organizations.org-invite-expiration %}{% endif %} {% ifversion not ghae %} -If your organization [requires members to use two-factor authentication](/articles/requiring-two-factor-authentication-in-your-organization), users {% ifversion fpt %}you invite must [enable two-factor authentication](/articles/securing-your-account-with-two-factor-authentication-2fa) before they can accept the invitation.{% else %}must [enable two-factor authentication](/articles/securing-your-account-with-two-factor-authentication-2fa) before you can add them to the organization.{% endif %} +If your organization [requires members to use two-factor authentication](/articles/requiring-two-factor-authentication-in-your-organization), users {% ifversion fpt or ghec %}you invite must [enable two-factor authentication](/articles/securing-your-account-with-two-factor-authentication-2fa) before they can accept the invitation.{% else %}must [enable two-factor authentication](/articles/securing-your-account-with-two-factor-authentication-2fa) before you can add them to the organization.{% endif %} {% endif %} {% data reusables.profile.access_org %} {% data reusables.user_settings.access_org %} {% data reusables.organizations.people %} {% data reusables.organizations.people_tab_outside_collaborators %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 5. To the right of the name of the outside collaborator you want to become a member, use the {% octicon "gear" aria-label="The gear icon" %} drop-down menu and click **Invite to organization**.![Invite outside collaborators to organization](/assets/images/help/organizations/invite_outside_collaborator_to_organization.png) {% else %} 5. To the right of the name of the outside collaborator you want to become a member, click **Invite to organization**.![Invite outside collaborators to organization](/assets/images/enterprise/orgs-and-teams/invite_outside_collabs_to_org.png) {% endif %} {% data reusables.organizations.choose-to-restore-privileges %} {% data reusables.organizations.choose-user-role-send-invitation %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.organizations.user_must_accept_invite_email %} {% data reusables.organizations.cancel_org_invite %} {% endif %} diff --git a/content/organizations/managing-access-to-your-organizations-repositories/index.md b/content/organizations/managing-access-to-your-organizations-repositories/index.md index c6c179f71cdc..f4fc82529326 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/index.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-repositories/managing-an-individuals-access-to-an-organization-repository.md b/content/organizations/managing-access-to-your-organizations-repositories/managing-an-individuals-access-to-an-organization-repository.md index 4db85a0e38e7..2f999303b63a 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/managing-an-individuals-access-to-an-organization-repository.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/managing-an-individuals-access-to-an-organization-repository.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -39,5 +40,5 @@ When you remove a collaborator from a repository in your organization, the colla ## Further reading -{% ifversion fpt %}- "[Limiting interactions with your repository](/articles/limiting-interactions-with-your-repository)"{% endif %} +{% ifversion fpt or ghec %}- "[Limiting interactions with your repository](/articles/limiting-interactions-with-your-repository)"{% endif %} - "[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization)" diff --git a/content/organizations/managing-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository.md b/content/organizations/managing-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository.md index b5eeeb97ee8e..6394bc6fd907 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-access-to-your-organizations-repositories/reinstating-a-former-outside-collaborators-access-to-your-organization.md b/content/organizations/managing-access-to-your-organizations-repositories/reinstating-a-former-outside-collaborators-access-to-your-organization.md index 71ca3a12bb49..28bf51e2173d 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/reinstating-a-former-outside-collaborators-access-to-your-organization.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/reinstating-a-former-outside-collaborators-access-to-your-organization.md @@ -9,13 +9,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Reinstate collaborator --- -When an outside collaborator's access to your organization's private repositories is removed, the user's access privileges and settings are saved for three months. You can restore the user's privileges if you {% ifversion fpt %}invite{% else %}add{% endif %} them back to the organization within that time frame. +When an outside collaborator's access to your organization's private repositories is removed, the user's access privileges and settings are saved for three months. You can restore the user's privileges if you {% ifversion fpt or ghec %}invite{% else %}add{% endif %} them back to the organization within that time frame. {% data reusables.two_fa.send-invite-to-reinstate-user-before-2fa-is-enabled %} @@ -32,7 +33,7 @@ When you reinstate a former outside collaborator, you can restore: **Tips**: - Only organization owners can reinstate outside collaborators' access to an organization. For more information, see "[Permission levels for an organization](/articles/permission-levels-for-an-organization)." - - The reinstating a member flow on {% data variables.product.product_location %} may use the term "member" to describe reinstating an outside collaborator but if you reinstate this person and keep their previous privileges, they will only have their previous [outside collaborator permissions](/articles/permission-levels-for-an-organization/#outside-collaborators).{% ifversion fpt %} + - The reinstating a member flow on {% data variables.product.product_location %} may use the term "member" to describe reinstating an outside collaborator but if you reinstate this person and keep their previous privileges, they will only have their previous [outside collaborator permissions](/articles/permission-levels-for-an-organization/#outside-collaborators).{% ifversion fpt or ghec %} - If your organization has a paid per-user subscription, an unused license must be available before you can invite a new member to join the organization or reinstate a former organization member. For more information, see "[About per-user pricing](/articles/about-per-user-pricing)."{% endif %} {% endtip %} @@ -42,7 +43,7 @@ When you reinstate a former outside collaborator, you can restore: {% data reusables.organizations.people %} {% data reusables.organizations.invite_member_from_people_tab %} {% data reusables.organizations.reinstate-user-type-username %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 6. Choose to restore the outside collaborator's previous privileges in the organization by clicking **Invite and reinstate** or choose to clear their previous privileges and set new access permissions by clicking **Invite and start fresh**. {% warning %} @@ -63,14 +64,14 @@ When you reinstate a former outside collaborator, you can restore: ![Choose to restore settings or not](/assets/images/help/organizations/choose_whether_to_restore_org_member_info_ghe.png) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 7. If you cleared the previous privileges for a former outside collaborator, choose a role for the user and optionally add them to some teams, then click **Send invitation**. ![Role and team options and send invitation button](/assets/images/help/organizations/add-role-send-invitation.png) {% else %} 7. If you cleared the previous privileges for a former outside collaborator, choose a role for the user and optionally add them to some teams, then click **Add member**. ![Role and team options and add member button](/assets/images/help/organizations/add-role-add-member.png) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 8. The invited person will receive an email inviting them to the organization. They will need to accept the invitation before becoming an outside collaborator in the organization. {% data reusables.organizations.cancel_org_invite %} {% endif %} diff --git a/content/organizations/managing-access-to-your-organizations-repositories/removing-an-outside-collaborator-from-an-organization-repository.md b/content/organizations/managing-access-to-your-organizations-repositories/removing-an-outside-collaborator-from-an-organization-repository.md index 9bdbbceb8d02..a7e1280522b6 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/removing-an-outside-collaborator-from-an-organization-repository.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/removing-an-outside-collaborator-from-an-organization-repository.md @@ -8,13 +8,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Remove collaborator --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% warning %} diff --git a/content/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization.md b/content/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization.md index 37b046cbc7cc..e36b7da1cc50 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -42,11 +43,11 @@ In addition to managing organization-level settings, organization owners have ad ## Repository access for each permission level -{% ifversion fpt %} +{% ifversion fpt or ghec %} Some of the features listed below are limited to organizations using {% data variables.product.prodname_ghe_cloud %}. {% data reusables.enterprise.link-to-ghec-trial %} {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% note %} **Note:** Repository permissions required to use security features are listed in "[Permission requirements for security features](#permission-requirements-for-security-features)" below. @@ -65,14 +66,14 @@ Some of the features listed below are limited to organizations using {% data var | Have an issue assigned to them | **X** | **X** | **X** | **X** | **X** | | Send pull requests from forks of the team's assigned repositories | **X** | **X** | **X** | **X** | **X** | | Submit reviews on pull requests | **X** | **X** | **X** | **X** | **X** | -| View published releases | **X** | **X** | **X** | **X** | **X** |{% ifversion fpt %} +| View published releases | **X** | **X** | **X** | **X** | **X** |{% ifversion fpt or ghec %} | View [GitHub Actions workflow runs](/actions/automating-your-workflow-with-github-actions/managing-a-workflow-run) | **X** | **X** | **X** | **X** | **X** |{% endif %} | Edit wikis in public repositories | **X** | **X** | **X** | **X** | **X** | -| Edit wikis in private repositories | | | **X** | **X** | **X** |{% ifversion fpt %} +| Edit wikis in private repositories | | | **X** | **X** | **X** |{% ifversion fpt or ghec %} | [Report abusive or spammy content](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam) | **X** | **X** | **X** | **X** | **X** |{% endif %} | Apply/dismiss labels | | **X** | **X** | **X** | **X** | | Create, edit, delete labels | | | **X** | **X** | **X** | -| Close, reopen, and assign all issues and pull requests | | **X** | **X** | **X** | **X** |{% ifversion fpt or ghae or ghes > 3.0 %} +| Close, reopen, and assign all issues and pull requests | | **X** | **X** | **X** | **X** |{% ifversion fpt or ghae or ghes > 3.0 or ghec %} | [Enable and disable auto-merge on a pull request](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository) | | | **X** | **X** | **X** |{% endif %} | Apply milestones | | **X** | **X** | **X** | **X** | | Mark [duplicate issues and pull requests](/articles/about-duplicate-issues-and-pull-requests)| | **X** | **X** | **X** | **X** | @@ -88,21 +89,21 @@ Some of the features listed below are limited to organizations using {% data var | [Convert a pull request to a draft](/articles/changing-the-stage-of-a-pull-request) | | | **X** | **X** | **X** | | Submit reviews that affect a pull request's mergeability | | | **X** | **X** | **X** | | [Apply suggested changes](/articles/incorporating-feedback-in-your-pull-request) to pull requests | | | **X** | **X** | **X** | -| Create [status checks](/articles/about-status-checks) | | | **X** | **X** | **X** |{% ifversion fpt %} +| Create [status checks](/articles/about-status-checks) | | | **X** | **X** | **X** |{% ifversion fpt or ghec %} | Create, edit, run, re-run, and cancel [GitHub Actions workflows](/actions/automating-your-workflow-with-github-actions/) | | | **X** | **X** | **X** |{% endif %} | Create and edit releases | | | **X** | **X** | **X** | | View draft releases | | | **X** | **X** | **X** | -| Edit a repository's description | | | | **X** | **X** |{% ifversion fpt or ghae %} +| Edit a repository's description | | | | **X** | **X** |{% ifversion fpt or ghae or ghec %} | [View and install packages](/packages/publishing-and-managing-packages) | **X** | **X** | **X** | **X** | **X** | | [Publish packages](/packages/publishing-and-managing-packages/publishing-a-package) | | | **X** | **X** | **X** | -| {% ifversion fpt or ghes > 3.0 %}[Delete and restore packages](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Delete packages](/packages/learn-github-packages/deleting-a-package){% endif %} | | | | | **X** | {% endif %} +| {% ifversion fpt or ghes > 3.0 or ghec %}[Delete and restore packages](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Delete packages](/packages/learn-github-packages/deleting-a-package){% endif %} | | | | | **X** | {% endif %} | Manage [topics](/articles/classifying-your-repository-with-topics) | | | | **X** | **X** | | Enable wikis and restrict wiki editors | | | | **X** | **X** | | Enable project boards | | | | **X** | **X** | | Configure [pull request merges](/articles/configuring-pull-request-merges) | | | | **X** | **X** | | Configure [a publishing source for {% data variables.product.prodname_pages %}](/articles/configuring-a-publishing-source-for-github-pages) | | | | **X** | **X** | | [Push to protected branches](/articles/about-protected-branches) | | | | **X** | **X** | -| [Create and edit repository social cards](/articles/customizing-your-repositorys-social-media-preview) | | | | **X** | **X** |{% ifversion fpt %} +| [Create and edit repository social cards](/articles/customizing-your-repositorys-social-media-preview) | | | | **X** | **X** |{% ifversion fpt or ghec %} | Limit [interactions in a repository](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)| | | | **X** | **X** |{% endif %} | Delete an issue (see "[Deleting an issue](/articles/deleting-an-issue)") | | | | | **X** | | Merge pull requests on protected branches, even if there are no approving reviews | | | | | **X** | @@ -113,17 +114,17 @@ Some of the features listed below are limited to organizations using {% data var | Make a repository a template (see "[Creating a template repository](/articles/creating-a-template-repository)") | | | | | **X** | | Change a repository's settings | | | | | **X** | | Manage team and collaborator access to the repository | | | | | **X** | -| Edit the repository's default branch | | | | | **X** |{% ifversion fpt or ghes > 3.0 or ghae-next %} +| Edit the repository's default branch | | | | | **X** |{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} | Rename the repository's default branch (see "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)") | | | | | **X** | | Rename a branch other than the repository's default branch (see "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)") | | | **X** | **X** | **X** |{% endif %} -| Manage webhooks and deploy keys | | | | | **X** |{% ifversion fpt %} +| Manage webhooks and deploy keys | | | | | **X** |{% ifversion fpt or ghec %} | [Manage data use settings for your private repository](/github/understanding-how-github-uses-and-protects-your-data/managing-data-use-settings-for-your-private-repository) | | | | | **X** |{% endif %} | [Manage the forking policy for a repository](/github/administering-a-repository/managing-the-forking-policy-for-your-repository) | | | | | **X** | | [Transfer repositories into the organization](/articles/restricting-repository-creation-in-your-organization) | | | | | **X** | | [Delete or transfer repositories out of the organization](/articles/setting-permissions-for-deleting-or-transferring-repositories) | | | | | **X** | -| [Archive repositories](/articles/about-archiving-repositories) | | | | | **X** |{% ifversion fpt %} +| [Archive repositories](/articles/about-archiving-repositories) | | | | | **X** |{% ifversion fpt or ghec %} | Display a sponsor button (see "[Displaying a sponsor button in your repository](/articles/displaying-a-sponsor-button-in-your-repository)") | | | | | **X** |{% endif %} -| Create autolink references to external resources, like JIRA or Zendesk (see "[Configuring autolinks to reference external resources](/articles/configuring-autolinks-to-reference-external-resources)") | | | | | **X** |{% ifversion fpt %} +| Create autolink references to external resources, like JIRA or Zendesk (see "[Configuring autolinks to reference external resources](/articles/configuring-autolinks-to-reference-external-resources)") | | | | | **X** |{% ifversion fpt or ghec %} | [Enable {% data variables.product.prodname_discussions %}](/github/administering-a-repository/enabling-or-disabling-github-discussions-for-a-repository) in a repository | | | | **X** | **X** | | [Create and edit categories](/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository) for {% data variables.product.prodname_discussions %} | | | | **X** | **X** | | [Move a discussion to a different category](/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository) | | | **X** | **X** | **X** | @@ -133,7 +134,7 @@ Some of the features listed below are limited to organizations using {% data var | [Lock and unlock discussions](/discussions/managing-discussions-for-your-community/moderating-discussions) | | **X** | **X** | **X** | **X** | | [Individually convert issues to discussions](/discussions/managing-discussions-for-your-community/moderating-discussions) | | **X** | **X** | **X** | **X** | | [Create new discussions and comment on existing discussions](/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion) | **X** | **X** | **X** | **X** | **X** | -| [Delete a discussion](/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository#deleting-a-discussion) | | | | **X** | **X** |{% endif %}{% ifversion fpt %} +| [Delete a discussion](/discussions/managing-discussions-for-your-community/managing-discussions-in-your-repository#deleting-a-discussion) | | | | **X** | **X** |{% endif %}{% ifversion fpt or ghec %} | Create [codespaces](/codespaces/about-codespaces) | | | **X** | **X** | **X** |{% endif %} ### Permission requirements for security features @@ -141,23 +142,23 @@ Some of the features listed below are limited to organizations using {% data var In this section, you can find the repository permission levels required for security features, such as {% data variables.product.prodname_advanced_security %} features. | Repository action | Read | Triage | Write | Maintain | Admin | -|:---|:---:|:---:|:---:|:---:|:---:| {% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +|:---|:---:|:---:|:---:|:---:|:---:| {% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} | Receive [{% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies](/code-security/supply-chain-security/about-alerts-for-vulnerable-dependencies) in a repository | | | | | **X** | | [Dismiss {% data variables.product.prodname_dependabot_alerts %}](/code-security/supply-chain-security/viewing-and-updating-vulnerable-dependencies-in-your-repository) | | | | | **X** | -| [Designate additional people or teams to receive security alerts](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) | | | | | **X** |{% endif %}{% ifversion fpt %} -| Create [security advisories](/code-security/security-advisories/about-github-security-advisories) | | | | | **X** |{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} -| Manage access to {% data variables.product.prodname_GH_advanced_security %} features (see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)") | | | | | **X** |{% endif %}{% ifversion fpt %} -| [Enable the dependency graph](/code-security/supply-chain-security/exploring-the-dependencies-of-a-repository) for a private repository | | | | | **X** |{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 %} +| [Designate additional people or teams to receive security alerts](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) | | | | | **X** |{% endif %}{% ifversion fpt or ghec %} +| Create [security advisories](/code-security/security-advisories/about-github-security-advisories) | | | | | **X** |{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} +| Manage access to {% data variables.product.prodname_GH_advanced_security %} features (see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-and-analysis-settings-for-your-organization)") | | | | | **X** |{% endif %}{% ifversion fpt or ghec %} +| [Enable the dependency graph](/code-security/supply-chain-security/exploring-the-dependencies-of-a-repository) for a private repository | | | | | **X** |{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 or ghec %} | [View dependency reviews](/code-security/supply-chain-security/about-dependency-review) | **X** | **X** | **X** | **X** | **X** |{% endif %} | [View {% data variables.product.prodname_code_scanning %} alerts on pull requests](/github/finding-security-vulnerabilities-and-errors-in-your-code/triaging-code-scanning-alerts-in-pull-requests) | **X** | **X** | **X** | **X** | **X** | -| [List, dismiss, and delete {% data variables.product.prodname_code_scanning %} alerts](/github/finding-security-vulnerabilities-and-errors-in-your-code/managing-code-scanning-alerts-for-your-repository) | | | **X** | **X** | **X** |{% ifversion fpt or ghes > 3.0 or ghae %} +| [List, dismiss, and delete {% data variables.product.prodname_code_scanning %} alerts](/github/finding-security-vulnerabilities-and-errors-in-your-code/managing-code-scanning-alerts-for-your-repository) | | | **X** | **X** | **X** |{% ifversion fpt or ghes > 3.0 or ghae or ghec %} | [View {% data variables.product.prodname_secret_scanning %} alerts in a repository](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | **X**{% ifversion not ghae %}[1]{% endif %} | **X**{% ifversion not ghae %}[1]{% endif %} | **X** | | [Resolve, revoke, or re-open {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | **X**{% ifversion not ghae %}[1]{% endif %} | **X**{% ifversion not ghae %}[1]{% endif %} | **X** |{% endif %}{% ifversion ghes = 3.0 %} | [View {% data variables.product.prodname_secret_scanning %} alerts in a repository](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | | | **X** | -| [Resolve, revoke, or re-open {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | | | **X** |{% endif %}{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +| [Resolve, revoke, or re-open {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-alerts-from-secret-scanning) | | | | | **X** |{% endif %}{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} | [Designate additional people or teams to receive {% data variables.product.prodname_secret_scanning %} alerts](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts) in repositories | | | | | **X** |{% endif %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} [1] Repository writers and maintainers can only see alert information for their own commits. {% endif %} diff --git a/content/organizations/managing-access-to-your-organizations-repositories/setting-base-permissions-for-an-organization.md b/content/organizations/managing-access-to-your-organizations-repositories/setting-base-permissions-for-an-organization.md index 2ae2b26e31bd..dd3b25bcf63e 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/setting-base-permissions-for-an-organization.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/setting-base-permissions-for-an-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -18,7 +19,7 @@ shortTitle: Set base permissions You can set base permissions that apply to all members of an organization when accessing any of the organization's repositories. Base permissions do not apply to outside collaborators. -{% ifversion fpt %}By default, members of an organization will have **Read** permissions to the organization's repositories.{% endif %} +{% ifversion fpt or ghec %}By default, members of an organization will have **Read** permissions to the organization's repositories.{% endif %} If someone with admin permissions to an organization's repository grants a member a higher level of permission for the repository, the higher level of permission overrides the base permission. diff --git a/content/organizations/managing-access-to-your-organizations-repositories/viewing-people-with-access-to-your-repository.md b/content/organizations/managing-access-to-your-organizations-repositories/viewing-people-with-access-to-your-repository.md index 59295d8d6c6f..3f67a248cb92 100644 --- a/content/organizations/managing-access-to-your-organizations-repositories/viewing-people-with-access-to-your-repository.md +++ b/content/organizations/managing-access-to-your-organizations-repositories/viewing-people-with-access-to-your-repository.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -20,7 +21,7 @@ Administrators can use this information to help off-board people, gather data fo ## Viewing people with access to your repository -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note**: You can also see a combined overview of teams and people with access to your repository. For more information, see "[Managing teams and people with access to your repository](/github/administering-a-repository/managing-teams-and-people-with-access-to-your-repository)." diff --git a/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md b/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md index fa2312ce5f22..37f2b2625b78 100644 --- a/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md +++ b/content/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -17,7 +18,7 @@ shortTitle: SSH certificate authorities An SSH certificate is a mechanism for one SSH key to sign another SSH key. If you use an SSH certificate authority (CA) to provide your organization members with signed SSH certificates, you can add the CA to your enterprise account or organization to allow organization members to use their certificates to access organization resources. For more information, see "[Managing your organization's SSH certificate authorities](/articles/managing-your-organizations-ssh-certificate-authorities)." -After you add an SSH CA to your organization or enterprise account, you can use the CA to sign client SSH certificates for organization members. Organization members can use the signed certificates to access your organization's repositories (and only your organization's repositories) with Git. You can require that members use SSH certificates to access organization resources.{% ifversion fpt %} For more information, see "[Enforcing security settings in your enterprise account](/articles/enforcing-security-settings-in-your-enterprise-account#managing-your-enterprise-accounts-ssh-certificate-authorities)."{% endif %} +After you add an SSH CA to your organization or enterprise account, you can use the CA to sign client SSH certificates for organization members. Organization members can use the signed certificates to access your organization's repositories (and only your organization's repositories) with Git. You can require that members use SSH certificates to access organization resources. For more information, see "[Enforcing policies for security settings in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-ssh-certificate-authorities-for-your-enterprise)." For example, you can build an internal system that issues a new certificate to your developers every morning. Each developer can use their daily certificate to work on your organization's repositories on {% data variables.product.product_name %}. At the end of the day, the certificate can automatically expire, protecting your repositories if the certificate is later compromised. @@ -39,7 +40,7 @@ You can restrict the IP addresses from which an organization member can access y $ ssh-keygen -s ./ca-key -I KEY-IDENTITY -O extension:login@{% data variables.product.product_url %}=USERNAME -O source-address=COMMA-SEPARATED-LIST-OF-IP-ADDRESSES-OR-RANGES ./user-key.pub ``` -{% ifversion fpt %} +{% ifversion fpt or ghec %} Organization members can use their signed certificates for authentication even if you've enforced SAML single sign-on. Unless you make SSH certificates a requirement, organization members can continue to use other means of authentication to access your organization's resources with Git, including their username and password, personal access tokens, and their own SSH keys. diff --git a/content/organizations/managing-git-access-to-your-organizations-repositories/index.md b/content/organizations/managing-git-access-to-your-organizations-repositories/index.md index a282aa82d51d..0148d996803e 100644 --- a/content/organizations/managing-git-access-to-your-organizations-repositories/index.md +++ b/content/organizations/managing-git-access-to-your-organizations-repositories/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md b/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md index 9f44fb552c24..f5eec4c627eb 100644 --- a/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md +++ b/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-membership-in-your-organization/can-i-create-accounts-for-people-in-my-organization.md b/content/organizations/managing-membership-in-your-organization/can-i-create-accounts-for-people-in-my-organization.md index 12498078dd54..c095887722cb 100644 --- a/content/organizations/managing-membership-in-your-organization/can-i-create-accounts-for-people-in-my-organization.md +++ b/content/organizations/managing-membership-in-your-organization/can-i-create-accounts-for-people-in-my-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/can-i-create-accounts-for-people-in-my-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-membership-in-your-organization/canceling-or-editing-an-invitation-to-join-your-organization.md b/content/organizations/managing-membership-in-your-organization/canceling-or-editing-an-invitation-to-join-your-organization.md index 593f14b5f0bd..476c3a96c62d 100644 --- a/content/organizations/managing-membership-in-your-organization/canceling-or-editing-an-invitation-to-join-your-organization.md +++ b/content/organizations/managing-membership-in-your-organization/canceling-or-editing-an-invitation-to-join-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/canceling-or-editing-an-invitation-to-join-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -28,7 +29,7 @@ shortTitle: Cancel or edit invitation ## Further reading -{% ifversion fpt %} +{% ifversion fpt or ghec %} - "[Inviting users to join your organization](/articles/inviting-users-to-join-your-organization)" {% endif %} - "[Adding organization members to a team](/articles/adding-organization-members-to-a-team)" diff --git a/content/organizations/managing-membership-in-your-organization/index.md b/content/organizations/managing-membership-in-your-organization/index.md index 366a6a828cf0..f5e0fb657252 100644 --- a/content/organizations/managing-membership-in-your-organization/index.md +++ b/content/organizations/managing-membership-in-your-organization/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md b/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md index 617d183d11cf..c3f81888cde1 100644 --- a/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md +++ b/content/organizations/managing-membership-in-your-organization/inviting-users-to-join-your-organization.md @@ -8,6 +8,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/inviting-users-to-join-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-membership-in-your-organization/reinstating-a-former-member-of-your-organization.md b/content/organizations/managing-membership-in-your-organization/reinstating-a-former-member-of-your-organization.md index 4d7118f76d9f..c846119a93b3 100644 --- a/content/organizations/managing-membership-in-your-organization/reinstating-a-former-member-of-your-organization.md +++ b/content/organizations/managing-membership-in-your-organization/reinstating-a-former-member-of-your-organization.md @@ -1,6 +1,6 @@ --- title: Reinstating a former member of your organization -intro: 'Organization owners can {% ifversion fpt %}invite former organization members to rejoin{% else %}add former members to{% endif%} your organization, and choose whether to restore the person''s former role, access permissions, forks, and settings.' +intro: 'Organization owners can {% ifversion fpt or ghec %}invite former organization members to rejoin{% else %}add former members to{% endif%} your organization, and choose whether to restore the person''s former role, access permissions, forks, and settings.' redirect_from: - /articles/reinstating-a-former-member-of-your-organization - /github/setting-up-and-managing-organizations-and-teams/reinstating-a-former-member-of-your-organization @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' permissions: Organization owners can reinstate a former member of an organization. topics: - Organizations @@ -17,7 +18,7 @@ shortTitle: Reinstate a member ## About member reinstatement -If you [remove a user from your organization](/articles/removing-a-member-from-your-organization){% ifversion ghae %} or{% else %},{% endif %} [convert an organization member to an outside collaborator](/articles/converting-an-organization-member-to-an-outside-collaborator){% ifversion not ghae %}, or a user is removed from your organization because you've [required members and outside collaborators to enable two-factor authentication (2FA)](/articles/requiring-two-factor-authentication-in-your-organization){% endif %}, the user's access privileges and settings are saved for three months. You can restore the user's privileges if you {% ifversion fpt %}invite{% else %}add{% endif %} them back to the organization within that time frame. +If you [remove a user from your organization](/articles/removing-a-member-from-your-organization){% ifversion ghae %} or{% else %},{% endif %} [convert an organization member to an outside collaborator](/articles/converting-an-organization-member-to-an-outside-collaborator){% ifversion not ghae %}, or a user is removed from your organization because you've [required members and outside collaborators to enable two-factor authentication (2FA)](/articles/requiring-two-factor-authentication-in-your-organization){% endif %}, the user's access privileges and settings are saved for three months. You can restore the user's privileges if you {% ifversion fpt or ghec %}invite{% else %}add{% endif %} them back to the organization within that time frame. {% data reusables.two_fa.send-invite-to-reinstate-user-before-2fa-is-enabled %} @@ -34,7 +35,7 @@ When you reinstate a former organization member, you can restore: If an organization member was removed from the organization because they did not use two-factor authentication and your organization still requires members to use 2FA, the former member must enable two-factor authentication before you can reinstate their membership. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If your organization has a paid per-user subscription, an unused license must be available before you can reinstate a former organization member. For more information, see "[About per-user pricing](/articles/about-per-user-pricing)." {% data reusables.organizations.org-invite-scim %} {% endif %} @@ -45,21 +46,21 @@ If your organization has a paid per-user subscription, an unused license must be {% data reusables.organizations.people %} {% data reusables.organizations.invite_member_from_people_tab %} {% data reusables.organizations.reinstate-user-type-username %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 6. Choose whether to restore that person's previous privileges in the organization or clear their previous privileges and set new access permissions, then click **Invite and reinstate** or **Invite and start fresh**. ![Choose to restore info or not](/assets/images/help/organizations/choose_whether_to_restore_org_member_info.png) {% else %} 6. Choose whether to restore that person's previous privileges in the organization or clear their previous privileges and set new access permissions, then click **Add and reinstate** or **Add and start fresh**. ![Choose whether to restore privileges](/assets/images/help/organizations/choose_whether_to_restore_org_member_info_ghe.png) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 7. If you cleared the previous privileges for a former organization member, choose a role for the user, and optionally add them to some teams, then click **Send invitation**. ![Role and team options and send invitation button](/assets/images/help/organizations/add-role-send-invitation.png) {% else %} 7. If you cleared the previous privileges for a former organization member, choose a role for the user, and optionally add them to some teams, then click **Add member**. ![Role and team options and add member button](/assets/images/help/organizations/add-role-add-member.png) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.organizations.user_must_accept_invite_email %} {% data reusables.organizations.cancel_org_invite %} {% endif %} diff --git a/content/organizations/managing-membership-in-your-organization/removing-a-member-from-your-organization.md b/content/organizations/managing-membership-in-your-organization/removing-a-member-from-your-organization.md index 41580aa8eaf6..8baffb2381ba 100644 --- a/content/organizations/managing-membership-in-your-organization/removing-a-member-from-your-organization.md +++ b/content/organizations/managing-membership-in-your-organization/removing-a-member-from-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -16,14 +17,14 @@ shortTitle: Remove a member Only organization owners can remove members from an organization. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% warning %} **Warning:** When you remove members from an organization: - The paid license count does not automatically downgrade. To pay for fewer licenses after removing users from your organization, follow the steps in "[Downgrading your organization's paid seats](/articles/downgrading-your-organization-s-paid-seats)." - Removed members will lose access to private forks of your organization's private repositories, but they may still have local copies. However, they cannot sync local copies with your organization's repositories. Their private forks can be restored if the user is [reinstated as an organization member](/articles/reinstating-a-former-member-of-your-organization) within three months of being removed from the organization. Ultimately, you are responsible for ensuring that people who have lost access to a repository delete any confidential information or intellectual property. -- If your organization is owned by an enterprise account, removed members will also lose access to private forks of your organization's internal repositories, if the removed member is not a member of any other organization owned by the same enterprise account. For more information, see "[About enterprise accounts](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts)." +- If your organization is owned by an enterprise account, removed members will also lose access to private forks of your organization's internal repositories, if the removed member is not a member of any other organization owned by the same enterprise account. For more information, see "[About enterprise accounts](/enterprise-cloud@latest/admin/overview/about-enterprise-accounts)." - Any organization invitations sent by a removed member, that have not been accepted, are cancelled and will not be accessible. {% endwarning %} @@ -41,7 +42,7 @@ Only organization owners can remove members from an organization. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} To help the person you're removing from your organization transition and help ensure they delete confidential information or intellectual property, we recommend sharing a checklist of best practices for leaving your organization. For an example, see "[Best practices for leaving your company](/articles/best-practices-for-leaving-your-company/)." diff --git a/content/organizations/managing-organization-settings/allowing-people-to-delete-issues-in-your-organization.md b/content/organizations/managing-organization-settings/allowing-people-to-delete-issues-in-your-organization.md index 36d67ae86daf..fe63cea9a060 100644 --- a/content/organizations/managing-organization-settings/allowing-people-to-delete-issues-in-your-organization.md +++ b/content/organizations/managing-organization-settings/allowing-people-to-delete-issues-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/changing-the-visibility-of-your-organizations-dependency-insights.md b/content/organizations/managing-organization-settings/changing-the-visibility-of-your-organizations-dependency-insights.md index 2f0b18a37dab..2465aeb1de1d 100644 --- a/content/organizations/managing-organization-settings/changing-the-visibility-of-your-organizations-dependency-insights.md +++ b/content/organizations/managing-organization-settings/changing-the-visibility-of-your-organizations-dependency-insights.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/changing-the-visibility-of-your-organizations-dependency-insights versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -15,7 +16,7 @@ shortTitle: Change insight visibility Organization owners can set limitations for viewing organization dependency insights. All members of an organization can view organization dependency insights by default. -Enterprise owners can set limitations for viewing organization dependency insights on all organizations in your enterprise account. For more information, see "[Enforcing a policy on dependency insights in your enterprise account](/articles/enforcing-a-policy-on-dependency-insights-in-your-enterprise-account)." +Enterprise owners can set limitations for viewing organization dependency insights on all organizations in your enterprise account. For more information, see "[Enforcing policies for dependency insights in your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-dependency-insights-in-your-enterprise)." {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} diff --git a/content/organizations/managing-organization-settings/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-organization.md b/content/organizations/managing-organization-settings/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-organization.md index 8b0ff89de062..d24d31dd02e7 100644 --- a/content/organizations/managing-organization-settings/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-organization.md +++ b/content/organizations/managing-organization-settings/configuring-the-retention-period-for-github-actions-artifacts-and-logs-in-your-organization.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/converting-an-organization-into-a-user.md b/content/organizations/managing-organization-settings/converting-an-organization-into-a-user.md index 0d2508e817fe..2f91d9279555 100644 --- a/content/organizations/managing-organization-settings/converting-an-organization-into-a-user.md +++ b/content/organizations/managing-organization-settings/converting-an-organization-into-a-user.md @@ -7,13 +7,14 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Convert organization to user --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. [Sign up](/articles/signing-up-for-a-new-github-account) for a new GitHub user account. 2. [Have the user's role changed to an owner](/articles/changing-a-person-s-role-to-owner). diff --git a/content/organizations/managing-organization-settings/deleting-an-organization-account.md b/content/organizations/managing-organization-settings/deleting-an-organization-account.md index 9b7d8905ec86..35ebdda74ef5 100644 --- a/content/organizations/managing-organization-settings/deleting-an-organization-account.md +++ b/content/organizations/managing-organization-settings/deleting-an-organization-account.md @@ -1,6 +1,6 @@ --- title: Deleting an organization account -intro: 'When you delete an organization, all repositories, forks of private repositories, wikis, issues, pull requests, and Project or Organization Pages are deleted as well. {% ifversion fpt %}The organization name becomes available for use on a new user or organization account, and your billing will end.{% endif %}' +intro: 'When you delete an organization, all repositories, forks of private repositories, wikis, issues, pull requests, and Project or Organization Pages are deleted as well. {% ifversion fpt or ghec %}The organization name becomes available for use on a new user or organization account, and your billing will end.{% endif %}' redirect_from: - /articles/deleting-an-organization-account - /github/setting-up-and-managing-organizations-and-teams/deleting-an-organization-account @@ -8,13 +8,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Delete organization account --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% tip %} **Tip**: If you want to cancel your paid subscription, you can [downgrade your organization to {% data variables.product.prodname_free_team %}](/articles/downgrading-your-github-subscription) instead of deleting the organization and its content. diff --git a/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md b/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md index a5f19682e543..64cb5de93bf8 100644 --- a/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md +++ b/content/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -37,7 +38,7 @@ Alternatively, you can enable {% data variables.product.prodname_actions %} for {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Managing {% data variables.product.prodname_actions %} permissions for your organization @@ -47,7 +48,7 @@ You can disable all workflows for an organization or set a policy that configure {% note %} -**Note:** You might not be able to manage these settings if your organization is managed by an enterprise that has overriding policy. For more information, {% ifversion fpt %}"[Enforcing {% data variables.product.prodname_actions %} policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account)."{% else %}"[Enforcing {% data variables.product.prodname_actions %} policies for your enterprise](/enterprise/admin/github-actions/enforcing-github-actions-policies-for-your-enterprise)."{% endif %} +**Note:** You might not be able to manage these settings if your organization is managed by an enterprise that has overriding policy. For more information, see "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise)." {% endnote %} @@ -75,7 +76,7 @@ You can disable all workflows for an organization or set a policy that configure {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Configuring required approval for workflows from public forks {% data reusables.actions.workflow-run-approve-public-fork %} @@ -90,7 +91,7 @@ You can configure this behavior for an organization using the procedure below. M {% data reusables.actions.workflow-run-approve-link %} {% endif %} -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} ## Enabling workflows for private repository forks {% data reusables.github-actions.private-repository-forks-overview %} @@ -103,7 +104,7 @@ You can configure this behavior for an organization using the procedure below. M {% data reusables.github-actions.private-repository-forks-configure %} {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Setting the permissions of the `GITHUB_TOKEN` for your organization {% data reusables.github-actions.workflow-permissions-intro %} diff --git a/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md b/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md index 67950aff9b0e..e4d43d776f9e 100644 --- a/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md +++ b/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Disable project boards diff --git a/content/organizations/managing-organization-settings/index.md b/content/organizations/managing-organization-settings/index.md index 7dd36e5aea8d..45e4f3c9a8b1 100644 --- a/content/organizations/managing-organization-settings/index.md +++ b/content/organizations/managing-organization-settings/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -39,5 +40,5 @@ children: - /disabling-project-boards-in-your-organization shortTitle: Manage organization settings --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% endif %} diff --git a/content/organizations/managing-organization-settings/managing-default-labels-for-repositories-in-your-organization.md b/content/organizations/managing-organization-settings/managing-default-labels-for-repositories-in-your-organization.md index 6211217aa105..b7d87c62ddab 100644 --- a/content/organizations/managing-organization-settings/managing-default-labels-for-repositories-in-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-default-labels-for-repositories-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -22,7 +23,7 @@ Default labels are included in every new repository in your organization, but an {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} {% data reusables.organizations.repository-defaults %} {% else %} {% data reusables.organizations.repository-labels %} @@ -38,7 +39,7 @@ Default labels are included in every new repository in your organization, but an {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} {% data reusables.organizations.repository-defaults %} {% else %} {% data reusables.organizations.repository-labels %} @@ -53,7 +54,7 @@ Default labels are included in every new repository in your organization, but an {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} {% data reusables.organizations.repository-defaults %} {% else %} {% data reusables.organizations.repository-labels %} diff --git a/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md b/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md index 0a7a13f28f39..0e4d88206ada 100644 --- a/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-discussion-creation-for-repositories-in-your-organization.md @@ -6,6 +6,7 @@ redirect_from: permissions: Organization owners can manage discussion creation for repositories owned by the organization. versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/managing-scheduled-reminders-for-your-organization.md b/content/organizations/managing-organization-settings/managing-scheduled-reminders-for-your-organization.md index 80d8260e593d..970265badc0e 100644 --- a/content/organizations/managing-organization-settings/managing-scheduled-reminders-for-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-scheduled-reminders-for-your-organization.md @@ -5,6 +5,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/managing-scheduled-reminders-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md b/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md index 48f233163b01..7accea39777c 100644 --- a/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -20,7 +21,7 @@ When a member of your organization creates a new repository in your organization {% data reusables.branches.change-default-branch %} -If an enterprise owner has enforced a policy for the default branch name for your enterprise, you cannot set a default branch name for your organization. Instead, you can change the default branch for individual repositories. For more information, see {% ifversion fpt %}"[Enforcing repository management policies in your enterprise](/github/setting-up-and-managing-your-enterprise/enforcing-repository-management-policies-in-your-enterprise-account#enforcing-a-policy-on-the-default-branch-name)"{% else %}"[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-on-the-default-branch-name)"{% endif %} and "[Changing the default branch](/github/administering-a-repository/changing-the-default-branch)." +If an enterprise owner has enforced a policy for the default branch name for your enterprise, you cannot set a default branch name for your organization. Instead, you can change the default branch for individual repositories. For more information, see {% ifversion fpt %}"[Enforcing repository management policies in your enterprise](/enterprise-cloud@latest/admin/policies/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-the-default-branch-name)"{% else %}"[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-the-default-branch-name)"{% endif %} and "[Changing the default branch](/github/administering-a-repository/changing-the-default-branch)." ## Setting the default branch name diff --git a/content/organizations/managing-organization-settings/managing-the-display-of-member-names-in-your-organization.md b/content/organizations/managing-organization-settings/managing-the-display-of-member-names-in-your-organization.md index 4399a02abbd6..b9876ce353d3 100644 --- a/content/organizations/managing-organization-settings/managing-the-display-of-member-names-in-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-the-display-of-member-names-in-your-organization.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md b/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md index 66ed5f5520a6..844a4c590ed4 100644 --- a/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization.md @@ -1,6 +1,6 @@ --- title: Managing the forking policy for your organization -intro: 'You can allow or prevent the forking of any private{% ifversion fpt or ghes or ghae %} and internal{% endif %} repositories owned by your organization.' +intro: 'You can allow or prevent the forking of any private{% ifversion fpt or ghes or ghae or ghec %} and internal{% endif %} repositories owned by your organization.' redirect_from: - /articles/allowing-people-to-fork-private-repositories-in-your-organization - /github/setting-up-and-managing-organizations-and-teams/allowing-people-to-fork-private-repositories-in-your-organization @@ -10,15 +10,16 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Manage forking policy --- -By default, new organizations are configured to disallow the forking of private{% ifversion fpt or ghes or ghae %} and internal{% endif %} repositories. +By default, new organizations are configured to disallow the forking of private{% ifversion fpt or ghes or ghae or ghec %} and internal{% endif %} repositories. -If you allow forking of private{% ifversion fpt or ghes or ghae %} and internal{% endif %} repositories at the organization level, you can also configure the ability to fork a specific private{% ifversion fpt or ghes or ghae %} or internal{% endif %} repository. For more information, see "[Managing the forking policy for your repository](/github/administering-a-repository/managing-the-forking-policy-for-your-repository)." +If you allow forking of private{% ifversion fpt or ghes or ghae or ghec %} and internal{% endif %} repositories at the organization level, you can also configure the ability to fork a specific private{% ifversion fpt or ghes or ghae or ghec %} or internal{% endif %} repository. For more information, see "[Managing the forking policy for your repository](/github/administering-a-repository/managing-the-forking-policy-for-your-repository)." {% data reusables.organizations.internal-repos-enterprise %} diff --git a/content/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization.md b/content/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization.md index 5e004ba7c293..c1fcfbd964d4 100644 --- a/content/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization.md +++ b/content/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization.md @@ -1,12 +1,13 @@ --- title: Managing the publication of GitHub Pages sites for your organization -intro: 'You can control whether organization members can publish {% data variables.product.prodname_pages %} sites from repositories in the organization{% ifversion fpt %} and restrict the visibilities that members can choose for the sites{% endif %}.' +intro: 'You can control whether organization members can publish {% data variables.product.prodname_pages %} sites from repositories in the organization{% ifversion fpt or ghec %} and restrict the visibilities that members can choose for the sites{% endif %}.' permissions: 'Organization owners can manage the publication of {% data variables.product.prodname_pages %} sites from repositories in the organization.' product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' redirect_from: - /github/setting-up-and-managing-organizations-and-teams/disabling-publication-of-github-pages-sites-for-your-organization - /github/setting-up-and-managing-organizations-and-teams/managing-the-publication-of-github-pages-sites-for-your-organization @@ -16,7 +17,7 @@ topics: shortTitle: Manage Pages site publication --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} If your organization uses {% data variables.product.prodname_ghe_cloud %}, you can choose to allow organization members to create publicly published sites, privately published sites, both, or neither. Otherwise, you can choose to allow or disallow public publishing. For more information about access control for {% data variables.product.prodname_pages %} sites, see "[Changing the visibility of your {% data variables.product.prodname_pages %} site](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site)." {% endif %} @@ -24,7 +25,7 @@ If you disallow publication of {% data variables.product.prodname_pages %} sites {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -{% data reusables.organizations.member-privileges %}{% ifversion fpt %} +{% data reusables.organizations.member-privileges %}{% ifversion fpt or ghec %} 1. Under "Pages creation", select the visibilities you want to allow and deselect the visibilities you want to disallow. ![Checkboxes to allow or disallow creation of {% data variables.product.prodname_pages %} sites](/assets/images/help/organizations/github-pages-creation-checkboxes.png){% else %} 1. Under "Pages creation", select or deselect **Allow members to publish sites**. diff --git a/content/organizations/managing-organization-settings/managing-updates-from-accounts-your-organization-sponsors.md b/content/organizations/managing-organization-settings/managing-updates-from-accounts-your-organization-sponsors.md index 70f2f910143e..909cde5122e5 100644 --- a/content/organizations/managing-organization-settings/managing-updates-from-accounts-your-organization-sponsors.md +++ b/content/organizations/managing-organization-settings/managing-updates-from-accounts-your-organization-sponsors.md @@ -5,6 +5,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/managing-updates-from-accounts-your-organization-sponsors versions: fpt: '*' + ghec: '*' permissions: Organization owners can manage updates from accounts the organization sponsors. topics: - Organizations diff --git a/content/organizations/managing-organization-settings/renaming-an-organization.md b/content/organizations/managing-organization-settings/renaming-an-organization.md index 87efd8889475..76a8fb8fac49 100644 --- a/content/organizations/managing-organization-settings/renaming-an-organization.md +++ b/content/organizations/managing-organization-settings/renaming-an-organization.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -33,9 +34,9 @@ After changing your organization's name, your old organization name becomes avai ### Changes that aren't automatic After changing your organization's name: -- Links to your previous organization profile page, such as `https://{% data variables.command_line.backticks %}/previousorgname`, will return a 404 error. We recommend you update links to your organization from other sites{% ifversion fpt %}, such as your LinkedIn or Twitter profiles{% endif %}. +- Links to your previous organization profile page, such as `https://{% data variables.command_line.backticks %}/previousorgname`, will return a 404 error. We recommend you update links to your organization from other sites{% ifversion fpt or ghec %}, such as your LinkedIn or Twitter profiles{% endif %}. - API requests that use the old organization's name will return a 404 error. We recommend you update the old organization name in your API requests. -- There are no automatic [@mention](/articles/basic-writing-and-formatting-syntax/#mentioning-people-and-teams) redirects for teams that use the old organization's name.{% ifversion fpt %} +- There are no automatic [@mention](/articles/basic-writing-and-formatting-syntax/#mentioning-people-and-teams) redirects for teams that use the old organization's name.{% ifversion fpt or ghec %} - If SAML single sign-on (SSO) is enabled for the organization, you must update the organization name in the application for {% data variables.product.prodname_ghe_cloud %} on your identity provider (IdP). If you don't update the organization name on your IdP, members of the organization will no longer be able to authenticate with your IdP to access the organization's resources. For more information, see "[Connecting your identity provider to your organization](/github/setting-up-and-managing-organizations-and-teams/connecting-your-identity-provider-to-your-organization)."{% endif %} ## Changing your organization's name diff --git a/content/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization.md b/content/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization.md index 10b9fe29efd6..8e5bfa92836a 100644 --- a/content/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization.md +++ b/content/organizations/managing-organization-settings/restricting-repository-creation-in-your-organization.md @@ -8,17 +8,18 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Restrict repository creation --- -You can choose whether members can create repositories in your organization. If you allow members to create repositories, you can choose which types of repositories members can create.{% ifversion fpt %} To allow members to create private repositories only, your organization must use {% data variables.product.prodname_ghe_cloud %}.{% endif %} For more information, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." +You can choose whether members can create repositories in your organization. If you allow members to create repositories, you can choose which types of repositories members can create.{% ifversion fpt or ghec %} To allow members to create private repositories only, your organization must use {% data variables.product.prodname_ghe_cloud %}.{% endif %} For more information, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." Organization owners can always create any type of repository. -{% ifversion fpt %}Enterprise owners{% else %}Site administrators{% endif %} can restrict the options you have available for your organization's repository creation policy. For more information, see {% ifversion fpt %}"[Enforcing repository management policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-repository-management-policies-in-your-enterprise-account)."{% else %}"[Restricting repository creation in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#setting-a-policy-for-repository-creation)."{% endif %} +{% ifversion fpt or ghec %}Enterprise owners{% else %}Site administrators{% endif %} can restrict the options you have available for your organization's repository creation policy. For more information, see "[Restricting repository creation in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#setting-a-policy-for-repository-creation)." {% warning %} diff --git a/content/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization.md b/content/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization.md index f694ec10bfc8..b07a0450721b 100644 --- a/content/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization.md +++ b/content/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md b/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md index f0977ff5c09d..7397e09f54cb 100644 --- a/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md +++ b/content/organizations/managing-organization-settings/setting-permissions-for-adding-outside-collaborators.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/setting-permissions-for-deleting-or-transferring-repositories.md b/content/organizations/managing-organization-settings/setting-permissions-for-deleting-or-transferring-repositories.md index dbd9619bab22..2214a36df1cc 100644 --- a/content/organizations/managing-organization-settings/setting-permissions-for-deleting-or-transferring-repositories.md +++ b/content/organizations/managing-organization-settings/setting-permissions-for-deleting-or-transferring-repositories.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/setting-team-creation-permissions-in-your-organization.md b/content/organizations/managing-organization-settings/setting-team-creation-permissions-in-your-organization.md index 50bde71ba831..c6c3ad0ed373 100644 --- a/content/organizations/managing-organization-settings/setting-team-creation-permissions-in-your-organization.md +++ b/content/organizations/managing-organization-settings/setting-team-creation-permissions-in-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-organization-settings/transferring-organization-ownership.md b/content/organizations/managing-organization-settings/transferring-organization-ownership.md index 764650bb1671..e0f25c04855c 100644 --- a/content/organizations/managing-organization-settings/transferring-organization-ownership.md +++ b/content/organizations/managing-organization-settings/transferring-organization-ownership.md @@ -1,6 +1,6 @@ --- title: Transferring organization ownership -intro: 'To make someone else the owner of an organization account, you must add a new owner{% ifversion fpt %}, ensure that the billing information is updated,{% endif %} and then remove yourself from the account.' +intro: 'To make someone else the owner of an organization account, you must add a new owner{% ifversion fpt or ghec %}, ensure that the billing information is updated,{% endif %} and then remove yourself from the account.' redirect_from: - /articles/needs-polish-how-do-i-give-ownership-to-an-organization-to-someone-else/ - /articles/transferring-organization-ownership @@ -9,12 +9,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams shortTitle: Transfer ownership --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** {% data reusables.enterprise-accounts.invite-organization %} @@ -23,7 +24,7 @@ shortTitle: Transfer ownership 1. If you're the only member with *owner* privileges, give another organization member the owner role. For more information, see "[Appointing an organization owner](/organizations/managing-peoples-access-to-your-organization-with-roles/maintaining-ownership-continuity-for-your-organization#appointing-an-organization-owner)." 2. Contact the new owner and make sure he or she is able to [access the organization's settings](/articles/accessing-your-organization-s-settings). -{% ifversion fpt %} +{% ifversion fpt or ghec %} 3. If you are currently responsible for paying for GitHub in your organization, you'll also need to have the new owner or a [billing manager](/articles/adding-a-billing-manager-to-your-organization/) update the organization's payment information. For more information, see "[Adding or editing a payment method](/articles/adding-or-editing-a-payment-method)." {% warning %} diff --git a/content/organizations/managing-organization-settings/upgrading-to-the-corporate-terms-of-service.md b/content/organizations/managing-organization-settings/upgrading-to-the-corporate-terms-of-service.md index b8c39d9eeb52..f7773cfbc11c 100644 --- a/content/organizations/managing-organization-settings/upgrading-to-the-corporate-terms-of-service.md +++ b/content/organizations/managing-organization-settings/upgrading-to-the-corporate-terms-of-service.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/upgrading-to-the-corporate-terms-of-service versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -26,4 +27,4 @@ The Standard Terms of Service is an agreement between {% data variables.product. ![Accept terms button](/assets/images/help/organizations/accept-terms-button.png) ## Further reading -- "[GitHub Corporate Terms of Service](/articles/github-corporate-terms-of-service/)" +- "[GitHub Corporate Terms of Service](/free-pro-team@latest/github/site-policy/github-corporate-terms-of-service)" diff --git a/content/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization.md b/content/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization.md index 62eeb1c37d18..8ce6f0f6ad49 100644 --- a/content/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization.md +++ b/content/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization.md @@ -11,6 +11,7 @@ permissions: Organization owners can verify or approve a domain for an organizat versions: fpt: '*' ghes: '>=3.2' + ghec: '*' type: how_to topics: - Enterprise @@ -22,13 +23,13 @@ shortTitle: Verify or approve a domain ## About domain verification -After verifying ownership of your organization's domains, a "Verified" badge will display on the organization's profile. {% ifversion fpt %}If your organization is on {% data variables.product.prodname_ghe_cloud %} and has agreed to the Corporate Terms of Service, organization owners will be able to verify the identity of organization members by viewing each member's email address within the verified domain. For more information, see "[About your organization's profile page](/articles/about-your-organization-s-profile/)" and "Upgrading to the Corporate Terms of Service."{% endif %} +After verifying ownership of your organization's domains, a "Verified" badge will display on the organization's profile. {% ifversion fpt or ghec %}If your organization is on {% data variables.product.prodname_ghe_cloud %} and has agreed to the Corporate Terms of Service, organization owners will be able to verify the identity of organization members by viewing each member's email address within the verified domain. For more information, see "[About your organization's profile page](/articles/about-your-organization-s-profile/)" and "Upgrading to the Corporate Terms of Service."{% endif %} -{% ifversion fpt %}If your organization is owned by an enterprise account, a{% elsif ghes %}A{% endif %} "Verified" badge will display on your organization's profile for any domains verified for the enterprise account, in addition to any domains verified for the organization. Organization owners can view any domains that an enterprise owner has verified or approved, and edit the domains if the organization owner is also an enterprise owner. {% ifversion fpt %}For more information, see "[Verifying or approving a domain for your enterprise account](/github/setting-up-and-managing-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account)."{% endif %}{% ifversion ghes > 3.1 %}For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %} +{% ifversion fpt or ghec %}If your organization is owned by an enterprise account, a{% elsif ghes %}A{% endif %} "Verified" badge will display on your organization's profile for any domains verified for the enterprise account, in addition to any domains verified for the organization. Organization owners can view any domains that an enterprise owner has verified or approved, and edit the domains if the organization owner is also an enterprise owner. {% ifversion fpt or ghec %}For more information, see "[Verifying or approving a domain for your enterprise](/enterprise-cloud@latest/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %}{% ifversion ghes > 3.1 %}For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %} {% data reusables.organizations.verified-domains-details %} -{% ifversion fpt %}On {% data variables.product.prodname_ghe_cloud %}, after verifying ownership of your organization's domain, you can restrict email notifications for the organization to that domain. For more information, see "[Restricting email notifications for your organization](/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization)." {% data reusables.enterprise.link-to-ghec-trial %}{% endif %} +{% ifversion fpt or ghec %}On {% data variables.product.prodname_ghe_cloud %}, after verifying ownership of your organization's domain, you can restrict email notifications for the organization to that domain. For more information, see "[Restricting email notifications for your organization](/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization)." {% data reusables.enterprise.link-to-ghec-trial %}{% endif %} ## About domain approval @@ -40,7 +41,7 @@ After you approve domains for your organization, you can restrict email notifica Enterprise owners cannot see which organization members or email addresses receive notifications within approved domains. -Enterprise owners can also approve additional domains for organizations owned by the enterprise. {% ifversion fpt %}For more information, see "[Verifying or approving a domain for your enterprise account](/github/setting-up-and-managing-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account)."{% endif %}{% ifversion ghes > 3.1 %}For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %} +Enterprise owners can also approve additional domains for organizations owned by the enterprise. {% ifversion fpt or ghec %}For more information, see "[Verifying or approving a domain for your enterprise](/enterprise-cloud@latest/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %}{% ifversion ghes > 3.1 %}For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %} ## Verifying a domain for your organization @@ -63,7 +64,7 @@ To verify a domain, you must have access to modify domain records with your doma ## Approving a domain for your organization -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} {% data reusables.enterprise-accounts.approved-domains-beta-note %} diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/adding-a-billing-manager-to-your-organization.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/adding-a-billing-manager-to-your-organization.md index d80d197c2bed..0c6f49db2db2 100644 --- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/adding-a-billing-manager-to-your-organization.md +++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/adding-a-billing-manager-to-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/adding-a-billing-manager-to-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -49,11 +50,13 @@ Billing managers **are not** able to: ## Inviting a billing manager +{% ifversion ghec %} {% note %} **Note:** If your organization is managed using [Enterprise Accounts](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-account/about-enterprise-accounts) you will not be able to invite Billing Managers at the organization level. {% endnote %} +{% endif %} The invited person will receive an invitation email asking them to become a billing manager for your organization. Once the invited person clicks the accept link in their invitation email, they will automatically be added to the organization as a billing manager. If they don't already have a GitHub account, they will be directed to sign up for one, and they will be automatically added to the organization as a billing manager after they create an account. diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/giving-team-maintainer-permissions-to-an-organization-member.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/giving-team-maintainer-permissions-to-an-organization-member.md index 6b2c7a3ed709..30c26ca83088 100644 --- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/giving-team-maintainer-permissions-to-an-organization-member.md +++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/giving-team-maintainer-permissions-to-an-organization-member.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/index.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/index.md index ca001d9e3bb2..b1fe8809560c 100644 --- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/index.md +++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/maintaining-ownership-continuity-for-your-organization.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/maintaining-ownership-continuity-for-your-organization.md index 1061c548c35b..8c1864aabb30 100644 --- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/maintaining-ownership-continuity-for-your-organization.md +++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/maintaining-ownership-continuity-for-your-organization.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/permission-levels-for-an-organization.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/permission-levels-for-an-organization.md index 2968598e8f8c..0b503aae4f3e 100644 --- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/permission-levels-for-an-organization.md +++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/permission-levels-for-an-organization.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -17,19 +18,19 @@ shortTitle: Permissions for organization ## Permission levels for an organization -Organization members can have *owner*{% ifversion fpt %}, *billing manager*,{% endif %} or *member* roles: +Organization members can have *owner*{% ifversion fpt or ghec %}, *billing manager*,{% endif %} or *member* roles: - **Owners** have complete administrative access to your organization. This role should be limited, but to no less than two people, in your organization. For more information, see "[Maintaining ownership continuity for your organization](/organizations/managing-peoples-access-to-your-organization-with-roles/maintaining-ownership-continuity-for-your-organization)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} - **Billing managers** allow a person to manage billing settings. For more information, see "[Adding a billing manager to your organization](/articles/adding-a-billing-manager-to-your-organization)". {% endif %} - **Members** are the default role for everyone else. -{% ifversion fpt %} +{% ifversion fpt or ghec %} Some of the features listed below are limited to organizations using {% data variables.product.prodname_ghe_cloud %}. {% data reusables.enterprise.link-to-ghec-trial %} {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} | Organization action | Owners | Members | Billing managers | diff --git a/content/organizations/managing-peoples-access-to-your-organization-with-roles/removing-a-billing-manager-from-your-organization.md b/content/organizations/managing-peoples-access-to-your-organization-with-roles/removing-a-billing-manager-from-your-organization.md index de9362098b6d..488663542ee0 100644 --- a/content/organizations/managing-peoples-access-to-your-organization-with-roles/removing-a-billing-manager-from-your-organization.md +++ b/content/organizations/managing-peoples-access-to-your-organization-with-roles/removing-a-billing-manager-from-your-organization.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/removing-a-billing-manager-from-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on.md index 5979378e1e8d..62a82de4c05c 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/about-identity-and-access-management-with-saml-single-sign-on.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/about-identity-and-access-management-with-saml-single-sign-on versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -21,7 +22,7 @@ shortTitle: IAM with SAML SSO {% data reusables.saml.saml-accounts %} -Organization owners can enforce SAML SSO for an individual organization, or enterprise owners can enforce SAML SSO for all organizations in an enterprise account. For more information, see "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." +Organization owners can enforce SAML SSO for an individual organization, or enterprise owners can enforce SAML SSO for all organizations in an enterprise account. For more information, see "[Configuring SAML single sign-on for your enterprise](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." {% data reusables.saml.saml-requires-ghec %} {% data reusables.enterprise.link-to-ghec-trial %} @@ -35,7 +36,7 @@ Members must periodically authenticate with your IdP to authenticate and gain ac To access the organization's protected resources using the API and Git on the command line, members must authorize and authenticate with a personal access token or SSH key. For more information, see "[Authorizing a personal access token for use with SAML single sign-on](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)" and "[Authorizing an SSH key for use with SAML single sign-on](/github/authenticating-to-github/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)." -The first time a member uses SAML SSO to access your organization, {% data variables.product.prodname_dotcom %} automatically creates a record that links your organization, the member's {% data variables.product.prodname_dotcom %} account, and the member's account on your IdP. You can view and revoke the linked SAML identity, active sessions, and authorized credentials for members of your organization or enterprise account. For more information, see "[Viewing and managing a member's SAML access to your organization](/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization)" and "[Viewing and managing a user's SAML access to your enterprise account](/github/setting-up-and-managing-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise-account)." +The first time a member uses SAML SSO to access your organization, {% data variables.product.prodname_dotcom %} automatically creates a record that links your organization, the member's account on {% data variables.product.product_location %}, and the member's account on your IdP. You can view and revoke the linked SAML identity, active sessions, and authorized credentials for members of your organization or enterprise account. For more information, see "[Viewing and managing a member's SAML access to your organization](/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization)" and "[Viewing and managing a user's SAML access to your enterprise account](/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise)." If members are signed in with a SAML SSO session when they create a new repository, the default visibility of that repository is private. Otherwise, the default visibility is public. For more information on repository visibility, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/about-scim.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/about-scim.md index ae2313068812..25f9aa83012f 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/about-scim.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/about-scim.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/about-scim versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -18,7 +19,7 @@ If you use [SAML SSO](/articles/about-identity-and-access-management-with-saml-s If you use SAML SSO without implementing SCIM, you won't have automatic deprovisioning. When organization members' sessions expire after their access is removed from the IdP, they aren't automatically removed from the organization. Authorized tokens grant access to the organization even after their sessions expire. To remove access, organization administrators can either manually remove the authorized token from the organization or automate its removal with SCIM. -These identity providers are compatible with the {% data variables.product.product_name %} SCIM API for organizations. For more information, see [SCIM](/rest/reference/scim) in the {% data variables.product.product_name %} API documentation. +These identity providers are compatible with the {% data variables.product.product_name %} SCIM API for organizations. For more information, see [SCIM](/rest/reference/scim) in the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API documentation. - Azure AD - Okta - OneLogin diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/accessing-your-organization-if-your-identity-provider-is-unavailable.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/accessing-your-organization-if-your-identity-provider-is-unavailable.md index 430c1c3896b5..d248c3aa712f 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/accessing-your-organization-if-your-identity-provider-is-unavailable.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/accessing-your-organization-if-your-identity-provider-is-unavailable.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/accessing-your-organization-if-your-identity-provider-is-unavailable versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md index 30b67866958d..59ef79ccc47a 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/configuring-saml-single-sign-on-and-scim-using-okta.md @@ -7,6 +7,7 @@ product: '{% data reusables.gated-features.saml-sso %}' permissions: Organization owners can configure SAML SSO and SCIM using Okta for an organization. versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -81,7 +82,7 @@ After you enable SCIM, the following provisioning features are available for any ## Further reading -- "[Configuring SAML single sign-on for your enterprise account using Okta](/github/setting-up-and-managing-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-account-using-okta)" +- "[Configuring SAML single sign-on for your enterprise account using Okta](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise-using-okta)" - "[Managing team synchronization for your organization](/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization#enabling-team-synchronization-for-okta)" - [Understanding SAML](https://developer.okta.com/docs/concepts/saml/) in the Okta documentation - [Understanding SCIM](https://developer.okta.com/docs/concepts/scim/) in the Okta documentation diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/connecting-your-identity-provider-to-your-organization.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/connecting-your-identity-provider-to-your-organization.md index 2f2f404cb22d..4b70694728b1 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/connecting-your-identity-provider-to-your-organization.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/connecting-your-identity-provider-to-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/connecting-your-identity-provider-to-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/downloading-your-organizations-saml-single-sign-on-recovery-codes.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/downloading-your-organizations-saml-single-sign-on-recovery-codes.md index 5b3689077066..19b241e62af0 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/downloading-your-organizations-saml-single-sign-on-recovery-codes.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/downloading-your-organizations-saml-single-sign-on-recovery-codes.md @@ -8,6 +8,7 @@ redirect_from: product: '{% data reusables.gated-features.saml-sso %}' versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md index 72e94b25cd67..3efa25e74c6e 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/enabling-and-testing-saml-single-sign-on-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/enabling-and-testing-saml-single-sign-on-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/enforcing-saml-single-sign-on-for-your-organization.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/enforcing-saml-single-sign-on-for-your-organization.md index 19b28a82025e..9e115e8c93d5 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/enforcing-saml-single-sign-on-for-your-organization.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/enforcing-saml-single-sign-on-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/enforcing-saml-single-sign-on-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -25,7 +26,7 @@ You can restore organization members once they successfully complete single sign Bots and service accounts that do not have external identities set up in your organization's IdP will also be removed when you enforce SAML SSO. For more information about bots and service accounts, see "[Managing bots and service accounts with SAML single sign-on](/articles/managing-bots-and-service-accounts-with-saml-single-sign-on)." -If your organization is owned by an enterprise account, requiring SAML for the enterprise account will override your organization-level SAML configuration and enforce SAML SSO for every organization in the enterprise. For more information, see "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." +If your organization is owned by an enterprise account, requiring SAML for the enterprise account will override your organization-level SAML configuration and enforce SAML SSO for every organization in the enterprise. For more information, see "[Configuring SAML single sign-on for your enterprise](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." {% tip %} diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/index.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/index.md index c73d746b6572..dc03ccd0eb37 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/index.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/index.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/managing-saml-single-sign-on-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md index ce408b8d9b7f..1f9212a18f19 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization.md @@ -11,6 +11,7 @@ permissions: Organization owners can manage team synchronization for an organiza miniTocMaxHeadingLevel: 3 versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams @@ -31,7 +32,7 @@ You can enable team synchronization between your IdP and {% data variables.produ {% data reusables.identity-and-permissions.sync-team-with-idp-group %} -You can also enable team synchronization for organizations owned by an enterprise account. For more information, see "[Enforcing security settings in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-security-settings-in-your-enterprise-account)." +You can also enable team synchronization for organizations owned by an enterprise account. For more information, see "[Managing team synchronization for organizations in your enterprise](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)." {% data reusables.enterprise-accounts.team-sync-override %} diff --git a/content/organizations/managing-saml-single-sign-on-for-your-organization/preparing-to-enforce-saml-single-sign-on-in-your-organization.md b/content/organizations/managing-saml-single-sign-on-for-your-organization/preparing-to-enforce-saml-single-sign-on-in-your-organization.md index 65d14f073dcc..19f5710d5b74 100644 --- a/content/organizations/managing-saml-single-sign-on-for-your-organization/preparing-to-enforce-saml-single-sign-on-in-your-organization.md +++ b/content/organizations/managing-saml-single-sign-on-for-your-organization/preparing-to-enforce-saml-single-sign-on-in-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/preparing-to-enforce-saml-single-sign-on-in-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/migrating-to-improved-organization-permissions/converting-an-admin-team-to-improved-organization-permissions.md b/content/organizations/migrating-to-improved-organization-permissions/converting-an-admin-team-to-improved-organization-permissions.md index f7795dd0e8d9..44a632e00600 100644 --- a/content/organizations/migrating-to-improved-organization-permissions/converting-an-admin-team-to-improved-organization-permissions.md +++ b/content/organizations/migrating-to-improved-organization-permissions/converting-an-admin-team-to-improved-organization-permissions.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/migrating-to-improved-organization-permissions/converting-an-owners-team-to-improved-organization-permissions.md b/content/organizations/migrating-to-improved-organization-permissions/converting-an-owners-team-to-improved-organization-permissions.md index 7dbd7688fb75..e6a0aebbe2ae 100644 --- a/content/organizations/migrating-to-improved-organization-permissions/converting-an-owners-team-to-improved-organization-permissions.md +++ b/content/organizations/migrating-to-improved-organization-permissions/converting-an-owners-team-to-improved-organization-permissions.md @@ -9,6 +9,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/migrating-to-improved-organization-permissions/index.md b/content/organizations/migrating-to-improved-organization-permissions/index.md index e4e868be1648..6621d5351c3a 100644 --- a/content/organizations/migrating-to-improved-organization-permissions/index.md +++ b/content/organizations/migrating-to-improved-organization-permissions/index.md @@ -10,6 +10,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/migrating-to-improved-organization-permissions/migrating-admin-teams-to-improved-organization-permissions.md b/content/organizations/migrating-to-improved-organization-permissions/migrating-admin-teams-to-improved-organization-permissions.md index 5301f5ab4b42..950143b72661 100644 --- a/content/organizations/migrating-to-improved-organization-permissions/migrating-admin-teams-to-improved-organization-permissions.md +++ b/content/organizations/migrating-to-improved-organization-permissions/migrating-admin-teams-to-improved-organization-permissions.md @@ -8,6 +8,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/about-teams.md b/content/organizations/organizing-members-into-teams/about-teams.md index e8d89eb3c95d..045ecb7e7d38 100644 --- a/content/organizations/organizing-members-into-teams/about-teams.md +++ b/content/organizations/organizing-members-into-teams/about-teams.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/adding-organization-members-to-a-team.md b/content/organizations/organizing-members-into-teams/adding-organization-members-to-a-team.md index cf80befbfb85..7e989530524d 100644 --- a/content/organizations/organizing-members-into-teams/adding-organization-members-to-a-team.md +++ b/content/organizations/organizing-members-into-teams/adding-organization-members-to-a-team.md @@ -1,6 +1,6 @@ --- title: Adding organization members to a team -intro: 'People with owner or team maintainer permissions can add organization members to teams. People with owner permissions can also {% ifversion fpt %}invite non-members to join{% else %}add non-members to{% endif %} a team and the organization.' +intro: 'People with owner or team maintainer permissions can add organization members to teams. People with owner permissions can also {% ifversion fpt or ghec %}invite non-members to join{% else %}add non-members to{% endif %} a team and the organization.' redirect_from: - /articles/adding-organization-members-to-a-team-early-access-program/ - /articles/adding-organization-members-to-a-team @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -26,7 +27,7 @@ shortTitle: Add members to a team {% data reusables.organizations.invite_to_team %} {% data reusables.organizations.review-team-repository-access %} -{% ifversion fpt %}{% data reusables.organizations.cancel_org_invite %}{% endif %} +{% ifversion fpt or ghec %}{% data reusables.organizations.cancel_org_invite %}{% endif %} ## Further reading diff --git a/content/organizations/organizing-members-into-teams/changing-team-visibility.md b/content/organizations/organizing-members-into-teams/changing-team-visibility.md index 343eb268a8e0..667171d89bab 100644 --- a/content/organizations/organizing-members-into-teams/changing-team-visibility.md +++ b/content/organizations/organizing-members-into-teams/changing-team-visibility.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/creating-a-team.md b/content/organizations/organizing-members-into-teams/creating-a-team.md index 6d7bd4a48ba3..878885d27113 100644 --- a/content/organizations/organizing-members-into-teams/creating-a-team.md +++ b/content/organizations/organizing-members-into-teams/creating-a-team.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -24,9 +25,9 @@ Only organization owners and maintainers of a parent team can create a new child {% data reusables.organizations.team_name %} {% data reusables.organizations.team_description %} {% data reusables.organizations.create-team-choose-parent %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. Optionally, if your organization or enterprise account uses team synchronization or your enterprise uses {% data variables.product.prodname_emus %}, connect an identity provider group to your team. - * If your enterprise uses {% data variables.product.prodname_emus %}, use the "Identity Provider Groups" drop-down menu, and select a single identity provider group to connect to the new team. For more information, "[Managing team memberships with identity provider groups](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups)." + * If your enterprise uses {% data variables.product.prodname_emus %}, use the "Identity Provider Groups" drop-down menu, and select a single identity provider group to connect to the new team. For more information, "[Managing team memberships with identity provider groups](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/managing-team-memberships-with-identity-provider-groups)." * If your organization or enterprise account uses team synchronization, use the "Identity Provider Groups" drop-down menu, and select up to five identity provider groups to connect to the new team. For more information, see "[Synchronizing a team with an identity provider group](/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group)." ![Drop-down menu to choose identity provider groups](/assets/images/help/teams/choose-an-idp-group.png) {% endif %} diff --git a/content/organizations/organizing-members-into-teams/deleting-a-team.md b/content/organizations/organizing-members-into-teams/deleting-a-team.md index 571fefd73aa1..afcb0c7aef71 100644 --- a/content/organizations/organizing-members-into-teams/deleting-a-team.md +++ b/content/organizations/organizing-members-into-teams/deleting-a-team.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/disabling-team-discussions-for-your-organization.md b/content/organizations/organizing-members-into-teams/disabling-team-discussions-for-your-organization.md index e2ea0657f8ff..03c0fed5d186 100644 --- a/content/organizations/organizing-members-into-teams/disabling-team-discussions-for-your-organization.md +++ b/content/organizations/organizing-members-into-teams/disabling-team-discussions-for-your-organization.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/index.md b/content/organizations/organizing-members-into-teams/index.md index 32db085392ce..db77a62f38d6 100644 --- a/content/organizations/organizing-members-into-teams/index.md +++ b/content/organizations/organizing-members-into-teams/index.md @@ -16,6 +16,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team.md b/content/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team.md index 5f42ea523fbf..3c2f56c6847e 100644 --- a/content/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team.md +++ b/content/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -21,7 +22,7 @@ By using code review assignments, any time your team has been requested to revie When code owners are automatically requested for review, the team is still removed and replaced with individuals. The individual approvals don't satisfy the requirement for code owner approval in a protected branch. For more information, see "[About code owners](/github/creating-cloning-and-archiving-repositories/about-code-owners)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} To further enhance your team's collaboration abilities, you can upgrade to {% data variables.product.prodname_ghe_cloud %}, which includes features like protected branches and code owners on private repositories. {% data reusables.enterprise.link-to-ghec-trial %} {% endif %} @@ -51,7 +52,7 @@ Any team members that have set their status to "Busy" will not be selected for r 9. Optionally, to always skip certain members of the team, select **Never assign certain team members**. Then, select one or more team members you'd like to always skip. ![Never assign certain team members checkbox and dropdown](/assets/images/help/teams/review-assignment-skip-members.png) 10. Optionally, to only notify the team members chosen by code review assignment for each pull review request, under "Notifications" select **If assigning team members, don't notify the entire team.** -![Code review assignment notifications](/assets/images/help/teams/review-assignment-notifications.png){% ifversion fpt or ghae or ghes > 3.2 %} +![Code review assignment notifications](/assets/images/help/teams/review-assignment-notifications.png){% ifversion fpt or ghae or ghes > 3.2 or ghec %} 11. Optionally, to include members of child teams as potential reviewers when assigning requests, select **Child team members**. 12. Optionally, to count any members whose review has already been requested against the total number of members to assign, select **Count existing requests**. 13. Optionally, to remove the review request from the team when assigning team members, select **Team review request**.{% endif %} diff --git a/content/organizations/organizing-members-into-teams/managing-scheduled-reminders-for-your-team.md b/content/organizations/organizing-members-into-teams/managing-scheduled-reminders-for-your-team.md index ca5879acd55c..d9ba2481d97a 100644 --- a/content/organizations/organizing-members-into-teams/managing-scheduled-reminders-for-your-team.md +++ b/content/organizations/organizing-members-into-teams/managing-scheduled-reminders-for-your-team.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/managing-scheduled-reminders-for-your team versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/moving-a-team-in-your-organizations-hierarchy.md b/content/organizations/organizing-members-into-teams/moving-a-team-in-your-organizations-hierarchy.md index 4d45d39ed379..2c74627c10ba 100644 --- a/content/organizations/organizing-members-into-teams/moving-a-team-in-your-organizations-hierarchy.md +++ b/content/organizations/organizing-members-into-teams/moving-a-team-in-your-organizations-hierarchy.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/removing-organization-members-from-a-team.md b/content/organizations/organizing-members-into-teams/removing-organization-members-from-a-team.md index b8536485958b..c893ca2f7e79 100644 --- a/content/organizations/organizing-members-into-teams/removing-organization-members-from-a-team.md +++ b/content/organizations/organizing-members-into-teams/removing-organization-members-from-a-team.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/renaming-a-team.md b/content/organizations/organizing-members-into-teams/renaming-a-team.md index 24dd2510029b..d6a6885501e0 100644 --- a/content/organizations/organizing-members-into-teams/renaming-a-team.md +++ b/content/organizations/organizing-members-into-teams/renaming-a-team.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/requesting-to-add-a-child-team.md b/content/organizations/organizing-members-into-teams/requesting-to-add-a-child-team.md index 810a0719fed3..4e4f338ad3a5 100644 --- a/content/organizations/organizing-members-into-teams/requesting-to-add-a-child-team.md +++ b/content/organizations/organizing-members-into-teams/requesting-to-add-a-child-team.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/requesting-to-add-or-change-a-parent-team.md b/content/organizations/organizing-members-into-teams/requesting-to-add-or-change-a-parent-team.md index c4327cb0c911..1790028eff16 100644 --- a/content/organizations/organizing-members-into-teams/requesting-to-add-or-change-a-parent-team.md +++ b/content/organizations/organizing-members-into-teams/requesting-to-add-or-change-a-parent-team.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/setting-your-teams-profile-picture.md b/content/organizations/organizing-members-into-teams/setting-your-teams-profile-picture.md index 62b345b8b1ca..df744d22f064 100644 --- a/content/organizations/organizing-members-into-teams/setting-your-teams-profile-picture.md +++ b/content/organizations/organizing-members-into-teams/setting-your-teams-profile-picture.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md b/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md index 85b577a5be42..e652e721b570 100644 --- a/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md +++ b/content/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group.md @@ -8,6 +8,7 @@ permissions: 'Organization owners and team maintainers can synchronize a {% data versions: fpt: '*' ghae: '*' + ghec: '*' topics: - Organizations - Teams @@ -22,15 +23,15 @@ shortTitle: Synchronize with an IdP {% data reusables.identity-and-permissions.about-team-sync %} -{% ifversion fpt %}You can connect up to five IdP groups to a {% data variables.product.product_name %} team.{% elsif ghae %}You can connect a team on {% data variables.product.product_name %} to one IdP group. All users in the group are automatically added to the team and also added to the parent organization as members. When you disconnect a group from a team, users who became members of the organization via team membership are removed from the organization.{% endif %} You can assign an IdP group to multiple {% data variables.product.product_name %} teams. +{% ifversion fpt or ghec %}You can connect up to five IdP groups to a {% data variables.product.product_name %} team.{% elsif ghae %}You can connect a team on {% data variables.product.product_name %} to one IdP group. All users in the group are automatically added to the team and also added to the parent organization as members. When you disconnect a group from a team, users who became members of the organization via team membership are removed from the organization.{% endif %} You can assign an IdP group to multiple {% data variables.product.product_name %} teams. -{% ifversion fpt %}Team synchronization does not support IdP groups with more than 5000 members.{% endif %} +{% ifversion fpt or ghec %}Team synchronization does not support IdP groups with more than 5000 members.{% endif %} -Once a {% data variables.product.prodname_dotcom %} team is connected to an IdP group, your IdP administrator must make team membership changes through the identity provider. You cannot manage team membership on {% data variables.product.product_name %}{% ifversion fpt %} or using the API{% endif %}. +Once a {% data variables.product.prodname_dotcom %} team is connected to an IdP group, your IdP administrator must make team membership changes through the identity provider. You cannot manage team membership on {% data variables.product.product_name %}{% ifversion fpt or ghec %} or using the API{% endif %}. -{% ifversion fpt %}{% data reusables.enterprise-accounts.team-sync-override %}{% endif %} +{% ifversion fpt or ghec %}{% data reusables.enterprise-accounts.team-sync-override %}{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} All team membership changes made through your IdP will appear in the audit log on {% data variables.product.product_name %} as changes made by the team synchronization bot. Your IdP will send team membership data to {% data variables.product.prodname_dotcom %} once every hour. Connecting a team to an IdP group may remove some team members. For more information, see "[Requirements for members of synchronized teams](#requirements-for-members-of-synchronized-teams)." {% endif %} @@ -43,9 +44,9 @@ Parent teams cannot synchronize with IdP groups. If the team you want to connect To manage repository access for any {% data variables.product.prodname_dotcom %} team, including teams connected to an IdP group, you must make changes with {% data variables.product.product_name %}. For more information, see "[About teams](/articles/about-teams)" and "[Managing team access to an organization repository](/articles/managing-team-access-to-an-organization-repository)." -{% ifversion fpt %}You can also manage team synchronization with the API. For more information, see "[Team synchronization](/rest/reference/teams#team-sync)."{% endif %} +{% ifversion fpt or ghec %}You can also manage team synchronization with the API. For more information, see "[Team synchronization](/rest/reference/teams#team-sync)."{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Requirements for members of synchronized teams After you connect a team to an IdP group, team synchronization will add each member of the IdP group to the corresponding team on {% data variables.product.product_name %} only if: @@ -53,18 +54,18 @@ After you connect a team to an IdP group, team synchronization will add each mem - The person has already logged in with their user account on {% data variables.product.product_name %} and authenticated to the organization or enterprise account via SAML single sign-on at least once. - The person's SSO identity is a member of the IdP group. -Existing teams or group members who do not meet these criteria will be automatically removed from the team on {% data variables.product.product_name %} and lose access to repositories. Revoking a user's linked identity will also remove the user from from any teams mapped to IdP groups. For more information, see "[Viewing and managing a member's SAML access to your organization](/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization#viewing-and-revoking-a-linked-identity)" and "[Viewing and managing a user's SAML access to your enterprise](/github/setting-up-and-managing-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise#viewing-and-revoking-a-linked-identity)." +Existing teams or group members who do not meet these criteria will be automatically removed from the team on {% data variables.product.product_name %} and lose access to repositories. Revoking a user's linked identity will also remove the user from from any teams mapped to IdP groups. For more information, see "[Viewing and managing a member's SAML access to your organization](/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization#viewing-and-revoking-a-linked-identity)" and "[Viewing and managing a user's SAML access to your enterprise](/enterprise-cloud@latest/admin/user-management/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise#viewing-and-revoking-a-linked-identity)." A removed team member can be added back to a team automatically once they have authenticated to the organization or enterprise account using SSO and are moved to the connected IdP group. -To avoid unintentionally removing team members, we recommend enforcing SAML SSO in your organization or enterprise account, creating new teams to synchronize membership data, and checking IdP group membership before synchronizing existing teams. For more information, see "[Enforcing SAML single sign-on for your organization](/articles/enforcing-saml-single-sign-on-for-your-organization)" and "[Enforcing SAML single sign-on for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/configuring-identity-and-access-management-for-your-enterprise-account/enforcing-saml-single-sign-on-for-organizations-in-your-enterprise-account)." +To avoid unintentionally removing team members, we recommend enforcing SAML SSO in your organization or enterprise account, creating new teams to synchronize membership data, and checking IdP group membership before synchronizing existing teams. For more information, see "[Enforcing SAML single sign-on for your organization](/articles/enforcing-saml-single-sign-on-for-your-organization)" and "[Configuring SAML single sign-on for your enterprise](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise)." {% endif %} ## Prerequisites -{% ifversion fpt %} -Before you can connect a {% data variables.product.product_name %} team with an identity provider group, an organization or enterprise owner must enable team synchronization for your organization or enterprise account. For more information, see "[Managing team synchronization for your organization](/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization)" and "[Managing team synchronization for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise-account)." +{% ifversion fpt or ghec %} +Before you can connect a {% data variables.product.product_name %} team with an identity provider group, an organization or enterprise owner must enable team synchronization for your organization or enterprise account. For more information, see "[Managing team synchronization for your organization](/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization)" and "[Managing team synchronization for organizations in your enterprise account](/enterprise-cloud@latest/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)." To avoid unintentionally removing team members, visit the administrative portal for your IdP and confirm that each current team member is also in the IdP groups that you want to connect to this team. If you don't have this access to your identity provider, you can reach out to your IdP administrator. @@ -84,7 +85,7 @@ When you connect an IdP group to a {% data variables.product.product_name %} tea {% data reusables.user_settings.access_org %} {% data reusables.organizations.specific_team %} {% data reusables.organizations.team_settings %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 6. Under "Identity Provider Groups", use the drop-down menu, and select up to 5 identity provider groups. ![Drop-down menu to choose identity provider groups](/assets/images/help/teams/choose-an-idp-group.png){% elsif ghae %} 6. Under "Identity Provider Group", use the drop-down menu, and select an identity provider group from the list. @@ -99,7 +100,7 @@ If you disconnect an IdP group from a {% data variables.product.prodname_dotcom {% data reusables.user_settings.access_org %} {% data reusables.organizations.specific_team %} {% data reusables.organizations.team_settings %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 6. Under "Identity Provider Groups", to the right of the IdP group you want to disconnect, click {% octicon "x" aria-label="X symbol" %}. ![Unselect a connected IdP group from the GitHub team](/assets/images/help/teams/unselect-idp-group.png){% elsif ghae %} 6. Under "Identity Provider Group", to the right of the IdP group you want to disconnect, click {% octicon "x" aria-label="X symbol" %}. diff --git a/content/organizations/restricting-access-to-your-organizations-data/about-oauth-app-access-restrictions.md b/content/organizations/restricting-access-to-your-organizations-data/about-oauth-app-access-restrictions.md index 9a5b972abe3c..1f6b0c62df44 100644 --- a/content/organizations/restricting-access-to-your-organizations-data/about-oauth-app-access-restrictions.md +++ b/content/organizations/restricting-access-to-your-organizations-data/about-oauth-app-access-restrictions.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/about-oauth-app-access-restrictions versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/restricting-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md b/content/organizations/restricting-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md index 6343939690d4..c3e35bfd0d9e 100644 --- a/content/organizations/restricting-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md +++ b/content/organizations/restricting-access-to-your-organizations-data/approving-oauth-apps-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/approving-oauth-apps-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/restricting-access-to-your-organizations-data/denying-access-to-a-previously-approved-oauth-app-for-your-organization.md b/content/organizations/restricting-access-to-your-organizations-data/denying-access-to-a-previously-approved-oauth-app-for-your-organization.md index e7d74eb20b18..ec74c0bbb454 100644 --- a/content/organizations/restricting-access-to-your-organizations-data/denying-access-to-a-previously-approved-oauth-app-for-your-organization.md +++ b/content/organizations/restricting-access-to-your-organizations-data/denying-access-to-a-previously-approved-oauth-app-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/denying-access-to-a-previously-approved-oauth-app-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/restricting-access-to-your-organizations-data/disabling-oauth-app-access-restrictions-for-your-organization.md b/content/organizations/restricting-access-to-your-organizations-data/disabling-oauth-app-access-restrictions-for-your-organization.md index 1e2ce6d05292..73e03b6c8109 100644 --- a/content/organizations/restricting-access-to-your-organizations-data/disabling-oauth-app-access-restrictions-for-your-organization.md +++ b/content/organizations/restricting-access-to-your-organizations-data/disabling-oauth-app-access-restrictions-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/disabling-oauth-app-access-restrictions-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/restricting-access-to-your-organizations-data/enabling-oauth-app-access-restrictions-for-your-organization.md b/content/organizations/restricting-access-to-your-organizations-data/enabling-oauth-app-access-restrictions-for-your-organization.md index 954f0b9c47fc..41b188b0416e 100644 --- a/content/organizations/restricting-access-to-your-organizations-data/enabling-oauth-app-access-restrictions-for-your-organization.md +++ b/content/organizations/restricting-access-to-your-organizations-data/enabling-oauth-app-access-restrictions-for-your-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/enabling-oauth-app-access-restrictions-for-your-organization versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/organizations/restricting-access-to-your-organizations-data/index.md b/content/organizations/restricting-access-to-your-organizations-data/index.md index 790471229039..7f390f693fef 100644 --- a/content/organizations/restricting-access-to-your-organizations-data/index.md +++ b/content/organizations/restricting-access-to-your-organizations-data/index.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-organizations-and-teams/restricting-access-to-your-organizations-data versions: fpt: '*' + ghec: '*' topics: - Organizations - Teams diff --git a/content/packages/index.md b/content/packages/index.md index 2f6d39c77103..b46d3642e9e2 100644 --- a/content/packages/index.md +++ b/content/packages/index.md @@ -30,6 +30,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /quickstart - /learn-github-packages diff --git a/content/packages/learn-github-packages/about-permissions-for-github-packages.md b/content/packages/learn-github-packages/about-permissions-for-github-packages.md index f3bf5c9f07e4..e74604311164 100644 --- a/content/packages/learn-github-packages/about-permissions-for-github-packages.md +++ b/content/packages/learn-github-packages/about-permissions-for-github-packages.md @@ -6,26 +6,27 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: About permissions --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} The permissions for packages are either repository-scoped or user/organization-scoped. {% endif %} ## Permissions for repository-scoped packages -A repository-scoped package inherits the permissions and visibility of the repository that owns the package. You can find a package scoped to a repository by going to the main page of the repository and clicking the **Packages** link to the right of the page. {% ifversion fpt %}For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)."{% endif %} +A repository-scoped package inherits the permissions and visibility of the repository that owns the package. You can find a package scoped to a repository by going to the main page of the repository and clicking the **Packages** link to the right of the page. {% ifversion fpt or ghec %}For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)."{% endif %} The {% data variables.product.prodname_registry %} registries below use repository-scoped permissions: - {% ifversion not fpt %}- Docker registry (`docker.pkg.github.com`){% endif %} + {% ifversion not fpt or ghec %}- Docker registry (`docker.pkg.github.com`){% endif %} - npm registry - RubyGems registry - Apache Maven registry - NuGet registry -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Granular permissions for user/organization-scoped packages Packages with granular permissions are scoped to a personal user or organization account. You can change the access control and visibility of the package separately from a repository that is connected (or linked) to a package. @@ -46,18 +47,18 @@ To use or manage a package hosted by a package registry, you must use a token wi For example: - To download and install packages from a repository, your token must have the `read:packages` scope, and your user account must have read permission. -- {% ifversion fpt or ghes > 3.0 %}To delete a package on {% data variables.product.product_name %}, your token must at least have the `delete:packages` and `read:packages` scope. The `repo` scope is also required for repo-scoped packages.{% elsif ghes < 3.1 %}To delete a specified version of a private package on {% data variables.product.product_name %}, your token must have the `delete:packages` and `repo` scope. Public packages cannot be deleted.{% elsif ghae %}To delete a specified version of a package on {% data variables.product.product_name %}, your token must have the `delete:packages` and `repo` scope.{% endif %} For more information, see "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}." +- {% ifversion fpt or ghes > 3.0 or ghec %}To delete a package on {% data variables.product.product_name %}, your token must at least have the `delete:packages` and `read:packages` scope. The `repo` scope is also required for repo-scoped packages.{% elsif ghes < 3.1 %}To delete a specified version of a private package on {% data variables.product.product_name %}, your token must have the `delete:packages` and `repo` scope. Public packages cannot be deleted.{% elsif ghae %}To delete a specified version of a package on {% data variables.product.product_name %}, your token must have the `delete:packages` and `repo` scope.{% endif %} For more information, see "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}." | Scope | Description | Required permission | | --- | --- | --- | |`read:packages`| Download and install packages from {% data variables.product.prodname_registry %} | read | |`write:packages`| Upload and publish packages to {% data variables.product.prodname_registry %} | write | -| `delete:packages` | {% ifversion fpt or ghes > 3.0 %} Delete packages from {% data variables.product.prodname_registry %} {% elsif ghes < 3.1 %} Delete specified versions of private packages from {% data variables.product.prodname_registry %}{% elsif ghae %} Delete specified versions of packages from {% data variables.product.prodname_registry %} {% endif %} | admin | +| `delete:packages` | {% ifversion fpt or ghes > 3.0 or ghec %} Delete packages from {% data variables.product.prodname_registry %} {% elsif ghes < 3.1 %} Delete specified versions of private packages from {% data variables.product.prodname_registry %}{% elsif ghae %} Delete specified versions of packages from {% data variables.product.prodname_registry %} {% endif %} | admin | | `repo` | Upload and delete packages (along with `write:packages`, or `delete:packages`) | write or admin | When you create a {% data variables.product.prodname_actions %} workflow, you can use the `GITHUB_TOKEN` to publish and install packages in {% data variables.product.prodname_registry %} without needing to store and manage a personal access token. -For more information, see:{% ifversion fpt %} +For more information, see:{% ifversion fpt or ghec %} - "[Configuring a package’s access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)"{% endif %} - "[Publishing and installing a package with {% data variables.product.prodname_actions %}](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions)" - "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token/)" @@ -76,7 +77,7 @@ For more conceptual background on {% data variables.product.prodname_actions %} For more information about `GITHUB_TOKEN` used in {% data variables.product.prodname_actions %} workflows, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### {% data variables.product.prodname_actions %} access for container images To ensure your workflows have access to your container image, you must enable {% data variables.product.prodname_actions %} access to the repositories where your workflow is run. You can find this setting on your package's settings page. For more information, see "[Ensuring workflow access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." diff --git a/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md b/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md index f77ee323fcd7..1f5623254fdd 100644 --- a/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md +++ b/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md @@ -7,6 +7,7 @@ redirect_from: - /packages/guides/configuring-access-control-and-visibility-for-container-images versions: fpt: '*' + ghec: '*' shortTitle: Access control & visibility --- diff --git a/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md b/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md index ed366eb791e9..fdc4c13de91e 100644 --- a/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md +++ b/content/packages/learn-github-packages/connecting-a-repository-to-a-package.md @@ -7,6 +7,7 @@ redirect_from: - /packages/guides/connecting-a-repository-to-a-container-image versions: fpt: '*' + ghec: '*' shortTitle: Connect a repository --- diff --git a/content/packages/learn-github-packages/deleting-and-restoring-a-package.md b/content/packages/learn-github-packages/deleting-and-restoring-a-package.md index 4eb4aaa14fcb..d3d806c23c98 100644 --- a/content/packages/learn-github-packages/deleting-and-restoring-a-package.md +++ b/content/packages/learn-github-packages/deleting-and-restoring-a-package.md @@ -10,6 +10,7 @@ redirect_from: versions: fpt: '*' ghes: '>=3.1' + ghec: '*' shortTitle: Delete & restore a package --- @@ -37,13 +38,13 @@ On {% data variables.product.prodname_dotcom %}, you can also restore an entire ## Packages API support -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can use the REST API to manage your packages. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." {% endif %} -For packages that inherit their permissions and access from repositories, you can use GraphQL to delete a specific package version.{% ifversion fpt %} The {% data variables.product.prodname_registry %} GraphQL API does not support containers or Docker images that use the package namespace `https://ghcr.io/OWNER/PACKAGE-NAME`. For more information about GraphQL support, see "[Deleting a version of a repository-scoped package with GraphQL](#deleting-a-version-of-a-repository-scoped-package-with-graphql)." +For packages that inherit their permissions and access from repositories, you can use GraphQL to delete a specific package version.{% ifversion fpt or ghec %} The {% data variables.product.prodname_registry %} GraphQL API does not support containers or Docker images that use the package namespace `https://ghcr.io/OWNER/PACKAGE-NAME`. For more information about GraphQL support, see "[Deleting a version of a repository-scoped package with GraphQL](#deleting-a-version-of-a-repository-scoped-package-with-graphql)." {% endif %} @@ -57,9 +58,9 @@ Repository-scoped packages on {% data variables.product.prodname_registry %} inc - maven - Gradle - NuGet -{% ifversion not fpt %}- Docker images at `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} +{% ifversion not fpt or ghec %}- Docker images at `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} To delete a package that has granular permissions separate from a repository, such as container images stored at `https://ghcr.io/OWNER/PACKAGE-NAME`, you must have admin access to the package. @@ -85,7 +86,7 @@ To delete a version of a repository-scoped package, you must have admin permissi For packages that inherit their permissions and access from repositories, you can use the GraphQL to delete a specific package version. -{% ifversion fpt %} +{% ifversion fpt or ghec %} GraphQL is not supported for containers or Docker images at `ghcr.io`. {% endif %} @@ -102,13 +103,13 @@ curl -X POST \ HOSTNAME/graphql ``` -To find all of the private packages you have published to {% data variables.product.prodname_registry %}, along with the version IDs for the packages, you can use the `packages` connection through the `repository` object. You will need a token with the `read:packages` and `repo` scopes. For more information, see the [`packages`](/graphql/reference/objects#repository) connection or the [`PackageOwner`](/graphql/reference/interfaces#packageowner) interface. +To find all of the private packages you have published to {% data variables.product.prodname_registry %}, along with the version IDs for the packages, you can use the `packages` connection through the `repository` object. You will need a token with the `read:packages` and `repo` scopes. For more information, see the [`packages`]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#repository) connection or the [`PackageOwner`]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/interfaces#packageowner) interface. -For more information about the `deletePackageVersion` mutation, see "[`deletePackageVersion`](/graphql/reference/mutations#deletepackageversion)." +For more information about the `deletePackageVersion` mutation, see "[`deletePackageVersion`]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/mutations#deletepackageversion)." You cannot directly delete an entire package using GraphQL, but if you delete every version of a package, the package will no longer show on {% data variables.product.product_name %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Deleting a version of a user-scoped package on {% data variables.product.prodname_dotcom %} To delete a specific version of a user-scoped package on {% data variables.product.prodname_dotcom %}, such as for a Docker image at `ghcr.io`, use these steps. To delete an entire package, see "[Deleting an entire user-scoped package on {% data variables.product.prodname_dotcom %}](#deleting-an-entire-user-scoped-package-on-github)." @@ -152,7 +153,7 @@ To delete an entire repository-scoped package, you must have admin permissions t 5. To confirm, review the confirmation message, enter your package name, and click **I understand, delete this package.** ![Confirm package deletion button](/assets/images/help/package-registry/package-version-deletion-confirmation.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Deleting an entire user-scoped package on {% data variables.product.prodname_dotcom %} To review who can delete a package, see "[Required permissions](#required-permissions-to-delete-or-restore-a-package)." @@ -189,7 +190,7 @@ You can restore a deleted package or version if: For example, if you have a deleted rubygem package named `octo-package` that was scoped to the repo `octo-repo-owner/octo-repo`, then you can only restore the package if the package namespace `rubygem.pkg.github.com/octo-repo-owner/octo-repo/octo-package` is still available, and 30 days have not yet passed. You must also meet one of these permission requirements: - - For repository-scoped packages: You have admin permissions to the repository that owns the deleted package.{% ifversion fpt %} + - For repository-scoped packages: You have admin permissions to the repository that owns the deleted package.{% ifversion fpt or ghec %} - For user-account scoped packages: Your user account owns the deleted package. - For organization-scoped packages: You have admin permissions to the deleted package in the organization that owns the package.{% endif %} @@ -199,7 +200,7 @@ Once the package is restored, the package will use the same namespace it did bef ### Restoring a package in an organization -You can restore a deleted package through your organization account settings, as long as the package was in one of your repositories{% ifversion fpt %} or had granular permissions and was scoped to your organization account{% endif %}. +You can restore a deleted package through your organization account settings, as long as the package was in one of your repositories{% ifversion fpt or ghec %} or had granular permissions and was scoped to your organization account{% endif %}. To review who can restore a package in an organization, see "[Required permissions](#required-permissions-to-delete-or-restore-a-package)." @@ -211,7 +212,7 @@ To review who can restore a package in an organization, see "[Required permissio 5. To confirm, type the name of the package and click **I understand the consequences, restore this package**. ![Restore package confirmation button](/assets/images/help/package-registry/type-package-name-and-restore-button.png) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Restoring a user-account scoped package diff --git a/content/packages/learn-github-packages/index.md b/content/packages/learn-github-packages/index.md index 014bb9c58fe2..337f9fc5136f 100644 --- a/content/packages/learn-github-packages/index.md +++ b/content/packages/learn-github-packages/index.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /introduction-to-github-packages - /about-permissions-for-github-packages diff --git a/content/packages/learn-github-packages/installing-a-package.md b/content/packages/learn-github-packages/installing-a-package.md index 43ce0bf43315..a3523e6ab36c 100644 --- a/content/packages/learn-github-packages/installing-a-package.md +++ b/content/packages/learn-github-packages/installing-a-package.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.package_registry.packages-ghes-release-stage %} @@ -18,13 +19,13 @@ versions: ## About package installation -You can search {% data variables.product.product_name %} to find packages in {% data variables.product.prodname_registry %} that you can install in your own project. For more information, see "[Searching {% data variables.product.prodname_registry %} for packages](/search-github/searching-on-github/searching-for-packages)." +You can search on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} to find packages in {% data variables.product.prodname_registry %} that you can install in your own project. For more information, see "[Searching {% data variables.product.prodname_registry %} for packages](/search-github/searching-on-github/searching-for-packages)." After you find a package, you can read the package's description and installation and usage instructions on the package page. ## Installing a package -You can install a package from {% data variables.product.prodname_registry %} using any {% ifversion fpt or ghae %}supported package client{% else %}package type enabled for your instance{% endif %} by following the same general guidelines. +You can install a package from {% data variables.product.prodname_registry %} using any {% ifversion fpt or ghae or ghec %}supported package client{% else %}package type enabled for your instance{% endif %} by following the same general guidelines. 1. Authenticate to {% data variables.product.prodname_registry %} using the instructions for your package client. For more information, see "[Authenticating to GitHub Packages](/packages/learn-github-packages/introduction-to-github-packages#authenticating-to-github-packages)." 2. Install the package using the instructions for your package client. diff --git a/content/packages/learn-github-packages/introduction-to-github-packages.md b/content/packages/learn-github-packages/introduction-to-github-packages.md index 0a8cac4bc29c..7319e880dff9 100644 --- a/content/packages/learn-github-packages/introduction-to-github-packages.md +++ b/content/packages/learn-github-packages/introduction-to-github-packages.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Introduction --- @@ -24,11 +25,11 @@ shortTitle: Introduction {% data variables.product.prodname_registry %} is a platform for hosting and managing packages, including containers and other dependencies. {% data variables.product.prodname_registry %} combines your source code and packages in one place to provide integrated permissions management{% ifversion not ghae %} and billing{% endif %}, so you can centralize your software development on {% data variables.product.product_name %}. -You can integrate {% data variables.product.prodname_registry %} with {% data variables.product.product_name %} APIs, {% data variables.product.prodname_actions %}, and webhooks to create an end-to-end DevOps workflow that includes your code, CI, and deployment solutions. +You can integrate {% data variables.product.prodname_registry %} with {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs, {% data variables.product.prodname_actions %}, and webhooks to create an end-to-end DevOps workflow that includes your code, CI, and deployment solutions. -{% data variables.product.prodname_registry %} offers different package registries for commonly used package managers, such as npm, RubyGems, Apache Maven, Gradle, Docker, and NuGet. {% ifversion fpt %}{% data variables.product.prodname_dotcom %}'s {% data variables.product.prodname_container_registry %} is optimized for containers and supports Docker and OCI images.{% endif %} For more information on the different package registries that {% data variables.product.prodname_registry %} supports, see "[Working with a {% data variables.product.prodname_registry %} registry](/packages/working-with-a-github-packages-registry)." +{% data variables.product.prodname_registry %} offers different package registries for commonly used package managers, such as npm, RubyGems, Apache Maven, Gradle, Docker, and NuGet. {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}'s {% data variables.product.prodname_container_registry %} is optimized for containers and supports Docker and OCI images.{% endif %} For more information on the different package registries that {% data variables.product.prodname_registry %} supports, see "[Working with a {% data variables.product.prodname_registry %} registry](/packages/working-with-a-github-packages-registry)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ![Diagram showing packages support for the Container registry, RubyGems, npm, Apache Maven, NuGet, and Gradle](/assets/images/help/package-registry/packages-diagram-with-container-registry.png) @@ -44,12 +45,12 @@ You can view a package's README, as well as metadata such as licensing, download | | | |--------------------|--------------------| -| Permissions | {% ifversion fpt %}The permissions for a package are either inherited from the repository where the package is hosted or, for packages in the {% data variables.product.prodname_container_registry %}, they can be defined for specific user or organization accounts. For more information, see "[Configuring a package’s access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." {% else %}Each package inherits the permissions of the repository where the package is hosted.

For example, anyone with read permissions for a repository can install a package as a dependency in a project, and anyone with write permissions can publish a new package version.{% endif %} | +| Permissions | {% ifversion fpt or ghec %}The permissions for a package are either inherited from the repository where the package is hosted or, for packages in the {% data variables.product.prodname_container_registry %}, they can be defined for specific user or organization accounts. For more information, see "[Configuring a package’s access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." {% else %}Each package inherits the permissions of the repository where the package is hosted.

For example, anyone with read permissions for a repository can install a package as a dependency in a project, and anyone with write permissions can publish a new package version.{% endif %} | | Visibility | {% data reusables.package_registry.public-or-private-packages %} | For more information, see "[About permissions for {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## About billing for {% data variables.product.prodname_registry %} {% data reusables.package_registry.packages-billing %} {% data reusables.package_registry.packages-spending-limit-brief %} For more information, see "[About billing for {% data variables.product.prodname_registry %}](/billing/managing-billing-for-github-packages/about-billing-for-github-packages)." @@ -84,7 +85,7 @@ For more information about subdomain isolation, see "[Enabling subdomain isolati For more information about configuring your package client for use with {% data variables.product.prodname_registry %}, see "[Working with a {% data variables.product.prodname_registry %} registry](/packages/working-with-a-github-packages-registry)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} For more information about Docker and the {% data variables.product.prodname_container_registry %}, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)." {% endif %} ## Authenticating to {% data variables.product.prodname_registry %} @@ -95,8 +96,8 @@ For more information about Docker and the {% data variables.product.prodname_con ## Managing packages -{% ifversion fpt %} -You can delete a package in the {% data variables.product.product_name %} user interface or using the REST API. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." +{% ifversion fpt or ghec %} +You can delete a package in the {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} user interface or using the REST API. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." {% endif %} {% ifversion ghes > 3.0 %} @@ -111,13 +112,13 @@ You can delete a version of a private package in the {% data variables.product.p You can delete a version of a package in the {% data variables.product.product_name %} user interface or using the GraphQL API. {% endif %} -When you use the GraphQL API to query and delete private packages, you must use the same token you use to authenticate to {% data variables.product.prodname_registry %}. For more information, see "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" and "[Forming calls with GraphQL](/graphql/guides/forming-calls-with-graphql)." +When you use the GraphQL API to query and delete private packages, you must use the same token you use to authenticate to {% data variables.product.prodname_registry %}. For more information, see "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" and "[Forming calls with GraphQL]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/forming-calls-with-graphql)." You can configure webhooks to subscribe to package-related events, such as when a package is published or updated. For more information, see the "[`package` webhook event](/webhooks/event-payloads/#package)." ## Contacting support -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you have feedback or feature requests for {% data variables.product.prodname_registry %}, use the [feedback form for {% data variables.product.prodname_registry %}](https://support.github.com/contact/feedback?contact%5Bcategory%5D=github-packages). Contact {% data variables.contact.github_support %} about {% data variables.product.prodname_registry %} using [our contact form](https://support.github.com/contact?form%5Bsubject%5D=Re:%20GitHub%20Packages) if: diff --git a/content/packages/learn-github-packages/publishing-a-package.md b/content/packages/learn-github-packages/publishing-a-package.md index 74d4126c4f2d..d0f92d9ccbac 100644 --- a/content/packages/learn-github-packages/publishing-a-package.md +++ b/content/packages/learn-github-packages/publishing-a-package.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.package_registry.packages-ghes-release-stage %} @@ -21,13 +22,13 @@ You can help people understand and use your package by providing a description a {% data reusables.package_registry.public-or-private-packages %} A repository can be connected to more than one package. To prevent confusion, make sure the README and description clearly provide information about each package. -{% ifversion fpt %} +{% ifversion fpt or ghec %} If a new version of a package fixes a security vulnerability, you should publish a security advisory in your repository. {% data variables.product.prodname_dotcom %} reviews each published security advisory and may use it to send {% data variables.product.prodname_dependabot_alerts %} to affected repositories. For more information, see "[About GitHub Security Advisories](/github/managing-security-vulnerabilities/about-github-security-advisories)." {% endif %} ## Publishing a package -You can publish a package to {% data variables.product.prodname_registry %} using any {% ifversion fpt or ghae %}supported package client{% else %}package type enabled for your instance{% endif %} by following the same general guidelines. +You can publish a package to {% data variables.product.prodname_registry %} using any {% ifversion fpt or ghae or ghec %}supported package client{% else %}package type enabled for your instance{% endif %} by following the same general guidelines. 1. Create or use an existing access token with the appropriate scopes for the task you want to accomplish. For more information, see "[About permissions for {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)." 2. Authenticate to {% data variables.product.prodname_registry %} using your access token and the instructions for your package client. diff --git a/content/packages/learn-github-packages/viewing-packages.md b/content/packages/learn-github-packages/viewing-packages.md index ed16d7b433c2..25b312db18bd 100644 --- a/content/packages/learn-github-packages/viewing-packages.md +++ b/content/packages/learn-github-packages/viewing-packages.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' --- {% data reusables.package_registry.packages-ghes-release-stage %} @@ -22,18 +23,18 @@ versions: Your ability to view a package depends on several factors. By default, you can view all packages you have published. -Repository-scoped packages inherit their permissions and visibility from the repository that owns the package. The registries below use this type of permissions:{% ifversion not fpt %} +Repository-scoped packages inherit their permissions and visibility from the repository that owns the package. The registries below use this type of permissions:{% ifversion not fpt or ghec %} - Docker registry (`docker.pkg.github.com`){% endif %} - npm registry - RubyGems registry - Apache Maven registry - NuGet registry -{% ifversion fpt %} +{% ifversion fpt or ghec %} The Container registry offers you the option of granular permissions and visibility settings that can be customized for each package owned by a personal user or organization account. You can choose to use granular permissions or connect the package to a repository and inherit it's permissions. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)." {% endif %} -For more information, see "[About permissions for GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages){% ifversion fpt %}" and "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility){% endif %}." +For more information, see "[About permissions for GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages){% ifversion fpt or ghec %}" and "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility){% endif %}." {% data reusables.package_registry.package-page-info %} diff --git a/content/packages/managing-github-packages-using-github-actions-workflows/about-github-packages-and-github-actions.md b/content/packages/managing-github-packages-using-github-actions-workflows/about-github-packages-and-github-actions.md index df4fb995fd85..67e61dc1b0bb 100644 --- a/content/packages/managing-github-packages-using-github-actions-workflows/about-github-packages-and-github-actions.md +++ b/content/packages/managing-github-packages-using-github-actions-workflows/about-github-packages-and-github-actions.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Packages & Actions --- diff --git a/content/packages/managing-github-packages-using-github-actions-workflows/example-workflows-for-publishing-a-package.md b/content/packages/managing-github-packages-using-github-actions-workflows/example-workflows-for-publishing-a-package.md index 2bcdd4efe55f..61d86dc46aa3 100644 --- a/content/packages/managing-github-packages-using-github-actions-workflows/example-workflows-for-publishing-a-package.md +++ b/content/packages/managing-github-packages-using-github-actions-workflows/example-workflows-for-publishing-a-package.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Example workflows --- diff --git a/content/packages/managing-github-packages-using-github-actions-workflows/index.md b/content/packages/managing-github-packages-using-github-actions-workflows/index.md index fcf2d2234cbb..72001ff57a7f 100644 --- a/content/packages/managing-github-packages-using-github-actions-workflows/index.md +++ b/content/packages/managing-github-packages-using-github-actions-workflows/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /publishing-and-installing-a-package-with-github-actions - /example-workflows-for-publishing-a-package diff --git a/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md b/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md index d908bab8eb3c..aded45e89786 100644 --- a/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md +++ b/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Publish & install with Actions --- @@ -23,7 +24,7 @@ shortTitle: Publish & install with Actions You can extend the CI and CD capabilities of your repository by publishing or installing packages as part of your workflow. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Authenticating to the {% data variables.product.prodname_container_registry %} {% data reusables.package_registry.authenticate_with_pat_for_container_registry %} @@ -32,7 +33,7 @@ You can extend the CI and CD capabilities of your repository by publishing or in ### Authenticating to package registries on {% data variables.product.prodname_dotcom %} -{% ifversion fpt %}If you want your workflow to authenticate to {% data variables.product.prodname_registry %} to access a package registry other than the {% data variables.product.prodname_container_registry %} on {% data variables.product.product_name %}, then{% else %}To authenticate to package registries on {% data variables.product.product_name %},{% endif %} we recommend using the `GITHUB_TOKEN` that {% data variables.product.product_name %} automatically creates for your repository when you enable {% data variables.product.prodname_actions %} instead of a personal access token for authentication. {% ifversion fpt or ghes > 3.1 or ghae-next %}You should set the permissions for this access token in the workflow file to grant read access for the `contents` scope and write access for the `packages` scope. {% else %}It has read and write permissions for packages in the repository where the workflow runs. {% endif %}For forks, the `GITHUB_TOKEN` is granted read access for the parent repository. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." +{% ifversion fpt or ghec %}If you want your workflow to authenticate to {% data variables.product.prodname_registry %} to access a package registry other than the {% data variables.product.prodname_container_registry %} on {% data variables.product.product_location %}, then{% else %}To authenticate to package registries on {% data variables.product.product_name %},{% endif %} we recommend using the `GITHUB_TOKEN` that {% data variables.product.product_name %} automatically creates for your repository when you enable {% data variables.product.prodname_actions %} instead of a personal access token for authentication. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}You should set the permissions for this access token in the workflow file to grant read access for the `contents` scope and write access for the `packages` scope. {% else %}It has read and write permissions for packages in the repository where the workflow runs. {% endif %}For forks, the `GITHUB_TOKEN` is granted read access for the parent repository. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." You can reference the `GITHUB_TOKEN` in your workflow file using the {% raw %}`{{secrets.GITHUB_TOKEN}}`{% endraw %} context. For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/automating-your-workflow-with-github-actions/authenticating-with-the-github_token)." @@ -40,7 +41,7 @@ You can reference the `GITHUB_TOKEN` in your workflow file using the {% raw %}`{ {% note %} -**Note:** Repository-owned packages include RubyGems, npm, Apache Maven, NuGet, {% ifversion fpt %}and Gradle. {% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`.{% endif %} +**Note:** Repository-owned packages include RubyGems, npm, Apache Maven, NuGet, {% ifversion fpt or ghec %}and Gradle. {% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`.{% endif %} {% endnote %} @@ -48,7 +49,7 @@ When you enable GitHub Actions, GitHub installs a GitHub App on your repository. {% data variables.product.prodname_registry %} allows you to push and pull packages through the `GITHUB_TOKEN` available to a {% data variables.product.prodname_actions %} workflow. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## About permissions and package access for {% data variables.product.prodname_container_registry %} The {% data variables.product.prodname_container_registry %} (`ghcr.io`) allows users to create and administer containers as free-standing resources at the organization level. Containers can be owned by an organization or personal user account and you can customize access to each of your containers separately from repository permissions. @@ -81,11 +82,11 @@ You can use {% data variables.product.prodname_actions %} to automatically publi {% data reusables.package_registry.actions-configuration %} -The following example demonstrates how you can use {% data variables.product.prodname_actions %} to build {% ifversion not fpt %}and test{% endif %} your app, and then automatically create a Docker image and publish it to {% data variables.product.prodname_registry %}. +The following example demonstrates how you can use {% data variables.product.prodname_actions %} to build {% ifversion not fpt or ghec %}and test{% endif %} your app, and then automatically create a Docker image and publish it to {% data variables.product.prodname_registry %}. Create a new workflow file in your repository (such as `.github/workflows/deploy-image.yml`), and add the following YAML: -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.package_registry.publish-docker-image %} {% else %} @@ -178,7 +179,7 @@ on: -{% ifversion fpt %} +{% ifversion fpt or ghec %} @@ -288,7 +289,7 @@ build-and-push-image: {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} {% raw %} @@ -305,7 +306,7 @@ permissions: {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% raw %} @@ -400,7 +401,7 @@ with: -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% raw %} @@ -428,7 +429,7 @@ push: true -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% raw %} @@ -479,11 +480,11 @@ A few minutes after the workflow has completed, the new package will visible in You can install packages as part of your CI flow using {% data variables.product.prodname_actions %}. For example, you could configure a workflow so that anytime a developer pushes code to a pull request, the workflow resolves dependencies by downloading and installing packages hosted by {% data variables.product.prodname_registry %}. Then, the workflow can run CI tests that require the dependencies. -Installing packages hosted by {% data variables.product.prodname_registry %} through {% data variables.product.prodname_actions %} requires minimal configuration or additional authentication when you use the `GITHUB_TOKEN`.{% ifversion fpt %} Data transfer is also free when an action installs a package. For more information, see "[About billing for {% data variables.product.prodname_registry %}](/billing/managing-billing-for-github-packages/about-billing-for-github-packages)."{% endif %} +Installing packages hosted by {% data variables.product.prodname_registry %} through {% data variables.product.prodname_actions %} requires minimal configuration or additional authentication when you use the `GITHUB_TOKEN`.{% ifversion fpt or ghec %} Data transfer is also free when an action installs a package. For more information, see "[About billing for {% data variables.product.prodname_registry %}](/billing/managing-billing-for-github-packages/about-billing-for-github-packages)."{% endif %} {% data reusables.package_registry.actions-configuration %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Upgrading a workflow that accesses `ghcr.io` The {% data variables.product.prodname_container_registry %} supports the `GITHUB_TOKEN` for easy and secure authentication in your workflows. If your workflow is using a personal access token (PAT) to authenticate to `ghcr.io`, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. @@ -532,7 +533,7 @@ jobs: # Push image to GitHub Packages. # See also https://docs.docker.com/docker-hub/builds/ push: - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: packages: write contents: read{% endif %} diff --git a/content/packages/quickstart.md b/content/packages/quickstart.md index 7b816b0d5653..6a158eb85f85 100644 --- a/content/packages/quickstart.md +++ b/content/packages/quickstart.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Quickstart --- @@ -70,7 +71,7 @@ In this guide, you'll create a {% data variables.product.prodname_actions %} wor publish-gpr: needs: build - runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next %} + runs-on: ubuntu-latest{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} permissions: packages: write contents: read{% endif %} diff --git a/content/packages/working-with-a-github-packages-registry/index.md b/content/packages/working-with-a-github-packages-registry/index.md index 66b7357c28a6..8c976932778a 100644 --- a/content/packages/working-with-a-github-packages-registry/index.md +++ b/content/packages/working-with-a-github-packages-registry/index.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /working-with-the-container-registry - /working-with-the-docker-registry @@ -24,7 +25,7 @@ children: --- {% data reusables.package_registry.packages-ghes-release-stage %} {% data reusables.package_registry.packages-ghae-release-stage %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ![Diagram showing packages support for Docker, Container registry, RubyGems, npm, Apache Maven, NuGet, and Gradle](/assets/images/help/package-registry/packages-diagram-with-container-registry.png) {% else %} ![Diagram showing packages support for Docker, RubyGems, npm, Apache Maven, Gradle, NuGet, and Docker](/assets/images/help/package-registry/packages-diagram-without-container-registry.png) diff --git a/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md b/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md index 8ccd013673b2..b5b1def21bc3 100644 --- a/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md +++ b/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md @@ -8,6 +8,7 @@ redirect_from: - /packages/guides/migrating-to-github-container-registry-for-docker-images versions: fpt: '*' + ghec: '*' shortTitle: Migrate to Container registry --- diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md index d100fcbd6408..dc91500d2be9 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Apache Maven registry --- @@ -64,7 +65,7 @@ If your instance has subdomain isolation enabled: github - https://{% ifversion fpt %}maven.pkg.github.com{% else %}maven.HOSTNAME{% endif %}/OWNER/* + https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}maven.HOSTNAME{% endif %}/OWNER/* true @@ -142,7 +143,7 @@ For more information on creating a package, see the [maven.apache.org documentat github GitHub OWNER Apache Maven Packages - https://{% ifversion fpt %}maven.pkg.github.com{% else %}maven.HOSTNAME{% endif %}/OWNER/REPOSITORY + https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}maven.HOSTNAME{% endif %}/OWNER/REPOSITORY ```{% ifversion ghes %} @@ -190,4 +191,4 @@ To install an Apache Maven package from {% data variables.product.prodname_regis ## Further reading - "[Working with the Gradle registry](/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry)" -- "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" +- "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md index a211d2384ae6..48ed86228b59 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md @@ -14,6 +14,7 @@ redirect_from: - /packages/guides/enabling-improved-container-support versions: fpt: '*' + ghec: '*' shortTitle: Container registry --- diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md index 150b92bf929c..fefcdb5e2703 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-docker-registry.md @@ -1,6 +1,6 @@ --- title: Working with the Docker registry -intro: '{% ifversion fpt %}The Docker registry has now been replaced by the {% data variables.product.prodname_container_registry %}.{% else %}You can push and pull your Docker images using the {% data variables.product.prodname_registry %} Docker registry, which uses the package namespace `https://docker.pkg.github.com`.{% endif %}' +intro: '{% ifversion fpt or ghec %}The Docker registry has now been replaced by the {% data variables.product.prodname_container_registry %}.{% else %}You can push and pull your Docker images using the {% data variables.product.prodname_registry %} Docker registry, which uses the package namespace `https://docker.pkg.github.com`.{% endif %}' product: '{% data reusables.gated-features.packages %}' redirect_from: - /articles/configuring-docker-for-use-with-github-package-registry @@ -13,11 +13,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Docker registry --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data variables.product.prodname_dotcom %}'s Docker registry (which used the namespace `docker.pkg.github.com`) has been replaced by the {% data variables.product.prodname_container_registry %} (which uses the namespace `https://ghcr.io`). The {% data variables.product.prodname_container_registry %} offers benefits such as granular permissions and storage optimization for Docker images. @@ -55,7 +56,7 @@ You can authenticate to {% data variables.product.prodname_registry %} with Dock To keep your credentials secure, we recommend you save your personal access token in a local file on your computer and use Docker's `--password-stdin` flag, which reads your token from a local file. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% raw %} ```shell $ cat ~/TOKEN.txt | docker login https://docker.pkg.github.com -u USERNAME --password-stdin @@ -110,7 +111,7 @@ For more information, see "[Docker login](https://docs.docker.com/engine/referen > IMAGE_NAME VERSION IMAGE_ID 4 weeks ago 1.11MB ``` 2. Using the Docker image ID, tag the docker image, replacing *OWNER* with the name of the user or organization account that owns the repository, *REPOSITORY* with the name of the repository containing your project, *IMAGE_NAME* with name of the package or image,{% ifversion ghes or ghae %} *HOSTNAME* with the hostname of {% data variables.product.product_location %},{% endif %} and *VERSION* with package version at build time. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ```shell $ docker tag IMAGE_ID docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION ``` @@ -129,7 +130,7 @@ For more information, see "[Docker login](https://docs.docker.com/engine/referen {% endif %} {% endif %} 3. If you haven't already built a docker image for the package, build the image, replacing *OWNER* with the name of the user or organization account that owns the repository, *REPOSITORY* with the name of the repository containing your project, *IMAGE_NAME* with name of the package or image, *VERSION* with package version at build time,{% ifversion ghes or ghae %} *HOSTNAME* with the hostname of {% data variables.product.product_location %},{% endif %} and *PATH* to the image if it isn't in the current working directory. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ```shell $ docker build -t docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION PATH ``` @@ -148,7 +149,7 @@ For more information, see "[Docker login](https://docs.docker.com/engine/referen {% endif %} {% endif %} 4. Publish the image to {% data variables.product.prodname_registry %}. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ```shell $ docker push docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION ``` @@ -180,7 +181,7 @@ These examples assume your instance has subdomain isolation enabled. You can publish version 1.0 of the `monalisa` image to the `octocat/octo-app` repository using an image ID. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ```shell $ docker images @@ -213,7 +214,7 @@ $ docker push docker.HOSTNAME/octocat/octo-app/monalisa:1.0 You can publish a new Docker image for the first time and name it `monalisa`. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ```shell # Build the image with docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION # Assumes Dockerfile resides in the current working directory (.) @@ -240,7 +241,7 @@ $ docker push docker.HOSTNAME/octocat/octo-app/monalisa:1.0 You can use the `docker pull` command to install a docker image from {% data variables.product.prodname_registry %}, replacing *OWNER* with the name of the user or organization account that owns the repository, *REPOSITORY* with the name of the repository containing your project, *IMAGE_NAME* with name of the package or image,{% ifversion ghes or ghae %} *HOSTNAME* with the host name of {% data variables.product.product_location %}, {% endif %} and *TAG_NAME* with tag for the image you want to install. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ```shell $ docker pull docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:TAG_NAME ``` @@ -268,6 +269,6 @@ $ docker pull HOSTNAME/OWNER/REPOSITORY/IMAGE_NAME:TAG_NAME ## Further reading -- "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" +- "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" {% endif %} diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md index 9b02c81f34da..92f12983f8e9 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Gradle registry --- @@ -56,7 +57,7 @@ publishing { repositories { maven { name = "GitHubPackages" - url = uri("https://{% ifversion fpt %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") + url = uri("https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") credentials { username = project.findProperty("gpr.user") ?: System.getenv("USERNAME") password = project.findProperty("gpr.key") ?: System.getenv("TOKEN") @@ -83,7 +84,7 @@ subprojects { repositories { maven { name = "GitHubPackages" - url = uri("https://{% ifversion fpt %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") + url = uri("https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") credentials { username = project.findProperty("gpr.user") ?: System.getenv("USERNAME") password = project.findProperty("gpr.key") ?: System.getenv("TOKEN") @@ -109,7 +110,7 @@ publishing { repositories { maven { name = "GitHubPackages" - url = uri("https://{% ifversion fpt %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") + url = uri("https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") credentials { username = project.findProperty("gpr.user") as String? ?: System.getenv("USERNAME") password = project.findProperty("gpr.key") as String? ?: System.getenv("TOKEN") @@ -136,7 +137,7 @@ subprojects { repositories { maven { name = "GitHubPackages" - url = uri("https://{% ifversion fpt %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") + url = uri("https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") credentials { username = project.findProperty("gpr.user") as String? ?: System.getenv("USERNAME") password = project.findProperty("gpr.key") as String? ?: System.getenv("TOKEN") @@ -191,7 +192,7 @@ To use a published package from {% data variables.product.prodname_registry %}, ```shell repositories { maven { - url = uri("https://{% ifversion fpt %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") + url = uri("https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") credentials { username = project.findProperty("gpr.user") ?: System.getenv("USERNAME") password = project.findProperty("gpr.key") ?: System.getenv("TOKEN") @@ -203,7 +204,7 @@ To use a published package from {% data variables.product.prodname_registry %}, ```shell repositories { maven { - url = uri("https://{% ifversion fpt %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") + url = uri("https://{% ifversion fpt or ghec %}maven.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/REPOSITORY") credentials { username = project.findProperty("gpr.user") as String? ?: System.getenv("USERNAME") password = project.findProperty("gpr.key") as String? ?: System.getenv("TOKEN") @@ -215,4 +216,4 @@ To use a published package from {% data variables.product.prodname_registry %}, ## Further reading - "[Working with the Apache Maven registry](/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry)" -- "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" +- "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md index 40035db2f605..89e9e9cdd088 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: npm registry --- @@ -20,14 +21,14 @@ shortTitle: npm registry {% data reusables.package_registry.admins-can-configure-package-types %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Limits for published npm versions If you publish over 1,000 npm package versions to {% data variables.product.prodname_registry %}, you may see performance issues and timeouts occur during usage. In the future, to improve performance of the service, you won't be able to publish more than 1,000 versions of a package on {% data variables.product.prodname_dotcom %}. Any versions published before hitting this limit will still be readable. -If you reach this limit, consider deleting package versions or contact Support for help. When this limit is enforced, our documentation will be updated with a way to work around this limit. For more information, see "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" or "[Contacting Support](/packages/learn-github-packages/about-github-packages#contacting-support)." +If you reach this limit, consider deleting package versions or contact Support for help. When this limit is enforced, our documentation will be updated with a way to work around this limit. For more information, see "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" or "[Contacting Support](/packages/learn-github-packages/about-github-packages#contacting-support)." {% endif %} @@ -50,7 +51,7 @@ If your instance has subdomain isolation enabled: {% endif %} ```shell -//{% ifversion fpt %}npm.pkg.github.com{% else %}npm.HOSTNAME/{% endif %}/:_authToken=TOKEN +//{% ifversion fpt or ghec %}npm.pkg.github.com{% else %}npm.HOSTNAME/{% endif %}/:_authToken=TOKEN ``` {% ifversion ghes %} @@ -70,7 +71,7 @@ If your instance has subdomain isolation enabled: {% endif %} ```shell -$ npm login --scope=@OWNER --registry=https://{% ifversion fpt %}npm.pkg.github.com{% else %}npm.HOSTNAME/{% endif %} +$ npm login --scope=@OWNER --registry=https://{% ifversion fpt or ghec %}npm.pkg.github.com{% else %}npm.HOSTNAME/{% endif %} > Username: USERNAME > Password: TOKEN @@ -125,7 +126,7 @@ You can use `publishConfig` element in the *package.json* file to specify the re {% endif %} ```shell "publishConfig": { - "registry":"https://{% ifversion fpt %}npm.pkg.github.com{% else %}npm.HOSTNAME/{% endif %}" + "registry":"https://{% ifversion fpt or ghec %}npm.pkg.github.com{% else %}npm.HOSTNAME/{% endif %}" }, ``` {% ifversion ghes %} @@ -148,7 +149,7 @@ To ensure the repository's URL is correct, replace REPOSITORY with the name of t {% data variables.product.prodname_registry %} will match the repository based on the URL, instead of based on the package name. ```shell -"repository":"https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY", +"repository":"https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY", ``` ## Installing a package @@ -157,7 +158,7 @@ You can install packages from {% data variables.product.prodname_registry %} by By default, you can add packages from one organization. For more information, see "[Installing packages from other organizations](#installing-packages-from-other-organizations)." -You also need to add the *.npmrc* file to your project so that all requests to install packages will {% ifversion ghae %}be routed to{% else %}go through{% endif %} {% data variables.product.prodname_registry %}. {% ifversion fpt or ghes > 2.21 %}When you route all package requests through {% data variables.product.prodname_registry %}, you can use both scoped and unscoped packages from *npmjs.org*. For more information, see "[npm-scope](https://docs.npmjs.com/misc/scope)" in the npm documentation.{% endif %} +You also need to add the *.npmrc* file to your project so that all requests to install packages will {% ifversion ghae %}be routed to{% else %}go through{% endif %} {% data variables.product.prodname_registry %}. {% ifversion fpt or ghes > 2.21 or ghec %}When you route all package requests through {% data variables.product.prodname_registry %}, you can use both scoped and unscoped packages from *npmjs.org*. For more information, see "[npm-scope](https://docs.npmjs.com/misc/scope)" in the npm documentation.{% endif %} {% ifversion ghae %} By default, you can only use npm packages hosted on your enterprise, and you will not be able to use unscoped packages. For more information on package scoping, see "[npm-scope](https://docs.npmjs.com/misc/scope)" in the npm documentation. If required, {% data variables.product.prodname_dotcom %} support can enable an upstream proxy to npmjs.org. Once an upstream proxy is enabled, if a requested package isn't found on your enterprise, {% data variables.product.prodname_registry %} makes a proxy request to npmjs.org. @@ -196,8 +197,8 @@ If your instance has subdomain isolation enabled: {% endif %} ```shell -@OWNER:registry=https://{% ifversion fpt %}npm.pkg.github.com{% else %}npm.HOSTNAME{% endif %} -@OWNER:registry=https://{% ifversion fpt %}npm.pkg.github.com{% else %}npm.HOSTNAME{% endif %} +@OWNER:registry=https://{% ifversion fpt or ghec %}npm.pkg.github.com{% else %}npm.HOSTNAME{% endif %} +@OWNER:registry=https://{% ifversion fpt or ghec %}npm.pkg.github.com{% else %}npm.HOSTNAME{% endif %} ``` {% ifversion ghes %} @@ -217,4 +218,4 @@ If your instance has subdomain isolation disabled: ## Further reading -- "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" +- "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md index 367dbad503a4..83161ef40d6e 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: NuGet registry --- @@ -30,7 +31,7 @@ shortTitle: NuGet registry Use the following command to authenticate to {% data variables.product.prodname_registry %} in a {% data variables.product.prodname_actions %} workflow using the `GITHUB_TOKEN` instead of hardcoding a token in a nuget.config file in the repository: ```shell -dotnet nuget add source --username USERNAME --password {%raw%}${{ secrets.GITHUB_TOKEN }}{% endraw %} --store-password-in-clear-text --name github "https://{% ifversion fpt %}nuget.pkg.github.com{% else %}nuget.HOSTNAME{% endif %}/OWNER/index.json" +dotnet nuget add source --username USERNAME --password {%raw%}${{ secrets.GITHUB_TOKEN }}{% endraw %} --store-password-in-clear-text --name github "https://{% ifversion fpt or ghec %}nuget.pkg.github.com{% else %}nuget.HOSTNAME{% endif %}/OWNER/index.json" ``` {% data reusables.package_registry.authenticate-packages-github-token %} @@ -55,7 +56,7 @@ You must replace: - + @@ -88,12 +89,12 @@ If your instance has subdomain isolation disabled: ## Publishing a package -You can publish a package to {% data variables.product.prodname_registry %} by authenticating with a *nuget.config* file{% ifversion fpt or ghes > 2.22 or ghae %}, or by using the `--api-key` command line option with your {% data variables.product.prodname_dotcom %} personal access token (PAT){% endif %}. +You can publish a package to {% data variables.product.prodname_registry %} by authenticating with a *nuget.config* file{% ifversion fpt or ghes > 2.22 or ghae or ghec %}, or by using the `--api-key` command line option with your {% data variables.product.prodname_dotcom %} personal access token (PAT){% endif %}. -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ### Publishing a package using a GitHub PAT as your API key -If you don't already have a PAT to use for your {% data variables.product.prodname_dotcom %} account, see "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)." +If you don't already have a PAT to use for your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, see "[Creating a personal access token](/github/authenticating-to-github/creating-a-personal-access-token)." 1. Create a new project. ```shell @@ -138,7 +139,7 @@ When publishing, you need to use the same value for `OWNER` in your *csproj* fil Octocat GitHub This package adds an Octocat! - https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY + https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY @@ -172,7 +173,7 @@ For example, the *OctodogApp* and *OctocatApp* projects will publish to the same Octodog GitHub This package adds an Octodog! - https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/octo-org/octo-cats-and-dogs + https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/octo-org/octo-cats-and-dogs @@ -189,7 +190,7 @@ For example, the *OctodogApp* and *OctocatApp* projects will publish to the same Octocat GitHub This package adds an Octocat! - https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/octo-org/octo-cats-and-dogs + https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/octo-org/octo-cats-and-dogs @@ -213,7 +214,7 @@ Using packages from {% data variables.product.prodname_dotcom %} in your project Octocat GitHub This package adds an Octocat! - https://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY + https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY @@ -234,4 +235,4 @@ Your NuGet package may fail to push if the `RepositoryUrl` in *.csproj* is not s ## Further reading -- "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" +- "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" diff --git a/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md b/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md index 4d05cc577f5f..7afbca5c42b3 100644 --- a/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md +++ b/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: RubyGems registry --- @@ -62,7 +63,7 @@ For example, you would create or edit a *~/.gem/credentials* to include the foll :github: Bearer TOKEN ``` -To install gems, you need to authenticate to {% data variables.product.prodname_registry %} by editing the *~/.gemrc* file for your project to include `https://USERNAME:TOKEN@{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/`. You must replace: +To install gems, you need to authenticate to {% data variables.product.prodname_registry %} by editing the *~/.gemrc* file for your project to include `https://USERNAME:TOKEN@{% ifversion fpt or ghec %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/`. You must replace: - `USERNAME` with your {% data variables.product.prodname_dotcom %} username. - `TOKEN` with your personal access token. - `OWNER` with the name of the user or organization account that owns the repository containing your project.{% ifversion ghes %} @@ -79,7 +80,7 @@ If you don't have a *~/.gemrc* file, create a new *~/.gemrc* file using this exa :bulk_threshold: 1000 :sources: - https://rubygems.org/ -- https://USERNAME:TOKEN@{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/ +- https://USERNAME:TOKEN@{% ifversion fpt or ghec %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER/ :update_sources: true :verbose: true @@ -88,7 +89,7 @@ If you don't have a *~/.gemrc* file, create a new *~/.gemrc* file using this exa To authenticate with Bundler, configure Bundler to use your personal access token, replacing *USERNAME* with your {% data variables.product.prodname_dotcom %} username, *TOKEN* with your personal access token, and *OWNER* with the name of the user or organization account that owns the repository containing your project.{% ifversion ghes %} Replace `REGISTRY-URL` with the URL for your instance's Rubygems registry. If your instance has subdomain isolation enabled, use `rubygems.HOSTNAME`. If your instance has subdomain isolation disabled, use `HOSTNAME/_registry/rubygems`. In either case, replace *HOSTNAME* with the hostname of your {% data variables.product.prodname_ghe_server %} instance.{% elsif ghae %}Replace `REGISTRY-URL` with the URL for your instance's Rubygems registry, `rubygems.HOSTNAME`. Replace *HOSTNAME* with the hostname of {% data variables.product.product_location %}.{% endif %} ```shell -$ bundle config https://{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER USERNAME:TOKEN +$ bundle config https://{% ifversion fpt or ghec %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER USERNAME:TOKEN ``` ## Publishing a package @@ -106,7 +107,7 @@ $ bundle config https://{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGI ```shell $ gem push --key github \ - --host https://{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER \ + --host https://{% ifversion fpt or ghec %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER \ OCTO-GEM-0.0.1.gem ``` @@ -115,7 +116,7 @@ $ bundle config https://{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGI To publish multiple gems to the same repository, you can include the URL to the {% data variables.product.prodname_dotcom %} repository in the `github_repo` field in `gem.metadata`. If you include this field, {% data variables.product.prodname_dotcom %} matches the repository based on this value, instead of using the gem name.{% ifversion ghes or ghae %} Replace *HOSTNAME* with the host name of {% data variables.product.product_location %}.{% endif %} ```ruby -gem.metadata = { "github_repo" => "ssh://{% ifversion fpt %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY" } +gem.metadata = { "github_repo" => "ssh://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/OWNER/REPOSITORY" } ``` ## Installing a package @@ -130,7 +131,7 @@ You can use gems from {% data variables.product.prodname_registry %} much like y gem "rails" - source "https://{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER" do + source "https://{% ifversion fpt or ghec %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER" do gem "GEM NAME" end ``` @@ -138,7 +139,7 @@ You can use gems from {% data variables.product.prodname_registry %} much like y 3. For Bundler versions earlier than 1.7.0, you need to add a new global `source`. For more information on using Bundler, see the [bundler.io documentation](http://bundler.io/v1.5/gemfile.html). ```ruby - source "https://{% ifversion fpt %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER" + source "https://{% ifversion fpt or ghec %}rubygems.pkg.github.com{% else %}REGISTRY-URL{% endif %}/OWNER" source "https://rubygems.org" gem "rails" @@ -152,4 +153,4 @@ You can use gems from {% data variables.product.prodname_registry %} much like y ## Further reading -- "{% ifversion fpt or ghes > 3.0 %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" +- "{% ifversion fpt or ghes > 3.0 or ghec %}[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package){% elsif ghes < 3.1 or ghae %}[Deleting a package](/packages/learn-github-packages/deleting-a-package){% endif %}" diff --git a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md index 541ae9a9530a..5899ad36515b 100644 --- a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md +++ b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages.md @@ -10,6 +10,7 @@ redirect_from: product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' + ghec: '*' topics: - Pages shortTitle: Custom domains in GitHub Pages diff --git a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/index.md b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/index.md index 7e7e63cb8378..664cac5cc901 100644 --- a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/index.md +++ b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/index.md @@ -14,6 +14,7 @@ redirect_from: product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' + ghec: '*' topics: - Pages children: diff --git a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md index 17d9d6042f64..d0b708b3d6de 100644 --- a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md +++ b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md @@ -14,6 +14,7 @@ redirect_from: product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' + ghec: '*' topics: - Pages shortTitle: Manage a custom domain diff --git a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md index 882b5d870ac9..742d4a3c9f52 100644 --- a/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md +++ b/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md @@ -10,6 +10,7 @@ redirect_from: product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' + ghec: '*' topics: - Pages shortTitle: Troubleshoot a custom domain diff --git a/content/pages/getting-started-with-github-pages/about-github-pages.md b/content/pages/getting-started-with-github-pages/about-github-pages.md index bbc18cc4ba84..e69f6af355a0 100644 --- a/content/pages/getting-started-with-github-pages/about-github-pages.md +++ b/content/pages/getting-started-with-github-pages/about-github-pages.md @@ -1,6 +1,6 @@ --- title: About GitHub Pages -intro: 'You can use {% data variables.product.prodname_pages %} to host a website about yourself, your organization, or your project directly from a {% data variables.product.product_name %} repository.' +intro: 'You can use {% data variables.product.prodname_pages %} to host a website about yourself, your organization, or your project directly from a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}.' redirect_from: - /articles/what-are-github-pages/ - /articles/what-is-github-pages/ @@ -15,6 +15,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages --- @@ -23,33 +24,33 @@ topics: {% data variables.product.prodname_pages %} is a static site hosting service that takes HTML, CSS, and JavaScript files straight from a repository on {% data variables.product.product_name %}, optionally runs the files through a build process, and publishes a website. You can see examples of {% data variables.product.prodname_pages %} sites in the [{% data variables.product.prodname_pages %} examples collection](https://github.com/collections/github-pages-examples). -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can host your site on {% data variables.product.prodname_dotcom %}'s `github.io` domain or your own custom domain. For more information, see "[Using a custom domain with {% data variables.product.prodname_pages %}](/articles/using-a-custom-domain-with-github-pages)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.pages.about-private-publishing %} For more information, see "[Changing the visibility of your {% data variables.product.prodname_pages %} site](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site)." {% endif %} To get started, see "[Creating a {% data variables.product.prodname_pages %} site](/articles/creating-a-github-pages-site)." -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} Organization owners can disable the publication of {% data variables.product.prodname_pages %} sites from the organization's repositories. For more information, see "[Managing the publication of {% data variables.product.prodname_pages %} sites for your organization](/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization)." {% endif %} ## Types of {% data variables.product.prodname_pages %} sites -There are three types of {% data variables.product.prodname_pages %} sites: project, user, and organization. Project sites are connected to a specific project hosted on {% data variables.product.product_name %}, such as a JavaScript library or a recipe collection. User and organization sites are connected to a specific {% data variables.product.product_name %} account. +There are three types of {% data variables.product.prodname_pages %} sites: project, user, and organization. Project sites are connected to a specific project hosted on {% data variables.product.product_name %}, such as a JavaScript library or a recipe collection. User and organization sites are connected to a specific account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. -To publish a user site, you must create a repository owned by your user account that's named {% ifversion fpt %}`.github.io`{% else %}`.`{% endif %}. To publish an organization site, you must create a repository owned by an organization that's named {% ifversion fpt %}`.github.io`{% else %}`.`{% endif %}. {% ifversion fpt %}Unless you're using a custom domain, user and organization sites are available at `http(s)://.github.io` or `http(s)://.github.io`.{% elsif ghae %}User and organization sites are available at `http(s)://pages./` or `http(s)://pages./`.{% endif %} +To publish a user site, you must create a repository owned by your user account that's named {% ifversion fpt or ghec %}`.github.io`{% else %}`.`{% endif %}. To publish an organization site, you must create a repository owned by an organization that's named {% ifversion fpt or ghec %}`.github.io`{% else %}`.`{% endif %}. {% ifversion fpt or ghec %}Unless you're using a custom domain, user and organization sites are available at `http(s)://.github.io` or `http(s)://.github.io`.{% elsif ghae %}User and organization sites are available at `http(s)://pages./` or `http(s)://pages./`.{% endif %} -The source files for a project site are stored in the same repository as their project. {% ifversion fpt %}Unless you're using a custom domain, project sites are available at `http(s)://.github.io/` or `http(s)://.github.io/`.{% elsif ghae %}Project sites are available at `http(s)://pages.///` or `http(s)://pages.///`.{% endif %} +The source files for a project site are stored in the same repository as their project. {% ifversion fpt or ghec %}Unless you're using a custom domain, project sites are available at `http(s)://.github.io/` or `http(s)://.github.io/`.{% elsif ghae %}Project sites are available at `http(s)://pages.///` or `http(s)://pages.///`.{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you publish your site privately, the URL for your site will be different. For more information, see "[Changing the visibility of your {% data variables.product.prodname_pages %} site](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} For more information about how custom domains affect the URL for your site, see "[About custom domains and {% data variables.product.prodname_pages %}](/articles/about-custom-domains-and-github-pages)." {% endif %} @@ -74,13 +75,13 @@ The publishing source for your {% data variables.product.prodname_pages %} site {% data reusables.pages.private_pages_are_public_warning %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} If the default publishing source exists in your repository, {% data variables.product.prodname_pages %} will automatically publish a site from that source. The default publishing source for user and organization sites is the root of the default branch for the repository. The default publishing source for project sites is the root of the `gh-pages` branch. If you want to keep the source files for your site in a different location, you can change the publishing source for your site. You can publish your site from any branch in the repository, either from the root of the repository on that branch, `/`, or from the `/docs` folder on that branch. For more information, see "[Configuring a publishing source for your {% data variables.product.prodname_pages %} site](/articles/configuring-a-publishing-source-for-your-github-pages-site#choosing-a-publishing-source)." -If you choose the `/docs` folder of any branch as your publishing source, {% data variables.product.prodname_pages %} will read everything to publish your site{% ifversion fpt %}, including the _CNAME_ file,{% endif %} from the `/docs` folder.{% ifversion fpt %} For example, when you edit your custom domain through the {% data variables.product.prodname_pages %} settings, the custom domain will write to `/docs/CNAME`. For more information about _CNAME_ files, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %} +If you choose the `/docs` folder of any branch as your publishing source, {% data variables.product.prodname_pages %} will read everything to publish your site{% ifversion fpt or ghec %}, including the _CNAME_ file,{% endif %} from the `/docs` folder.{% ifversion fpt or ghec %} For example, when you edit your custom domain through the {% data variables.product.prodname_pages %} settings, the custom domain will write to `/docs/CNAME`. For more information about _CNAME_ files, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %} {% else %} @@ -90,7 +91,7 @@ The default publishing source for a project site is the `gh-pages` branch. If th Project sites can also be published from the `master` branch or a `/docs` folder on the `master` branch. To publish your site from one of these sources, you must configure a different publishing source. For more information, see "[Configuring a publishing source for your {% data variables.product.prodname_pages %} site](/articles/configuring-a-publishing-source-for-your-github-pages-site#choosing-a-publishing-source)." -If you choose the `/docs` folder of the `master` branch as your publishing source, {% data variables.product.prodname_pages %} will read everything to publish your site{% ifversion fpt %}, including the _CNAME_ file,{% endif %} from the `/docs` folder.{% ifversion fpt %} For example, when you edit your custom domain through the {% data variables.product.prodname_pages %} settings, the custom domain will write to `/docs/CNAME`. For more information about _CNAME_ files, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %} +If you choose the `/docs` folder of the `master` branch as your publishing source, {% data variables.product.prodname_pages %} will read everything to publish your site{% ifversion fpt or ghec %}, including the _CNAME_ file,{% endif %} from the `/docs` folder.{% ifversion fpt or ghec %} For example, when you edit your custom domain through the {% data variables.product.prodname_pages %} settings, the custom domain will write to `/docs/CNAME`. For more information about _CNAME_ files, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %} You cannot publish your project site from any other branch, even if the default branch is not `master` or `gh-pages`. @@ -106,18 +107,18 @@ You cannot publish your project site from any other branch, even if the default ## Guidelines for using {% data variables.product.prodname_pages %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} - {% data variables.product.prodname_pages %} sites created after June 15, 2016 and using `github.io` domains are served over HTTPS. If you created your site before June 15, 2016, you can enable HTTPS support for traffic to your site. For more information, see "[Securing your {% data variables.product.prodname_pages %} with HTTPS](/articles/securing-your-github-pages-site-with-https)." - {% data reusables.pages.no_sensitive_data_pages %} -- Your use of {% data variables.product.prodname_pages %} is subject to the [GitHub Terms of Service](/articles/github-terms-of-service/), including the prohibition on reselling. +- Your use of {% data variables.product.prodname_pages %} is subject to the [GitHub Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service/), including the prohibition on reselling. ### Usage limits {% endif %} {% data variables.product.prodname_pages %} sites are subject to the following usage limits: - - {% data variables.product.prodname_pages %} source repositories have a recommended limit of 1GB.{% ifversion fpt %} For more information, see "[What is my disk quota?"](/articles/what-is-my-disk-quota/#file-and-repository-size-limitations){% endif %} + - {% data variables.product.prodname_pages %} source repositories have a recommended limit of 1GB.{% ifversion fpt or ghec %} For more information, see "[What is my disk quota?"](/articles/what-is-my-disk-quota/#file-and-repository-size-limitations){% endif %} - Published {% data variables.product.prodname_pages %} sites may be no larger than 1 GB. -{% ifversion fpt %} +{% ifversion fpt or ghec %} - {% data variables.product.prodname_pages %} sites have a *soft* bandwidth limit of 100GB per month. - {% data variables.product.prodname_pages %} sites have a *soft* limit of 10 builds per hour. @@ -127,7 +128,7 @@ If your site exceeds these usage quotas, we may not be able to serve your site, {% data variables.product.prodname_pages %} is not intended for or allowed to be used as a free web hosting service to run your online business, e-commerce site, or any other website that is primarily directed at either facilitating commercial transactions or providing commercial software as a service (SaaS). -In addition, {% data variables.product.prodname_dotcom %} does not allow {% data variables.product.prodname_pages %} to be used for certain purposes or activities. For a list of prohibited uses, see "[{% data variables.product.prodname_dotcom %}'s Additional Product Terms for {% data variables.product.prodname_pages %}](/github/site-policy/github-additional-product-terms#4-pages)." +In addition, {% data variables.product.prodname_dotcom %} does not allow {% data variables.product.prodname_pages %} to be used for certain purposes or activities. For a list of prohibited uses, see "[{% data variables.product.prodname_dotcom %}'s Additional Product Terms for {% data variables.product.prodname_pages %}](/free-pro-team@latest/github/site-policy/github-terms-for-additional-products-and-features#pages)." {% endif %} ## MIME types on {% data variables.product.prodname_pages %} diff --git a/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md b/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md index cc70e384bfff..894f2b5f1be1 100644 --- a/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md +++ b/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md @@ -9,6 +9,7 @@ redirect_from: product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' + ghec: '*' topics: - Pages shortTitle: Add theme to a Pages site diff --git a/content/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site.md b/content/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site.md index 540bcc9f17f5..a4693fa9adb4 100644 --- a/content/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site.md +++ b/content/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site.md @@ -4,6 +4,7 @@ intro: You can manage access control for your project site by publishing the sit product: '{% data reusables.gated-features.private-pages %}' versions: fpt: '*' + ghec: '*' permissions: 'People with admin permissions for a repository can change the visibility of a {% data variables.product.prodname_pages %} site.' redirect_from: - /github/working-with-github-pages/changing-the-visibility-of-your-github-pages-site @@ -14,7 +15,7 @@ shortTitle: Change visibility of site With access control for {% data variables.product.prodname_pages %}, you can restrict access to your {% data variables.product.prodname_pages %} site by publishing the site privately. A privately published site can only be accessed by people with read access to the repository the site is published from. You can use privately published sites to share your internal documentation or knowledge base with members of your enterprise. -If your enterprise uses {% data variables.product.prodname_emus %}, all {% data variables.product.prodname_pages %} sites are privately published. For more information about {% data variables.product.prodname_emus %}, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +If your enterprise uses {% data variables.product.prodname_emus %}, all {% data variables.product.prodname_pages %} sites are privately published. For more information about {% data variables.product.prodname_emus %}, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." If your organization uses {% data variables.product.prodname_ghe_cloud %} without {% data variables.product.prodname_emus %}, you can choose to publish your sites privately or publicly to anyone on the internet. Access control is available for project sites that are published from a private or internal repository that are owned by the organization. You cannot manage access control for an organization site. For more information about the types of {% data variables.product.prodname_pages %} sites, see "[About {% data variables.product.prodname_pages %}](/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites)." diff --git a/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md b/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md index ba3142538a42..2a6558970bd2 100644 --- a/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md +++ b/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Configure publishing source @@ -25,7 +26,7 @@ Before you configure a publishing source, make sure the branch{% ifversion ghes {% data reusables.pages.navigate-site-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} 3. Under "{% data variables.product.prodname_pages %}", use the **None** or **Branch** drop-down menu and select a publishing source. ![Drop-down menu to select a publishing source](/assets/images/help/pages/publishing-source-drop-down.png) 4. Optionally, use the drop-down menu to select a folder for your publishing source. @@ -40,4 +41,4 @@ Before you configure a publishing source, make sure the branch{% ifversion ghes {% data reusables.pages.admin-must-push %} -If you choose the `docs` folder on {% ifversion fpt or ghes > 2.22 or ghae %}any{% else %}the `master`{% endif %} branch as your publishing source, then later remove the `/docs` folder from that branch in your repository, your site won't build and you'll get a page build error message for a missing `/docs` folder. For more information, see "[Troubleshooting Jekyll build errors for {% data variables.product.prodname_pages %} sites](/articles/troubleshooting-jekyll-build-errors-for-github-pages-sites#missing-docs-folder)." +If you choose the `docs` folder on {% ifversion fpt or ghes > 2.22 or ghae or ghec %}any{% else %}the `master`{% endif %} branch as your publishing source, then later remove the `/docs` folder from that branch in your repository, your site won't build and you'll get a page build error message for a missing `/docs` folder. For more information, see "[Troubleshooting Jekyll build errors for {% data variables.product.prodname_pages %} sites](/articles/troubleshooting-jekyll-build-errors-for-github-pages-sites#missing-docs-folder)." diff --git a/content/pages/getting-started-with-github-pages/creating-a-custom-404-page-for-your-github-pages-site.md b/content/pages/getting-started-with-github-pages/creating-a-custom-404-page-for-your-github-pages-site.md index bcaa2b9491e9..8e2f7d98c490 100644 --- a/content/pages/getting-started-with-github-pages/creating-a-custom-404-page-for-your-github-pages-site.md +++ b/content/pages/getting-started-with-github-pages/creating-a-custom-404-page-for-your-github-pages-site.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Create custom 404 page diff --git a/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md b/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md index de7f506981e7..85924ea7052d 100644 --- a/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md +++ b/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Create a GitHub Pages site @@ -43,7 +44,7 @@ shortTitle: Create a GitHub Pages site 4. In the root of the publishing source, create a new file called `index.md` that contains the content you want to display on the main page of your site. {% data reusables.pages.configure-publishing-source %} {% data reusables.repositories.sidebar-settings %} -{% data reusables.pages.sidebar-pages %}{% ifversion fpt %} +{% data reusables.pages.sidebar-pages %}{% ifversion fpt or ghec %} {% data reusables.pages.choose-visibility %}{% endif %} {% data reusables.pages.visit-site %} @@ -51,9 +52,9 @@ shortTitle: Create a GitHub Pages site ## Next steps -You can add more pages to your site by creating more new files. Each file will be available on your site in the same directory structure as your publishing source. For example, if the publishing source for your project site is the `gh-pages` branch, and you create a new file called `/about/contact-us.md` on the `gh-pages` branch, the file will be available at {% ifversion fpt %}`https://.github.io//{% else %}`http(s):///pages///{% endif %}about/contact-us.html`. +You can add more pages to your site by creating more new files. Each file will be available on your site in the same directory structure as your publishing source. For example, if the publishing source for your project site is the `gh-pages` branch, and you create a new file called `/about/contact-us.md` on the `gh-pages` branch, the file will be available at {% ifversion fpt or ghec %}`https://.github.io//{% else %}`http(s):///pages///{% endif %}about/contact-us.html`. -You can also add a theme to customize your site’s look and feel. For more information, see {% ifversion fpt %}"[Adding a theme to your {% data variables.product.prodname_pages %} site with the theme chooser](/articles/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser){% else %}"[Adding a theme to your {% data variables.product.prodname_pages %} site using Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll){% endif %}." +You can also add a theme to customize your site’s look and feel. For more information, see {% ifversion fpt or ghec %}"[Adding a theme to your {% data variables.product.prodname_pages %} site with the theme chooser](/articles/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser){% else %}"[Adding a theme to your {% data variables.product.prodname_pages %} site using Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll){% endif %}." To customize your site even more, you can use Jekyll, a static site generator with built-in support for {% data variables.product.prodname_pages %}. For more information, see "[About {% data variables.product.prodname_pages %} and Jekyll](/articles/about-github-pages-and-jekyll)." diff --git a/content/pages/getting-started-with-github-pages/index.md b/content/pages/getting-started-with-github-pages/index.md index 0e0bf6eccab3..1f26cd00e5cb 100644 --- a/content/pages/getting-started-with-github-pages/index.md +++ b/content/pages/getting-started-with-github-pages/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages children: diff --git a/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md b/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md index ea4cda1ba10b..a996ed33d926 100644 --- a/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md +++ b/content/pages/getting-started-with-github-pages/securing-your-github-pages-site-with-https.md @@ -7,6 +7,7 @@ redirect_from: - /github/working-with-github-pages/securing-your-github-pages-site-with-https versions: fpt: '*' + ghec: '*' topics: - Pages shortTitle: Secure site with HTTPS diff --git a/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md b/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md index d4a39131a55e..8520545ac302 100644 --- a/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md +++ b/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Unpublish Pages site @@ -23,7 +24,7 @@ shortTitle: Unpublish Pages site {% data reusables.repositories.navigate-to-repo %} 2. If a `gh-pages` branch exists in the repository, delete the `gh-pages` branch. For more information, see "[Creating and deleting branches within your repository](/articles/creating-and-deleting-branches-within-your-repository#deleting-a-branch)." -3. If the `gh-pages` branch was your publishing source, {% ifversion fpt %}skip to step 6{% else %}your site is now unpublished and you can skip the remaining steps{% endif %}. +3. If the `gh-pages` branch was your publishing source, {% ifversion fpt or ghec %}skip to step 6{% else %}your site is now unpublished and you can skip the remaining steps{% endif %}. {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} 5. Under "{% data variables.product.prodname_pages %}", use the **Source** drop-down menu and select **None.** diff --git a/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md b/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md index 9ba39a7fdde5..4e4cfcf721e2 100644 --- a/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md +++ b/content/pages/getting-started-with-github-pages/using-submodules-with-github-pages.md @@ -8,6 +8,7 @@ redirect_from: product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' + ghec: '*' topics: - Pages shortTitle: Use submodules with Pages diff --git a/content/pages/index.md b/content/pages/index.md index 36a88d55173e..de84b76bcbae 100644 --- a/content/pages/index.md +++ b/content/pages/index.md @@ -1,7 +1,7 @@ --- title: GitHub Pages Documentation shortTitle: GitHub Pages -intro: 'You can create a website directly from a {% data variables.product.product_name %} repository.' +intro: 'You can create a website directly from a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}.' redirect_from: - /categories/20/articles/ - /categories/95/articles/ @@ -16,6 +16,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages children: diff --git a/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md b/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md index 3f506f28690c..4cef579a69ff 100644 --- a/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md +++ b/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md @@ -23,6 +23,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: GitHub Pages & Jekyll @@ -73,10 +74,10 @@ You can add `site.github` to a post or page to add any repository references met {% data reusables.pages.add-jekyll-theme %} For more information, see "[Themes](https://jekyllrb.com/docs/themes/)" in the Jekyll documentation. -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can add a supported theme to your site on {% data variables.product.prodname_dotcom %}. For more information, see "[Supported themes](https://pages.github.com/themes/)" on the {% data variables.product.prodname_pages %} site and "[Adding a theme to your {% data variables.product.prodname_pages %} site with the theme chooser](/articles/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser)." -To use any other open source Jekyll theme hosted on {% data variables.product.prodname_dotcom %}, you can add the theme manually.{% else %} You can add a theme to your site manually.{% endif %} For more information, see{% ifversion fpt %} [themes hosted on {% data variables.product.prodname_dotcom %}](https://github.com/topics/jekyll-theme) and{% else %} "[Supported themes](https://pages.github.com/themes/)" on the {% data variables.product.prodname_pages %} site and{% endif %} "[Adding a theme to your {% data variables.product.prodname_pages %} site using Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)." +To use any other open source Jekyll theme hosted on {% data variables.product.prodname_dotcom %}, you can add the theme manually.{% else %} You can add a theme to your site manually.{% endif %} For more information, see{% ifversion fpt or ghec %} [themes hosted on {% data variables.product.prodname_dotcom %}](https://github.com/topics/jekyll-theme) and{% else %} "[Supported themes](https://pages.github.com/themes/)" on the {% data variables.product.prodname_pages %} site and{% endif %} "[Adding a theme to your {% data variables.product.prodname_pages %} site using Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)." You can override any of your theme's defaults by editing the theme's files. For more information, see your theme's documentation and "[Overriding your theme's defaults](https://jekyllrb.com/docs/themes/#overriding-theme-defaults)" in the Jekyll documentation. diff --git a/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md b/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md index a9059e4ea8fb..888b3f432dfd 100644 --- a/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md +++ b/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Jekyll build errors for Pages @@ -18,7 +19,7 @@ shortTitle: Jekyll build errors for Pages ## About Jekyll build errors -Sometimes, {% data variables.product.prodname_pages %} will not attempt to build your site after you push changes to your site's publishing source.{% ifversion fpt %} +Sometimes, {% data variables.product.prodname_pages %} will not attempt to build your site after you push changes to your site's publishing source.{% ifversion fpt or ghec %} - The person who pushed the changes hasn't verified their email address. For more information, see "[Verifying your email address](/articles/verifying-your-email-address)."{% endif %} - You're pushing with a deploy key. If you want to automate pushes to your site's repository, you can set up a machine user instead. For more information, see "[Managing deploy keys](/developers/overview/managing-deploy-keys#machine-users)." - You're using a CI service that isn't configured to build your publishing source. For example, Travis CI won't build the `gh-pages` branch unless you add the branch to a safe list. For more information, see "[Customizing the build](https://docs.travis-ci.com/user/customizing-the-build/#safelisting-or-blocklisting-branches)" on Travis CI, or your CI service's documentation. diff --git a/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md b/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md index 4184f223ab09..eee0a3b3714a 100644 --- a/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md +++ b/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Add theme to Pages site diff --git a/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-content-to-your-github-pages-site-using-jekyll.md b/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-content-to-your-github-pages-site-using-jekyll.md index 2f96f06b8ceb..d651bc8152a7 100644 --- a/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-content-to-your-github-pages-site-using-jekyll.md +++ b/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-content-to-your-github-pages-site-using-jekyll.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Add content to Pages site diff --git a/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md b/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md index 53090295d46c..a39718836b27 100644 --- a/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md +++ b/content/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pages shortTitle: Create site with Jekyll @@ -99,9 +100,9 @@ Before you can use Jekyll to create a {% data variables.product.prodname_pages % git add . git commit -m 'Initial GitHub pages site with Jekyll' ``` -1. Add your {% data variables.product.product_name %} repository as a remote, replacing {% ifversion ghes or ghae %}_HOSTNAME_ with your enterprise's hostname,{% endif %} _USER_ with the account that owns the repository{% ifversion ghes or ghae %},{% endif %} and _REPOSITORY_ with the name of the repository. +1. Add your repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} as a remote, replacing {% ifversion ghes or ghae %}_HOSTNAME_ with your enterprise's hostname,{% endif %} _USER_ with the account that owns the repository{% ifversion ghes or ghae %},{% endif %} and _REPOSITORY_ with the name of the repository. ```shell -{% ifversion fpt %} +{% ifversion fpt or ghec %} $ git remote add origin https://github.com/USER/REPOSITORY.git {% else %} $ git remote add origin https://HOSTNAME/USER/REPOSITORY.git @@ -115,7 +116,7 @@ $ git remote add origin https://HOSTNAME/USER/REPOSITORY=3.1' ghae: '*' + ghec: '*' permissions: People with maintainer permissions can manage auto-merge for pull requests in a repository. topics: - Repositories @@ -16,7 +17,7 @@ shortTitle: Manage auto merge --- ## About auto-merge -If you allow auto-merge for pull requests in your repository, people with write permissions can configure individual pull requests in the repository to merge automatically when all merge requirements are met. {% ifversion fpt or ghae-next or ghes > 3.1 %}If someone who does not have write permissions pushes changes to a pull request that has auto-merge enabled, auto-merge will be disabled for that pull request. {% endif %}For more information, see "[Automatically merging a pull request](/github/collaborating-with-issues-and-pull-requests/automatically-merging-a-pull-request)." +If you allow auto-merge for pull requests in your repository, people with write permissions can configure individual pull requests in the repository to merge automatically when all merge requirements are met. {% ifversion fpt or ghae-next or ghes > 3.1 or ghec %}If someone who does not have write permissions pushes changes to a pull request that has auto-merge enabled, auto-merge will be disabled for that pull request. {% endif %}For more information, see "[Automatically merging a pull request](/github/collaborating-with-issues-and-pull-requests/automatically-merging-a-pull-request)." ## Managing auto-merge diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-the-automatic-deletion-of-branches.md b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-the-automatic-deletion-of-branches.md index 07111367a949..9d81a3da5aee 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-the-automatic-deletion-of-branches.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-the-automatic-deletion-of-branches.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Automatic branch deletion diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md index 1015a4cb4f28..b84aef1590a9 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md @@ -21,6 +21,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -41,7 +42,7 @@ By default, the restrictions of a branch protection rule don't apply to people w For each branch protection rule, you can choose to enable or disable the following settings. - [Require pull request reviews before merging](#require-pull-request-reviews-before-merging) - [Require status checks before merging](#require-status-checks-before-merging) -{% ifversion fpt or ghes > 3.1 or ghae-issue-4382 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4382 or ghec %} - [Require conversation resolution before merging](#require-conversation-resolution-before-merging){% endif %} - [Require signed commits](#require-signed-commits) - [Require linear history](#require-linear-history) @@ -99,7 +100,7 @@ You can set up required status checks to either be "loose" or "strict." The type For troubleshooting information, see "[Troubleshooting required status checks](/github/administering-a-repository/troubleshooting-required-status-checks)." -{% ifversion fpt or ghes > 3.1 or ghae-issue-4382 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4382 or ghec %} ### Require conversation resolution before merging Requires all comments on the pull request to be resolved before it can be merged to a protected branch. This ensures that all comments are addressed or acknowledged before merge. @@ -107,11 +108,11 @@ Requires all comments on the pull request to be resolved before it can be merged ### Require signed commits -When you enable required commit signing on a branch, contributors {% ifversion fpt %}and bots{% endif %} can only push commits that have been signed and verified to the branch. For more information, see "[About commit signature verification](/articles/about-commit-signature-verification)." +When you enable required commit signing on a branch, contributors {% ifversion fpt or ghec %}and bots{% endif %} can only push commits that have been signed and verified to the branch. For more information, see "[About commit signature verification](/articles/about-commit-signature-verification)." {% note %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} **Notes:** * If you have enabled vigilant mode, which indicates that your commits will always be signed, any commits that {% data variables.product.prodname_dotcom %} identifies as "Partially verified" are permitted on branches that require signed commits. For more information about vigilant mode, see "[Displaying verification statuses for all of your commits](/github/authenticating-to-github/displaying-verification-statuses-for-all-of-your-commits)." @@ -123,9 +124,9 @@ When you enable required commit signing on a branch, contributors {% ifversion f {% endnote %} -You can always push local commits to the branch if the commits are signed and verified. {% ifversion fpt %}You can also merge signed and verified commits into the branch using a pull request on {% data variables.product.product_name %}. However, you cannot squash and merge a pull request into the branch on {% data variables.product.product_name %} unless you are the author of the pull request.{% else %} However, you cannot merge pull requests into the branch on {% data variables.product.product_name %}.{% endif %} You can {% ifversion fpt %}squash and {% endif %}merge pull requests locally. For more information, see "[Checking out pull requests locally](/github/collaborating-with-issues-and-pull-requests/checking-out-pull-requests-locally)." +You can always push local commits to the branch if the commits are signed and verified. {% ifversion fpt or ghec %}You can also merge signed and verified commits into the branch using a pull request on {% data variables.product.product_name %}. However, you cannot squash and merge a pull request into the branch on {% data variables.product.product_name %} unless you are the author of the pull request.{% else %} However, you cannot merge pull requests into the branch on {% data variables.product.product_name %}.{% endif %} You can {% ifversion fpt or ghec %}squash and {% endif %}merge pull requests locally. For more information, see "[Checking out pull requests locally](/github/collaborating-with-issues-and-pull-requests/checking-out-pull-requests-locally)." -{% ifversion fpt %} For more information about merge methods, see "[About merge methods on {% data variables.product.prodname_dotcom %}](/github/administering-a-repository/about-merge-methods-on-github)."{% endif %} +{% ifversion fpt or ghec %} For more information about merge methods, see "[About merge methods on {% data variables.product.prodname_dotcom %}](/github/administering-a-repository/about-merge-methods-on-github)."{% endif %} ### Require linear history @@ -139,7 +140,7 @@ By default, protected branch rules do not apply to people with admin permissions ### Restrict who can push to matching branches -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can enable branch restrictions if your repository is owned by an organization using {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %}. {% endif %} diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/index.md b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/index.md index 05214ed1ac18..9589970b7653 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/index.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md index 36b9d5b9d45b..da87de92cfef 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md @@ -22,6 +22,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' permissions: People with admin permissions to a repository can manage branch protection rules. topics: - Repositories @@ -77,7 +78,7 @@ When you create a branch rule, the branch you specify doesn't have to exist yet ![Required linear history option](/assets/images/help/repository/required-linear-history.png) 1. Optionally, select **Include administrators**. ![Include administrators checkbox](/assets/images/help/repository/include-admins-protected-branches.png) -1. Optionally,{% ifversion fpt %} if your repository is owned by an organization using {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %},{% endif %} enable branch restrictions. +1. Optionally,{% ifversion fpt or ghec %} if your repository is owned by an organization using {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %},{% endif %} enable branch restrictions. - Select **Restrict who can push to matching branches**. ![Branch restriction checkbox](/assets/images/help/repository/restrict-branch.png) - Search for and select the people, teams, or apps who will have permission to push to the protected branch. diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md index c4e85e1f9b85..6cb570c64060 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories redirect_from: @@ -35,7 +36,7 @@ remote: error: Required status check "ci-build" is failing {% endnote %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} Sometimes, the results of the status checks for the test merge commit and head commit will conflict. If the test merge commit has a status, the test merge commit must pass. Otherwise, the status of the head commit must pass before you can merge the branch. For more information about test merge commits, see "[Pulls](/rest/reference/pulls#get-a-pull-request)." diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/index.md b/content/repositories/configuring-branches-and-merges-in-your-repository/index.md index 5cc6face5866..41e102a54a2e 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/index.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch.md index e76475702a38..122ef18c786c 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' redirect_from: - /github/administering-a-repository/setting-the-default-branch - /articles/setting-the-default-branch @@ -27,13 +28,13 @@ You can choose the default branch for a repository. The default branch is the ba {% endnote %} {% endif %} -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} You can also rename the default branch. For more information, see "[Renaming a branch](/github/administering-a-repository/renaming-a-branch)." {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae-next %} +{% ifversion fpt or ghes > 2.22 or ghae-next or ghec %} {% data reusables.branches.set-default-branch %} @@ -45,7 +46,7 @@ To change the default branch, your repository must have more than one branch. Fo ## Changing the default branch -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request.md index 76797d712318..6ee9ec66c391 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Delete & restore branches diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/index.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/index.md index 03d16a668c7f..00ef8272c5c2 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/index.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md index c7a09555ef36..6a067f081b22 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '>=3.1' ghae: 'next' + ghec: '*' topics: - Repositories redirect_from: diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/viewing-branches-in-your-repository.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/viewing-branches-in-your-repository.md index 02e9e94b9fe6..730d95c886ec 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/viewing-branches-in-your-repository.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/viewing-branches-in-your-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: View branches diff --git a/content/repositories/creating-and-managing-repositories/about-repositories.md b/content/repositories/creating-and-managing-repositories/about-repositories.md index a29a6a4f497d..b9525dfccbc1 100644 --- a/content/repositories/creating-and-managing-repositories/about-repositories.md +++ b/content/repositories/creating-and-managing-repositories/about-repositories.md @@ -15,6 +15,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -27,14 +28,14 @@ You can restrict who has access to a repository by choosing the repository's vis For user-owned repositories, you can give other people collaborator access so that they can collaborate on your project. If a repository is owned by an organization, you can give organization members access permissions to collaborate on your repository. For more information, see "[Permission levels for a user account repository](/articles/permission-levels-for-a-user-account-repository/)" and "[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization/)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} With {% data variables.product.prodname_free_team %} for user accounts and organizations, you can work with unlimited collaborators on unlimited public repositories with a full feature set, or unlimited private repositories with a limited feature set. To get advanced tooling for private repositories, you can upgrade to {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, or {% data variables.product.prodname_ghe_cloud %}. {% data reusables.gated-features.more-info %} {% else %} Each person and organization can own unlimited repositories and invite an unlimited number of collaborators to all repositories. {% endif %} You can use repositories to manage your work and collaborate with others. -- You can use issues to collect user feedback, report software bugs, and organize tasks you'd like to accomplish. For more information, see "[About issues](/github/managing-your-work-on-github/about-issues)."{% ifversion fpt %} +- You can use issues to collect user feedback, report software bugs, and organize tasks you'd like to accomplish. For more information, see "[About issues](/github/managing-your-work-on-github/about-issues)."{% ifversion fpt or ghec %} - {% data reusables.discussions.you-can-use-discussions %}{% endif %} - You can use pull requests to propose changes to a repository. For more information, see "[About pull requests](/github/collaborating-with-issues-and-pull-requests/about-pull-requests)." - You can use project boards to organize and prioritize your issues and pull requests. For more information, see "[About project boards](/github/managing-your-work-on-github/about-project-boards)." @@ -43,9 +44,9 @@ You can use repositories to manage your work and collaborate with others. ## About repository visibility -You can restrict who has access to a repository by choosing a repository's visibility: {% ifversion fpt or ghes %}public, internal, or private{% elsif ghae %}private or internal{% else %} public or private{% endif %}. +You can restrict who has access to a repository by choosing a repository's visibility: {% ifversion fpt or ghes or ghec %}public, internal, or private{% elsif ghae %}private or internal{% else %} public or private{% endif %}. -{% ifversion ghae %}When you create a repository owned by your user account, the repository is always private. When you create a repository owned by an organization, you can choose to make the repository private or internal.{% else %}When you create a repository, you can choose to make the repository public or private.{% ifversion fpt or ghes %} If you're creating the repository in an organization{% ifversion fpt %} that is owned by an enterprise account{% endif %}, you can also choose to make the repository internal.{% endif %}{% endif %} +{% ifversion ghae %}When you create a repository owned by your user account, the repository is always private. When you create a repository owned by an organization, you can choose to make the repository private or internal.{% else %}When you create a repository, you can choose to make the repository public or private.{% ifversion fpt or ghes or ghec %} If you're creating the repository in an organization{% ifversion fpt or ghec %} that is owned by an enterprise account{% endif %}, you can also choose to make the repository internal.{% endif %}{% endif %} {% ifversion ghes %} If {% data variables.product.product_location %} is not in private mode or behind a firewall, public repositories are accessible to everyone on the internet. Otherwise, public repositories are available to everyone using {% data variables.product.product_location %}, including outside collaborators. Private repositories are only accessible to you, people you explicitly share access with, and, for organization repositories, certain organization members. {% ifversion ghes %} Internal repositories are accessible to enterprise members. For more information, see "[About internal repositories](#about-internal-repositories)."{% endif %} @@ -59,7 +60,7 @@ Organization owners always have access to every repository created in an organiz People with admin permissions for a repository can change an existing repository's visibility. For more information, see "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)." -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} ## About internal repositories {% note %} @@ -70,7 +71,7 @@ People with admin permissions for a repository can change an existing repository {% data reusables.repositories.about-internal-repos %} For more information on innersource, see {% data variables.product.prodname_dotcom %}'s whitepaper "[An introduction to innersource](https://resources.github.com/whitepapers/introduction-to-innersource/)." -All enterprise members have read permissions to the internal repository, but internal repositories are not visible to people {% ifversion fpt %}outside of the enterprise{% else %}who are not members of an organization{% endif %}, including outside collaborators on organization repositories. For more information, see {% ifversion fpt or ghae %}"[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise#enterprise-members)" and {% endif %}"[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization)." +All enterprise members have read permissions to the internal repository, but internal repositories are not visible to people {% ifversion fpt or ghec %}outside of the enterprise{% else %}who are not members of an organization{% endif %}, including outside collaborators on organization repositories. For more information, see {% ifversion fpt or ghae or ghec %}"[Roles in an enterprise](/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise#enterprise-members)" and {% endif %}"[Repository permission levels for an organization](/articles/repository-permission-levels-for-an-organization)." {% data reusables.repositories.internal-repo-default %} diff --git a/content/repositories/creating-and-managing-repositories/cloning-a-repository.md b/content/repositories/creating-and-managing-repositories/cloning-a-repository.md index a800e35239f4..6aac36b72c09 100644 --- a/content/repositories/creating-and-managing-repositories/cloning-a-repository.md +++ b/content/repositories/creating-and-managing-repositories/cloning-a-repository.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -90,9 +91,9 @@ If you're unable to clone a repository, check that: - You have permission to access the repository you want to clone. For more information, see "[Error: Repository not found](/github/creating-cloning-and-archiving-repositories/error-repository-not-found)." - The default branch you want to clone still exists. For more information, see have permission to access the repository you want to clone. For more information, see "[Error: Remote HEAD refers to nonexistent ref, unable to checkout](/github/creating-cloning-and-archiving-repositories/error-remote-head-refers-to-nonexistent-ref-unable-to-checkout)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading - "[Troubleshooting connectivity problems](/articles/troubleshooting-connectivity-problems)" -{% endif %} \ No newline at end of file +{% endif %} diff --git a/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md b/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md index 3763a7926b9e..c6e900e52879 100644 --- a/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md +++ b/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md @@ -15,6 +15,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -24,7 +25,7 @@ topics: {% endtip %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} {% tip %} **Tip**: You can also create a repository using the {% data variables.product.prodname_cli %}. For more information, see "[`gh repo create`](https://cli.github.com/manual/gh_repo_create)" in the {% data variables.product.prodname_cli %} documentation. @@ -34,7 +35,7 @@ topics: {% data reusables.repositories.create_new %} 2. Optionally, to create a repository with the directory structure and files of an existing repository, use the **Choose a template** drop-down and select a template repository. You'll see template repositories that are owned by you and organizations you're a member of or that you've used before. For more information, see "[Creating a repository from a template](/articles/creating-a-repository-from-a-template)." - ![Template drop-down menu](/assets/images/help/repository/template-drop-down.png){% ifversion fpt or ghae or ghes %} + ![Template drop-down menu](/assets/images/help/repository/template-drop-down.png){% ifversion fpt or ghae or ghes or ghec %} 3. Optionally, if you chose to use a template, to include the directory structure and files from all branches in the template, and not just the default branch, select **Include all branches**. ![Include all branches checkbox](/assets/images/help/repository/include-all-branches.png){% endif %} 3. In the Owner drop-down, select the account you wish to create the repository on. @@ -43,16 +44,16 @@ topics: {% data reusables.repositories.choose-repo-visibility %} 6. If you're not using a template, there are a number of optional items you can pre-populate your repository with. If you're importing an existing repository to {% data variables.product.product_name %}, don't choose any of these options, as you may introduce a merge conflict. You can add or create new files using the user interface or choose to add new files using the command line later. For more information, see "[Importing a Git repository using the command line](/articles/importing-a-git-repository-using-the-command-line/)," "[Adding a file to a repository](/repositories/working-with-files/managing-files/adding-a-file-to-a-repository#adding-a-file-to-a-repository-using-the-command-line)," and "[Addressing merge conflicts](/articles/addressing-merge-conflicts/)." - You can create a README, which is a document describing your project. For more information, see "[About READMEs](/articles/about-readmes/)." - - You can create a *.gitignore* file, which is a set of ignore rules. For more information, see "[Ignoring files](/github/getting-started-with-github/ignoring-files)."{% ifversion fpt %} + - You can create a *.gitignore* file, which is a set of ignore rules. For more information, see "[Ignoring files](/github/getting-started-with-github/ignoring-files)."{% ifversion fpt or ghec %} - You can choose to add a software license for your project. For more information, see "[Licensing a repository](/articles/licensing-a-repository)."{% endif %} {% data reusables.repositories.select-marketplace-apps %} {% data reusables.repositories.create-repo %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} 9. At the bottom of the resulting Quick Setup page, under "Import code from an old repository", you can choose to import a project to your new repository. To do so, click **Import code**. {% endif %} ## Further reading - "[Managing access to your organization's repositories](/articles/managing-access-to-your-organization-s-repositories)" -- [Open Source Guides](https://opensource.guide/){% ifversion fpt %} +- [Open Source Guides](https://opensource.guide/){% ifversion fpt or ghec %} - [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}){% endif %} diff --git a/content/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template.md b/content/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template.md index d39d5de82515..fe7466823045 100644 --- a/content/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template.md +++ b/content/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Create from a template @@ -17,7 +18,7 @@ shortTitle: Create from a template Anyone with read permissions to a template repository can create a repository from that template. For more information, see "[Creating a template repository](/articles/creating-a-template-repository)." -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} {% tip %} **Tip**: You can also create a repository from a template using the {% data variables.product.prodname_cli %}. For more information, see "[`gh repo create`](https://cli.github.com/manual/gh_repo_create)" in the {% data variables.product.prodname_cli %} documentation. @@ -25,7 +26,7 @@ Anyone with read permissions to a template repository can create a repository fr {% endtip %} {% endif %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} You can choose to include the directory structure and files from only the default branch of the template repository or to include all branches. Branches created from a template have unrelated histories, which means you cannot create pull requests or merge between the branches. {% endif %} @@ -43,7 +44,7 @@ For more information about forks, see "[About forks](/articles/about-forks)." ![Use this template button](/assets/images/help/repository/use-this-template-button.png) {% data reusables.repositories.owner-drop-down %} {% data reusables.repositories.repo-name %} -{% data reusables.repositories.choose-repo-visibility %}{% ifversion fpt or ghae or ghes %} +{% data reusables.repositories.choose-repo-visibility %}{% ifversion fpt or ghae or ghes or ghec %} 6. Optionally, to include the directory structure and files from all branches in the template, and not just the default branch, select **Include all branches**. ![Include all branches checkbox](/assets/images/help/repository/include-all-branches.png){% endif %} {% data reusables.repositories.select-marketplace-apps %} diff --git a/content/repositories/creating-and-managing-repositories/creating-a-template-repository.md b/content/repositories/creating-and-managing-repositories/creating-a-template-repository.md index 48e2733234de..da56cb531b06 100644 --- a/content/repositories/creating-and-managing-repositories/creating-a-template-repository.md +++ b/content/repositories/creating-and-managing-repositories/creating-a-template-repository.md @@ -1,6 +1,6 @@ --- title: Creating a template repository -intro: 'You can make an existing repository a template, so you and others can generate new repositories with the same directory structure{% ifversion fpt or ghae or ghes %}, branches,{% endif %} and files.' +intro: 'You can make an existing repository a template, so you and others can generate new repositories with the same directory structure{% ifversion fpt or ghae or ghes or ghec %}, branches,{% endif %} and files.' permissions: Anyone with admin permissions to a repository can make the repository a template. redirect_from: - /articles/creating-a-template-repository @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Create a template repo @@ -22,7 +23,7 @@ shortTitle: Create a template repo To create a template repository, you must create a repository, then make the repository a template. For more information about creating a repository, see "[Creating a new repository](/articles/creating-a-new-repository)." -After you make your repository a template, anyone with access to the repository can generate a new repository with the same directory structure and files as your default branch.{% ifversion fpt or ghae or ghes %} They can also choose to include all the other branches in your repository. Branches created from a template have unrelated histories, so you cannot create pull requests or merge between the branches.{% endif %} For more information, see "[Creating a repository from a template](/articles/creating-a-repository-from-a-template)." +After you make your repository a template, anyone with access to the repository can generate a new repository with the same directory structure and files as your default branch.{% ifversion fpt or ghae or ghes or ghec %} They can also choose to include all the other branches in your repository. Branches created from a template have unrelated histories, so you cannot create pull requests or merge between the branches.{% endif %} For more information, see "[Creating a repository from a template](/articles/creating-a-repository-from-a-template)." {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} diff --git a/content/repositories/creating-and-managing-repositories/creating-an-issues-only-repository.md b/content/repositories/creating-and-managing-repositories/creating-an-issues-only-repository.md index 165de7dad354..30ab449f7698 100644 --- a/content/repositories/creating-and-managing-repositories/creating-an-issues-only-repository.md +++ b/content/repositories/creating-and-managing-repositories/creating-an-issues-only-repository.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Issues-only repository diff --git a/content/repositories/creating-and-managing-repositories/deleting-a-repository.md b/content/repositories/creating-and-managing-repositories/deleting-a-repository.md index d4530795c6e3..33da27280681 100644 --- a/content/repositories/creating-and-managing-repositories/deleting-a-repository.md +++ b/content/repositories/creating-and-managing-repositories/deleting-a-repository.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -23,11 +24,11 @@ topics: **Warnings**: - Deleting a repository will **permanently** delete release attachments and team permissions. This action **cannot** be undone. -- Deleting a private {% ifversion ghes or fpt or ghae %}or internal {% endif %}repository will delete all forks of the repository. +- Deleting a private {% ifversion ghes or fpt or ghae or ghec %}or internal {% endif %}repository will delete all forks of the repository. {% endwarning %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can restore some deleted repositories within 90 days. For more information, see "[Restoring a deleted repository](/articles/restoring-a-deleted-repository)." {% endif %} diff --git a/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md b/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md index c8d45105d694..efe3ce49c6b7 100644 --- a/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md +++ b/content/repositories/creating-and-managing-repositories/duplicating-a-repository.md @@ -10,10 +10,11 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} @@ -93,7 +94,7 @@ As with a bare clone, a mirrored clone includes all remote branches and tags, bu $ git fetch -p origin $ git push --mirror ``` -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Further reading * "[Pushing changes to GitHub](/desktop/contributing-and-collaborating-using-github-desktop/making-changes-in-a-branch/pushing-changes-to-github#pushing-changes-to-github)" diff --git a/content/repositories/creating-and-managing-repositories/index.md b/content/repositories/creating-and-managing-repositories/index.md index a26450047dd0..d0503d98b3c1 100644 --- a/content/repositories/creating-and-managing-repositories/index.md +++ b/content/repositories/creating-and-managing-repositories/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/creating-and-managing-repositories/renaming-a-repository.md b/content/repositories/creating-and-managing-repositories/renaming-a-repository.md index 9eecf0d25856..c089e887504f 100644 --- a/content/repositories/creating-and-managing-repositories/renaming-a-repository.md +++ b/content/repositories/creating-and-managing-repositories/renaming-a-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -29,7 +30,7 @@ $ git remote set-url origin new_url For more information, see "[Managing remote repositories](/github/getting-started-with-github/managing-remote-repositories)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you plan to rename a repository that has a {% data variables.product.prodname_pages %} site, we recommend using a custom domain for your site. This ensures that the site's URL isn't impacted by renaming the repository. For more information, see "[About custom domains and {% data variables.product.prodname_pages %} site](/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages)." diff --git a/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md b/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md index 01dafcadee01..b903538a2b02 100644 --- a/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md +++ b/content/repositories/creating-and-managing-repositories/restoring-a-deleted-repository.md @@ -7,6 +7,7 @@ redirect_from: - /github/administering-a-repository/managing-repository-settings/restoring-a-deleted-repository versions: fpt: '*' + ghec: '*' topics: - Repositories shortTitle: Restore deleted repository diff --git a/content/repositories/creating-and-managing-repositories/transferring-a-repository.md b/content/repositories/creating-and-managing-repositories/transferring-a-repository.md index 031bbb7c8531..4229bc7db1f6 100644 --- a/content/repositories/creating-and-managing-repositories/transferring-a-repository.md +++ b/content/repositories/creating-and-managing-repositories/transferring-a-repository.md @@ -18,6 +18,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -25,14 +26,14 @@ topics: When you transfer a repository to a new owner, they can immediately administer the repository's contents, issues, pull requests, releases, project boards, and settings. -Prerequisites for repository transfers: {% ifversion fpt %} +Prerequisites for repository transfers: {% ifversion fpt or ghec %} - When you transfer a repository that you own to another user account, the new owner will receive a confirmation email. The confirmation email includes instructions for accepting the transfer. If the new owner doesn't accept the transfer within one day, the invitation will expire.{% endif %} - To transfer a repository that you own to an organization, you must have permission to create a repository in the target organization. - The target account must not have a repository with the same name, or a fork in the same network. - The original owner of the repository is added as a collaborator on the transferred repository. Other collaborators to the transferred repository remain intact. - Private forks can't be transferred. -{% ifversion fpt %}If you transfer a private repository to a {% data variables.product.prodname_free_user %} user or organization account, the repository will lose access to features like protected branches and {% data variables.product.prodname_pages %}. {% data reusables.gated-features.more-info %}{% endif %} +{% ifversion fpt or ghec %}If you transfer a private repository to a {% data variables.product.prodname_free_user %} user or organization account, the repository will lose access to features like protected branches and {% data variables.product.prodname_pages %}. {% data reusables.gated-features.more-info %}{% endif %} ### What's transferred with a repository? @@ -40,7 +41,7 @@ When you transfer a repository, its issues, pull requests, wiki, stars, and watc - If the transferred repository is a fork, then it remains associated with the upstream repository. - If the transferred repository has any forks, then those forks will remain associated with the repository after the transfer is complete. -- If the transferred repository uses {% data variables.large_files.product_name_long %}, all {% data variables.large_files.product_name_short %} objects are automatically moved. This transfer occurs in the background, so if you have a large number of {% data variables.large_files.product_name_short %} objects or if the {% data variables.large_files.product_name_short %} objects themselves are large, it may take some time for the transfer to occur.{% ifversion fpt %} Before you transfer a repository that uses {% data variables.large_files.product_name_short %}, make sure the receiving account has enough data packs to store the {% data variables.large_files.product_name_short %} objects you'll be moving over. For more information on adding storage for user accounts, see "[Upgrading {% data variables.large_files.product_name_long %}](/articles/upgrading-git-large-file-storage)."{% endif %} +- If the transferred repository uses {% data variables.large_files.product_name_long %}, all {% data variables.large_files.product_name_short %} objects are automatically moved. This transfer occurs in the background, so if you have a large number of {% data variables.large_files.product_name_short %} objects or if the {% data variables.large_files.product_name_short %} objects themselves are large, it may take some time for the transfer to occur.{% ifversion fpt or ghec %} Before you transfer a repository that uses {% data variables.large_files.product_name_short %}, make sure the receiving account has enough data packs to store the {% data variables.large_files.product_name_short %} objects you'll be moving over. For more information on adding storage for user accounts, see "[Upgrading {% data variables.large_files.product_name_long %}](/articles/upgrading-git-large-file-storage)."{% endif %} - When a repository is transferred between two user accounts, issue assignments are left intact. When you transfer a repository from a user account to an organization, issues assigned to members in the organization remain intact, and all other issue assignees are cleared. Only owners in the organization are allowed to create new issue assignments. When you transfer a repository from an organization to a user account, only issues assigned to the repository's owner are kept, and all other issue assignees are removed. - If the transferred repository contains a {% data variables.product.prodname_pages %} site, then links to the Git repository on the Web and through Git activity are redirected. However, we don't redirect {% data variables.product.prodname_pages %} associated with the repository. - All links to the previous repository location are automatically redirected to the new location. When you use `git clone`, `git fetch`, or `git push` on a transferred repository, these commands will redirect to the new repository location or URL. However, to avoid confusion, we strongly recommend updating any existing local clones to point to the new repository URL. You can do this by using `git remote` on the command line: @@ -63,7 +64,7 @@ Once a repository is transferred to an organization, the organization's default You can transfer your repository to any user account that accepts your repository transfer. When a repository is transferred between two user accounts, the original repository owner and collaborators are automatically added as collaborators to the new repository. -{% ifversion fpt %}If you published a {% data variables.product.prodname_pages %} site in a private repository and added a custom domain, before transferring the repository, you may want to remove or update your DNS records to avoid the risk of a domain takeover. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %} +{% ifversion fpt or ghec %}If you published a {% data variables.product.prodname_pages %} site in a private repository and added a custom domain, before transferring the repository, you may want to remove or update your DNS records to avoid the risk of a domain takeover. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} diff --git a/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md b/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md index b37af1b1315c..9bfbc3a98dd2 100644 --- a/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md +++ b/content/repositories/creating-and-managing-repositories/troubleshooting-cloning-errors.md @@ -1,6 +1,6 @@ --- title: Troubleshooting cloning errors -intro: "If you're having trouble cloning a repository, check these common errors." +intro: 'If you''re having trouble cloning a repository, check these common errors.' redirect_from: - /articles/error-the-requested-url-returned-error-403 - /articles/error-the-requested-url-returned-error-401 @@ -16,6 +16,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -94,7 +95,7 @@ If you've previously set up SSH keys, you can use the SSH clone URL instead of H ## Error: Repository not found -{% ifversion fpt or ghae %}If you see this error when cloning a repository, it means that the repository does not exist or you do not have permission to access it.{% else %}If you see this error when cloning a repository, it means that the repository does not exist, you do not have permission to access it, or {% data variables.product.product_location %} is in private mode.{% endif %} There are a few solutions to this error, depending on the cause. +{% ifversion fpt or ghae or ghec %}If you see this error when cloning a repository, it means that the repository does not exist or you do not have permission to access it.{% else %}If you see this error when cloning a repository, it means that the repository does not exist, you do not have permission to access it, or {% data variables.product.product_location %} is in private mode.{% endif %} There are a few solutions to this error, depending on the cause. ### Check your spelling @@ -180,4 +181,4 @@ $ git checkout new-main # Create and checkout a tracking branch > Branch new-main set up to track remote branch new-main from origin. > Switched to a new branch 'new-main' -``` \ No newline at end of file +``` diff --git a/content/repositories/index.md b/content/repositories/index.md index c3ddf05a9c75..934d82e750da 100644 --- a/content/repositories/index.md +++ b/content/repositories/index.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files.md index 7d65edb139c7..7b235a220f21 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '>=3.3' ghae: issue-4651 + ghec: '*' topics: - Repositories --- diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md index bf8d7b1c4243..3e4254881d2e 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- @@ -24,9 +25,9 @@ Code owners are automatically requested for review when someone opens a pull req When someone with admin or owner permissions has enabled required reviews, they also can optionally require approval from a code owner before the author can merge a pull request in the repository. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches#require-pull-request-reviews-before-merging)." -{% ifversion fpt or ghae or ghes %}If a team has enabled code review assignments, the individual approvals won't satisfy the requirement for code owner approval in a protected branch. For more information, see "[Managing code review assignment for your team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team)."{% endif %} +{% ifversion fpt or ghae or ghes or ghec %}If a team has enabled code review assignments, the individual approvals won't satisfy the requirement for code owner approval in a protected branch. For more information, see "[Managing code review assignment for your team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team)."{% endif %} -{% ifversion fpt or ghae or ghes > 2.22 %} +{% ifversion fpt or ghae or ghes > 2.22 or ghec %} If a file has a code owner, you can see who the code owner is before you open a pull request. In the repository, you can browse to the file and hover over {% octicon "shield-lock" aria-label="The edit icon" %}. ![Code owner for a file in a repository](/assets/images/help/repository/code-owner-for-a-file.png) @@ -40,7 +41,7 @@ Each CODEOWNERS file assigns the code owners for a single branch in the reposito For code owners to receive review requests, the CODEOWNERS file must be on the base branch of the pull request. For example, if you assign `@octocat` as the code owner for *.js* files on the `gh-pages` branch of your repository, `@octocat` will receive review requests when a pull request with changes to *.js* files is opened between the head branch and `gh-pages`. -{% ifversion fpt or ghae or ghes > 3.2 %} +{% ifversion fpt or ghae or ghes > 3.2 or ghec %} ## CODEOWNERS file size CODEOWNERS files must be under 3 MB in size. A CODEOWNERS file over this limit will not be loaded, which means that code owner information not to be shown and the appropriate code owners will not be requested to review changes in a pull request. @@ -50,7 +51,7 @@ To reduce the size of your CODEOWNERS file, consider using wildcard patterns to ## CODEOWNERS syntax -A CODEOWNERS file uses a pattern that follows most of the same rules used in [gitignore](https://git-scm.com/docs/gitignore#_pattern_format) files, with [some exceptions](#syntax-exceptions). The pattern is followed by one or more {% data variables.product.prodname_dotcom %} usernames or team names using the standard `@username` or `@org/team-name` format. Users must have `read` access to the repository and teams must have explicit `write` access, even if the team's members already have access. You can also refer to a user by an email address that has been added to their {% data variables.product.product_name %} account, for example `user@example.com`. +A CODEOWNERS file uses a pattern that follows most of the same rules used in [gitignore](https://git-scm.com/docs/gitignore#_pattern_format) files, with [some exceptions](#syntax-exceptions). The pattern is followed by one or more {% data variables.product.prodname_dotcom %} usernames or team names using the standard `@username` or `@org/team-name` format. Users must have `read` access to the repository and teams must have explicit `write` access, even if the team's members already have access. You can also refer to a user by an email address that has been added to their account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, for example `user@example.com`. If any line in your CODEOWNERS file contains invalid syntax, the file will not be detected and will not be used to request reviews. ### Example of a CODEOWNERS file diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md index 53e463b5f2bb..51d5e362e12a 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md @@ -11,14 +11,15 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- ## About READMEs -You can add a README file to a repository to communicate important information about your project. A README, along with a repository license{% ifversion fpt or ghes > 3.2 or ghae-issue-4651 %}, citation file{% endif %}{% ifversion fpt %}, contribution guidelines, and a code of conduct{% elsif ghes %} and contribution guidelines{% endif %}, communicates expectations for your project and helps you manage contributions. +You can add a README file to a repository to communicate important information about your project. A README, along with a repository license{% ifversion fpt or ghes > 3.2 or ghae-issue-4651 or ghec %}, citation file{% endif %}{% ifversion fpt or ghec %}, contribution guidelines, and a code of conduct{% elsif ghes %} and contribution guidelines{% endif %}, communicates expectations for your project and helps you manage contributions. -For more information about providing guidelines for your project, see {% ifversion fpt %}"[Adding a code of conduct to your project](/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project)" and {% endif %}"[Setting up your project for healthy contributions](/communities/setting-up-your-project-for-healthy-contributions)." +For more information about providing guidelines for your project, see {% ifversion fpt or ghec %}"[Adding a code of conduct to your project](/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project)" and {% endif %}"[Setting up your project for healthy contributions](/communities/setting-up-your-project-for-healthy-contributions)." A README is often the first item a visitor will see when visiting your repository. README files typically include information on: - What the project does @@ -31,7 +32,7 @@ If you put your README file in your repository's root, `docs`, or hidden `.githu ![Main page of the github/scientist repository and its README file](/assets/images/help/repository/repo-with-readme.png) -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% data reusables.profile.profile-readme %} @@ -39,7 +40,7 @@ If you put your README file in your repository's root, `docs`, or hidden `.githu ![README file on your username/username repository](/assets/images/help/repository/username-repo-with-readme.png) -{% ifversion fpt or ghae-next or ghes > 3.1 %} +{% ifversion fpt or ghae-next or ghes > 3.1 or ghec %} ## Auto-generated table of contents for README files diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-repository-languages.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-repository-languages.md index 7e4feab23fa6..2ab843e2d4ed 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-repository-languages.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-repository-languages.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Repository languages diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics.md index ea89692f6b6b..b61e5c58c746 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics.md @@ -10,21 +10,22 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Classify with topics --- ## About topics -With topics, you can explore repositories in a particular subject area, find projects to contribute to, and discover new solutions to a specific problem. Topics appear on the main page of a repository. You can click a topic name to {% ifversion fpt %}see related topics and a list of other repositories classified with that topic{% else %}search for other repositories with that topic{% endif %}. +With topics, you can explore repositories in a particular subject area, find projects to contribute to, and discover new solutions to a specific problem. Topics appear on the main page of a repository. You can click a topic name to {% ifversion fpt or ghec %}see related topics and a list of other repositories classified with that topic{% else %}search for other repositories with that topic{% endif %}. ![Main page of the test repository showing topics](/assets/images/help/repository/os-repo-with-topics.png) To browse the most used topics, go to https://github.com/topics/. -{% ifversion fpt %}You can contribute to {% data variables.product.product_name %}'s set of featured topics in the [github/explore](https://github.com/github/explore) repository. {% endif %} +{% ifversion fpt or ghec %}You can contribute to {% data variables.product.product_name %}'s set of featured topics in the [github/explore](https://github.com/github/explore) repository. {% endif %} -Repository admins can add any topics they'd like to a repository. Helpful topics to classify a repository include the repository's intended purpose, subject area, community, or language.{% ifversion fpt %} Additionally, {% data variables.product.product_name %} analyzes public repository content and generates suggested topics that repository admins can accept or reject. Private repository content is not analyzed and does not receive topic suggestions.{% endif %} +Repository admins can add any topics they'd like to a repository. Helpful topics to classify a repository include the repository's intended purpose, subject area, community, or language.{% ifversion fpt or ghec %} Additionally, {% data variables.product.product_name %} analyzes public repository content and generates suggested topics that repository admins can accept or reject. Private repository content is not analyzed and does not receive topic suggestions.{% endif %} {% ifversion ghae %}Internal {% else %}Public, internal, {% endif %}and private repositories can have topics, although you will only see private repositories that you have access to in topic search results. diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/customizing-your-repositorys-social-media-preview.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/customizing-your-repositorys-social-media-preview.md index ea4a96c1db14..839ddb6f9935 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/customizing-your-repositorys-social-media-preview.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/customizing-your-repositorys-social-media-preview.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Social media preview diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md index 27c000d7c629..fd139c7805a2 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md @@ -8,6 +8,7 @@ redirect_from: - /github/administering-a-repository/managing-repository-settings/displaying-a-sponsor-button-in-your-repository versions: fpt: '*' + ghec: '*' topics: - Repositories shortTitle: Display a sponsor button diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/index.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/index.md index 0ce1d90b9bf3..f1ae27e48ab3 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/index.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository.md index 30f4dade0555..c719bbebe92d 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository.md @@ -9,6 +9,7 @@ redirect_from: versions: fpt: '*' ghes: '*' + ghec: '*' topics: - Repositories --- @@ -20,7 +21,7 @@ You're under no obligation to choose a license. However, without a license, the {% note %} -**Note:** If you publish your source code in a public repository on {% data variables.product.product_name %}, {% ifversion fpt %}according to the [Terms of Service](/articles/github-terms-of-service), {% endif %}other users of {% data variables.product.product_location %} have the right to view and fork your repository. If you have already created a repository and no longer want users to have access to the repository, you can make the repository private. When you change the visibility of a repository to private, existing forks or local copies created by other users will still exist. For more information, see "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)." +**Note:** If you publish your source code in a public repository on {% data variables.product.product_name %}, {% ifversion fpt or ghec %}according to the [Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service), {% endif %}other users of {% data variables.product.product_location %} have the right to view and fork your repository. If you have already created a repository and no longer want users to have access to the repository, you can make the repository private. When you change the visibility of a repository to private, existing forks or local copies created by other users will still exist. For more information, see "[Setting repository visibility](/github/administering-a-repository/setting-repository-visibility)." {% endnote %} @@ -89,9 +90,9 @@ The license picker is only available when you create a new project on GitHub. Yo ## Disclaimer -The goal of GitHub's open source licensing efforts is to provide a starting point to help you make an informed choice. GitHub displays license information to help users get information about open source licenses and the projects that use them. We hope it helps, but please keep in mind that we’re not lawyers and that we make mistakes like everyone else. For that reason, GitHub provides the information on an “as-is” basis and makes no warranties regarding any information or licenses provided on or through it, and disclaims liability for damages resulting from using the license information. If you have any questions regarding the right license for your code or any other legal issues relating to it, it’s always best to consult with a professional. +The goal of GitHub's open source licensing efforts is to provide a starting point to help you make an informed choice. GitHub displays license information to help users get information about open source licenses and the projects that use them. We hope it helps, but please keep in mind that we’re not lawyers and that we make mistakes like everyone else. For that reason, GitHub provides the information on an "as-is" basis and makes no warranties regarding any information or licenses provided on or through it, and disclaims liability for damages resulting from using the license information. If you have any questions regarding the right license for your code or any other legal issues relating to it, it’s always best to consult with a professional. ## Further reading -- The Open Source Guides' section "[The Legal Side of Open Source](https://opensource.guide/legal/)"{% ifversion fpt %} +- The Open Source Guides' section "[The Legal Side of Open Source](https://opensource.guide/legal/)"{% ifversion fpt or ghec %} - [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}){% endif %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-issues.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-issues.md index 4f6b9cc9269a..175b33239b13 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-issues.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-issues.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests --- @@ -20,7 +21,7 @@ topics: If you decide to enable issues again in the future, any issues that were previously added will be available. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% tip %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md index 97c163549057..8c66c8d32600 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Pull requests shortTitle: Disable project boards diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md index f8bba603f4c4..29eb1f04f880 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/enabling-or-disabling-github-discussions-for-a-repository.md @@ -5,6 +5,7 @@ product: '{% data reusables.gated-features.discussions %}' permissions: 'People with admin permissions to a repository can enable {% data variables.product.prodname_discussions %} for the repository.' versions: fpt: '*' + ghec: '*' topics: - Repositories redirect_from: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/index.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/index.md index 9ad3dc1f15a9..75199e62afaf 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/index.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md index 03c47b42b594..14c70598f414 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository.md @@ -10,7 +10,11 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' +type: how_to topics: + - Actions + - Permissions - Pull requests shortTitle: Manage GitHub Actions settings --- @@ -32,7 +36,7 @@ Alternatively, you can enable {% data variables.product.prodname_actions %} in y {% note %} -**Note:** You might not be able to manage these settings if your organization has an overriding policy or is managed by an enterprise that has overriding policy. For more information, see "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization)" or {% ifversion fpt %}"[Enforcing {% data variables.product.prodname_actions %} policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account)."{% elsif ghes %}"[Enforcing {% data variables.product.prodname_actions %} policies for your enterprise](/enterprise/admin/github-actions/enforcing-github-actions-policies-for-your-enterprise)."{% endif %} +**Note:** You might not be able to manage these settings if your organization has an overriding policy or is managed by an enterprise that has overriding policy. For more information, see "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization)" or "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise)." {% endnote %} @@ -44,7 +48,7 @@ Alternatively, you can enable {% data variables.product.prodname_actions %} in y {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae-next %} +{% ifversion fpt or ghes > 2.22 or ghae-next or ghec %} ## Managing {% data variables.product.prodname_actions %} permissions for your repository @@ -54,9 +58,7 @@ You can disable all workflows for a repository or set a policy that configures w {% note %} -**Note:** You might not be able to manage these settings if your organization has an overriding policy or is managed by an enterprise that has overriding policy. For more information, see "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization)" or {% ifversion fpt %}"[Enforcing {% data variables.product.prodname_actions %} policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-github-actions-policies-in-your-enterprise-account)."{% elsif ghes %}"[Enforcing {% data variables.product.prodname_actions %} policies for your enterprise](/enterprise/admin/github-actions/enforcing-github-actions-policies-for-your-enterprise)." - -{% endif %} +**Note:** You might not be able to manage these settings if your organization has an overriding policy or is managed by an enterprise that has overriding policy. For more information, see "[Disabling or limiting {% data variables.product.prodname_actions %} for your organization](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization)" or "[Enforcing policies for {% data variables.product.prodname_actions %} in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-github-actions-policies-for-your-enterprise)." {% endnote %} @@ -83,7 +85,7 @@ You can disable all workflows for a repository or set a policy that configures w 2. Click **Save**. {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Configuring required approval for workflows from public forks {% data reusables.actions.workflow-run-approve-public-fork %} @@ -98,7 +100,7 @@ You can configure this behavior for a repository using the procedure below. Modi {% data reusables.actions.workflow-run-approve-link %} {% endif %} -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} ## Enabling workflows for private repository forks {% data reusables.github-actions.private-repository-forks-overview %} @@ -111,7 +113,7 @@ You can configure this behavior for a repository using the procedure below. Modi {% data reusables.github-actions.private-repository-forks-configure %} {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Setting the permissions of the `GITHUB_TOKEN` for your repository {% data reusables.github-actions.workflow-permissions-intro %} @@ -130,7 +132,7 @@ The default permissions can also be configured in the organization settings. If 1. Click **Save** to apply the settings. {% endif %} -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} ## Allowing access to components in an internal repository {% note %} @@ -154,7 +156,7 @@ To configure whether workflows in an internal repository can be accessed from ou 1. Click **Save** to apply the settings. {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Configuring the retention period for {% data variables.product.prodname_actions %} artifacts and logs in your repository You can configure the retention period for {% data variables.product.prodname_actions %} artifacts and logs in your repository. @@ -169,4 +171,4 @@ You can also define a custom retention period for a specific artifact created by {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.settings-sidebar-actions %} {% data reusables.github-actions.change-retention-period-for-artifacts-logs %} -{% endif %} \ No newline at end of file +{% endif %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository.md index e188911b9ac0..d4b8b41b46f9 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '>=3.0' ghae: '*' + ghec: '*' type: how_to topics: - Dependabot @@ -23,7 +24,7 @@ topics: - Repositories shortTitle: Security & analysis --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Enabling or disabling security and analysis features for public repositories You can manage a subset of security and analysis features for public repositories. Other features are permanently enabled, including dependency graph and secret scanning. @@ -35,22 +36,22 @@ You can manage a subset of security and analysis features for public repositorie !["Enable" or "Disable" button for "Configure security and analysis" features in a public repository](/assets/images/help/repository/security-and-analysis-disable-or-enable-dotcom-public.png) {% endif %} -## Enabling or disabling security and analysis features{% ifversion fpt %} for private repositories{% endif %} +## Enabling or disabling security and analysis features{% ifversion fpt or ghec %} for private repositories{% endif %} -You can manage the security and analysis features for your {% ifversion fpt %}private or internal {% endif %}repository.{% ifversion fpt or ghes > 2.22 %} If your organization belongs to an enterprise with a license for {% data variables.product.prodname_GH_advanced_security %} then extra options are available. {% data reusables.advanced-security.more-info-ghas %}{% endif %} +You can manage the security and analysis features for your {% ifversion fpt or ghec %}private or internal {% endif %}repository.{% ifversion fpt or ghes > 2.22 or ghec %} If your organization belongs to an enterprise with a license for {% data variables.product.prodname_GH_advanced_security %} then extra options are available. {% data reusables.advanced-security.more-info-ghas %}{% endif %} {% data reusables.security.security-and-analysis-features-enable-read-only %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-security-and-analysis %} -{% ifversion fpt or ghes > 3.0 %} -4. Under "Configure security and analysis features", to the right of the feature, click **Disable** or **Enable**. The control for "{% data variables.product.prodname_GH_advanced_security %}" is disabled if your enterprise has no available licenses for {% data variables.product.prodname_advanced_security %}.{% ifversion fpt %} +{% ifversion fpt or ghes > 3.0 or ghec %} +4. Under "Configure security and analysis features", to the right of the feature, click **Disable** or **Enable**. The control for "{% data variables.product.prodname_GH_advanced_security %}" is disabled if your enterprise has no available licenses for {% data variables.product.prodname_advanced_security %}.{% ifversion fpt or ghec %} !["Enable" or "Disable" button for "Configure security and analysis" features](/assets/images/help/repository/security-and-analysis-disable-or-enable-dotcom-private.png){% else %} !["Enable" or "Disable" button for "Configure security and analysis" features](/assets/images/enterprise/3.1/help/repository/security-and-analysis-disable-or-enable-ghes.png){% endif %} {% note %} - **Note:** If you disable {% data variables.product.prodname_GH_advanced_security %}, {% ifversion fpt %}dependency review, {% endif %}{% data variables.product.prodname_secret_scanning %} and {% data variables.product.prodname_code_scanning %} are disabled. Any workflows, SARIF uploads, or API calls for {% data variables.product.prodname_code_scanning %} will fail. + **Note:** If you disable {% data variables.product.prodname_GH_advanced_security %}, {% ifversion fpt or ghec %}dependency review, {% endif %}{% data variables.product.prodname_secret_scanning %} and {% data variables.product.prodname_code_scanning %} are disabled. Any workflows, SARIF uploads, or API calls for {% data variables.product.prodname_code_scanning %} will fail. {% endnote %} {% endif %} {% ifversion ghes = 3.0 %} @@ -76,7 +77,7 @@ Organization owners and repository administrators can only grant access to view {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-security-and-analysis %} 4. Under "Access to alerts", in the search field, start typing the name of the person or team you'd like to find, then click a name in the list of matches. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ![Search field for granting people or teams access to security alerts](/assets/images/help/repository/security-and-analysis-security-alerts-person-or-team-search.png) {% endif %} {% ifversion ghes > 2.22 %} @@ -87,7 +88,7 @@ Organization owners and repository administrators can only grant access to view {% endif %} 5. Click **Save changes**. - {% ifversion fpt or ghes > 2.22 %} + {% ifversion fpt or ghes > 2.22 or ghec %} !["Save changes" button for changes to security alert settings](/assets/images/help/repository/security-and-analysis-security-alerts-save-changes.png) {% endif %} {% ifversion ghae %} @@ -100,7 +101,7 @@ Organization owners and repository administrators can only grant access to view {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-security-and-analysis %} 4. Under "Access to alerts", to the right of the person or team whose access you'd like to remove, click {% octicon "x" aria-label="X symbol" %}. - {% ifversion fpt %} + {% ifversion fpt or ghec %} !["x" button to remove someone's access to security alerts for your repository](/assets/images/help/repository/security-and-analysis-security-alerts-username-x.png) {% endif %} {% ifversion ghes > 2.22 %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/index.md b/content/repositories/managing-your-repositorys-settings-and-features/index.md index ad219941a2ff..60ce6651d4ae 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/index.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/about-email-notifications-for-pushes-to-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/about-email-notifications-for-pushes-to-your-repository.md index 807b349dc8e4..9a40def4b8db 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/about-email-notifications-for-pushes-to-your-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/about-email-notifications-for-pushes-to-your-repository.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Email notifications for pushes @@ -29,7 +30,7 @@ Each email notification for a push to a repository lists the new commits and lin - The files that were changed as part of the commit - The commit message -You can filter email notifications you receive for pushes to a repository. For more information, see {% ifversion fpt or ghae or ghes %}"[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#filtering-email-notifications){% else %}"[About notification emails](/github/receiving-notifications-about-activity-on-github/about-email-notifications)." You can also turn off email notifications for pushes. For more information, see "[Choosing the delivery method for your notifications](/enterprise/{{ currentVersion }}/user/github/receiving-notifications-about-activity-on-github/choosing-the-delivery-method-for-your-notifications){% endif %}." +You can filter email notifications you receive for pushes to a repository. For more information, see {% ifversion fpt or ghae or ghes or ghec %}"[Configuring notifications](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#filtering-email-notifications){% else %}"[About notification emails](/github/receiving-notifications-about-activity-on-github/about-email-notifications)." You can also turn off email notifications for pushes. For more information, see "[Choosing the delivery method for your notifications](/enterprise/{{ currentVersion }}/user/github/receiving-notifications-about-activity-on-github/choosing-the-delivery-method-for-your-notifications){% endif %}." ## Enabling email notifications for pushes to your repository @@ -44,7 +45,7 @@ You can filter email notifications you receive for pushes to a repository. For m ![Setup notifications button](/assets/images/help/settings/setup_notifications_settings.png) ## Further reading -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} - "[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications)" {% else %} - "[About notifications](/enterprise/{{ currentVersion }}/user/github/receiving-notifications-about-activity-on-github/about-notifications)" diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md index 2070d9a16975..e993ede43fd3 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-autolinks-to-reference-external-resources.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Configure autolinks diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md index aba77f6401ec..23138f03ba56 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-git-lfs-objects-in-archives-of-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-git-lfs-objects-in-archives-of-your-repository.md index 26a22595b87b..346178151ef5 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-git-lfs-objects-in-archives-of-your-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-git-lfs-objects-in-archives-of-your-repository.md @@ -5,6 +5,7 @@ intro: 'You can choose whether {% data variables.large_files.product_name_long % permissions: 'People with admin permissions for a repository can manage whether {% data variables.large_files.product_name_short %} objects are included in archives of the repository.' versions: fpt: '*' + ghec: '*' topics: - Repositories redirect_from: diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md index 8cdb30c22616..45ad484852a0 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository.md @@ -8,6 +8,7 @@ redirect_from: - /github/administering-a-repository/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository versions: fpt: '*' + ghec: '*' topics: - Repositories shortTitle: Teams & people diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-forking-policy-for-your-repository.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-forking-policy-for-your-repository.md index 54bbe04e21f3..9d9104a04c39 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-forking-policy-for-your-repository.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-forking-policy-for-your-repository.md @@ -1,6 +1,6 @@ --- title: Managing the forking policy for your repository -intro: 'You can allow or prevent the forking of a specific private{% ifversion fpt or ghae or ghes %} or internal{% endif %} repository owned by an organization.' +intro: 'You can allow or prevent the forking of a specific private{% ifversion fpt or ghae or ghes or ghec %} or internal{% endif %} repository owned by an organization.' redirect_from: - /articles/allowing-people-to-fork-a-private-repository-owned-by-your-organization - /github/administering-a-repository/allowing-people-to-fork-a-private-repository-owned-by-your-organization @@ -11,11 +11,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Manage the forking policy --- -An organization owner must allow forks of private{% ifversion fpt or ghae or ghes %} and internal{% endif %} repositories on the organization level before you can allow or disallow forks for a specific repository. For more information, see "[Managing the forking policy for your organization](/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)." +An organization owner must allow forks of private{% ifversion fpt or ghae or ghes or ghec %} and internal{% endif %} repositories on the organization level before you can allow or disallow forks for a specific repository. For more information, see "[Managing the forking policy for your organization](/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)." {% data reusables.organizations.internal-repos-enterprise %} diff --git a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/setting-repository-visibility.md b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/setting-repository-visibility.md index 017e35d61f8f..0bb4c215953c 100644 --- a/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/setting-repository-visibility.md +++ b/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/setting-repository-visibility.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Repository visibility @@ -20,7 +21,7 @@ shortTitle: Repository visibility Organization owners can restrict the ability to change repository visibility to organization owners only. For more information, see "[Restricting repository visibility changes in your organization](/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you're a member of an {% data variables.product.prodname_emu_enterprise %}, your repositories owned by your user account can only be private, and repositories in your enterprise's organizations can only be private or internal. @@ -43,16 +44,16 @@ We recommend reviewing the following caveats before you change the visibility of {% endif %} ### Making a repository private -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} * {% data variables.product.product_name %} will detach public forks of the public repository and put them into a new network. Public forks are not made private.{% endif %} -* If you change a repository's visibility from internal to private, {% data variables.product.prodname_dotcom %} will remove forks that belong to any user without access to the newly private repository. {% ifversion fpt or ghes %}The visibility of any forks will also change to private.{% elsif ghae %}If the internal repository has any forks, the visibility of the forks is already private.{% endif %} For more information, see "[What happens to forks when a repository is deleted or changes visibility?](/articles/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility)"{% ifversion fpt %} +* If you change a repository's visibility from internal to private, {% data variables.product.prodname_dotcom %} will remove forks that belong to any user without access to the newly private repository. {% ifversion fpt or ghes or ghec %}The visibility of any forks will also change to private.{% elsif ghae %}If the internal repository has any forks, the visibility of the forks is already private.{% endif %} For more information, see "[What happens to forks when a repository is deleted or changes visibility?](/articles/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility)"{% ifversion fpt or ghec %} * If you're using {% data variables.product.prodname_free_user %} for user accounts or organizations, some features won't be available in the repository after you change the visibility to private. {% data reusables.gated-features.more-info %}{% endif %} -* Any published {% data variables.product.prodname_pages %} site will be automatically unpublished.{% ifversion fpt %} If you added a custom domain to the {% data variables.product.prodname_pages %} site, you should remove or update your DNS records before making the repository private, to avoid the risk of a domain takeover. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %}{% ifversion fpt %} -* {% data variables.product.prodname_dotcom %} will no longer include the repository in the {% data variables.product.prodname_archive %}. For more information, see "[About archiving content and data on {% data variables.product.prodname_dotcom %}](/github/creating-cloning-and-archiving-repositories/about-archiving-content-and-data-on-github#about-the-github-archive-program)."{% endif %}{% ifversion fpt %} +* Any published {% data variables.product.prodname_pages %} site will be automatically unpublished.{% ifversion fpt or ghec %} If you added a custom domain to the {% data variables.product.prodname_pages %} site, you should remove or update your DNS records before making the repository private, to avoid the risk of a domain takeover. For more information, see "[Managing a custom domain for your {% data variables.product.prodname_pages %} site](/articles/managing-a-custom-domain-for-your-github-pages-site)."{% endif %}{% ifversion fpt or ghec %} +* {% data variables.product.prodname_dotcom %} will no longer include the repository in the {% data variables.product.prodname_archive %}. For more information, see "[About archiving content and data on {% data variables.product.prodname_dotcom %}](/github/creating-cloning-and-archiving-repositories/about-archiving-content-and-data-on-github#about-the-github-archive-program)."{% endif %}{% ifversion fpt or ghec %} * {% data variables.product.prodname_GH_advanced_security %} features, such as {% data variables.product.prodname_code_scanning %}, will stop working unless the repository is owned by an organization that is part of an enterprise with a license for {% data variables.product.prodname_advanced_security %} and sufficient spare seats. {% data reusables.advanced-security.more-info-ghas %}{% endif %}{% ifversion ghes %} * Anonymous Git read access is no longer available. For more information, see "[Enabling anonymous Git read access for a repository](/enterprise/{{ currentVersion }}/user/articles/enabling-anonymous-git-read-access-for-a-repository)."{% endif %} -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} ### Making a repository internal @@ -66,11 +67,11 @@ We recommend reviewing the following caveats before you change the visibility of {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ### Making a repository public -* {% data variables.product.product_name %} will detach private forks and turn them into a standalone private repository. For more information, see "[What happens to forks when a repository is deleted or changes visibility?](/articles/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility#changing-a-private-repository-to-a-public-repository)"{% ifversion fpt %} +* {% data variables.product.product_name %} will detach private forks and turn them into a standalone private repository. For more information, see "[What happens to forks when a repository is deleted or changes visibility?](/articles/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility#changing-a-private-repository-to-a-public-repository)"{% ifversion fpt or ghec %} * If you're converting your private repository to a public repository as part of a move toward creating an open source project, see the [Open Source Guides](http://opensource.guide) for helpful tips and guidelines. You can also take a free course on managing an open source project with [{% data variables.product.prodname_learning %}]({% data variables.product.prodname_learning_link %}). Once your repository is public, you can also view your repository's community profile to see whether your project meets best practices for supporting contributors. For more information, see "[Viewing your community profile](/articles/viewing-your-community-profile)." * The repository will automatically gain access to {% data variables.product.prodname_GH_advanced_security %} features. @@ -85,12 +86,12 @@ For information about improving repository security, see "[Securing your reposit 3. Under "Danger Zone", to the right of to "Change repository visibility", click **Change visibility**. ![Change visibility button](/assets/images/help/repository/repo-change-vis.png) 4. Select a visibility. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ![Dialog of options for repository visibility](/assets/images/help/repository/repo-change-select.png){% else %} ![Dialog of options for repository visibility](/assets/images/enterprise/repos/repo-change-select.png){% endif %} 5. To verify that you're changing the correct repository's visibility, type the name of the repository you want to change the visibility of. 6. Click **I understand, change repository visibility**. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ![Confirm change of repository visibility button](/assets/images/help/repository/repo-change-confirm.png){% else %} ![Confirm change of repository visibility button](/assets/images/enterprise/repos/repo-change-confirm.png){% endif %} diff --git a/content/repositories/releasing-projects-on-github/about-releases.md b/content/repositories/releasing-projects-on-github/about-releases.md index 552e46533cd3..2f46b8ccea2a 100644 --- a/content/repositories/releasing-projects-on-github/about-releases.md +++ b/content/repositories/releasing-projects-on-github/about-releases.md @@ -13,12 +13,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- ## About releases -{% ifversion fpt or ghes > 3.2 or ghae-issue-4972 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4972 or ghec %} ![An overview of releases](/assets/images/help/releases/releases-overview-with-contributors.png) {% else %} ![An overview of releases](/assets/images/help/releases/releases-overview.png) @@ -28,18 +29,18 @@ Releases are deployable software iterations you can package and make available f Releases are based on [Git tags](https://git-scm.com/book/en/Git-Basics-Tagging), which mark a specific point in your repository's history. A tag date may be different than a release date since they can be created at different times. For more information about viewing your existing tags, see "[Viewing your repository's releases and tags](/github/administering-a-repository/viewing-your-repositorys-releases-and-tags)." -You can receive notifications when new releases are published in a repository without receiving notifications about other updates to the repository. For more information, see {% ifversion fpt or ghae or ghes %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions){% else %}"[Watching and unwatching releases for a repository](/github/receiving-notifications-about-activity-on-github/watching-and-unwatching-releases-for-a-repository){% endif %}." +You can receive notifications when new releases are published in a repository without receiving notifications about other updates to the repository. For more information, see {% ifversion fpt or ghae or ghes or ghec %}"[Viewing your subscriptions](/github/managing-subscriptions-and-notifications-on-github/viewing-your-subscriptions){% else %}"[Watching and unwatching releases for a repository](/github/receiving-notifications-about-activity-on-github/watching-and-unwatching-releases-for-a-repository){% endif %}." Anyone with read access to a repository can view and compare releases, but only people with write permissions to a repository can manage releases. For more information, see "[Managing releases in a repository](/github/administering-a-repository/managing-releases-in-a-repository)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can manually create release notes while managing a release. Alternatively, you can automatically generate release notes from a default template, or customize your own release notes template. For more information, see "[Automatically generated release notes](/repositories/releasing-projects-on-github/automatically-generated-release-notes)." People with admin permissions to a repository can choose whether {% data variables.large_files.product_name_long %} ({% data variables.large_files.product_name_short %}) objects are included in the ZIP files and tarballs that {% data variables.product.product_name %} creates for each release. For more information, see "[Managing {% data variables.large_files.product_name_short %} objects in archives of your repository](/github/administering-a-repository/managing-git-lfs-objects-in-archives-of-your-repository)." {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} If a release fixes a security vulnerability, you should publish a security advisory in your repository. {% data variables.product.prodname_dotcom %} reviews each published security advisory and may use it to send {% data variables.product.prodname_dependabot_alerts %} to affected repositories. For more information, see "[About GitHub Security Advisories](/github/managing-security-vulnerabilities/about-github-security-advisories)." You can view the **Dependents** tab of the dependency graph to see which repositories and packages depend on code in your repository, and may therefore be affected by a new release. For more information, see "[About the dependency graph](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)." @@ -47,7 +48,7 @@ You can view the **Dependents** tab of the dependency graph to see which reposit You can also use the Releases API to gather information, such as the number of times people download a release asset. For more information, see "[Releases](/rest/reference/repos#releases)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Storage and bandwidth quotas Each file included in a release must be under {% data variables.large_files.max_file_size %}. There is no limit on the total size of a release, nor bandwidth usage. diff --git a/content/repositories/releasing-projects-on-github/automatically-generated-release-notes.md b/content/repositories/releasing-projects-on-github/automatically-generated-release-notes.md index 0ea081a201e3..c053b1e30573 100644 --- a/content/repositories/releasing-projects-on-github/automatically-generated-release-notes.md +++ b/content/repositories/releasing-projects-on-github/automatically-generated-release-notes.md @@ -1,14 +1,15 @@ --- title: Automatically generated release notes intro: You can automatically generate release notes for your GitHub releases -permissions: 'Repository collaborators and people with write access to a repository can generate and customize automated release notes for a release.' +permissions: Repository collaborators and people with write access to a repository can generate and customize automated release notes for a release. versions: fpt: '*' + ghec: '*' topics: - Repositories shortTitle: Automated release notes communityRedirect: - name: 'Provide GitHub Feedback' + name: Provide GitHub Feedback href: 'https://github.com/github/feedback/discussions/categories/releases-feedback' --- @@ -28,8 +29,8 @@ Automatically generated release notes provide an automated alternative to manual {% data reusables.repositories.releases %} 3. Click **Draft a new release**. ![Releases draft button](/assets/images/help/releases/draft_release_button.png) -4. {% ifversion fpt %}Click **Choose a tag** and type{% else %}Type{% endif %} a version number for your release. Alternatively, select an existing tag. - {% ifversion fpt %} +4. {% ifversion fpt or ghec %}Click **Choose a tag** and type{% else %}Type{% endif %} a version number for your release. Alternatively, select an existing tag. + {% ifversion fpt or ghec %} ![Enter a tag](/assets/images/help/releases/releases-tag-create.png) 5. If you are creating a new tag, click **Create new tag**. ![Confirm you want to create a new tag](/assets/images/help/releases/releases-tag-create-confirm.png) @@ -37,7 +38,7 @@ Automatically generated release notes provide an automated alternative to manual ![Releases tagged version](/assets/images/enterprise/releases/releases-tag-version.png) {% endif %} 6. If you have created a new tag, use the drop-down menu to select the branch that contains the project you want to release. - {% ifversion fpt %}![Choose a branch](/assets/images/help/releases/releases-choose-branch.png) + {% ifversion fpt or ghec %}![Choose a branch](/assets/images/help/releases/releases-choose-branch.png) {% else %}![Releases tagged branch](/assets/images/enterprise/releases/releases-tag-branch.png) {% endif %} 7. To the top right of the description text box, click **Auto-generate release notes**. diff --git a/content/repositories/releasing-projects-on-github/automation-for-release-forms-with-query-parameters.md b/content/repositories/releasing-projects-on-github/automation-for-release-forms-with-query-parameters.md index c82db874240e..6ac13a1f4144 100644 --- a/content/repositories/releasing-projects-on-github/automation-for-release-forms-with-query-parameters.md +++ b/content/repositories/releasing-projects-on-github/automation-for-release-forms-with-query-parameters.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Automate release forms diff --git a/content/repositories/releasing-projects-on-github/comparing-releases.md b/content/repositories/releasing-projects-on-github/comparing-releases.md index 5f3e0b537383..6f65df2eaaa7 100644 --- a/content/repositories/releasing-projects-on-github/comparing-releases.md +++ b/content/repositories/releasing-projects-on-github/comparing-releases.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories redirect_from: diff --git a/content/repositories/releasing-projects-on-github/index.md b/content/repositories/releasing-projects-on-github/index.md index b8d5a94c614c..2966855a2c90 100644 --- a/content/repositories/releasing-projects-on-github/index.md +++ b/content/repositories/releasing-projects-on-github/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/releasing-projects-on-github/linking-to-releases.md b/content/repositories/releasing-projects-on-github/linking-to-releases.md index cb33f7a9bcb2..de215394643b 100644 --- a/content/repositories/releasing-projects-on-github/linking-to-releases.md +++ b/content/repositories/releasing-projects-on-github/linking-to-releases.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- diff --git a/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md b/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md index c1ff03f8a70e..c4f734a804b4 100644 --- a/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md +++ b/content/repositories/releasing-projects-on-github/managing-releases-in-a-repository.md @@ -15,17 +15,18 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Manage releases --- -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ## About release management You can create new releases with release notes, @mentions of contributors, and links to binary files, as well as edit or delete existing releases. -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can also publish an action from a specific release in {% data variables.product.prodname_marketplace %}. For more information, see "Publishing an action in the {% data variables.product.prodname_marketplace %}." You can choose whether {% data variables.large_files.product_name_long %} ({% data variables.large_files.product_name_short %}) objects are included in the ZIP files and tarballs that {% data variables.product.product_name %} creates for each release. For more information, see "[Managing {% data variables.large_files.product_name_short %} objects in archives of your repository](/github/administering-a-repository/managing-git-lfs-objects-in-archives-of-your-repository)." @@ -42,8 +43,8 @@ You can choose whether {% data variables.large_files.product_name_long %} ({% da {% data reusables.repositories.releases %} 3. Click **Draft a new release**. ![Releases draft button](/assets/images/help/releases/draft_release_button.png) -4. {% ifversion fpt %}Click **Choose a tag** and type{% else %}Type{% endif %} a version number for your release. Alternatively, select an existing tag. - {% ifversion fpt %} +4. {% ifversion fpt or ghec %}Click **Choose a tag** and type{% else %}Type{% endif %} a version number for your release. Alternatively, select an existing tag. + {% ifversion fpt or ghec %} ![Enter a tag](/assets/images/help/releases/releases-tag-create.png) 1. If you are creating a new tag, click **Create new tag**. ![Confirm you want to create a new tag](/assets/images/help/releases/releases-tag-create-confirm.png) @@ -51,14 +52,14 @@ You can choose whether {% data variables.large_files.product_name_long %} ({% da ![Releases tagged version](/assets/images/enterprise/releases/releases-tag-version.png) {% endif %} 5. If you have created a new tag, use the drop-down menu to select the branch that contains the project you want to release. - {% ifversion fpt %}![Choose a branch](/assets/images/help/releases/releases-choose-branch.png) + {% ifversion fpt or ghec %}![Choose a branch](/assets/images/help/releases/releases-choose-branch.png) {% else %}![Releases tagged branch](/assets/images/enterprise/releases/releases-tag-branch.png) {% endif %} 6. Type a title and description for your release. {%- ifversion fpt or ghes > 3.2 or ghae-issue-4972 %} If you @mention any {% data variables.product.product_name %} users in the description, the published release will include a **Contributors** section with an avatar list of all the mentioned users. {%- endif %} - {% ifversion fpt %} Alternatively, you can automatically generate your release notes by clicking **Auto-generate release notes**. + {% ifversion fpt or ghec %} Alternatively, you can automatically generate your release notes by clicking **Auto-generate release notes**. {% endif %} ![Releases description](/assets/images/help/releases/releases_description_auto.png) 7. Optionally, to include binary files such as compiled programs in your release, drag and drop or manually select files in the binaries box. @@ -95,7 +96,7 @@ You can choose whether {% data variables.large_files.product_name_long %} ({% da ```shell gh release create v1.3.2 --title "v1.3.2 (beta)" --notes "this is a beta release" --prerelease ``` -{% ifversion fpt or ghes > 3.2 or ghae-issue-4972 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-4972 or ghec %} If you @mention any {% data variables.product.product_name %} users in the notes, the published release on {% data variables.product.prodname_dotcom_the_website %} will include a **Contributors** section with an avatar list of all the mentioned users. {% endif %} @@ -111,7 +112,7 @@ If you @mention any {% data variables.product.product_name %} users in the notes {% data reusables.repositories.releases %} 3. On the right side of the page, next to the release you want to edit, click **Edit release**. ![Edit a release](/assets/images/help/releases/edit-release.png) -4. Edit the details for the release in the form, then click **Update release**.{% ifversion fpt or ghes > 3.2 or ghae-issue-4972 %} If you add or remove any @mentions of GitHub users in the description, those users will be added or removed from the avatar list in the **Contributors** section of the release.{% endif %} +4. Edit the details for the release in the form, then click **Update release**.{% ifversion fpt or ghes > 3.2 or ghae-issue-4972 or ghec %} If you add or remove any @mentions of GitHub users in the description, those users will be added or removed from the avatar list in the **Contributors** section of the release.{% endif %} ![Update a release](/assets/images/help/releases/update-release.png) {% endwebui %} diff --git a/content/repositories/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags.md b/content/repositories/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags.md index 0ecb8b806eec..e8b67b47a9c8 100644 --- a/content/repositories/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags.md +++ b/content/repositories/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags.md @@ -11,11 +11,12 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: View releases & tags --- -{% ifversion fpt or ghae or ghes %} +{% ifversion fpt or ghae or ghes or ghec %} {% tip %} **Tip**: You can also view a release using the {% data variables.product.prodname_cli %}. For more information, see "[`gh release view`](https://cli.github.com/manual/gh_release_view)" in the {% data variables.product.prodname_cli %} documentation. diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/about-repository-graphs.md b/content/repositories/viewing-activity-and-data-for-your-repository/about-repository-graphs.md index 1337718b2db8..63f175baf4fb 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/about-repository-graphs.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/about-repository-graphs.md @@ -10,12 +10,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- -A repository's graphs give you information on {% ifversion fpt %} traffic, projects that depend on the repository,{% endif %} contributors and commits to the repository, and a repository's forks and network. If you maintain a repository, you can use this data to get a better understanding of who's using your repository and why they're using it. +A repository's graphs give you information on {% ifversion fpt or ghec %} traffic, projects that depend on the repository,{% endif %} contributors and commits to the repository, and a repository's forks and network. If you maintain a repository, you can use this data to get a better understanding of who's using your repository and why they're using it. -{% ifversion fpt %} +{% ifversion fpt or ghec %} Some repository graphs are available only in public repositories with {% data variables.product.prodname_free_user %}: - Pulse @@ -27,4 +28,4 @@ Some repository graphs are available only in public repositories with {% data va All other repository graphs are available in all repositories. Every repository graph is available in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, and {% data variables.product.prodname_ghe_cloud %}. {% data reusables.gated-features.more-info %} -{% endif %} \ No newline at end of file +{% endif %} diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/analyzing-changes-to-a-repositorys-content.md b/content/repositories/viewing-activity-and-data-for-your-repository/analyzing-changes-to-a-repositorys-content.md index 753d86afb7de..160e5f13ba58 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/analyzing-changes-to-a-repositorys-content.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/analyzing-changes-to-a-repositorys-content.md @@ -1,6 +1,6 @@ --- title: Analyzing changes to a repository's content -intro: "You can see the changes to the content of a repository by analyzing the repository's commits, commit frequency, and content additions and deletions." +intro: 'You can see the changes to the content of a repository by analyzing the repository''s commits, commit frequency, and content additions and deletions.' product: '{% data reusables.gated-features.repository-insights %}' redirect_from: - /articles/visualizing-additions-and-deletions-to-content-in-a-repository @@ -17,6 +17,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Analyze changes @@ -45,7 +46,7 @@ The bottom graph shows the average number of commits by day of the week for the The code frequency graph displays the content additions and deletions for each week in a repository's history. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ![Code frequency graph](/assets/images/help/graphs/repo_code_frequency_graph_dotcom.png) diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/index.md b/content/repositories/viewing-activity-and-data-for-your-repository/index.md index 79ba712829f0..57d8d1a5960f 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/index.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/index.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/understanding-connections-between-repositories.md b/content/repositories/viewing-activity-and-data-for-your-repository/understanding-connections-between-repositories.md index 881c4fd1af91..2894f83924c9 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/understanding-connections-between-repositories.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/understanding-connections-between-repositories.md @@ -1,6 +1,6 @@ --- title: Understanding connections between repositories -intro: "You can better understand the connections that exist between repositories by viewing a repository's network and forks and the projects that depend on the repository." +intro: You can better understand the connections that exist between repositories by viewing a repository's network and forks and the projects that depend on the repository. product: '{% data reusables.gated-features.repository-insights %}' redirect_from: - /articles/viewing-a-repository-s-network @@ -18,6 +18,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Connections between repositories @@ -48,7 +49,7 @@ The Members graph displays all the forks of a repository. Forks are listed alphabetically by the username of the person who forked the repository. You can click on the username to be redirected to the user's {% data variables.product.product_name %} profile page or click on the fork name to be redirected to the specific fork of the repository. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ![Repository members graph](/assets/images/help/graphs/repo_forks_graph_dotcom.png) @@ -65,7 +66,7 @@ Forks are listed alphabetically by the username of the person who forked the rep 3. In the left sidebar, click **Forks**. ![Forks tab](/assets/images/help/graphs/graphs-sidebar-forks-tab.png) -{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 2.22 or ghae-issue-4864 or ghec %} ## Viewing the dependencies of a repository You can use the dependency graph to explore the code your repository depends on. @@ -75,4 +76,4 @@ Almost all software relies on code developed and maintained by other developers, The dependency graph provides a great way to visualize and explore the dependencies for a repository. For more information, see "[About the dependency graph](/code-security/supply-chain-security/about-the-dependency-graph)" and "[Exploring the dependencies of a repository](/code-security/supply-chain-security/exploring-the-dependencies-of-a-repository)." You can also set up your repository so that {% data variables.product.company_short %} alerts you automatically whenever a security vulnerability is found in one of your dependencies. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." -{% endif %} \ No newline at end of file +{% endif %} diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-projects-contributors.md b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-projects-contributors.md index 8966d5e672ce..f2b7360f9317 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-projects-contributors.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-projects-contributors.md @@ -1,6 +1,6 @@ --- title: Viewing a project's contributors -intro: 'You can see who contributed commits to a repository{% ifversion fpt %} and its dependencies{% endif %}.' +intro: 'You can see who contributed commits to a repository{% ifversion fpt or ghec %} and its dependencies{% endif %}.' redirect_from: - /articles/i-don-t-see-myself-in-the-contributions-graph/ - /articles/viewing-contribution-activity-in-a-repository/ @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: View project contributors @@ -20,7 +21,7 @@ shortTitle: View project contributors You can view the top 100 contributors to a repository{% ifversion ghes or ghae %}, including commit co-authors,{% endif %} in the contributors graph. Merge commits and empty commits aren't counted as contributions for this graph. -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can also see a list of people who have contributed to the project's Python dependencies. To access this list of community contributors, visit `https://github.com/REPO-OWNER/REPO-NAME/community_contributors`. {% endif %} @@ -48,4 +49,4 @@ If you don't appear in a repository's contributors graph, it may be because: If all your commits in the repository are on non-default branches, you won't be in the contributors graph. For example, commits on the `gh-pages` branch aren't included in the graph unless `gh-pages` is the repository's default branch. To have your commits merged into the default branch, you can create a pull request. For more information, see "[About pull requests](/articles/about-pull-requests)." -If the email address you used to author the commits is not connected to your account on {% data variables.product.product_name %}, your commits won't be linked to your account, and you won't appear in the contributors graph. For more information, see "[Setting your commit email address](/articles/setting-your-commit-email-address){% ifversion not ghae %}" and "[Adding an email address to your {% data variables.product.product_name %} account](/articles/adding-an-email-address-to-your-github-account){% endif %}." +If the email address you used to author the commits is not connected to your account on {% data variables.product.product_name %}, your commits won't be linked to your account, and you won't appear in the contributors graph. For more information, see "[Setting your commit email address](/articles/setting-your-commit-email-address){% ifversion not ghae %}" and "[Adding an email address to your {% data variables.product.prodname_dotcom %} account](/articles/adding-an-email-address-to-your-github-account){% endif %}." diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-summary-of-repository-activity.md b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-summary-of-repository-activity.md index 27fb1688d247..dc19a08318e9 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-summary-of-repository-activity.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-a-summary-of-repository-activity.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: View repository activity diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-deployment-activity-for-your-repository.md b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-deployment-activity-for-your-repository.md index 3ddfeff71c3b..21a7a689102d 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-deployment-activity-for-your-repository.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-deployment-activity-for-your-repository.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: View deployment activity diff --git a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md index 692f78163644..8f24f85a9ff5 100644 --- a/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md +++ b/content/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository.md @@ -8,6 +8,7 @@ redirect_from: - /github/visualizing-repository-data-with-graphs/accessing-basic-repository-data/viewing-traffic-to-a-repository versions: fpt: '*' + ghec: '*' topics: - Repositories shortTitle: View repository traffic diff --git a/content/repositories/working-with-files/index.md b/content/repositories/working-with-files/index.md index d5e323b6ea91..2a2eded20fe9 100644 --- a/content/repositories/working-with-files/index.md +++ b/content/repositories/working-with-files/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md b/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md index 2c1635a128b7..23f811977e15 100644 --- a/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md +++ b/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Add a file @@ -42,7 +43,7 @@ Files that you add to a repository via a browser are limited to {% data variable ## Adding a file to a repository using the command line -You can upload an existing file to a {% data variables.product.product_name %} repository using the command line. +You can upload an existing file to a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} using the command line. {% tip %} diff --git a/content/repositories/working-with-files/managing-files/creating-new-files.md b/content/repositories/working-with-files/managing-files/creating-new-files.md index ecca7cca08c7..85166ee158da 100644 --- a/content/repositories/working-with-files/managing-files/creating-new-files.md +++ b/content/repositories/working-with-files/managing-files/creating-new-files.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- diff --git a/content/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github.md b/content/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github.md index 59375927d512..42c8e2897b30 100644 --- a/content/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github.md +++ b/content/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: How changed files appear diff --git a/content/repositories/working-with-files/managing-files/deleting-files-in-a-repository.md b/content/repositories/working-with-files/managing-files/deleting-files-in-a-repository.md index 194d4dfdb220..1f8306893580 100644 --- a/content/repositories/working-with-files/managing-files/deleting-files-in-a-repository.md +++ b/content/repositories/working-with-files/managing-files/deleting-files-in-a-repository.md @@ -1,6 +1,6 @@ --- title: Deleting files in a repository -intro: 'You can delete an individual file{% ifversion fpt or ghes > 3.0 %} or an entire directory{% endif %} in your repository on {% data variables.product.product_name %}.' +intro: 'You can delete an individual file{% ifversion fpt or ghes > 3.0 or ghec %} or an entire directory{% endif %} in your repository on {% data variables.product.product_name %}.' redirect_from: - /articles/deleting-files - /github/managing-files-in-a-repository/deleting-files @@ -11,18 +11,19 @@ versions: fpt: '*' ghes: '*' ghae: '*' -permissions: 'People with write permissions can delete files{% ifversion fpt or ghes > 3.0 %} or directories{% endif %} in a repository.' + ghec: '*' +permissions: 'People with write permissions can delete files{% ifversion fpt or ghes > 3.0 or ghec %} or directories{% endif %} in a repository.' topics: - Repositories shortTitle: Delete files --- -## About file{% ifversion fpt or ghes > 3.0 %} and directory{% endif %} deletion +## About file{% ifversion fpt or ghes > 3.0 or ghec %} and directory{% endif %} deletion -You can delete an individual file in your repository{% ifversion fpt or ghes > 3.0 %} or an entire directory, including all the files in the directory{% endif %}. +You can delete an individual file in your repository{% ifversion fpt or ghes > 3.0 or ghec %} or an entire directory, including all the files in the directory{% endif %}. -If you try to delete a file{% ifversion fpt or ghes > 3.0 %} or directory{% endif %} in a repository that you don’t have write permissions to, we'll fork the project to your user account and help you send a pull request to the original repository after you commit your change. For more information, see "[About pull requests](/github/collaborating-with-issues-and-pull-requests/about-pull-requests)." +If you try to delete a file{% ifversion fpt or ghes > 3.0 or ghec %} or directory{% endif %} in a repository that you don’t have write permissions to, we'll fork the project to your user account and help you send a pull request to the original repository after you commit your change. For more information, see "[About pull requests](/github/collaborating-with-issues-and-pull-requests/about-pull-requests)." -If the file{% ifversion fpt or ghes > 3.0 %} or directory{% endif %} you deleted contains sensitive data, the data will still be available in the repository's Git history. To completely remove the file from {% data variables.product.product_name %}, you must remove the file from your repository's history. For more information, see "[Removing sensitive data from a repository](/github/authenticating-to-github/removing-sensitive-data-from-a-repository)." +If the file{% ifversion fpt or ghes > 3.0 or ghec %} or directory{% endif %} you deleted contains sensitive data, the data will still be available in the repository's Git history. To completely remove the file from {% data variables.product.product_name %}, you must remove the file from your repository's history. For more information, see "[Removing sensitive data from a repository](/github/authenticating-to-github/removing-sensitive-data-from-a-repository)." ## Deleting a file @@ -33,7 +34,7 @@ If the file{% ifversion fpt or ghes > 3.0 %} or directory{% endif %} you deleted {% data reusables.files.choose_commit_branch %} {% data reusables.files.propose_file_change %} -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} ## Deleting a directory 1. Browse to the directory in your repository that you want to delete. diff --git a/content/repositories/working-with-files/managing-files/editing-files.md b/content/repositories/working-with-files/managing-files/editing-files.md index 087dcc1ecae6..bed9ca214c94 100644 --- a/content/repositories/working-with-files/managing-files/editing-files.md +++ b/content/repositories/working-with-files/managing-files/editing-files.md @@ -13,6 +13,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Edit files diff --git a/content/repositories/working-with-files/managing-files/index.md b/content/repositories/working-with-files/managing-files/index.md index c904a83ac70f..be66012523b8 100644 --- a/content/repositories/working-with-files/managing-files/index.md +++ b/content/repositories/working-with-files/managing-files/index.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories children: diff --git a/content/repositories/working-with-files/managing-files/moving-a-file-to-a-new-location.md b/content/repositories/working-with-files/managing-files/moving-a-file-to-a-new-location.md index 6addae1befbb..6c7fed52a542 100644 --- a/content/repositories/working-with-files/managing-files/moving-a-file-to-a-new-location.md +++ b/content/repositories/working-with-files/managing-files/moving-a-file-to-a-new-location.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Move a file diff --git a/content/repositories/working-with-files/managing-files/renaming-a-file.md b/content/repositories/working-with-files/managing-files/renaming-a-file.md index 1188d84ece8e..a54f3a859d92 100644 --- a/content/repositories/working-with-files/managing-files/renaming-a-file.md +++ b/content/repositories/working-with-files/managing-files/renaming-a-file.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories --- diff --git a/content/repositories/working-with-files/managing-large-files/about-git-large-file-storage.md b/content/repositories/working-with-files/managing-large-files/about-git-large-file-storage.md index 91bafc7d2378..ac1229f6fe93 100644 --- a/content/repositories/working-with-files/managing-large-files/about-git-large-file-storage.md +++ b/content/repositories/working-with-files/managing-large-files/about-git-large-file-storage.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Git Large File Storage --- @@ -17,7 +18,7 @@ shortTitle: Git Large File Storage {% data variables.large_files.product_name_short %} handles large files by storing references to the file in the repository, but not the actual file itself. To work around Git's architecture, {% data variables.large_files.product_name_short %} creates a pointer file which acts as a reference to the actual file (which is stored somewhere else). {% data variables.product.product_name %} manages this pointer file in your repository. When you clone the repository down, {% data variables.product.product_name %} uses the pointer file as a map to go and find the large file for you. -{% ifversion fpt %} +{% ifversion fpt or ghec %} Using {% data variables.large_files.product_name_short %}, you can store files up to: | Product | Maximum file size | diff --git a/content/repositories/working-with-files/managing-large-files/about-large-files-on-github.md b/content/repositories/working-with-files/managing-large-files/about-large-files-on-github.md index ef5b48cc28b6..88569010b9f0 100644 --- a/content/repositories/working-with-files/managing-large-files/about-large-files-on-github.md +++ b/content/repositories/working-with-files/managing-large-files/about-large-files-on-github.md @@ -20,12 +20,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Large files --- ## About size limits on {% data variables.product.product_name %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data variables.product.product_name %} tries to provide abundant storage for all Git repositories, although there are hard limits for file and repository sizes. To ensure performance and reliability for our users, we actively monitor signals of overall repository health. Repository health is a function of various interacting factors, including size, commit frequency, contents, and structure. ### File size limits @@ -47,7 +48,7 @@ If you need to distribute large files within your repository, you can create rel Git is not designed to handle large SQL files. To share large databases with other developers, we recommend using [Dropbox](https://www.dropbox.com/). -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Repository size limits We recommend repositories remain small, ideally less than 1 GB, and less than 5 GB is strongly recommended. Smaller repositories are faster to clone and easier to work with and maintain. If your repository excessively impacts our infrastructure, you might receive an email from {% data variables.contact.github_support %} asking you to take corrective action. We try to be flexible, especially with large projects that have many collaborators, and will work with you to find a resolution whenever possible. You can prevent your repository from impacting our infrastructure by effectively managing your repository's size and overall health. You can find advice and a tool for repository analysis in the [`github/git-sizer`](https://github.com/github/git-sizer) repository. @@ -97,7 +98,7 @@ If you added a file in an earlier commit, you need to remove it from the reposit If you need to distribute large files within your repository, you can create releases on {% data variables.product.product_location %}. Releases allow you to package software, release notes, and links to binary files, for other people to use. For more information, visit "[About releases](/github/administering-a-repository/about-releases)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} We don't limit the total size of the binary files in the release or the bandwidth used to deliver them. However, each individual file must be smaller than {% data variables.large_files.max_lfs_size %}. diff --git a/content/repositories/working-with-files/managing-large-files/about-storage-and-bandwidth-usage.md b/content/repositories/working-with-files/managing-large-files/about-storage-and-bandwidth-usage.md index afc63d8584c3..c32b022fd9ed 100644 --- a/content/repositories/working-with-files/managing-large-files/about-storage-and-bandwidth-usage.md +++ b/content/repositories/working-with-files/managing-large-files/about-storage-and-bandwidth-usage.md @@ -9,6 +9,7 @@ redirect_from: - /github/managing-large-files/versioning-large-files/about-storage-and-bandwidth-usage versions: fpt: '*' + ghec: '*' shortTitle: Storage & bandwidth --- {% data variables.large_files.product_name_short %} is available for every repository on {% data variables.product.product_name %}, whether or not your account or organization has a paid subscription. @@ -22,7 +23,7 @@ For example: - If you download a 500 MB file that's tracked with LFS, you'll use 500 MB of the repository owner's allotted bandwidth. If a collaborator pushes a change to the file and you pull the new version to your local repository, you'll use another 500 MB of bandwidth, bringing the total usage for these two downloads to 1 GB of bandwidth. - If {% data variables.product.prodname_actions %} downloads a 500 MB file that is tracked with LFS, it will use 500 MB of the repository owner's allotted bandwidth. -{% ifversion fpt %} +{% ifversion fpt or ghec %} If {% data variables.large_files.product_name_long %} ({% data variables.large_files.product_name_short %}) objects are included in source code archives for your repository, downloads of those archives will count towards bandwidth usage for the repository. For more information, see "[Managing {% data variables.large_files.product_name_short %} objects in archives of your repository](/github/administering-a-repository/managing-git-lfs-objects-in-archives-of-your-repository)." {% endif %} diff --git a/content/repositories/working-with-files/managing-large-files/collaboration-with-git-large-file-storage.md b/content/repositories/working-with-files/managing-large-files/collaboration-with-git-large-file-storage.md index ac3c34c65c98..f282ed9a5c5f 100644 --- a/content/repositories/working-with-files/managing-large-files/collaboration-with-git-large-file-storage.md +++ b/content/repositories/working-with-files/managing-large-files/collaboration-with-git-large-file-storage.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Collaboration --- If collaborators on your repository don't have {% data variables.large_files.product_name_short %} installed, they won't have access to the original large file. If they attempt to clone your repository, they will only fetch the pointer files, and won't have access to any of the actual data. @@ -30,7 +31,7 @@ For more information about pointer files, see "[About {% data variables.large_fi To view changes made to large files, check out the pull request locally to review the diff. For more information, see "[Checking out pull requests locally](/github/collaborating-with-issues-and-pull-requests/checking-out-pull-requests-locally)." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Pushing large files to forks diff --git a/content/repositories/working-with-files/managing-large-files/configuring-git-large-file-storage.md b/content/repositories/working-with-files/managing-large-files/configuring-git-large-file-storage.md index a707424d0d99..6b94878a8be2 100644 --- a/content/repositories/working-with-files/managing-large-files/configuring-git-large-file-storage.md +++ b/content/repositories/working-with-files/managing-large-files/configuring-git-large-file-storage.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Configure Git LFS --- If there are existing files in your repository that you'd like to use {% data variables.product.product_name %} with, you need to first remove them from the repository and then add them to {% data variables.large_files.product_name_short %} locally. For more information, see "[Moving a file in your repository to {% data variables.large_files.product_name_short %}](/articles/moving-a-file-in-your-repository-to-git-large-file-storage)." @@ -61,5 +62,5 @@ If there are existing files in your repository that you'd like to use {% data va ## Further reading -- "[Collaboration with {% data variables.large_files.product_name_long %}](/articles/collaboration-with-git-large-file-storage/)"{% ifversion fpt %} +- "[Collaboration with {% data variables.large_files.product_name_long %}](/articles/collaboration-with-git-large-file-storage/)"{% ifversion fpt or ghec %} - "[Managing {% data variables.large_files.product_name_short %} objects in archives of your repository](/github/administering-a-repository/managing-git-lfs-objects-in-archives-of-your-repository)"{% endif %} diff --git a/content/repositories/working-with-files/managing-large-files/index.md b/content/repositories/working-with-files/managing-large-files/index.md index f69698f46d8d..67c8055f16a2 100644 --- a/content/repositories/working-with-files/managing-large-files/index.md +++ b/content/repositories/working-with-files/managing-large-files/index.md @@ -12,6 +12,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /about-large-files-on-github - /about-git-large-file-storage diff --git a/content/repositories/working-with-files/managing-large-files/installing-git-large-file-storage.md b/content/repositories/working-with-files/managing-large-files/installing-git-large-file-storage.md index 4a2a42e48676..c051cbb5a7ce 100644 --- a/content/repositories/working-with-files/managing-large-files/installing-git-large-file-storage.md +++ b/content/repositories/working-with-files/managing-large-files/installing-git-large-file-storage.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Install Git LFS --- {% mac %} diff --git a/content/repositories/working-with-files/managing-large-files/moving-a-file-in-your-repository-to-git-large-file-storage.md b/content/repositories/working-with-files/managing-large-files/moving-a-file-in-your-repository-to-git-large-file-storage.md index 208fb7b8d71c..9d180ab2053e 100644 --- a/content/repositories/working-with-files/managing-large-files/moving-a-file-in-your-repository-to-git-large-file-storage.md +++ b/content/repositories/working-with-files/managing-large-files/moving-a-file-in-your-repository-to-git-large-file-storage.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Move a file to Git LFS --- After installing {% data variables.large_files.product_name_short %} and configuring {% data variables.large_files.product_name_short %} tracking, you can move files from Git's regular tracking to {% data variables.large_files.product_name_short %}. For more information, see "[Installing {% data variables.large_files.product_name_long %}](/github/managing-large-files/installing-git-large-file-storage)" and "[Configuring {% data variables.large_files.product_name_long %}](/github/managing-large-files/configuring-git-large-file-storage)." diff --git a/content/repositories/working-with-files/managing-large-files/removing-files-from-git-large-file-storage.md b/content/repositories/working-with-files/managing-large-files/removing-files-from-git-large-file-storage.md index 0988bb52cfa5..1b740d722cd6 100644 --- a/content/repositories/working-with-files/managing-large-files/removing-files-from-git-large-file-storage.md +++ b/content/repositories/working-with-files/managing-large-files/removing-files-from-git-large-file-storage.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Remove files --- ## Removing a single file @@ -38,9 +39,9 @@ shortTitle: Remove files ## {% data variables.large_files.product_name_short %} objects in your repository -After you remove files from {% data variables.large_files.product_name_short %}, the {% data variables.large_files.product_name_short %} objects still exist on the remote storage{% ifversion fpt %} and will continue to count toward your {% data variables.large_files.product_name_short %} storage quota{% endif %}. +After you remove files from {% data variables.large_files.product_name_short %}, the {% data variables.large_files.product_name_short %} objects still exist on the remote storage{% ifversion fpt or ghec %} and will continue to count toward your {% data variables.large_files.product_name_short %} storage quota{% endif %}. -To remove {% data variables.large_files.product_name_short %} objects from a repository, {% ifversion fpt %}delete and recreate the repository. When you delete a repository, any associated issues, stars, and forks are also deleted. For more information, see "[Deleting a repository](/github/administering-a-repository/deleting-a-repository)." If you need to purge a removed object and you are unable to delete the repository, please [contact support](/github/working-with-github-support) for help.{% else %}contact your {% data variables.product.prodname_enterprise %} administrator to archive the objects. Archived objects are purged after three months.{% endif %} +To remove {% data variables.large_files.product_name_short %} objects from a repository, {% ifversion fpt or ghec %}delete and recreate the repository. When you delete a repository, any associated issues, stars, and forks are also deleted. For more information, see "[Deleting a repository](/github/administering-a-repository/deleting-a-repository)." If you need to purge a removed object and you are unable to delete the repository, please [contact support](/github/working-with-github-support) for help.{% else %}contact your {% data variables.product.prodname_enterprise %} administrator to archive the objects. Archived objects are purged after three months.{% endif %} {% note %} diff --git a/content/repositories/working-with-files/managing-large-files/resolving-git-large-file-storage-upload-failures.md b/content/repositories/working-with-files/managing-large-files/resolving-git-large-file-storage-upload-failures.md index 88a94246677f..6f989935f97c 100644 --- a/content/repositories/working-with-files/managing-large-files/resolving-git-large-file-storage-upload-failures.md +++ b/content/repositories/working-with-files/managing-large-files/resolving-git-large-file-storage-upload-failures.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' shortTitle: Resolve upload failures --- The {% data variables.large_files.product_name_short %} integrity check ensures that all referenced {% data variables.large_files.product_name_short %} files in a push have been uploaded properly. If the check detects referenced files that have not been uploaded, you will receive an error message and your push will be blocked. diff --git a/content/repositories/working-with-files/using-files/getting-permanent-links-to-files.md b/content/repositories/working-with-files/using-files/getting-permanent-links-to-files.md index fddb90da2bb2..cba6634af4db 100644 --- a/content/repositories/working-with-files/using-files/getting-permanent-links-to-files.md +++ b/content/repositories/working-with-files/using-files/getting-permanent-links-to-files.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Permanent links to files diff --git a/content/repositories/working-with-files/using-files/index.md b/content/repositories/working-with-files/using-files/index.md index 896fefe26c73..520b60a3fe29 100644 --- a/content/repositories/working-with-files/using-files/index.md +++ b/content/repositories/working-with-files/using-files/index.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /navigating-code-on-github - /tracking-changes-in-a-file diff --git a/content/repositories/working-with-files/using-files/navigating-code-on-github.md b/content/repositories/working-with-files/using-files/navigating-code-on-github.md index 0e323ed39a0a..301fae43d3ac 100644 --- a/content/repositories/working-with-files/using-files/navigating-code-on-github.md +++ b/content/repositories/working-with-files/using-files/navigating-code-on-github.md @@ -7,6 +7,7 @@ redirect_from: - /github/managing-files-in-a-repository/managing-files-on-github/navigating-code-on-github versions: fpt: '*' + ghec: '*' topics: - Repositories --- diff --git a/content/repositories/working-with-files/using-files/tracking-changes-in-a-file.md b/content/repositories/working-with-files/using-files/tracking-changes-in-a-file.md index 19fc9542ef8d..9f93554c5f62 100644 --- a/content/repositories/working-with-files/using-files/tracking-changes-in-a-file.md +++ b/content/repositories/working-with-files/using-files/tracking-changes-in-a-file.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Track file changes diff --git a/content/repositories/working-with-files/using-files/working-with-non-code-files.md b/content/repositories/working-with-files/using-files/working-with-non-code-files.md index 796e7ad9bc70..088a3f602da1 100644 --- a/content/repositories/working-with-files/using-files/working-with-non-code-files.md +++ b/content/repositories/working-with-files/using-files/working-with-non-code-files.md @@ -1,6 +1,6 @@ --- title: Working with non-code files -intro: "{% data variables.product.product_name %} supports rendering and diffing in a number of non-code file formats." +intro: '{% data variables.product.product_name %} supports rendering and diffing in a number of non-code file formats.' redirect_from: - /articles/rendering-and-diffing-images - /github/managing-files-in-a-repository/rendering-and-diffing-images @@ -29,6 +29,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - Repositories shortTitle: Working with non-code files @@ -46,7 +47,7 @@ shortTitle: Working with non-code files ### Viewing images -You can directly browse and view images in your {% data variables.product.product_name %} repository: +You can directly browse and view images in your repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}: ![inline image](/assets/images/help/images/view.png) @@ -135,7 +136,7 @@ GitHub supports rendering tabular data in the form of *.csv* (comma-separated) a ![Rendered CSV sample](/assets/images/help/repository/rendered_csv.png) -When viewed, any _.csv_ or _.tsv_ file committed to a {% data variables.product.product_name %} repository automatically renders as an interactive table, complete with headers and row numbering. By default, we'll always assume the first row is your header row. +When viewed, any _.csv_ or _.tsv_ file committed to a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} automatically renders as an interactive table, complete with headers and row numbering. By default, we'll always assume the first row is your header row. You can link to a particular row by clicking the row number, or select multiple rows by holding down the shift key. Just copy the URL and send it to a friend. @@ -190,7 +191,7 @@ You can click {% octicon "file" aria-label="The paper icon" %} to see the change ![Rendered Prose changes](/assets/images/help/repository/rendered_prose_changes.png) -{% ifversion fpt or ghes > 3.2 or ghae-issue-5232 %} +{% ifversion fpt or ghes > 3.2 or ghae-issue-5232 or ghec %} ### Disabling Markdown rendering diff --git a/content/rest/guides/basics-of-authentication.md b/content/rest/guides/basics-of-authentication.md index 63f8f2fffedf..6c2ccf70a5a7 100644 --- a/content/rest/guides/basics-of-authentication.md +++ b/content/rest/guides/basics-of-authentication.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -59,7 +60,7 @@ end ``` Your client ID and client secret keys come from [your application's configuration -page][app settings].{% ifversion fpt %} You should **never, _ever_** store these values in +page][app settings].{% ifversion fpt or ghec %} You should **never, _ever_** store these values in {% data variables.product.product_name %}--or any other public place, for that matter.{% endif %} We recommend storing them as [environment variables][about env vars]--which is exactly what we've done here. @@ -166,7 +167,7 @@ or `401` status, or return a different subset of information. To help you gracefully handle these situations, all API responses for requests made with valid tokens also contain an [`X-OAuth-Scopes` header][oauth scopes]. This header contains the list of scopes of the token that was used to make the -request. In addition to that, the OAuth Applications API provides an endpoint to {% ifversion fpt or ghes %} +request. In addition to that, the OAuth Applications API provides an endpoint to {% ifversion fpt or ghes or ghec %} [check a token for validity](/rest/reference/apps#check-a-token){% else %}[check a token for validity](/rest/reference/apps#check-an-authorization){% endif %}. Use this information to detect changes in token scopes, and inform your users of changes in available application functionality. @@ -313,7 +314,7 @@ end ``` Much of the code should look familiar. For example, we're still using `RestClient.get` -to call out to the {% data variables.product.product_name %} API, and we're still passing our results to be rendered +to call out to the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, and we're still passing our results to be rendered in an ERB template (this time, it's called `advanced.erb`). Also, we now have the `authenticated?` method which checks if the user is already diff --git a/content/rest/guides/best-practices-for-integrators.md b/content/rest/guides/best-practices-for-integrators.md index ffe3a7d26781..05d182c4422f 100644 --- a/content/rest/guides/best-practices-for-integrators.md +++ b/content/rest/guides/best-practices-for-integrators.md @@ -1,6 +1,6 @@ --- title: Best practices for integrators -intro: 'Build an app that reliably interacts with the {% data variables.product.prodname_dotcom %} API and provides the best experience for your users.' +intro: 'Build an app that reliably interacts with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API and provides the best experience for your users.' redirect_from: - /guides/best-practices-for-integrators/ - /v3/guides/best-practices-for-integrators @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: Integrator best practices @@ -22,17 +23,17 @@ It's very important that you secure [the payloads sent from GitHub][event-types] There are several steps you can take to secure receipt of payloads delivered by GitHub: -1. Ensure that your receiving server is on an HTTPS connection. By default, GitHub will verify SSL certificates when delivering payloads.{% ifversion fpt %} +1. Ensure that your receiving server is on an HTTPS connection. By default, GitHub will verify SSL certificates when delivering payloads.{% ifversion fpt or ghec %} 1. You can add [the IP address we use when delivering hooks](/github/authenticating-to-github/about-githubs-ip-addresses) to your server's allow list. To ensure that you're always checking the right IP address, you can [use the `/meta` endpoint](/rest/reference/meta#meta) to find the address we use.{% endif %} 1. Provide [a secret token](/webhooks/securing/) to ensure payloads are definitely coming from GitHub. By enforcing a secret token, you're ensuring that any data received by your server is absolutely coming from GitHub. Ideally, you should provide a different secret token *per user* of your service. That way, if one token is compromised, no other user would be affected. ## Favor asynchronous work over synchronous -GitHub expects that integrations respond within {% ifversion fpt %}10{% else %}30{% endif %} seconds of receiving the webhook payload. If your service takes longer than that to complete, then GitHub terminates the connection and the payload is lost. +GitHub expects that integrations respond within {% ifversion fpt or ghec %}10{% else %}30{% endif %} seconds of receiving the webhook payload. If your service takes longer than that to complete, then GitHub terminates the connection and the payload is lost. Since it's impossible to predict how fast your service will complete, you should do all of "the real work" in a background job. [Resque](https://github.com/resque/resque/) (for Ruby), [RQ](http://python-rq.org/) (for Python), or [RabbitMQ](http://www.rabbitmq.com/) (for Java) are examples of libraries that can handle queuing and processing of background jobs. -Note that even with a background job running, GitHub still expects your server to respond within {% ifversion fpt %}ten{% else %}thirty{% endif %} seconds. Your server needs to acknowledge that it received the payload by sending some sort of response. It's critical that your service performs any validations on a payload as soon as possible, so that you can accurately report whether your server will continue with the request or not. +Note that even with a background job running, GitHub still expects your server to respond within {% ifversion fpt or ghec %}ten{% else %}thirty{% endif %} seconds. Your server needs to acknowledge that it received the payload by sending some sort of response. It's critical that your service performs any validations on a payload as soon as possible, so that you can accurately report whether your server will continue with the request or not. ## Use appropriate HTTP status codes when responding to GitHub @@ -130,7 +131,7 @@ end In this example the `closed` action is checked first before calling the `process_closed` method. Any unidentified actions are logged for future reference. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Dealing with rate limits diff --git a/content/rest/guides/building-a-ci-server.md b/content/rest/guides/building-a-ci-server.md index 4a5fbf896f9a..1483f0f89563 100644 --- a/content/rest/guides/building-a-ci-server.md +++ b/content/rest/guides/building-a-ci-server.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -110,7 +111,7 @@ setting (and updating) CI statuses. Note that at any time you update your server you can click **Redeliver** to send the same payload. There's no need to make a new pull request every time you make a change! -Since we're interacting with the {% data variables.product.product_name %} API, we'll use [Octokit.rb][octokit.rb] +Since we're interacting with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, we'll use [Octokit.rb][octokit.rb] to manage our interactions. We'll configure that client with [a personal access token][access token]: diff --git a/content/rest/guides/delivering-deployments.md b/content/rest/guides/delivering-deployments.md index 28316ef90826..3be1502bbefc 100644 --- a/content/rest/guides/delivering-deployments.md +++ b/content/rest/guides/delivering-deployments.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- diff --git a/content/rest/guides/discovering-resources-for-a-user.md b/content/rest/guides/discovering-resources-for-a-user.md index 054d890de159..6d3fbcd115d7 100644 --- a/content/rest/guides/discovering-resources-for-a-user.md +++ b/content/rest/guides/discovering-resources-for-a-user.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: Discover resources for a user @@ -15,9 +16,9 @@ shortTitle: Discover resources for a user -When making authenticated requests to the {% data variables.product.product_name %} API, applications often need to fetch the current user's repositories and organizations. In this guide, we'll explain how to reliably discover those resources. +When making authenticated requests to the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, applications often need to fetch the current user's repositories and organizations. In this guide, we'll explain how to reliably discover those resources. -To interact with the {% data variables.product.product_name %} API, we'll be using [Octokit.rb][octokit.rb]. You can find the complete source code for this project in the [platform-samples][platform samples] repository. +To interact with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, we'll be using [Octokit.rb][octokit.rb]. You can find the complete source code for this project in the [platform-samples][platform samples] repository. ## Getting started diff --git a/content/rest/guides/getting-started-with-the-checks-api.md b/content/rest/guides/getting-started-with-the-checks-api.md index d67fc987997d..11f50ee87203 100644 --- a/content/rest/guides/getting-started-with-the-checks-api.md +++ b/content/rest/guides/getting-started-with-the-checks-api.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: Get started - Checks API @@ -40,7 +41,7 @@ A check run is an individual test that is part of a check suite. Each run includ ![Check runs workflow](/assets/images/check_runs.png) -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} If a check run is in a incomplete state for more than 14 days, then the check run's `conclusion` becomes `stale` and appears on {% data variables.product.prodname_dotcom %} as stale with {% octicon "issue-reopened" aria-label="The issue-reopened icon" %}. Only {% data variables.product.prodname_dotcom %} can mark check runs as `stale`. For more information about possible conclusions of a check run, see the [`conclusion` parameter](/rest/reference/checks#create-a-check-run--parameters). {% endif %} diff --git a/content/rest/guides/getting-started-with-the-git-database-api.md b/content/rest/guides/getting-started-with-the-git-database-api.md index 8adb1a24492c..f3ae208bacd6 100644 --- a/content/rest/guides/getting-started-with-the-git-database-api.md +++ b/content/rest/guides/getting-started-with-the-git-database-api.md @@ -5,6 +5,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: Get started - Git Database API diff --git a/content/rest/guides/getting-started-with-the-rest-api.md b/content/rest/guides/getting-started-with-the-rest-api.md index afa2740faa6b..de2aaec93730 100644 --- a/content/rest/guides/getting-started-with-the-rest-api.md +++ b/content/rest/guides/getting-started-with-the-rest-api.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: Get started - REST API @@ -24,7 +25,7 @@ Most applications will use an existing [wrapper library][wrappers] in the langua of your choice, but it's important to familiarize yourself with the underlying API HTTP methods first. -There's no easier way to kick the tires than through [cURL][curl].{% ifversion fpt %} If you are using +There's no easier way to kick the tires than through [cURL][curl].{% ifversion fpt or ghec %} If you are using an alternative client, note that you are required to send a valid [User Agent header](/rest/overview/resources-in-the-rest-api#user-agent-required) in your request.{% endif %} @@ -120,12 +121,12 @@ client has already spent. ## Authentication Unauthenticated clients can make 60 requests per hour. To get more requests per hour, we'll need to -_authenticate_. In fact, doing anything interesting with the {% data variables.product.product_name %} API requires +_authenticate_. In fact, doing anything interesting with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API requires [authentication][authentication]. ### Using personal access tokens -The easiest and best way to authenticate with the {% data variables.product.product_name %} API is by using Basic Authentication [via OAuth tokens](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens). OAuth tokens include [personal access tokens][personal token]. +The easiest and best way to authenticate with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API is by using Basic Authentication [via OAuth tokens](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens). OAuth tokens include [personal access tokens][personal token]. Use a `-u` flag to set your username: @@ -147,7 +148,7 @@ When authenticating, you should see your rate limit bumped to 5,000 requests an You can easily [create a **personal access token**][personal token] using your [Personal access tokens settings page][tokens settings]: -{% ifversion fpt or ghes > 3.1 or ghae-issue-4374 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4374 or ghec %} {% warning %} To help keep your information secure, we highly recommend setting an expiration for your personal access tokens. @@ -155,7 +156,7 @@ To help keep your information secure, we highly recommend setting an expiration {% endwarning %} {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ![Personal Token selection](/assets/images/personal_token.png) {% endif %} @@ -163,14 +164,14 @@ To help keep your information secure, we highly recommend setting an expiration ![Personal Token selection](/assets/images/help/personal_token_ghae.png) {% endif %} -{% ifversion fpt or ghes > 3.1 or ghae-issue-4374 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4374 or ghec %} API requests using an expiring personal access token will return that token's expiration date via the `GitHub-Authentication-Token-Expiration` header. You can use the header in your scripts to provide a warning message when the token is close to its expiration date. {% endif %} ### Get your own user profile When properly authenticated, you can take advantage of the permissions -associated with your {% data variables.product.product_name %} account. For example, try getting +associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. For example, try getting [your own user profile][auth user api]: ```shell @@ -218,7 +219,7 @@ the [Repositories API][repos-api]. ## Repositories -Almost any meaningful use of the {% data variables.product.product_name %} API will involve some level of Repository +Almost any meaningful use of the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API will involve some level of Repository information. We can [`GET` repository details][get repo] in the same way we fetched user details earlier: @@ -229,7 +230,7 @@ $ curl -i {% data variables.product.api_url_pre %}/repos/twbs/bootstrap In the same way, we can [view repositories for the authenticated user][user repos api]: ```shell -$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ +$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ {% data variables.product.api_url_pre %}/user/repos ``` @@ -268,11 +269,11 @@ query string. ### Create a repository Fetching information for existing repositories is a common use case, but the -{% data variables.product.product_name %} API supports creating new repositories as well. To [create a repository][create repo], +{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API supports creating new repositories as well. To [create a repository][create repo], we need to `POST` some JSON containing the details and configuration options. ```shell -$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ +$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ -d '{ \ "name": "blog", \ "auto_init": true, \ @@ -304,7 +305,7 @@ $ curl -i {% data variables.product.api_url_pre %}/repos/pengwynn/blog Oh noes! Where did it go? Since we created the repository as _private_, we need to authenticate in order to see it. If you're a grizzled HTTP user, you might expect a `403` instead. Since we don't want to leak information about private -repositories, the {% data variables.product.product_name %} API returns a `404` in this case, as if to say "we can +repositories, the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API returns a `404` in this case, as if to say "we can neither confirm nor deny the existence of this repository." ## Issues @@ -318,7 +319,7 @@ Just like github.com, the API provides a few methods to view issues for the authenticated user. To [see all your issues][get issues api], call `GET /issues`: ```shell -$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ +$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ {% data variables.product.api_url_pre %}/issues ``` @@ -326,7 +327,7 @@ To get only the [issues under one of your {% data variables.product.product_name /orgs//issues`: ```shell -$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ +$ curl -i -H "Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}" \ {% data variables.product.api_url_pre %}/orgs/rails/issues ``` @@ -368,7 +369,7 @@ body to the `/issues` path underneath the repository in which we want to create the issue: ```shell -$ curl -i -H 'Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}' \ +$ curl -i -H 'Authorization: token {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}ghp_16C7e42F292c6912E7710c838347Ae178B4a{% else %}5199831f4dd3b79e7c5b7e0ebe75d67aa66e79d4{% endif %}' \ $ -d '{ \ $ "title": "New logo", \ $ "body": "We should have one", \ @@ -448,7 +449,7 @@ $ {% data variables.product.api_url_pre %}/users/defunkt The `304` status indicates that the resource hasn't changed since the last time we asked for it and the response will contain no body. As a bonus, `304` responses don't count against your [rate limit][rate-limiting]. -Woot! Now you know the basics of the {% data variables.product.product_name %} API! +Woot! Now you know the basics of the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API! * Basic & OAuth authentication * Fetching and creating repositories and issues diff --git a/content/rest/guides/index.md b/content/rest/guides/index.md index 67ac166b9f36..1715450046b1 100644 --- a/content/rest/guides/index.md +++ b/content/rest/guides/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API children: @@ -24,7 +25,7 @@ children: - /getting-started-with-the-checks-api --- This section of the documentation is intended to get you up-and-running with -real-world {% data variables.product.product_name %} API applications. We'll cover everything you need to know, from +real-world {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API applications. We'll cover everything you need to know, from authentication, to manipulating results, to combining results with other apps. Every tutorial here will have a project, and every project will be stored and documented in our public diff --git a/content/rest/guides/rendering-data-as-graphs.md b/content/rest/guides/rendering-data-as-graphs.md index 0f31427f5de5..97140abdca26 100644 --- a/content/rest/guides/rendering-data-as-graphs.md +++ b/content/rest/guides/rendering-data-as-graphs.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -17,7 +18,7 @@ topics: In this guide, we're going to use the API to fetch information about repositories that we own, and the programming languages that make them up. Then, we'll visualize that information in a couple of different ways using the [D3.js][D3.js] library. To -interact with the {% data variables.product.product_name %} API, we'll be using the excellent Ruby library, [Octokit][Octokit]. +interact with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, we'll be using the excellent Ruby library, [Octokit][Octokit]. If you haven't already, you should read the ["Basics of Authentication"][basics-of-authentication] guide before starting this example. You can find the complete source code for this project in the [platform-samples][platform samples] repository. @@ -81,7 +82,7 @@ run Example::MyGraphApp ## Fetching repository information -This time, in order to talk to the {% data variables.product.product_name %} API, we're going to use the [Octokit +This time, in order to talk to the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, we're going to use the [Octokit Ruby library][Octokit]. This is much easier than directly making a bunch of REST calls. Plus, Octokit was developed by a GitHubber, and is actively maintained, so you know it'll work. diff --git a/content/rest/guides/traversing-with-pagination.md b/content/rest/guides/traversing-with-pagination.md index bccb94af9aac..bbf5c4c404c8 100644 --- a/content/rest/guides/traversing-with-pagination.md +++ b/content/rest/guides/traversing-with-pagination.md @@ -8,12 +8,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: Traverse with pagination --- -The {% data variables.product.product_name %} API provides a vast wealth of information for developers to consume. +The {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API provides a vast wealth of information for developers to consume. Most of the time, you might even find that you're asking for _too much_ information, and in order to keep our servers happy, the API will automatically [paginate the requested items][pagination]. diff --git a/content/rest/guides/working-with-comments.md b/content/rest/guides/working-with-comments.md index 031716f78332..f1b2f1ee3471 100644 --- a/content/rest/guides/working-with-comments.md +++ b/content/rest/guides/working-with-comments.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -18,7 +19,7 @@ For any Pull Request, {% data variables.product.product_name %} provides three k [comments on the Pull Request][PR comment] as a whole, [comments on a specific line][PR line comment] within the Pull Request, and [comments on a specific commit][commit comment] within the Pull Request. -Each of these types of comments goes through a different portion of the {% data variables.product.product_name %} API. +Each of these types of comments goes through a different portion of the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API. In this guide, we'll explore how you can access and manipulate each one. For every example, we'll be using [this sample Pull Request made][sample PR] on the "octocat" repository. As always, samples can be found in [our platform-samples repository][platform-samples]. diff --git a/content/rest/index.md b/content/rest/index.md index b5e54eaf9f20..95b66e15ecf7 100644 --- a/content/rest/index.md +++ b/content/rest/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' children: - /overview - /reference diff --git a/content/rest/overview/api-previews.md b/content/rest/overview/api-previews.md index cf48012a81bf..e181ed1b9196 100644 --- a/content/rest/overview/api-previews.md +++ b/content/rest/overview/api-previews.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -154,7 +155,7 @@ The REST API responses for [issue events](/rest/reference/issues#events) and [is **Announced:** [2018-09-05](https://developer.github.com/changes/2018-09-05-project-card-events) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## GitHub App Manifests diff --git a/content/rest/overview/endpoints-available-for-github-apps.md b/content/rest/overview/endpoints-available-for-github-apps.md index 572fec1a81a0..db6da5a5a0e0 100644 --- a/content/rest/overview/endpoints-available-for-github-apps.md +++ b/content/rest/overview/endpoints-available-for-github-apps.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: GitHub App-enabled endpoints diff --git a/content/rest/overview/index.md b/content/rest/overview/index.md index efaaa5852dbc..4196dadf7fe5 100644 --- a/content/rest/overview/index.md +++ b/content/rest/overview/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API children: diff --git a/content/rest/overview/libraries.md b/content/rest/overview/libraries.md index 107b7df245e1..823337376186 100644 --- a/content/rest/overview/libraries.md +++ b/content/rest/overview/libraries.md @@ -1,6 +1,6 @@ --- title: Libraries -intro: 'You can use the official Octokit library and other third-party libraries to extend and simplify how you use the {% data variables.product.prodname_dotcom %} API.' +intro: 'You can use the official Octokit library and other third-party libraries to extend and simplify how you use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API.' redirect_from: - /libraries/ - /v3/libraries @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- diff --git a/content/rest/overview/media-types.md b/content/rest/overview/media-types.md index 56f16a35d2c9..82b79d40f99a 100644 --- a/content/rest/overview/media-types.md +++ b/content/rest/overview/media-types.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- diff --git a/content/rest/overview/openapi-description.md b/content/rest/overview/openapi-description.md index 0ffb1eadf70f..61866869f9eb 100644 --- a/content/rest/overview/openapi-description.md +++ b/content/rest/overview/openapi-description.md @@ -4,6 +4,7 @@ intro: 'The {% data variables.product.product_name %} REST API is fully describe versions: fpt: '*' ghes: '*' + ghec: '*' topics: - API --- diff --git a/content/rest/overview/other-authentication-methods.md b/content/rest/overview/other-authentication-methods.md index 774121799224..b5a24c37a8b4 100644 --- a/content/rest/overview/other-authentication-methods.md +++ b/content/rest/overview/other-authentication-methods.md @@ -7,13 +7,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API shortTitle: Other authentication methods --- -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} While the API provides multiple methods for authentication, we strongly recommend using [OAuth](/apps/building-integrations/setting-up-and-registering-oauth-apps/) for production applications. The other methods provided are intended to be used for scripts or testing (i.e., cases @@ -35,7 +36,7 @@ The API supports Basic Authentication as defined in [RFC2617](http://www.ietf.org/rfc/rfc2617.txt) with a few slight differences. The main difference is that the RFC requires unauthenticated requests to be answered with `401 Unauthorized` responses. In many places, this would disclose -the existence of user data. Instead, the {% data variables.product.product_name %} API responds with `404 Not Found`. +the existence of user data. Instead, the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API responds with `404 Not Found`. This may cause problems for HTTP libraries that assume a `401 Unauthorized` response. The solution is to manually craft the `Authorization` header. @@ -51,18 +52,18 @@ This approach is useful if your tools only support Basic Authentication but you ### Via username and password -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} -**Note:** {% data variables.product.prodname_dotcom %} has discontinued password authentication to the API starting on November 13, 2020 for all {% data variables.product.prodname_dotcom_the_website %} accounts, including those on a {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, or {% data variables.product.prodname_ghe_cloud %} plan. You must now authenticate to the {% data variables.product.prodname_dotcom %} API with an API token, such as an OAuth access token, GitHub App installation access token, or personal access token, depending on what you need to do with the token. For more information, see "[Troubleshooting](/rest/overview/troubleshooting#basic-authentication-errors)." +**Note:** {% data variables.product.prodname_dotcom %} has discontinued password authentication to the API starting on November 13, 2020 for all {% data variables.product.prodname_dotcom_the_website %} accounts, including those on a {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, or {% data variables.product.prodname_ghe_cloud %} plan. You must now authenticate to the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API with an API token, such as an OAuth access token, GitHub App installation access token, or personal access token, depending on what you need to do with the token. For more information, see "[Troubleshooting](/rest/overview/troubleshooting#basic-authentication-errors)." {% endnote %} {% endif %} {% ifversion ghes %} -To use Basic Authentication with the {% data variables.product.product_name %} API, simply send the username and +To use Basic Authentication with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, simply send the username and password associated with the account. For example, if you're accessing the API via [cURL][curl], the following command @@ -76,7 +77,7 @@ If you have two-factor authentication enabled, make sure you understand how to [ {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Authenticating for SAML SSO {% note %} @@ -108,12 +109,12 @@ $ curl -v -H "Authorization: token TOKEN" {% data variables.product.api The value `organizations` is a comma-separated list of organization IDs for organizations require authorization of your personal access token. {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Working with two-factor authentication When you have two-factor authentication enabled, [Basic Authentication](#basic-authentication) for _most_ endpoints in the REST API requires that you use a personal access token{% ifversion ghes %} or OAuth token instead of your username and password{% endif %}. -You can generate a new personal access token {% ifversion fpt %}using [{% data variables.product.product_name %} developer settings](https://github.com/settings/tokens/new){% endif %}{% ifversion ghes %} or with the "[Create a new authorization][/rest/reference/oauth-authorizations#create-a-new-authorization]" endpoint in the OAuth Authorizations API to generate a new OAuth token{% endif %}. For more information, see "[Creating a personal access token for the command line](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)". Then you would use these tokens to [authenticate using OAuth token][oauth-auth] with the {% data variables.product.prodname_dotcom %} API.{% ifversion ghes %} The only time you need to authenticate with your username and password is when you create your OAuth token or use the OAuth Authorizations API.{% endif %} +You can generate a new personal access token {% ifversion fpt or ghec %}using [{% data variables.product.product_name %} developer settings](https://github.com/settings/tokens/new){% endif %}{% ifversion ghes %} or with the "[Create a new authorization][/rest/reference/oauth-authorizations#create-a-new-authorization]" endpoint in the OAuth Authorizations API to generate a new OAuth token{% endif %}. For more information, see "[Creating a personal access token for the command line](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)". Then you would use these tokens to [authenticate using OAuth token][oauth-auth] with the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API.{% ifversion ghes %} The only time you need to authenticate with your username and password is when you create your OAuth token or use the OAuth Authorizations API.{% endif %} {% endif %} diff --git a/content/rest/overview/resources-in-the-rest-api.md b/content/rest/overview/resources-in-the-rest-api.md index a1c513795642..acced5a17de6 100644 --- a/content/rest/overview/resources-in-the-rest-api.md +++ b/content/rest/overview/resources-in-the-rest-api.md @@ -1,12 +1,13 @@ --- title: Resources in the REST API -intro: 'Learn how to navigate the resources provided by the {% data variables.product.prodname_dotcom %} API.' +intro: 'Learn how to navigate the resources provided by the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API.' redirect_from: - /rest/initialize-the-repo/ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -21,15 +22,15 @@ We encourage you to [explicitly request this version via the `Accept` header](/r Accept: application/vnd.github.v3+json -{% ifversion fpt %} +{% ifversion fpt or ghec %} -For information about GitHub's GraphQL API, see the [v4 documentation](/graphql). For information about migrating to GraphQL, see "[Migrating from REST](/graphql/guides/migrating-from-rest-to-graphql)." +For information about GitHub's GraphQL API, see the [v4 documentation]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql). For information about migrating to GraphQL, see "[Migrating from REST]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/guides/migrating-from-rest-to-graphql)." {% endif %} ## Schema -{% ifversion fpt %}All API access is over HTTPS, and{% else %}The API is{% endif %} accessed from `{% data variables.product.api_url_code %}`. All data is +{% ifversion fpt or ghec %}All API access is over HTTPS, and{% else %}The API is{% endif %} accessed from `{% data variables.product.api_url_code %}`. All data is sent and received as JSON. ```shell @@ -113,7 +114,7 @@ Note: GitHub recommends sending OAuth tokens using the Authorization header. Read [more about OAuth2](/apps/building-oauth-apps/). Note that OAuth2 tokens can be acquired using the [web application flow](/developers/apps/authorizing-oauth-apps#web-application-flow) for production applications. -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ### OAuth2 key/secret {% data reusables.apps.deprecating_auth_with_query_parameters %} @@ -124,10 +125,12 @@ curl -u my_client_id:my_client_secret '{% data variables.product.api_url_pre %}/ Using your `client_id` and `client_secret` does _not_ authenticate as a user, it will only identify your OAuth application to increase your rate limit. Permissions are only granted to users, not applications, and you will only get back data that an unauthenticated user would see. For this reason, you should only use the OAuth2 key/secret in server-to-server scenarios. Don't leak your OAuth application's client secret to your users. -You will be unable to authenticate using your OAuth2 key and secret while in private mode, and trying to authenticate will return `401 Unauthorized`. For more information, see "[Enabling private mode](/enterprise/admin/installation/enabling-private-mode)". +{% ifversion ghes %} +You will be unable to authenticate using your OAuth2 key and secret while in private mode, and trying to authenticate will return `401 Unauthorized`. For more information, see "[Enabling private mode](/admin/configuration/configuring-your-enterprise/enabling-private-mode)". +{% endif %} {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} Read [more about unauthenticated rate limiting](#increasing-the-unauthenticated-rate-limit-for-oauth-applications). @@ -152,7 +155,7 @@ the API will temporarily reject all authentication attempts for that user (including ones with valid credentials) with `403 Forbidden`: ```shell -$ curl -i {% data variables.product.api_url_pre %} -u {% ifversion fpt or ghae %} +$ curl -i {% data variables.product.api_url_pre %} -u {% ifversion fpt or ghae or ghec %} -u valid_username:valid_token {% endif %}{% ifversion ghes %}-u valid_username:valid_password {% endif %} > HTTP/2 403 > { @@ -187,13 +190,13 @@ $ curl -i -u username -d '{"scopes":["repo_deployment"]}' {% data variables.prod You can issue a `GET` request to the root endpoint to get all the endpoint categories that the REST API supports: ```shell -$ curl {% ifversion fpt or ghae %} +$ curl {% ifversion fpt or ghae or ghec %} -u username:token {% endif %}{% ifversion ghes %}-u username:password {% endif %}{% data variables.product.api_url_pre %} ``` ## GraphQL global node IDs -See the guide on "[Using Global Node IDs](/graphql/guides/using-global-node-ids)" for detailed information about how to find `node_id`s via the REST API and use them in GraphQL operations. +See the guide on "[Using Global Node IDs]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/guides/using-global-node-ids)" for detailed information about how to find `node_id`s via the REST API and use them in GraphQL operations. ## Client errors @@ -355,7 +358,7 @@ Name | Description For API requests using Basic Authentication or OAuth, you can make up to 5,000 requests per hour. Authenticated requests are associated with the authenticated user, regardless of whether [Basic Authentication](#basic-authentication) or [an OAuth token](#oauth2-token-sent-in-a-header) was used. This means that all OAuth applications authorized by a user share the same quota of 5,000 requests per hour when they authenticate with different tokens owned by the same user. -{% ifversion fpt %} +{% ifversion fpt or ghec %} For users that belong to a {% data variables.product.prodname_ghe_cloud %} account, requests made using an OAuth token to resources owned by the same {% data variables.product.prodname_ghe_cloud %} account have an increased limit of 15,000 requests per hour. @@ -452,7 +455,7 @@ If your application triggers this rate limit, you'll receive an informative resp > } ``` -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## User agent required @@ -488,7 +491,7 @@ of these headers to make subsequent requests to those resources using the `If-None-Match` and `If-Modified-Since` headers, respectively. If the resource has not changed, the server will return a `304 Not Modified`. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% tip %} diff --git a/content/rest/overview/troubleshooting.md b/content/rest/overview/troubleshooting.md index af85616d403d..92108a6b9e23 100644 --- a/content/rest/overview/troubleshooting.md +++ b/content/rest/overview/troubleshooting.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API --- @@ -38,7 +39,7 @@ API call uses the same structure. Instead, extract the pagination information fr [oap-guide]: https://developer.github.com/changes/2015-01-19-an-integrators-guide-to-organization-application-policies/ -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Basic authentication errors On November 13, 2020 username and password authentication to the REST API and the OAuth Authorizations API were deprecated and no longer work. diff --git a/content/rest/reference/actions.md b/content/rest/reference/actions.md index cdbcb890648d..031f6db746a3 100644 --- a/content/rest/reference/actions.md +++ b/content/rest/reference/actions.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -30,7 +31,7 @@ The Artifacts API allows you to download, delete, and retrieve information about {% if operation.subcategory == 'artifacts' %}{% include rest_operation %}{% endif %} {% endfor %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Permissions The Permissions API allows you to set permissions for what organizations and repositories are allowed to run {% data variables.product.prodname_actions %}, and what actions are allowed to run. For more information, see "[Usage limits, billing, and administration](/actions/reference/usage-limits-billing-and-administration#disabling-or-limiting-github-actions-for-your-repository-or-organization)." diff --git a/content/rest/reference/activity.md b/content/rest/reference/activity.md index 69ca3bb59649..f8112461476d 100644 --- a/content/rest/reference/activity.md +++ b/content/rest/reference/activity.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -149,7 +150,7 @@ Reason Name | Description `invitation` | You accepted an invitation to contribute to the repository. `manual` | You subscribed to the thread (via an issue or pull request). `mention` | You were specifically **@mentioned** in the content. -`review_requested` | You, or a team you're a member of, were requested to review a pull request.{% ifversion fpt %} +`review_requested` | You, or a team you're a member of, were requested to review a pull request.{% ifversion fpt or ghec %} `security_alert` | {% data variables.product.prodname_dotcom %} discovered a [security vulnerability](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies) in your repository.{% endif %} `state_change` | You changed the thread state (for example, closing an issue or merging a pull request). `subscribed` | You're watching the repository. diff --git a/content/rest/reference/apps.md b/content/rest/reference/apps.md index f23aa18fe3f6..5c5f6771dd35 100644 --- a/content/rest/reference/apps.md +++ b/content/rest/reference/apps.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -29,7 +30,7 @@ A subset of REST API v3 endpoints requires authenticating as a GitHub App instal ## OAuth Applications API -You can use this API to manage the OAuth tokens an OAuth application uses to access people's {% data variables.product.prodname_dotcom %} accounts. +You can use this API to manage the OAuth tokens an OAuth application uses to access people's accounts on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. {% for operation in currentRestOperations %} {% if operation.subcategory == 'oauth-applications' %}{% include rest_operation %}{% endif %} @@ -45,7 +46,7 @@ To list all GitHub App installations for an organization, see "[List app install {% if operation.subcategory == 'installations' %}{% include rest_operation %}{% endif %} {% endfor %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Marketplace For more information about {% data variables.product.prodname_marketplace %}, see "[GitHub Marketplace](/marketplace/)." @@ -66,7 +67,7 @@ Be sure to replace stubbed endpoints with production endpoints before deploying {% endif %} -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} ## Webhooks A {% data variables.product.prodname_github_app %}'s webhook allows you to receive HTTP `POST` payloads whenever certain events happen for an app. {% data reusables.webhooks.webhooks-rest-api-links %} diff --git a/content/rest/reference/billing.md b/content/rest/reference/billing.md index 88b6831d19be..2654ecefe224 100644 --- a/content/rest/reference/billing.md +++ b/content/rest/reference/billing.md @@ -2,6 +2,7 @@ title: Billing versions: fpt: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/checks.md b/content/rest/reference/checks.md index 72bde126d64d..d49a8b2eb1e2 100644 --- a/content/rest/reference/checks.md +++ b/content/rest/reference/checks.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/code-scanning.md b/content/rest/reference/code-scanning.md index 3b16cdec49f5..bd9a25dd770f 100644 --- a/content/rest/reference/code-scanning.md +++ b/content/rest/reference/code-scanning.md @@ -1,6 +1,6 @@ --- title: Code scanning -intro: 'The Code Scanning API enables you to retrieve and update the code scanning alerts and analyses from a repository.' +intro: The Code Scanning API enables you to retrieve and update the code scanning alerts and analyses from a repository. redirect_from: - /v3/code-scanning product: '{% data reusables.gated-features.code-scanning %}' @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' type: reference topics: - API @@ -20,7 +21,7 @@ miniTocMaxHeadingLevel: 3 The {% data variables.product.prodname_code_scanning %} API lets you retrieve and update {% data variables.product.prodname_code_scanning %} alerts from a repository. You can use the endpoints to create automated reports for the {% data variables.product.prodname_code_scanning %} alerts in an organization or upload analysis results generated using offline {% data variables.product.prodname_code_scanning %} tools. For more information, see "[Finding security vulnerabilities and errors in your code](/github/finding-security-vulnerabilities-and-errors-in-your-code)." -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ### Custom media type for {% data variables.product.prodname_code_scanning %} There is one supported custom media type for the {% data variables.product.prodname_code_scanning %} REST API. diff --git a/content/rest/reference/codes-of-conduct.md b/content/rest/reference/codes-of-conduct.md index ee03f9022155..8f029e337acd 100644 --- a/content/rest/reference/codes-of-conduct.md +++ b/content/rest/reference/codes-of-conduct.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/emojis.md b/content/rest/reference/emojis.md index 1db5d7aaca45..215af5e1520b 100644 --- a/content/rest/reference/emojis.md +++ b/content/rest/reference/emojis.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/enterprise-admin.md b/content/rest/reference/enterprise-admin.md index 5b030db82c4a..64f6e091d5e5 100644 --- a/content/rest/reference/enterprise-admin.md +++ b/content/rest/reference/enterprise-admin.md @@ -1,6 +1,6 @@ --- title: GitHub Enterprise administration -intro: 'You can use these endpoints to administer your enterprise. Among the tasks you can perform with this API are many relating to GitHub Actions.' +intro: You can use these endpoints to administer your enterprise. Among the tasks you can perform with this API are many relating to GitHub Actions. allowTitleToDifferFromFilename: true redirect_from: - /v3/enterprise-admin @@ -9,13 +9,14 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 shortTitle: Enterprise administration --- -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} @@ -63,7 +64,7 @@ You can also read the current version by calling the [meta endpoint](/rest/refer {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Audit log @@ -73,7 +74,7 @@ You can also read the current version by calling the [meta endpoint](/rest/refer {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Billing {% for operation in currentRestOperations %} diff --git a/content/rest/reference/gists.md b/content/rest/reference/gists.md index 920c70981756..8792ea924206 100644 --- a/content/rest/reference/gists.md +++ b/content/rest/reference/gists.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/git.md b/content/rest/reference/git.md index eb6d9da45535..014bab427b10 100644 --- a/content/rest/reference/git.md +++ b/content/rest/reference/git.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/gitignore.md b/content/rest/reference/gitignore.md index 6bc08dd7e8d0..3e2b01c4bcfe 100644 --- a/content/rest/reference/gitignore.md +++ b/content/rest/reference/gitignore.md @@ -7,12 +7,13 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 --- -When you create a new {% data variables.product.product_name %} repository via the API, you can specify a [.gitignore template](/github/getting-started-with-github/ignoring-files) to apply to the repository upon creation. The .gitignore templates API lists and fetches templates from the {% data variables.product.product_name %} [.gitignore repository](https://github.com/github/gitignore). +When you create a new repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} via the API, you can specify a [.gitignore template](/github/getting-started-with-github/ignoring-files) to apply to the repository upon creation. The .gitignore templates API lists and fetches templates from the {% data variables.product.product_name %} [.gitignore repository](https://github.com/github/gitignore). ### Custom media types for gitignore diff --git a/content/rest/reference/index.md b/content/rest/reference/index.md index 8c09d728a805..40e9c0eeb2a0 100644 --- a/content/rest/reference/index.md +++ b/content/rest/reference/index.md @@ -6,6 +6,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API children: diff --git a/content/rest/reference/interactions.md b/content/rest/reference/interactions.md index fd24a202dda5..af76d5fe0775 100644 --- a/content/rest/reference/interactions.md +++ b/content/rest/reference/interactions.md @@ -5,6 +5,7 @@ redirect_from: - /v3/interactions versions: fpt: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/issues.md b/content/rest/reference/issues.md index 1a64578d8321..8aff62fb717f 100644 --- a/content/rest/reference/issues.md +++ b/content/rest/reference/issues.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/licenses.md b/content/rest/reference/licenses.md index 89273e92b6ba..f6106c3d70c1 100644 --- a/content/rest/reference/licenses.md +++ b/content/rest/reference/licenses.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -31,7 +32,7 @@ If a license is matched, the license key and name returned conforms to the [SPDX GitHub is a lot of things, but it’s not a law firm. As such, GitHub does not provide legal advice. Using the Licenses API or sending us an email about it does not constitute legal advice nor does it create an attorney-client relationship. If you have any questions about what you can and can't do with a particular license, you should consult with your own legal counsel before moving forward. In fact, you should always consult with your own lawyer before making any decisions that might have legal ramifications or that may impact your legal rights. -GitHub created the License API to help users get information about open source licenses and the projects that use them. We hope it helps, but please keep in mind that we’re not lawyers (at least most of us aren't) and that we make mistakes like everyone else. For that reason, GitHub provides the API on an “as-is” basis and makes no warranties regarding any information or licenses provided on or through it, and disclaims liability for damages resulting from using the API. +GitHub created the License API to help users get information about open source licenses and the projects that use them. We hope it helps, but please keep in mind that we’re not lawyers (at least most of us aren't) and that we make mistakes like everyone else. For that reason, GitHub provides the API on an "as-is" basis and makes no warranties regarding any information or licenses provided on or through it, and disclaims liability for damages resulting from using the API. {% endwarning %} diff --git a/content/rest/reference/markdown.md b/content/rest/reference/markdown.md index 4f324c7da2ad..bdb12789aed6 100644 --- a/content/rest/reference/markdown.md +++ b/content/rest/reference/markdown.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/meta.md b/content/rest/reference/meta.md index d412174960b5..192f51ce4bca 100644 --- a/content/rest/reference/meta.md +++ b/content/rest/reference/meta.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/migrations.md b/content/rest/reference/migrations.md index 5e55d9dbd1b3..574afc6fc101 100644 --- a/content/rest/reference/migrations.md +++ b/content/rest/reference/migrations.md @@ -7,6 +7,7 @@ redirect_from: - /v3/migration/migrations versions: fpt: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/orgs.md b/content/rest/reference/orgs.md index 93ed2f7c9e5e..099321086778 100644 --- a/content/rest/reference/orgs.md +++ b/content/rest/reference/orgs.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -17,7 +18,7 @@ miniTocMaxHeadingLevel: 3 {% unless operation.subcategory %}{% include rest_operation %}{% endunless %} {% endfor %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Blocking users The token used to authenticate the call must have the `admin:org` scope in order to make any blocking calls for an organization. Otherwise, the response returns `HTTP 404`. diff --git a/content/rest/reference/packages.md b/content/rest/reference/packages.md index c65da20bf17c..72b91cab3b7d 100644 --- a/content/rest/reference/packages.md +++ b/content/rest/reference/packages.md @@ -4,6 +4,7 @@ intro: 'With the {% data variables.product.prodname_registry %} API, you can man product: '{% data reusables.gated-features.packages %}' versions: fpt: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/permissions-required-for-github-apps.md b/content/rest/reference/permissions-required-for-github-apps.md index 88bb18d6a310..4237a0432da7 100644 --- a/content/rest/reference/permissions-required-for-github-apps.md +++ b/content/rest/reference/permissions-required-for-github-apps.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -112,7 +113,7 @@ _Search_ - [`GET /search/topics`](/rest/reference/search#search-topics) - [`GET /search/users`](/rest/reference/search#search-users) -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ### Permission on "actions" - [`GET /repos/:owner/:repo/actions/artifacts`](/rest/reference/actions#list-artifacts-for-a-repository) (:read) @@ -237,7 +238,7 @@ _Teams_ - [`PUT /teams/:team_id/repos/:owner/:repo`](/rest/reference/teams#add-or-update-team-repository-permissions) (:write) - [`DELETE /teams/:team_id/repos/:owner/:repo`](/rest/reference/teams#remove-a-repository-from-a-team) (:write) -{% ifversion fpt %} +{% ifversion fpt or ghec %} _Traffic_ - [`GET /repos/:owner/:repo/traffic/clones`](/rest/reference/repos#get-repository-clones) (:read) - [`GET /repos/:owner/:repo/traffic/popular/paths`](/rest/reference/repos#get-top-referral-paths) (:read) @@ -245,7 +246,7 @@ _Traffic_ - [`GET /repos/:owner/:repo/traffic/views`](/rest/reference/repos#get-page-views) (:read) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Permission on "blocking" - [`GET /user/blocks`](/rest/reference/users#list-users-blocked-by-the-authenticated-user) (:read) @@ -386,7 +387,7 @@ _Git_ - [`POST /repos/:owner/:repo/git/trees`](/rest/reference/git#create-a-tree) (:write) - [`GET /repos/:owner/:repo/git/trees/:sha`](/rest/reference/git#get-a-tree) (:read) -{% ifversion fpt %} +{% ifversion fpt or ghec %} _Import_ - [`GET /repos/:owner/:repo/import`](/rest/reference/migrations#get-an-import-status) (:read) - [`PUT /repos/:owner/:repo/import`](/rest/reference/migrations#start-an-import) (:write) @@ -439,7 +440,7 @@ _Releases_ - [`POST /repos/:owner/:repo/deployments/:deployment_id/statuses`](/rest/reference/repos#create-a-deployment-status) (:write) - [`GET /repos/:owner/:repo/deployments/:deployment_id/statuses/:status_id`](/rest/reference/repos#get-a-deployment-status) (:read) -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ### Permission on "emails" {% ifversion fpt -%} @@ -466,7 +467,7 @@ _Releases_ - [`GET /user/gpg_keys/:gpg_key_id`](/rest/reference/users#get-a-gpg-key-for-the-authenticated-user) (:read) - [`DELETE /user/gpg_keys/:gpg_key_id`](/rest/reference/users#delete-a-gpg-key-for-the-authenticated-user) (:write) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Permission on "interaction limits" - [`GET /user/interaction-limits`](/rest/reference/interactions#get-interaction-restrictions-for-your-public-repositories) (:read) @@ -585,7 +586,7 @@ _Keys_ - [`DELETE /scim/v2/orgs/:org/Users/:external_identity_guid`](/rest/reference/scim#delete-a-scim-user-from-an-organization) (:write) {% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} _Invitations_ - [`GET /orgs/:org/invitations`](/rest/reference/orgs#list-pending-organization-invitations) (:read) - [`POST /orgs/:org/invitations`](/rest/reference/orgs#create-an-organization-invitation) (:write) @@ -686,7 +687,7 @@ _Teams_ - [`DELETE /projects/columns/cards/:card_id`](/rest/reference/projects#delete-a-project-card) (:write) - [`POST /projects/columns/cards/:card_id/moves`](/rest/reference/projects#move-a-project-card) (:write) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Permission on "organization user blocking" - [`GET /orgs/:org/blocks`](/rest/reference/orgs#list-users-blocked-by-an-organization) (:read) @@ -847,7 +848,7 @@ _Reviews_ _Teams_ - [`DELETE /teams/:team_id/projects/:project_id`](/rest/reference/teams#remove-a-project-from-a-team) (:read) -{% ifversion fpt %} +{% ifversion fpt or ghec %} ### Permission on "secrets" - [`GET /repos/:owner/:repo/actions/secrets/public-key`](/rest/reference/actions#get-a-repository-public-key) (:read) @@ -866,7 +867,7 @@ _Teams_ - [`DELETE /orgs/:org/actions/secrets/:secret_name`](/rest/reference/actions#delete-an-organization-secret) (:write) {% endif %} -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} ### Permission on "secret scanning alerts" - [`GET /repos/:owner/:repo/secret-scanning/alerts`](/rest/reference/secret-scanning#list-secret-scanning-alerts-for-a-repository) (:read) @@ -894,7 +895,7 @@ _Teams_ - [`GET /repos/:owner/:repo/code-scanning/sarifs/:sarif_id`](/rest/reference/code-scanning#get-information-about-a-sarif-upload) (:read) {% endif -%} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ### Permission on "self-hosted runners" - [`GET /orgs/:org/actions/runners/downloads`](/rest/reference/actions#list-runner-applications-for-an-organization) (:read) - [`POST /orgs/:org/actions/runners/registration-token`](/rest/reference/actions#create-a-registration-token-for-an-organization) (:write) diff --git a/content/rest/reference/projects.md b/content/rest/reference/projects.md index 13543ab310d2..ebf9f492d723 100644 --- a/content/rest/reference/projects.md +++ b/content/rest/reference/projects.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/pulls.md b/content/rest/reference/pulls.md index fd4f1b9b0ae4..d92dc873c2de 100644 --- a/content/rest/reference/pulls.md +++ b/content/rest/reference/pulls.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/rate-limit.md b/content/rest/reference/rate-limit.md index f61160937df6..eca80ace69b2 100644 --- a/content/rest/reference/rate-limit.md +++ b/content/rest/reference/rate-limit.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -17,7 +18,7 @@ The REST API overview documentation describes the [rate limit rules](/rest/overv ### Understanding your rate limit status -The Search API has a [custom rate limit](/rest/reference/search#rate-limit), separate from the rate limit governing the rest of the REST API. The GraphQL API also has a [custom rate limit](/graphql/overview/resource-limitations#rate-limit) that is separate from and calculated differently than rate limits in the REST API. +The Search API has a [custom rate limit](/rest/reference/search#rate-limit), separate from the rate limit governing the rest of the REST API. The GraphQL API also has a [custom rate limit]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/overview/resource-limitations#rate-limit) that is separate from and calculated differently than rate limits in the REST API. For these reasons, the Rate Limit API response categorizes your rate limit. Under `resources`, you'll see four objects: @@ -26,7 +27,7 @@ objects: * The `search` object provides your rate limit status for the [Search API](/rest/reference/search). -* The `graphql` object provides your rate limit status for the [GraphQL API](/graphql). +* The `graphql` object provides your rate limit status for the [GraphQL API]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql). * The `integration_manifest` object provides your rate limit status for the [GitHub App Manifest code conversion](/apps/building-github-apps/creating-github-apps-from-a-manifest/#3-you-exchange-the-temporary-code-to-retrieve-the-app-configuration) endpoint. diff --git a/content/rest/reference/reactions.md b/content/rest/reference/reactions.md index adbbad7ca9b8..1c2648275ee8 100644 --- a/content/rest/reference/reactions.md +++ b/content/rest/reference/reactions.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/repos.md b/content/rest/reference/repos.md index fe1d675ef173..d6c776754f4c 100644 --- a/content/rest/reference/repos.md +++ b/content/rest/reference/repos.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -17,7 +18,7 @@ miniTocMaxHeadingLevel: 3 {% unless operation.subcategory %}{% include rest_operation %}{% endunless %} {% endfor %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Autolinks {% tip %} @@ -73,7 +74,7 @@ The Repo Commits API supports listing, viewing, and comparing commits in a repos {% if operation.subcategory == 'commits' %}{% include rest_operation %}{% endif %} {% endfor %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Community {% for operation in currentRestOperations %} @@ -175,7 +176,7 @@ You can communicate that a transient environment no longer exists by setting its {% if operation.subcategory == 'deployments' %}{% include rest_operation %}{% endif %} {% endfor %} -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ## Environments The Environments API allows you to create, configure, and delete environments. For more information about environments, see "[Using environments for deployment](/actions/deployment/using-environments-for-deployment)." To manage environment secrets, see "[Secrets](/rest/reference/actions#secrets)." @@ -207,7 +208,7 @@ Use the API endpoint for adding a collaborator. For more information, see "[Add {% if operation.subcategory == 'invitations' %}{% include rest_operation %}{% endif %} {% endfor %} -{% ifversion fpt or ghae or ghes > 3.2 %} +{% ifversion fpt or ghae or ghes > 3.2 or ghec %} ## Git LFS @@ -319,7 +320,7 @@ If you are developing a GitHub App and want to provide more detailed information {% if operation.subcategory == 'statuses' %}{% include rest_operation %}{% endif %} {% endfor %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Traffic For repositories that you have push access to, the traffic API provides access @@ -394,4 +395,4 @@ Name | Type | Description ``hub.mode``|`string` | **Required**. Either `subscribe` or `unsubscribe`. ``hub.topic``|`string` |**Required**. The URI of the GitHub repository to subscribe to. The path must be in the format of `/{owner}/{repo}/events/{event}`. ``hub.callback``|`string` | The URI to receive the updates to the topic. -``hub.secret``|`string` | A shared secret key that generates a hash signature of the outgoing body content. You can verify a push came from GitHub by comparing the raw request body with the contents of the {% ifversion fpt or ghes > 2.22 %}`X-Hub-Signature` or `X-Hub-Signature-256` headers{% elsif ghes < 3.0 %}`X-Hub-Signature` header{% elsif ghae %}`X-Hub-Signature-256` header{% endif %}. You can see [the PubSubHubbub documentation](https://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.4.html#authednotify) for more details. +``hub.secret``|`string` | A shared secret key that generates a hash signature of the outgoing body content. You can verify a push came from GitHub by comparing the raw request body with the contents of the {% ifversion fpt or ghes > 2.22 or ghec %}`X-Hub-Signature` or `X-Hub-Signature-256` headers{% elsif ghes < 3.0 %}`X-Hub-Signature` header{% elsif ghae %}`X-Hub-Signature-256` header{% endif %}. You can see [the PubSubHubbub documentation](https://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.4.html#authednotify) for more details. diff --git a/content/rest/reference/scim.md b/content/rest/reference/scim.md index de8b5bfca265..4a0c01978680 100644 --- a/content/rest/reference/scim.md +++ b/content/rest/reference/scim.md @@ -5,6 +5,7 @@ redirect_from: - /v3/scim versions: fpt: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -12,7 +13,7 @@ miniTocMaxHeadingLevel: 3 ### SCIM Provisioning for Organizations -The SCIM API is used by SCIM-enabled Identity Providers (IdPs) to automate provisioning of {% data variables.product.product_name %} organization membership. The {% data variables.product.product_name %} API is based on version 2.0 of the [SCIM standard](http://www.simplecloud.info/). The {% data variables.product.product_name %} SCIM endpoint that an IdP should use is: `{% data variables.product.api_url_code %}/scim/v2/organizations/{org}/`. +The SCIM API is used by SCIM-enabled Identity Providers (IdPs) to automate provisioning of {% data variables.product.product_name %} organization membership. The {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API is based on version 2.0 of the [SCIM standard](http://www.simplecloud.info/). The {% data variables.product.product_name %} SCIM endpoint that an IdP should use is: `{% data variables.product.api_url_code %}/scim/v2/organizations/{org}/`. {% note %} diff --git a/content/rest/reference/search.md b/content/rest/reference/search.md index f3ee2601a464..85173ec75a46 100644 --- a/content/rest/reference/search.md +++ b/content/rest/reference/search.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 diff --git a/content/rest/reference/secret-scanning.md b/content/rest/reference/secret-scanning.md index aa5b1a1c15d2..fbcf5d1bbce5 100644 --- a/content/rest/reference/secret-scanning.md +++ b/content/rest/reference/secret-scanning.md @@ -4,11 +4,12 @@ intro: 'To retrieve and update the secret alerts from a private repository, you versions: fpt: '*' ghes: '>=3.1' + ghec: '*' miniTocMaxHeadingLevel: 3 --- {% data reusables.secret-scanning.api-beta %} -The {% data variables.product.prodname_secret_scanning %} API lets you retrieve and update secret scanning alerts from a {% ifversion fpt %}private {% endif %}repository. For more information on secret scanning, see "[About secret scanning](/code-security/secret-security/about-secret-scanning)." +The {% data variables.product.prodname_secret_scanning %} API lets you retrieve and update secret scanning alerts from a {% ifversion fpt or ghec %}private {% endif %}repository. For more information on secret scanning, see "[About secret scanning](/code-security/secret-security/about-secret-scanning)." {% include rest_operations_at_current_path %} diff --git a/content/rest/reference/teams.md b/content/rest/reference/teams.md index 0627bb8a2ebf..0324c402656d 100644 --- a/content/rest/reference/teams.md +++ b/content/rest/reference/teams.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 @@ -38,7 +39,7 @@ The team discussion comments API allows you to get, create, edit, and delete dis This API is only available to authenticated members of the team's organization. OAuth access tokens require the `read:org` [scope](/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/). -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} {% note %} **Note:** When you have team synchronization set up for a team with your organization's identity provider (IdP), you will see an error if you attempt to use the API for making changes to the team's membership. If you have access to manage group membership in your IdP, you can manage GitHub team membership through your identity provider, which automatically adds and removes team members in an organization. For more information, see "Synchronizing teams between your identity provider and GitHub." @@ -51,7 +52,7 @@ This API is only available to authenticated members of the team's organization. {% if operation.subcategory == 'members' %}{% include rest_operation %}{% endif %} {% endfor %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Team synchronization The Team Synchronization API allows you to manage connections between {% data variables.product.product_name %} teams and external identity provider (IdP) groups. To use this API, the authenticated user must be a team maintainer or an owner of the organization associated with the team. The token you use to authenticate will also need to be authorized for use with your IdP (SSO) provider. For more information, see "Authorizing a personal access token for use with a SAML single sign-on organization." diff --git a/content/rest/reference/users.md b/content/rest/reference/users.md index 564c6b9c67a5..237faad11320 100644 --- a/content/rest/reference/users.md +++ b/content/rest/reference/users.md @@ -7,18 +7,19 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - API miniTocMaxHeadingLevel: 3 --- -Many of the resources on the users API provide a shortcut for getting information about the currently authenticated user. If a request URL does not include a `{username}` parameter then the response will be for the logged in user (and you must pass [authentication information](/rest/overview/resources-in-the-rest-api#authentication) with your request).{% ifversion fpt or ghes %} Additional private information, such as whether a user has two-factor authentication enabled, is included when authenticated through basic auth or OAuth with the `user` scope.{% endif %} +Many of the resources on the users API provide a shortcut for getting information about the currently authenticated user. If a request URL does not include a `{username}` parameter then the response will be for the logged in user (and you must pass [authentication information](/rest/overview/resources-in-the-rest-api#authentication) with your request).{% ifversion fpt or ghes or ghec %} Additional private information, such as whether a user has two-factor authentication enabled, is included when authenticated through basic auth or OAuth with the `user` scope.{% endif %} {% for operation in currentRestOperations %} {% unless operation.subcategory %}{% include rest_operation %}{% endunless %} {% endfor %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Blocking users {% for operation in currentRestOperations %} @@ -27,7 +28,7 @@ Many of the resources on the users API provide a shortcut for getting informatio {% endif %} -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Emails Management of email addresses via the API requires that you authenticate through basic auth, or through OAuth with a correct scope for the endpoint. diff --git a/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md b/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md index 8fad5a6c406c..6097e487995f 100644 --- a/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md +++ b/content/search-github/getting-started-with-searching-on-github/about-searching-on-github.md @@ -14,6 +14,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- @@ -26,7 +27,7 @@ topics: **Notes:** -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} - {% data reusables.search.required_login %}{% endif %} - {% data variables.product.prodname_pages %} sites are not searchable on {% data variables.product.product_name %}. However you can search the source content if it exists in the default branch of a repository, using code search. For more information, see "[Searching code](/search-github/searching-on-github/searching-code)." For more information about {% data variables.product.prodname_pages %}, see "[What is GitHub Pages?](/articles/what-is-github-pages/)" - Currently our search doesn't support exact matching. @@ -44,7 +45,7 @@ You can search for the following information across all repositories you can acc - [Repositories](/search-github/searching-on-github/searching-for-repositories) - [Topics](/search-github/searching-on-github/searching-topics) -- [Issues and pull requests](/search-github/searching-on-github/searching-issues-and-pull-requests){% ifversion fpt %} +- [Issues and pull requests](/search-github/searching-on-github/searching-issues-and-pull-requests){% ifversion fpt or ghec %} - [Discussions](/search-github/searching-on-github/searching-discussions){% endif %} - [Code](/search-github/searching-on-github/searching-code) - [Commits](/search-github/searching-on-github/searching-commits) @@ -60,14 +61,14 @@ The {% data variables.search.advanced_url %} provides a visual interface for con ![Advanced Search](/assets/images/help/search/advanced_search_demo.gif) -{% ifversion fpt or ghes or ghae-next %} +{% ifversion fpt or ghes or ghae-next or ghec %} ## Searching repositories on {% data variables.product.prodname_dotcom_the_website %} from your private enterprise environment -If you use {% ifversion fpt %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} and you're a member of a {% data variables.product.prodname_dotcom_the_website %} organization using {% data variables.product.prodname_ghe_cloud %}, an enterprise owner for your {% data variables.product.prodname_enterprise %} environment can enable {% data variables.product.prodname_github_connect %} so that you can search across both environments at the same time{% ifversion ghes or ghae %} from {% data variables.product.product_name %}{% endif %}. For more information, see the following. +If you use {% ifversion fpt or ghec %}{% data variables.product.prodname_ghe_server %}{% ifversion ghae-next %} or {% data variables.product.prodname_ghe_managed %}{% endif %}{% else %}{% data variables.product.product_name %}{% endif %} and you're a member of a {% data variables.product.prodname_dotcom_the_website %} organization using {% data variables.product.prodname_ghe_cloud %}, an enterprise owner for your {% data variables.product.prodname_enterprise %} environment can enable {% data variables.product.prodname_github_connect %} so that you can search across both environments at the same time{% ifversion ghes or ghae %} from {% data variables.product.product_name %}{% endif %}. For more information, see the following. -{% ifversion fpt or ghes %} -- "[Enabling {% data variables.product.prodname_unified_search %} between your enterprise account and {% data variables.product.prodname_dotcom_the_website %}](/{% ifversion ghes %}{{ currentVersion }}{% else %}github-enterprise@latest{% endif %}/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom)" in the {% data variables.product.prodname_ghe_server %} documentation{% endif %}{% ifversion ghae-next %} +{% ifversion fpt or ghes or ghec %} +- "[Enabling {% data variables.product.prodname_unified_search %} between your enterprise account and {% data variables.product.prodname_dotcom_the_website %}](/{% ifversion ghes %}{{ currentVersion }}{% else %}enterprise-server@latest{% endif %}/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom)" in the {% data variables.product.prodname_ghe_server %} documentation{% endif %}{% ifversion ghae-next %} - "[Enabling {% data variables.product.prodname_unified_search %} between your enterprise account and {% data variables.product.prodname_dotcom_the_website %}](/github-ae@latest/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom)" in the {% data variables.product.prodname_ghe_managed %} documentation {% endif %} diff --git a/content/search-github/getting-started-with-searching-on-github/enabling-githubcom-repository-search-from-your-private-enterprise-environment.md b/content/search-github/getting-started-with-searching-on-github/enabling-githubcom-repository-search-from-your-private-enterprise-environment.md index ab5f46f06fbc..0556f8c8a6bc 100644 --- a/content/search-github/getting-started-with-searching-on-github/enabling-githubcom-repository-search-from-your-private-enterprise-environment.md +++ b/content/search-github/getting-started-with-searching-on-github/enabling-githubcom-repository-search-from-your-private-enterprise-environment.md @@ -1,7 +1,7 @@ --- title: Enabling GitHub.com repository search from your private enterprise environment shortTitle: Search GitHub.com from enterprise -intro: 'You can connect your personal accounts on {% data variables.product.prodname_dotcom_the_website %} and your private {% data variables.product.prodname_enterprise %} environment to search for content in certain {% data variables.product.prodname_dotcom_the_website %} repositories{% ifversion fpt %} from your private environment{% else %} from {% data variables.product.product_name %}{% endif %}.' +intro: 'You can connect your personal accounts on {% data variables.product.prodname_dotcom_the_website %} and your private {% data variables.product.prodname_enterprise %} environment to search for content in certain {% data variables.product.prodname_dotcom_the_website %} repositories{% ifversion fpt or ghec %} from your private environment{% else %} from {% data variables.product.product_name %}{% endif %}.' redirect_from: - /articles/enabling-private-githubcom-repository-search-in-your-github-enterprise-account/ - /articles/enabling-private-github-com-repository-search-in-your-github-enterprise-server-account/ @@ -12,27 +12,28 @@ redirect_from: versions: fpt: '*' ghes: '*' - ghae: 'next' + ghae: next + ghec: '*' topics: - GitHub search --- -## About search for {% data variables.product.prodname_dotcom_the_website %} repositories from {% ifversion fpt %}your private enterprise environment{% else %}{% data variables.product.product_name %}{% endif %} +## About search for {% data variables.product.prodname_dotcom_the_website %} repositories from {% ifversion fpt or ghec %}your private enterprise environment{% else %}{% data variables.product.product_name %}{% endif %} -You can search for designated private repositories on {% data variables.product.prodname_ghe_cloud %} from {% ifversion fpt %}your private {% data variables.product.prodname_enterprise %} environment{% else %}{% data variables.product.product_location %}{% ifversion ghae %} on {% data variables.product.prodname_ghe_managed %}{% endif %}{% endif %}. {% ifversion fpt %}For example, if you use {% data variables.product.prodname_ghe_server %}, you can search for private repositories from your enterprise from {% data variables.product.prodname_ghe_cloud %} in the web interface for {% data variables.product.prodname_ghe_server %}.{% endif %} +You can search for designated private repositories on {% data variables.product.prodname_ghe_cloud %} from {% ifversion fpt or ghec %}your private {% data variables.product.prodname_enterprise %} environment{% else %}{% data variables.product.product_location %}{% ifversion ghae %} on {% data variables.product.prodname_ghe_managed %}{% endif %}{% endif %}. {% ifversion fpt or ghec %}For example, if you use {% data variables.product.prodname_ghe_server %}, you can search for private repositories from your enterprise from {% data variables.product.prodname_ghe_cloud %} in the web interface for {% data variables.product.prodname_ghe_server %}.{% endif %} ## Prerequisites -- An enterprise owner for {% ifversion fpt %}your private {% data variables.product.prodname_enterprise %} environment{% else %}{% data variables.product.product_name %}{% endif %} must enable {% data variables.product.prodname_github_connect %} and {% data variables.product.prodname_unified_search %} for private repositories. For more information, see the following.{% ifversion fpt or ghes %} - - "[Enabling {% data variables.product.prodname_unified_search %} between your enterprise account and {% data variables.product.prodname_dotcom_the_website %}](/{% ifversion ghes %}{{ currentVersion }}{% else %}github-enterprise@latest{% endif %}/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom)" in the {% data variables.product.prodname_ghe_server %} documentation{% endif %}{% ifversion ghae-next %} +- An enterprise owner for {% ifversion fpt or ghec %}your private {% data variables.product.prodname_enterprise %} environment{% else %}{% data variables.product.product_name %}{% endif %} must enable {% data variables.product.prodname_github_connect %} and {% data variables.product.prodname_unified_search %} for private repositories. For more information, see the following.{% ifversion fpt or ghes or ghec %} + - "[Enabling {% data variables.product.prodname_unified_search %} between your enterprise account and {% data variables.product.prodname_dotcom_the_website %}](/{% ifversion ghes %}{{ currentVersion }}{% else %}enterprise-server@latest{% endif %}/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom)" in the {% data variables.product.prodname_ghe_server %} documentation{% endif %}{% ifversion ghae-next %} - "[Enabling {% data variables.product.prodname_unified_search %} between your enterprise account and {% data variables.product.prodname_dotcom_the_website %}](/github-ae@latest/admin/configuration/managing-connections-between-your-enterprise-accounts/enabling-unified-search-between-your-enterprise-account-and-githubcom)" in the {% data variables.product.prodname_ghe_managed %} documentation {% endif %} -- You must already have access to the private repositories and connect your account {% ifversion fpt %}in your private {% data variables.product.prodname_enterprise %} environment{% else %}on {% data variables.product.product_name %}{% endif %} with your account on {% data variables.product.prodname_dotcom_the_website %}. For more information about the repositories you can search, see "[About searching on GitHub](/github/searching-for-information-on-github/getting-started-with-searching-on-github/about-searching-on-github#searching-repositories-on-githubcom-from-your-private-enterprise-environment)." +- You must already have access to the private repositories and connect your account {% ifversion fpt or ghec %}in your private {% data variables.product.prodname_enterprise %} environment{% else %}on {% data variables.product.product_name %}{% endif %} with your account on {% data variables.product.prodname_dotcom_the_website %}. For more information about the repositories you can search, see "[About searching on GitHub](/github/searching-for-information-on-github/getting-started-with-searching-on-github/about-searching-on-github#searching-repositories-on-githubcom-from-your-private-enterprise-environment)." -## Enabling GitHub.com repository search from {% ifversion fpt %}your private {% data variables.product.prodname_enterprise %} environment{% else %}{% data variables.product.product_name %}{% endif %} +## Enabling GitHub.com repository search from {% ifversion fpt or ghec %}your private {% data variables.product.prodname_enterprise %} environment{% else %}{% data variables.product.product_name %}{% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} For more information, see the following. @@ -50,4 +51,4 @@ For more information, see the following. {% data reusables.github-connect.connect-dotcom-and-enterprise %} {% data reusables.github-connect.connect-dotcom-and-enterprise %} -{% endif %} \ No newline at end of file +{% endif %} diff --git a/content/search-github/getting-started-with-searching-on-github/index.md b/content/search-github/getting-started-with-searching-on-github/index.md index 4ae220d6641a..74a7f857bff1 100644 --- a/content/search-github/getting-started-with-searching-on-github/index.md +++ b/content/search-github/getting-started-with-searching-on-github/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search children: diff --git a/content/search-github/getting-started-with-searching-on-github/sorting-search-results.md b/content/search-github/getting-started-with-searching-on-github/sorting-search-results.md index 337c8eec19ce..ae5f6f4aa1d1 100644 --- a/content/search-github/getting-started-with-searching-on-github/sorting-search-results.md +++ b/content/search-github/getting-started-with-searching-on-github/sorting-search-results.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- diff --git a/content/search-github/getting-started-with-searching-on-github/troubleshooting-search-queries.md b/content/search-github/getting-started-with-searching-on-github/troubleshooting-search-queries.md index 304b1319cc59..e78cea16890e 100644 --- a/content/search-github/getting-started-with-searching-on-github/troubleshooting-search-queries.md +++ b/content/search-github/getting-started-with-searching-on-github/troubleshooting-search-queries.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search shortTitle: Troubleshoot search queries diff --git a/content/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax.md b/content/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax.md index fdc35298b1dd..34acd6390fdc 100644 --- a/content/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax.md +++ b/content/search-github/getting-started-with-searching-on-github/understanding-the-search-syntax.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search shortTitle: Understand search syntax @@ -85,7 +86,7 @@ If your search query contains whitespace, you will need to surround it with quot Some non-alphanumeric symbols, such as spaces, are dropped from code search queries within quotation marks, so results can be unexpected. -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ## Queries with usernames If your search query contains a qualifier that requires a username, such as `user`, `actor`, or `assignee`, you can use any {% data variables.product.product_name %} username, to specify a specific person, or `@me`, to specify the current user. diff --git a/content/search-github/index.md b/content/search-github/index.md index 8d031df4efb5..e8a21b352488 100644 --- a/content/search-github/index.md +++ b/content/search-github/index.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search children: diff --git a/content/search-github/searching-on-github/finding-files-on-github.md b/content/search-github/searching-on-github/finding-files-on-github.md index afb1055192be..2ea84afa2ed0 100644 --- a/content/search-github/searching-on-github/finding-files-on-github.md +++ b/content/search-github/searching-on-github/finding-files-on-github.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- diff --git a/content/search-github/searching-on-github/index.md b/content/search-github/searching-on-github/index.md index 342a12a5c80a..b3c594539e78 100644 --- a/content/search-github/searching-on-github/index.md +++ b/content/search-github/searching-on-github/index.md @@ -8,6 +8,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search children: diff --git a/content/search-github/searching-on-github/searching-code.md b/content/search-github/searching-on-github/searching-code.md index 5bd93d006c54..1c2a2a93c6f6 100644 --- a/content/search-github/searching-on-github/searching-code.md +++ b/content/search-github/searching-on-github/searching-code.md @@ -11,6 +11,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- @@ -24,13 +25,13 @@ You can only search code using these code search qualifiers. Search qualifiers s Due to the complexity of searching code, there are some restrictions on how searches are performed: -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} - {% data reusables.search.required_login %}{% endif %} - Code in [forks](/articles/about-forks) is only searchable if the fork has more stars than the parent repository. Forks with fewer stars than the parent repository are **not** indexed for code search. To include forks with more stars than their parent in the search results, you will need to add `fork:true` or `fork:only` to your query. For more information, see "[Searching in forks](/search-github/searching-on-github/searching-in-forks)." -- Only the _default branch_ is indexed for code search.{% ifversion fpt %} +- Only the _default branch_ is indexed for code search.{% ifversion fpt or ghec %} - Only files smaller than 384 KB are searchable.{% else %}* Only files smaller than 5 MB are searchable. - Only the first 500 KB of each file is searchable.{% endif %} -- Only repositories with fewer than 500,000 files are searchable.{% ifversion fpt %} +- Only repositories with fewer than 500,000 files are searchable.{% ifversion fpt or ghec %} - Only repositories that have had activity or have been returned in search results in the last year are searchable.{% endif %} - Except with [`filename`](#search-by-filename) searches, you must always include at least one search term when searching source code. For example, searching for [`language:javascript`](https://github.com/search?utf8=%E2%9C%93&q=language%3Ajavascript&type=Code&ref=searchresults) is not valid, while [`amazing language:javascript`](https://github.com/search?utf8=%E2%9C%93&q=amazing+language%3Ajavascript&type=Code&ref=searchresults) is. - At most, search results can show two fragments from the same file, but there may be more results within the file. @@ -107,5 +108,5 @@ The `extension` qualifier matches code files with a certain file extension. ## Further reading - "[Sorting search results](/search-github/getting-started-with-searching-on-github/sorting-search-results/)" -- "[Searching in forks](/search-github/searching-on-github/searching-in-forks)"{% ifversion fpt %} +- "[Searching in forks](/search-github/searching-on-github/searching-in-forks)"{% ifversion fpt or ghec %} - "[Navigating code on {% data variables.product.prodname_dotcom %}](/github/managing-files-in-a-repository/navigating-code-on-github)"{% endif %} diff --git a/content/search-github/searching-on-github/searching-commits.md b/content/search-github/searching-on-github/searching-commits.md index c7cc59f93133..f4d9b35d80cc 100644 --- a/content/search-github/searching-on-github/searching-commits.md +++ b/content/search-github/searching-on-github/searching-commits.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- @@ -104,7 +105,7 @@ To search commits in all repositories owned by a certain user or organization, u The `is` qualifier matches commits from repositories with the specified visibility. For more information, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." | Qualifier | Example -| ------------- | ------------- |{% ifversion fpt or ghes %} +| ------------- | ------------- |{% ifversion fpt or ghes or ghec %} | `is:public` | [**is:public**](https://github.com/search?q=is%3Apublic&type=Commits) matches commits to public repositories.{% endif %} | `is:internal` | [**is:internal**](https://github.com/search?q=is%3Ainternal&type=Commits) matches commits to internal repositories. | `is:private` | [**is:private**](https://github.com/search?q=is%3Aprivate&type=Commits) matches commits to private repositories. diff --git a/content/search-github/searching-on-github/searching-discussions.md b/content/search-github/searching-on-github/searching-discussions.md index 7082ebaafbbf..08da0e4d71f2 100644 --- a/content/search-github/searching-on-github/searching-discussions.md +++ b/content/search-github/searching-on-github/searching-discussions.md @@ -3,6 +3,7 @@ title: Searching discussions intro: 'You can search for discussions on {% data variables.product.product_name %} and narrow the results using search qualifiers.' versions: fpt: '*' + ghec: '*' topics: - GitHub search redirect_from: @@ -41,7 +42,7 @@ To search discussions in all repositories owned by a certain user or organizatio You can filter by the visibility of the repository containing the discussions using the `is` qualifier. For more information, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." | Qualifier | Example -| :- | :- |{% ifversion fpt or ghes %} +| :- | :- |{% ifversion fpt or ghes or ghec %} | `is:public` | [**is:public**](https://github.com/search?q=is%3Apublic&type=Discussions) matches discussions in public repositories.{% endif %} | `is:internal` | [**is:internal**](https://github.com/search?q=is%3Ainternal&type=Discussions) matches discussions in internal repositories. | `is:private` | [**is:private tiramisu**](https://github.com/search?q=is%3Aprivate+tiramisu&type=Discussions) matches discussions that contain the word "tiramisu" in private repositories you can access. diff --git a/content/search-github/searching-on-github/searching-for-packages.md b/content/search-github/searching-on-github/searching-for-packages.md index 8b0cdae1bd9a..07b3e06cd699 100644 --- a/content/search-github/searching-on-github/searching-for-packages.md +++ b/content/search-github/searching-on-github/searching-for-packages.md @@ -7,6 +7,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search redirect_from: diff --git a/content/search-github/searching-on-github/searching-for-repositories.md b/content/search-github/searching-on-github/searching-for-repositories.md index 4265c9f99ffd..a6f39f23e02f 100644 --- a/content/search-github/searching-on-github/searching-for-repositories.md +++ b/content/search-github/searching-on-github/searching-for-repositories.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search shortTitle: Search for repositories @@ -130,7 +131,7 @@ You can search repositories by the number of topics that have been applied to th | topics:n | [**topics:5**](https://github.com/search?utf8=%E2%9C%93&q=topics%3A5&type=Repositories&ref=searchresults) matches repositories that have five topics. | | [**topics:>3**](https://github.com/search?utf8=%E2%9C%93&q=topics%3A%3E3&type=Repositories&ref=searchresults) matches repositories that have more than three topics. -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} ## Search by license @@ -147,12 +148,12 @@ You can search repositories by the type of license in the repositories. You must You can filter your search based on the visibility of the repositories. For more information, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." | Qualifier | Example -| ------------- | ------------- |{% ifversion fpt or ghes %} +| ------------- | ------------- |{% ifversion fpt or ghes or ghec %} | `is:public` | [**is:public org:github**](https://github.com/search?q=is%3Apublic+org%3Agithub&type=Repositories) matches public repositories owned by {% data variables.product.company_short %}.{% endif %} | `is:internal` | [**is:internal test**](https://github.com/search?q=is%3Ainternal+test&type=Repositories) matches internal repositories that you can access and contain the word "test". | `is:private` | [**is:private pages**](https://github.com/search?q=is%3Aprivate+pages&type=Repositories) matches private repositories that you can access and contain the word "pages." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Search based on whether a repository is a mirror @@ -174,7 +175,7 @@ You can search repositories based on whether or not the repositories are archive | `archived:true` | [**archived:true GNOME**](https://github.com/search?utf8=%E2%9C%93&q=archived%3Atrue+GNOME&type=) matches repositories that are archived and contain the word "GNOME." | `archived:false` | [**archived:false GNOME**](https://github.com/search?utf8=%E2%9C%93&q=archived%3Afalse+GNOME&type=) matches repositories that are not archived and contain the word "GNOME." -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Search based on number of issues with `good first issue` or `help wanted` labels diff --git a/content/search-github/searching-on-github/searching-github-marketplace.md b/content/search-github/searching-on-github/searching-github-marketplace.md index 7d95ce90643e..5e8e7b10a5fc 100644 --- a/content/search-github/searching-on-github/searching-github-marketplace.md +++ b/content/search-github/searching-on-github/searching-github-marketplace.md @@ -3,6 +3,7 @@ title: Searching GitHub Marketplace intro: 'You can search for apps and actions that are available on {% data variables.product.prodname_marketplace %}.' versions: fpt: '*' + ghec: '*' topics: - GitHub search redirect_from: diff --git a/content/search-github/searching-on-github/searching-in-forks.md b/content/search-github/searching-on-github/searching-in-forks.md index 794305c20f28..f3ca1b3caaba 100644 --- a/content/search-github/searching-on-github/searching-in-forks.md +++ b/content/search-github/searching-on-github/searching-in-forks.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- diff --git a/content/search-github/searching-on-github/searching-issues-and-pull-requests.md b/content/search-github/searching-on-github/searching-issues-and-pull-requests.md index 1edf0ddb5f31..3b474239cbe4 100644 --- a/content/search-github/searching-on-github/searching-issues-and-pull-requests.md +++ b/content/search-github/searching-on-github/searching-issues-and-pull-requests.md @@ -10,6 +10,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search shortTitle: Search issues & PRs @@ -78,8 +79,8 @@ You can filter issues and pull requests based on whether they're open or closed You can filter by the visibility of the repository containing the issues and pull requests using the `is` qualifier. For more information, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." | Qualifier | Example -| ------------- | ------------- |{% ifversion fpt or ghes %} -| `is:public` | [**is:public**](https://github.com/search?q=is%3Apublic&type=Issues) matches issues and pull requests in public repositories.{% endif %}{% ifversion fpt or ghes or ghae %} +| ------------- | ------------- |{% ifversion fpt or ghes or ghec %} +| `is:public` | [**is:public**](https://github.com/search?q=is%3Apublic&type=Issues) matches issues and pull requests in public repositories.{% endif %}{% ifversion fpt or ghes or ghae or ghec %} | `is:internal` | [**is:internal**](https://github.com/search?q=is%3Ainternal&type=Issues) matches issues and pull requests in internal repositories.{% endif %} | `is:private` | [**is:private cupcake**](https://github.com/search?q=is%3Aprivate+cupcake&type=Issues) matches issues and pull requests that contain the word "cupcake" in private repositories you can access. @@ -135,7 +136,7 @@ You can use the `involves` qualifier to find issues that in some way involve a c | involves:USERNAME | **[involves:defunkt involves:jlord](https://github.com/search?q=involves%3Adefunkt+involves%3Ajlord&type=Issues)** matches issues either @defunkt or @jlord are involved in. | | [**NOT bootstrap in:body involves:mdo**](https://github.com/search?q=NOT+bootstrap+in%3Abody+involves%3Amdo&type=Issues) matches issues @mdo is involved in that do not contain the word "bootstrap" in the body. -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} ## Search for linked issues and pull requests You can narrow your results to only include issues that are linked to a pull request by a closing reference, or pull requests that are linked to an issue that the pull request may close. @@ -154,7 +155,7 @@ You can narrow your results by labels, using the `label` qualifier. Since issues | ------------- | ------------- | label:LABEL | [**label:"help wanted" language:ruby**](https://github.com/search?utf8=%E2%9C%93&q=label%3A%22help+wanted%22+language%3Aruby&type=Issues) matches issues with the label "help wanted" that are in Ruby repositories. | | [**broken in:body -label:bug label:priority**](https://github.com/search?q=broken+in%3Abody+-label%3Abug+label%3Apriority&type=Issues) matches issues with the word "broken" in the body, that lack the label "bug", but *do* have the label "priority." -| | [**label:bug label:resolved**](https://github.com/search?l=&q=label%3Abug+label%3Aresolved&type=Issues) matches issues with the labels "bug" and "resolved."{% ifversion fpt or ghes > 3.2 or ghae-next %} +| | [**label:bug label:resolved**](https://github.com/search?l=&q=label%3Abug+label%3Aresolved&type=Issues) matches issues with the labels "bug" and "resolved."{% ifversion fpt or ghes > 3.2 or ghae-next or ghec %} | | [**label:bug,resolved**](https://github.com/search?q=label%3Abug%2Cresolved&type=Issues) matches issues with the label "bug" or the label "resolved."{% endif %} ## Search by milestone @@ -242,7 +243,7 @@ You can filter issues and pull requests by the number of reactions using the `re You can filter for draft pull requests. For more information, see "[About pull requests](/articles/about-pull-requests#draft-pull-requests)." | Qualifier | Example -| ------------- | -------------{% ifversion fpt or ghes or ghae %} +| ------------- | -------------{% ifversion fpt or ghes or ghae or ghec %} | `draft:true` | [**draft:true**](https://github.com/search?q=draft%3Atrue) matches draft pull requests. | `draft:false` | [**draft:false**](https://github.com/search?q=draft%3Afalse) matches pull requests that are ready for review.{% else %} | `is:draft` | [**is:draft**](https://github.com/search?q=is%3Adraft) matches draft pull requests.{% endif %} @@ -258,7 +259,7 @@ You can filter pull requests based on their [review status](/articles/about-pull | `review:approved` | [**type:pr review:approved**](https://github.com/search?utf8=%E2%9C%93&q=type%3Apr+review%3Aapproved&type=Issues) matches pull requests that a reviewer has approved. | `review:changes_requested` | [**type:pr review:changes_requested**](https://github.com/search?utf8=%E2%9C%93&q=type%3Apr+review%3Achanges_requested&type=Issues) matches pull requests in which a reviewer has asked for changes. | reviewed-by:USERNAME | [**type:pr reviewed-by:gjtorikian**](https://github.com/search?utf8=%E2%9C%93&q=type%3Apr+reviewed-by%3Agjtorikian&type=Issues) matches pull requests reviewed by a particular person. -| review-requested:USERNAME | [**type:pr review-requested:benbalter**](https://github.com/search?utf8=%E2%9C%93&q=type%3Apr+review-requested%3Abenbalter&type=Issues) matches pull requests where a specific person is requested for review. Requested reviewers are no longer listed in the search results after they review a pull request. If the requested person is on a team that is requested for review, then review requests for that team will also appear in the search results.{% ifversion fpt or ghae or ghes > 3.2 %} +| review-requested:USERNAME | [**type:pr review-requested:benbalter**](https://github.com/search?utf8=%E2%9C%93&q=type%3Apr+review-requested%3Abenbalter&type=Issues) matches pull requests where a specific person is requested for review. Requested reviewers are no longer listed in the search results after they review a pull request. If the requested person is on a team that is requested for review, then review requests for that team will also appear in the search results.{% ifversion fpt or ghae or ghes > 3.2 or ghec %} | user-review-requested:@me | [**type:pr user-review-requested:@me**](https://github.com/search?q=is%3Apr+user-review-requested%3A%40me+) matches pull requests that you have directly been asked to review.{% endif %} | team-review-requested:TEAMNAME | [**type:pr team-review-requested:atom/design**](https://github.com/search?q=type%3Apr+team-review-requested%3Aatom%2Fdesign&type=Issues) matches pull requests that have review requests from the team `atom/design`. Requested reviewers are no longer listed in the search results after they review a pull request. diff --git a/content/search-github/searching-on-github/searching-topics.md b/content/search-github/searching-on-github/searching-topics.md index 355793fcb89e..567b8b0490a3 100644 --- a/content/search-github/searching-on-github/searching-topics.md +++ b/content/search-github/searching-on-github/searching-topics.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- @@ -20,7 +21,7 @@ You can search for topics on {% data variables.product.product_name %}, explore 2. Type a topic keyword. ![search field](/assets/images/help/search/search-field.png) 3. In the left sidebar, to narrow your search to topics, click **Topics**. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ![Jekyll repository search results page with topics side-menu option highlighted](/assets/images/help/search/topic-left-side-navigation-dotcom.png){% else %} ![Jekyll repository search results page on dotcom with topics side-menu option highlighted](/assets/images/help/search/topic-left-side-navigation.png){% endif %} diff --git a/content/search-github/searching-on-github/searching-users.md b/content/search-github/searching-on-github/searching-users.md index 2962aa3e9966..7971a54a1a50 100644 --- a/content/search-github/searching-on-github/searching-users.md +++ b/content/search-github/searching-on-github/searching-users.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- @@ -88,7 +89,7 @@ You can filter users based on the number of followers that they have, using the | followers:n | [**followers:>=1000**](https://github.com/search?q=followers%3A%3E%3D1000&type=Users) matches users with 1,000 or more followers. | | [**sparkle followers:1..10**](https://github.com/search?q=sparkle+followers%3A1..10&type=Users) matches users with between 1 and 10 followers, with the word "sparkle" in their name. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ## Search based on ability to sponsor diff --git a/content/search-github/searching-on-github/searching-wikis.md b/content/search-github/searching-on-github/searching-wikis.md index b929ebb9a835..30de0aa24283 100644 --- a/content/search-github/searching-on-github/searching-wikis.md +++ b/content/search-github/searching-on-github/searching-wikis.md @@ -9,6 +9,7 @@ versions: fpt: '*' ghes: '*' ghae: '*' + ghec: '*' topics: - GitHub search --- diff --git a/content/sponsors/getting-started-with-github-sponsors/about-github-sponsors.md b/content/sponsors/getting-started-with-github-sponsors/about-github-sponsors.md index 84c7403f836d..cd0c2c94d497 100644 --- a/content/sponsors/getting-started-with-github-sponsors/about-github-sponsors.md +++ b/content/sponsors/getting-started-with-github-sponsors/about-github-sponsors.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/about-github-sponsors versions: fpt: '*' + ghec: '*' type: overview topics: - Open Source @@ -22,7 +23,7 @@ topics: {% data reusables.sponsors.you-can-be-a-sponsored-organization %} For more information, see "[Setting up {% data variables.product.prodname_sponsors %} for your organization](/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization)." -When you become a sponsored developer or sponsored organization, additional terms for {% data variables.product.prodname_sponsors %} apply. For more information, see "[GitHub Sponsors Additional Terms](/github/site-policy/github-sponsors-additional-terms)." +When you become a sponsored developer or sponsored organization, additional terms for {% data variables.product.prodname_sponsors %} apply. For more information, see "[GitHub Sponsors Additional Terms](/free-pro-team@latest/github/site-policy/github-sponsors-additional-terms)." ## About the {% data variables.product.prodname_matching_fund %} @@ -32,7 +33,7 @@ When you become a sponsored developer or sponsored organization, additional term {% endnote %} -The {% data variables.product.prodname_matching_fund %} aims to benefit members of the {% data variables.product.prodname_dotcom %} community who develop open source software that promotes the [{% data variables.product.prodname_dotcom %} Community Guidelines](/github/site-policy/github-community-guidelines). Payments to sponsored organizations and payments from organizations are not eligible for {% data variables.product.prodname_matching_fund %}. +The {% data variables.product.prodname_matching_fund %} aims to benefit members of the {% data variables.product.prodname_dotcom %} community who develop open source software that promotes the [{% data variables.product.prodname_dotcom %} Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines). Payments to sponsored organizations and payments from organizations are not eligible for {% data variables.product.prodname_matching_fund %}. To be eligible for the {% data variables.product.prodname_matching_fund %}, you must create a profile that will attract a community that will sustain you for the long term. For more information about creating a strong profile, see "[Editing your profile details for {% data variables.product.prodname_sponsors %}](/sponsors/receiving-sponsorships-through-github-sponsors/editing-your-profile-details-for-github-sponsors)." diff --git a/content/sponsors/getting-started-with-github-sponsors/index.md b/content/sponsors/getting-started-with-github-sponsors/index.md index 9602d0795764..1bd3e53cd7ce 100644 --- a/content/sponsors/getting-started-with-github-sponsors/index.md +++ b/content/sponsors/getting-started-with-github-sponsors/index.md @@ -3,6 +3,7 @@ title: Getting started with GitHub Sponsors intro: 'Learn about {% data variables.product.prodname_sponsors %} and how you can get involved as a sponsor or open source contributor.' versions: fpt: '*' + ghec: '*' children: - /about-github-sponsors - /quickstart-for-finding-contributors-to-sponsor diff --git a/content/sponsors/getting-started-with-github-sponsors/quickstart-for-finding-contributors-to-sponsor.md b/content/sponsors/getting-started-with-github-sponsors/quickstart-for-finding-contributors-to-sponsor.md index 521dda18616b..e3f60e1e4d23 100644 --- a/content/sponsors/getting-started-with-github-sponsors/quickstart-for-finding-contributors-to-sponsor.md +++ b/content/sponsors/getting-started-with-github-sponsors/quickstart-for-finding-contributors-to-sponsor.md @@ -3,6 +3,7 @@ title: Quickstart for finding contributors to sponsor intro: Learn some best practices for finding open source contributors to sponsor. versions: fpt: '*' + ghec: '*' type: quick_start topics: - Open Source diff --git a/content/sponsors/guides.md b/content/sponsors/guides.md index dd6d3f191005..02e3509657cf 100644 --- a/content/sponsors/guides.md +++ b/content/sponsors/guides.md @@ -6,6 +6,7 @@ allowTitleToDifferFromFilename: true layout: product-sublanding versions: fpt: '*' + ghec: '*' includeGuides: - /sponsors/getting-started-with-github-sponsors/quickstart-for-finding-contributors-to-sponsor - /sponsors/sponsoring-open-source-contributors/attributing-sponsorships-to-your-organization diff --git a/content/sponsors/index.md b/content/sponsors/index.md index ed045ea4db85..46734c392cb5 100644 --- a/content/sponsors/index.md +++ b/content/sponsors/index.md @@ -28,6 +28,7 @@ featuredLinks: layout: product-landing versions: fpt: '*' + ghec: '*' communityRedirect: name: 'Provide GitHub Feedback' href: 'https://github.com/github/feedback/discussions/categories/sponsors-feedback' diff --git a/content/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account.md b/content/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account.md index 438ad2b2294d..2c2935cdef70 100644 --- a/content/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account.md +++ b/content/sponsors/integrating-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account.md @@ -5,6 +5,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/configuring-webhooks-for-events-in-your-sponsored-account versions: fpt: '*' + ghec: '*' type: how_to topics: - Webhooks diff --git a/content/sponsors/integrating-with-github-sponsors/getting-started-with-the-sponsors-graphql-api.md b/content/sponsors/integrating-with-github-sponsors/getting-started-with-the-sponsors-graphql-api.md index 7373fb4994ad..cacc376c3a2d 100644 --- a/content/sponsors/integrating-with-github-sponsors/getting-started-with-the-sponsors-graphql-api.md +++ b/content/sponsors/integrating-with-github-sponsors/getting-started-with-the-sponsors-graphql-api.md @@ -3,6 +3,7 @@ title: Getting started with the Sponsors GraphQL API intro: 'Using the GraphQL API, you can build custom integrations to manage or review your sponsorships.' versions: fpt: '*' + ghec: '*' type: overview topics: - GraphQL @@ -10,6 +11,6 @@ topics: shortTitle: Sponsors GraphQL API --- -To get started with the GraphQL API, see "[Introduction to GraphQL](/graphql/guides/introduction-to-graphql)." +To get started with the GraphQL API, see "[Introduction to GraphQL]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/introduction-to-graphql)." -You can find the details about the Sponsors GraphQL API in the reference docs. For more information, see "[GraphQL reference](/graphql/reference)." We recommend using the GraphQL explorer to build your GraphQL calls. For more information, see "[Using the explorer](/graphql/guides/using-the-explorer)." +You can find the details about the Sponsors GraphQL API in the reference docs. For more information, see "[GraphQL reference]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference)." We recommend using the GraphQL explorer to build your GraphQL calls. For more information, see "[Using the explorer]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-the-explorer)." diff --git a/content/sponsors/integrating-with-github-sponsors/index.md b/content/sponsors/integrating-with-github-sponsors/index.md index 108c0a7d323a..98648e4b7463 100644 --- a/content/sponsors/integrating-with-github-sponsors/index.md +++ b/content/sponsors/integrating-with-github-sponsors/index.md @@ -3,6 +3,7 @@ title: Integrating with GitHub Sponsors intro: 'As an open source contributor, you can build custom tools to manage your GitHub sponsorships.' versions: fpt: '*' + ghec: '*' children: - /configuring-webhooks-for-events-in-your-sponsored-account - /getting-started-with-the-sponsors-graphql-api diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/about-github-sponsors-for-open-source-contributors.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/about-github-sponsors-for-open-source-contributors.md index 342cc14746ee..1340fb516260 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/about-github-sponsors-for-open-source-contributors.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/about-github-sponsors-for-open-source-contributors.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/about-github-sponsors-for-sponsored-developers versions: fpt: '*' + ghec: '*' type: overview topics: - Open Source diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/contacting-your-sponsors.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/contacting-your-sponsors.md index 3a4c5563f2f6..7800e3ad4cbd 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/contacting-your-sponsors.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/contacting-your-sponsors.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/contacting-your-sponsors versions: fpt: '*' + ghec: '*' type: how_to topics: - Open Source diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/disabling-your-github-sponsors-account.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/disabling-your-github-sponsors-account.md index fb00fd1b8fb2..84a6716cb364 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/disabling-your-github-sponsors-account.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/disabling-your-github-sponsors-account.md @@ -3,6 +3,7 @@ title: Disabling your GitHub Sponsors account intro: 'If you no longer want to participate in {% data variables.product.prodname_sponsors %}, you can disable your {% data variables.product.prodname_sponsors %} account.' versions: fpt: '*' + ghec: '*' type: how_to topics: - Open Source diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/editing-your-profile-details-for-github-sponsors.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/editing-your-profile-details-for-github-sponsors.md index 1b4bf5e3e393..a16f74c20c9e 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/editing-your-profile-details-for-github-sponsors.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/editing-your-profile-details-for-github-sponsors.md @@ -7,6 +7,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/editing-your-profile-details-for-github-sponsors versions: fpt: '*' + ghec: '*' type: how_to topics: - Sponsors profile diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/index.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/index.md index 9903fcec32d9..55d1972b088b 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/index.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/index.md @@ -8,6 +8,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/receiving-sponsorships-through-github-sponsors versions: fpt: '*' + ghec: '*' children: - /about-github-sponsors-for-open-source-contributors - /setting-up-github-sponsors-for-your-user-account diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-payouts-from-github-sponsors.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-payouts-from-github-sponsors.md index 96014cf0ca67..22c177cd5d33 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-payouts-from-github-sponsors.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-payouts-from-github-sponsors.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/managing-your-payouts-from-github-sponsors versions: fpt: '*' + ghec: '*' type: how_to topics: - Sponsors payments diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-goal.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-goal.md index eaf93236b7ce..e3ff655adbc2 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-goal.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-goal.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/managing-your-sponsorship-goal versions: fpt: '*' + ghec: '*' type: how_to topics: - Open Source diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-tiers.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-tiers.md index 940731af60e4..9d3943fbaff5 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-tiers.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/managing-your-sponsorship-tiers.md @@ -7,6 +7,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/managing-your-sponsorship-tiers versions: fpt: '*' + ghec: '*' type: how_to topics: - Open Source diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md index 336f3834ee0d..c37bc4723408 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-organization.md @@ -8,6 +8,7 @@ redirect_from: permissions: 'Organization owners can set up {% data variables.product.prodname_sponsors %} for an organization.' versions: fpt: '*' + ghec: '*' type: how_to topics: - Organizations @@ -79,7 +80,7 @@ For more information about setting up Stripe Connect using Open Collective, see ## Enabling two-factor authentication (2FA) on your {% data variables.product.prodname_dotcom %} account -Before your organization can become a sponsored organization, you must enable 2FA on your {% data variables.product.product_name %} account. For more information, see "[Configuring two-factor authentication](/articles/configuring-two-factor-authentication)." +Before your organization can become a sponsored organization, you must enable 2FA for your account on {% data variables.product.product_location %}. For more information, see "[Configuring two-factor authentication](/articles/configuring-two-factor-authentication)." ## Submitting your application to {% data variables.product.prodname_dotcom %} for approval diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-user-account.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-user-account.md index 8a6371de1973..85d5d3c43f97 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-user-account.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/setting-up-github-sponsors-for-your-user-account.md @@ -1,12 +1,13 @@ --- title: Setting up GitHub Sponsors for your user account -intro: 'You can become a sponsored developer by joining {% data variables.product.prodname_sponsors %}, completing your sponsored developer profile, creating sponsorship tiers, submitting your bank and tax information, and enabling two-factor authentication on your {% data variables.product.prodname_dotcom %} account.' +intro: 'You can become a sponsored developer by joining {% data variables.product.prodname_sponsors %}, completing your sponsored developer profile, creating sponsorship tiers, submitting your bank and tax information, and enabling two-factor authentication for your account on {% data variables.product.product_location %}.' redirect_from: - /articles/becoming-a-sponsored-developer - /github/supporting-the-open-source-community-with-github-sponsors/becoming-a-sponsored-developer - /github/supporting-the-open-source-community-with-github-sponsors/setting-up-github-sponsors-for-your-user-account versions: fpt: '*' + ghec: '*' type: how_to topics: - User account @@ -76,7 +77,7 @@ If you live in a supported region, you can follow these instructions to submit y ## Enabling two-factor authentication (2FA) on your {% data variables.product.prodname_dotcom %} account -Before you can become a sponsored developer, you must enable 2FA on your {% data variables.product.product_name %} account. For more information, see "[Configuring two-factor authentication](/articles/configuring-two-factor-authentication)." +Before you can become a sponsored developer, you must enable 2FA for your account on {% data variables.product.product_location %}. For more information, see "[Configuring two-factor authentication](/articles/configuring-two-factor-authentication)." ## Submitting your application to {% data variables.product.prodname_dotcom %} for approval diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/sponsors-for-companies.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/sponsors-for-companies.md index c6ddf99a7e7d..e9483e638c24 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/sponsors-for-companies.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/sponsors-for-companies.md @@ -5,6 +5,7 @@ intro: 'To accept payments from the Sponsors for Companies service, you must acc allowTitleToDifferFromFilename: true versions: fpt: '*' + ghec: '*' type: how_to topics: - Sponsors @@ -26,7 +27,7 @@ The "GitHub Maintainer Additional Terms for Optional Data Provision" agreement i * Due to the way the service is set up, you'll receive payment from {% data variables.product.company_short %}, not from another company. * If taxes are required to be withheld on payment made through this program, {% data variables.product.company_short %} will deduct taxes from the amount owed and pay them to the appropriate taxing authority. * We'll share some aggregated data on your project(s) or projects you contribute to with the companies that pay for access to this data on a {% data variables.product.company_short %} dashboard. These data fields are outlined in Section 5 of the agreement. -* Data will be aggregated and will not include any User Personal Information (as defined in {% data variables.product.company_short %}’s [Privacy Statement](/github/site-policy/github-privacy-statement)), or any information from private repositories. +* Data will be aggregated and will not include any User Personal Information (as defined in {% data variables.product.company_short %}’s [Privacy Statement](/free-pro-team@latest/github/site-policy/github-privacy-statement)), or any information from private repositories. * You, as a Maintainer, can terminate the agreement with 14 days notice by contacting us. If you agree to the terms outlined in the "GitHub Maintainer Additional Terms for Optional Data Provision" agreement, you will receive a payment from {% data variables.product.company_short %} each time a company purchases access to the service. The company purchases access to the dashboard from {% data variables.product.company_short %} for a limited amount of time (for example, one month or one year), and {% data variables.product.company_short %} purchases a license to your data to populate the dashboard. Your financial relationship is with {% data variables.product.company_short %}, not the company taking part in the service. diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md index 0f95ff4e1b08..9cbcf53fce67 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/tax-information-for-github-sponsors.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/tax-information-for-sponsored-developers versions: fpt: '*' + ghec: '*' type: overview topics: - Open Source diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/unpublishing-your-github-sponsors-profile.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/unpublishing-your-github-sponsors-profile.md index a68eee08e625..a1a81f1fb234 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/unpublishing-your-github-sponsors-profile.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/unpublishing-your-github-sponsors-profile.md @@ -3,6 +3,7 @@ title: Unpublishing your GitHub Sponsors profile intro: 'If you don''t have any sponsors, you can unpublish your {% data variables.product.prodname_sponsors %} profile.' versions: fpt: '*' + ghec: '*' type: how_to topics: - Open Source diff --git a/content/sponsors/receiving-sponsorships-through-github-sponsors/viewing-your-sponsors-and-sponsorships.md b/content/sponsors/receiving-sponsorships-through-github-sponsors/viewing-your-sponsors-and-sponsorships.md index 61d9a4929749..7e97fa779fec 100644 --- a/content/sponsors/receiving-sponsorships-through-github-sponsors/viewing-your-sponsors-and-sponsorships.md +++ b/content/sponsors/receiving-sponsorships-through-github-sponsors/viewing-your-sponsors-and-sponsorships.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/viewing-your-sponsors-and-sponsorships versions: fpt: '*' + ghec: '*' type: how_to topics: - Open Source diff --git a/content/sponsors/sponsoring-open-source-contributors/attributing-sponsorships-to-your-organization.md b/content/sponsors/sponsoring-open-source-contributors/attributing-sponsorships-to-your-organization.md index 5c76bc45dcd2..76624a51e5ac 100644 --- a/content/sponsors/sponsoring-open-source-contributors/attributing-sponsorships-to-your-organization.md +++ b/content/sponsors/sponsoring-open-source-contributors/attributing-sponsorships-to-your-organization.md @@ -5,6 +5,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/attributing-sponsorships-to-your-organization versions: fpt: '*' + ghec: '*' permissions: People who are organization owners of both organizations can attribute one organization's sponsorships to another organization. type: how_to topics: diff --git a/content/sponsors/sponsoring-open-source-contributors/index.md b/content/sponsors/sponsoring-open-source-contributors/index.md index 63619870405b..618b71ac1e28 100644 --- a/content/sponsors/sponsoring-open-source-contributors/index.md +++ b/content/sponsors/sponsoring-open-source-contributors/index.md @@ -7,6 +7,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/sponsoring-open-source-contributors versions: fpt: '*' + ghec: '*' children: - /sponsoring-an-open-source-contributor - /managing-your-sponsorship diff --git a/content/sponsors/sponsoring-open-source-contributors/managing-your-sponsorship.md b/content/sponsors/sponsoring-open-source-contributors/managing-your-sponsorship.md index c3c85bf138f9..b72e0ac502cd 100644 --- a/content/sponsors/sponsoring-open-source-contributors/managing-your-sponsorship.md +++ b/content/sponsors/sponsoring-open-source-contributors/managing-your-sponsorship.md @@ -6,6 +6,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/managing-your-sponsorship versions: fpt: '*' + ghec: '*' type: how_to topics: - Contacting sponsors diff --git a/content/sponsors/sponsoring-open-source-contributors/paying-for-github-sponsors-by-invoice.md b/content/sponsors/sponsoring-open-source-contributors/paying-for-github-sponsors-by-invoice.md index bacb83e639e8..85eeb24bcb93 100644 --- a/content/sponsors/sponsoring-open-source-contributors/paying-for-github-sponsors-by-invoice.md +++ b/content/sponsors/sponsoring-open-source-contributors/paying-for-github-sponsors-by-invoice.md @@ -4,6 +4,7 @@ shortTitle: Paying by invoice intro: 'If your company pays {% data variables.product.company_short %} by invoice, you can join the Sponsors for Companies service.' versions: fpt: '*' + ghec: '*' type: how_to topics: - Sponsors diff --git a/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md b/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md index 28c5c8a8c404..9d19dfbaf466 100644 --- a/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md +++ b/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md @@ -8,6 +8,7 @@ redirect_from: - /github/supporting-the-open-source-community-with-github-sponsors/sponsoring-an-open-source-contributor versions: fpt: '*' + ghec: '*' permissions: Anyone can sponsor accounts on behalf of their own user account. Organization owners and billing managers can sponsor accounts on behalf of their organization. type: how_to topics: @@ -44,7 +45,7 @@ If the account you want to sponsor does not have a profile on {% data variables. {% note %} -**Note:** {% data variables.product.prodname_dotcom %} is not responsible for how developers represent themselves nor does {% data variables.product.prodname_dotcom %} endorse any sponsored open source projects. The claims are solely the responsibility of the developer receiving the funds. Make sure you trust a person before offering a sponsorship. For more information, see the [{% data variables.product.prodname_sponsors %} Additional Terms](/github/site-policy/github-sponsors-additional-terms). +**Note:** {% data variables.product.prodname_dotcom %} is not responsible for how developers represent themselves nor does {% data variables.product.prodname_dotcom %} endorse any sponsored open source projects. The claims are solely the responsibility of the developer receiving the funds. Make sure you trust a person before offering a sponsorship. For more information, see the [{% data variables.product.prodname_sponsors %} Additional Terms](/free-pro-team@latest/github/site-policy/github-sponsors-additional-terms). {% endnote %} diff --git a/contributing/content-model.md b/contributing/content-model.md index 620ee1ec9adb..671d6be5bf74 100644 --- a/contributing/content-model.md +++ b/contributing/content-model.md @@ -91,7 +91,7 @@ Titles are challenging! Use these general guidelines to help create clear, helpf - Titles aren’t overly repetitive––vary the verbs used for procedure or map topic titles when possible - Titles are general enough to scale with product changes, reflect all of the content within the article, or include content on multiple products - Use: "GitHub's billing plans" - - Avoid: “Billing plans for user and organization accounts" + - Avoid: "Billing plans for user and organization accounts" - Titles use consistent terminology - Develop and follow patterns within a category or on similar subjects - Titles use terminology from the product itself @@ -132,7 +132,7 @@ Use the [conceptual content template](https://github.com/github/docs/blob/main/c - Include next steps for getting started with the feature (whether through further reading links or content within the article itself) #### Titles for conceptual content -- Conceptual articles or headers of conceptual sections start with “About [subject]” +- Conceptual articles or headers of conceptual sections start with "About [subject]” - Use a noun to describe the subject - Use: "About code scanning" - Avoid: "About scanning your code for vulnerabilities" @@ -210,7 +210,7 @@ Use the [procedural content template](https://github.com/github/docs/blob/main/c #### Examples of procedural content - [Adding information to your receipts](https://docs.github.com/en/github/setting-up-and-managing-billing-and-payments-on-github/adding-information-to-your-receipts) -- [Inviting people to manage your enterprise account](https://docs.github.com/en/github/setting-up-and-managing-your-enterprise/inviting-people-to-manage-your-enterprise) +- [Inviting people to manage your enterprise account](https://docs.github.com/en/admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise) - [Setting up continuous integration using workflow templates](https://docs.github.com/en/actions/guides/setting-up-continuous-integration-using-workflow-templates) ### Combining multiple content types @@ -228,7 +228,7 @@ Often, it's helpful to group information in context to help customers complete a #### Title guidelines for articles that combine multiple content types - If there's a procedure within the article, use a task-based title that begins with a gerund - Titles are general enough to describe the range of information and tasks contained within the article -- Titles describe the setting being toggled and are agnostic about what setting the reader chooses, e.g., “Setting repository visibility” instead of “Making a private repository public” +- Titles describe the setting being toggled and are agnostic about what setting the reader chooses, e.g., "Setting repository visibility” instead of "Making a private repository public” #### Examples of articles that combine multiple content types - [Setting repository visibility](https://docs.github.com/en/github/administering-a-repository/setting-repository-visibility) @@ -291,7 +291,7 @@ Contents of tutorials: - Does not include the expected amount of time that it may take users to complete the task - this depends on the experience level of the user and can be demoralizing for beginners - Procedural sections - Based on the tutorial's audience, the steps can be less explicit and formal than those used in procedural content. You do not have to use existing reusables to form these steps if the audience doesn’t require that level of detail. - - Use: “From your profile, click **Settings, and then click **Developer settings**.” + - Use: "From your profile, click **Settings, and then click **Developer settings**.” - Avoid: In the upper-right corner of any page, click your profile photo, then click **Settings**. In the left sidebar, click **Developer settings**. - Link out to other articles or resources rather than replicating them, to avoid interrupting the flow of information in the tutorial. - Give visual cues. Use code blocks and screenshots heavily to help reassure users that they're performing the correct actions. @@ -310,7 +310,7 @@ Contents of tutorials: #### Title guidelines for tutorials - Follow the title guidelines for procedural articles -- Don’t use “tutorial” or “guide” in the title +- Don’t use "tutorial” or "guide” in the title #### Examples of tutorials Tutorials: @@ -370,10 +370,10 @@ Use the product callout when a feature is available in specific products only. A #### How to write a product callout - Product callouts follow a strict format, clearly identifying the feature and which products it’s available in. -- Product callouts also include a link to “GitHub’s products” and occasionally to another relevant article. +- Product callouts also include a link to "GitHub’s products” and occasionally to another relevant article. - Examples: - - [Feature name] is available in [product(s)]. For more information, see “GitHub’s products.” - - [Feature name] is available in public repositories with [free product(s), and in public and private repositories with [paid products]. For more information, see “GitHub’s products.” + - [Feature name] is available in [product(s)]. For more information, see "GitHub’s products.” + - [Feature name] is available in public repositories with [free product(s), and in public and private repositories with [paid products]. For more information, see "GitHub’s products.” #### Examples of articles with product callouts Check the source files and `gated-features` to see how source content is written. @@ -451,6 +451,6 @@ Further reading sections highlight additional targeted articles that aren’t al #### Title and format for further reading sections ``` ### Further reading -- “[Article title](article-URL)” +- "[Article title](article-URL)” - [External resource title](external-resource-URL) in External Resource Name ``` diff --git a/data/features/placeholder.yml b/data/features/placeholder.yml index a133861e3570..17ea1d65740f 100644 --- a/data/features/placeholder.yml +++ b/data/features/placeholder.yml @@ -1,4 +1,5 @@ # Do not delete! Used by tests. versions: ghes: '>3.0' + ghec: '*' ghae: '*' diff --git a/data/learning-tracks/admin.yml b/data/learning-tracks/admin.yml index 66b9c7aadd22..7e18b0de1700 100644 --- a/data/learning-tracks/admin.yml +++ b/data/learning-tracks/admin.yml @@ -75,3 +75,15 @@ configure_github_advanced_security: - /admin/advanced-security/configuring-code-scanning-for-your-appliance - /admin/advanced-security/configuring-secret-scanning-for-your-appliance - /admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise + +get_started_with_your_enterprise_account: + title: 'Get started with your enterprise account' + description: 'Get started with your enterprise account to centrally manage multiple organizations on {% data variables.product.product_name %}.' + guides: + - /admin/overview/about-enterprise-accounts + - /billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise + - /admin/user-management/managing-users-in-your-enterprise/inviting-people-to-manage-your-enterprise + - /admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise + - /admin/authentication/managing-identity-and-access-for-your-enterprise/configuring-saml-single-sign-on-for-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise diff --git a/data/product-examples/code-security/code-examples.yml b/data/product-examples/code-security/code-examples.yml index 930519d2cf39..e06f436c6f1b 100644 --- a/data/product-examples/code-security/code-examples.yml +++ b/data/product-examples/code-security/code-examples.yml @@ -49,6 +49,7 @@ - Scripts versions: fpt: '*' + ghec: '*' # Dependabot configuration only relevant to GitHub.com # Convert "languages" to "package-ecosystems" for Dependabot configurations @@ -67,6 +68,7 @@ - Configuration versions: fpt: '*' + ghec: '*' - title: Dependabot version update PR description: Example pull request generated by the Dependabot version updates configuration in the Super linter repository. @@ -78,3 +80,4 @@ - Pull requests versions: fpt: '*' + ghec: '*' diff --git a/data/reusables/accounts/create-account.md b/data/reusables/accounts/create-account.md index dc817b083dd3..782275dc29cd 100644 --- a/data/reusables/accounts/create-account.md +++ b/data/reusables/accounts/create-account.md @@ -1,2 +1,2 @@ -1. Go to {% data variables.product.product_name %}'s [Pricing]({% data variables.product.pricing_url %}) page. -2. Read the information about the different products and subscriptions that {% data variables.product.product_name %} offers, then click the upgrade button under the subscription you'd like to choose. +1. Go to {% data variables.product.company_short %}'s [Pricing]({% data variables.product.pricing_url %}) page. +2. Read the information about the different products and subscriptions that {% data variables.product.company_short %} offers, then click the upgrade button under the subscription you'd like to choose. diff --git a/data/reusables/actions/about-secrets.md b/data/reusables/actions/about-secrets.md index 3910d26b382a..3877bd3ca93c 100644 --- a/data/reusables/actions/about-secrets.md +++ b/data/reusables/actions/about-secrets.md @@ -1 +1 @@ -Encrypted secrets allow you to store sensitive information, such as access tokens, in your repository{% ifversion fpt or ghes > 3.1 or ghae-next %}, repository environments,{% endif %} or organization. +Encrypted secrets allow you to store sensitive information, such as access tokens, in your repository{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, repository environments,{% endif %} or organization. diff --git a/data/reusables/actions/actions-audit-events-for-enterprise.md b/data/reusables/actions/actions-audit-events-for-enterprise.md index 398d922bc0a9..d6f8f299624a 100644 --- a/data/reusables/actions/actions-audit-events-for-enterprise.md +++ b/data/reusables/actions/actions-audit-events-for-enterprise.md @@ -9,8 +9,8 @@ | `runner_group_visiblity_updated` | Triggered when the visibility settings of the self-hosted runner group are changed.{% endif %} | `runner_group_runner_removed` | Triggered when the REST API is used to remove a self-hosted runner from a group. | `runner_group_runners_added` | Triggered when a self-hosted runner is added to a group. For more information, see "[Moving a self-hosted runner to a group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group)." -| `runner_group_runners_updated` | Triggered when a runner group's list of members is updated. For more information, see "[Set self-hosted runners in a group for an organization](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)."{% ifversion fpt or ghes > 2.22 or ghae %} +| `runner_group_runners_updated` | Triggered when a runner group's list of members is updated. For more information, see "[Set self-hosted runners in a group for an organization](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)."{% ifversion fpt or ghes > 2.22 or ghae or ghec %} | `runner_group_updated` | Triggered when the configuration of a self-hosted runner group is changed. For more information, see "[Changing the access policy of a self-hosted runner group](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)."{% endif %} -| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% ifversion fpt %} +| `self_hosted_runner_updated` | Triggered when the runner application is updated. Can be viewed using the REST API and the UI; not visible in the JSON/CSV export. For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#about-self-hosted-runners)."{% ifversion fpt or ghec %} | `self_hosted_runner_online` | Triggered when the runner application is started. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)." | `self_hosted_runner_offline` | Triggered when the runner application is stopped. Can only be viewed using the REST API; not visible in the UI or JSON/CSV export. For more information, see "[Checking the status of a self-hosted runner](/actions/hosting-your-own-runners/monitoring-and-troubleshooting-self-hosted-runners#checking-the-status-of-a-self-hosted-runner)."{% endif %} diff --git a/data/reusables/actions/actions-audit-events-workflow.md b/data/reusables/actions/actions-audit-events-workflow.md index 92a9bcc7862b..6c763e915c1d 100644 --- a/data/reusables/actions/actions-audit-events-workflow.md +++ b/data/reusables/actions/actions-audit-events-workflow.md @@ -1,12 +1,12 @@ | Action | Description -|------------------|-------------------{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} -| `cancel_workflow_run` | Triggered when a workflow run has been cancelled. For more information, see "[Canceling a workflow](/actions/managing-workflow-runs/canceling-a-workflow)."{% endif %}{% ifversion fpt %} -| `completed_workflow_run` | Triggered when a workflow status changes to `completed`. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Viewing workflow run history](/actions/managing-workflow-runs/viewing-workflow-run-history)."{% endif %}{% ifversion fpt %} -| `created_workflow_run` | Triggered when a workflow run is created. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Create an example workflow](/actions/learn-github-actions/introduction-to-github-actions#create-an-example-workflow)."{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} +|------------------|-------------------{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} +| `cancel_workflow_run` | Triggered when a workflow run has been cancelled. For more information, see "[Canceling a workflow](/actions/managing-workflow-runs/canceling-a-workflow)."{% endif %}{% ifversion fpt or ghec %} +| `completed_workflow_run` | Triggered when a workflow status changes to `completed`. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Viewing workflow run history](/actions/managing-workflow-runs/viewing-workflow-run-history)."{% endif %}{% ifversion fpt or ghec %} +| `created_workflow_run` | Triggered when a workflow run is created. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Create an example workflow](/actions/learn-github-actions/introduction-to-github-actions#create-an-example-workflow)."{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} | `delete_workflow_run` | Triggered when a workflow run is deleted. For more information, see "[Deleting a workflow run](/actions/managing-workflow-runs/deleting-a-workflow-run)." | `disable_workflow` | Triggered when a workflow is disabled. | `enable_workflow` | Triggered when a workflow is enabled, after previously being disabled by `disable_workflow`. -| `rerun_workflow_run` | Triggered when a workflow run is re-run. For more information, see "[Re-running a workflow](/actions/managing-workflow-runs/re-running-a-workflow)."{% endif %}{% ifversion fpt %} -| `prepared_workflow_job` | Triggered when a workflow job is started. Includes the list of secrets that were provided to the job. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)."{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 %} +| `rerun_workflow_run` | Triggered when a workflow run is re-run. For more information, see "[Re-running a workflow](/actions/managing-workflow-runs/re-running-a-workflow)."{% endif %}{% ifversion fpt or ghec %} +| `prepared_workflow_job` | Triggered when a workflow job is started. Includes the list of secrets that were provided to the job. Can only be viewed using the REST API; not visible in the UI or the JSON/CSV export. For more information, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)."{% endif %}{% ifversion fpt or ghes > 3.1 or ghae-issue-1157 or ghec %} | `approve_workflow_job` | Triggered when a workflow job has been approved. For more information, see "[Reviewing deployments](/actions/managing-workflow-runs/reviewing-deployments)." | `reject_workflow_job` | Triggered when a workflow job has been rejected. For more information, see "[Reviewing deployments](/actions/managing-workflow-runs/reviewing-deployments)."{% endif %} diff --git a/data/reusables/actions/actions-use-policy-settings.md b/data/reusables/actions/actions-use-policy-settings.md index 9213a1e2092b..a249a98ab4ce 100644 --- a/data/reusables/actions/actions-use-policy-settings.md +++ b/data/reusables/actions/actions-use-policy-settings.md @@ -1,3 +1,3 @@ If you choose **Allow select actions**, local actions are allowed, and there are additional options for allowing other specific actions. For more information, see "[Allowing specific actions to run](#allowing-specific-actions-to-run)." -When you allow local actions only, the policy blocks all access to actions authored by {% data variables.product.prodname_dotcom %}. For example, the [`actions/checkout`](https://github.com/actions/checkout) would not be accessible. +When you allow local actions only, the policy blocks all access to actions authored by {% data variables.product.prodname_dotcom %}. For example, the [`actions/checkout`](https://github.com/actions/checkout) action would not be accessible. diff --git a/data/reusables/actions/allow-specific-actions-intro.md b/data/reusables/actions/allow-specific-actions-intro.md index 432a04591173..2f833e5d5485 100644 --- a/data/reusables/actions/allow-specific-actions-intro.md +++ b/data/reusables/actions/allow-specific-actions-intro.md @@ -1,6 +1,6 @@ When you choose **Allow select actions**, local actions are allowed, and there are additional options for allowing other specific actions: -- **Allow actions created by {% data variables.product.prodname_dotcom %}:** You can allow all actions created by {% data variables.product.prodname_dotcom %} to be used by workflows. Actions created by {% data variables.product.prodname_dotcom %} are located in the `actions` and `github` organizations. For more information, see the [`actions`](https://github.com/actions) and [`github`](https://github.com/github) organizations.{% ifversion fpt or ghes > 3.0 or ghae-issue-5094 %} +- **Allow actions created by {% data variables.product.prodname_dotcom %}:** You can allow all actions created by {% data variables.product.prodname_dotcom %} to be used by workflows. Actions created by {% data variables.product.prodname_dotcom %} are located in the `actions` and `github` organizations. For more information, see the [`actions`](https://github.com/actions) and [`github`](https://github.com/github) organizations.{% ifversion fpt or ghes > 3.0 or ghae-issue-5094 or ghec %} - **Allow Marketplace actions by verified creators:** {% ifversion ghes > 3.0 or ghae-issue-5094 %}This option is available if you have {% data variables.product.prodname_github_connect %} enabled and configured with {% data variables.product.prodname_actions %}. For more information, see "[Enabling automatic access to GitHub.com actions using GitHub Connect](/admin/github-actions/managing-access-to-actions-from-githubcom/enabling-automatic-access-to-githubcom-actions-using-github-connect)."{% endif %} You can allow all {% data variables.product.prodname_marketplace %} actions created by verified creators to be used by workflows. When GitHub has verified the creator of the action as a partner organization, the {% octicon "verified" aria-label="The verified badge" %} badge is displayed next to the action in {% data variables.product.prodname_marketplace %}.{% endif %} - **Allow specified actions:** You can restrict workflows to use actions in specific organizations and repositories. @@ -8,7 +8,7 @@ When you choose **Allow select actions**, local actions are allowed, and there a You can use the `*` wildcard character to match patterns. For example, to allow all actions in organizations that start with `space-org`, you can specify `space-org*/*`. To add all actions in repositories that start with octocat, you can use `*/octocat*@*`. For more information about using the `*` wildcard, see "[Workflow syntax for GitHub Actions](/actions/reference/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet)." - {% ifversion fpt %} + {% ifversion fpt or ghec %} {% note %} **Note:** The **Allow specified actions** option is only available in public repositories with the {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, {% data variables.product.prodname_free_team %} for organizations, or {% data variables.product.prodname_team %} plan. diff --git a/data/reusables/actions/delete-env-key.md b/data/reusables/actions/delete-env-key.md index 380ebe56536b..9782daa01d53 100644 --- a/data/reusables/actions/delete-env-key.md +++ b/data/reusables/actions/delete-env-key.md @@ -1 +1 @@ -If you configured a deployment environment, change the value of `environment` to be the name of your environment. If you did not configure an environment{% ifversion fpt %} or if your workflow is in a private repository and you do not use {% data variables.product.prodname_ghe_cloud %}{% endif %}, delete the `environment` key. \ No newline at end of file +If you configured a deployment environment, change the value of `environment` to be the name of your environment. If you did not configure an environment{% ifversion fpt or ghec %} or if your workflow is in a private repository and you do not use {% data variables.product.prodname_ghe_cloud %}{% endif %}, delete the `environment` key. \ No newline at end of file diff --git a/data/reusables/actions/message-parameters.md b/data/reusables/actions/message-parameters.md index f5f9473c4d31..f7e9299c7012 100644 --- a/data/reusables/actions/message-parameters.md +++ b/data/reusables/actions/message-parameters.md @@ -1,8 +1,8 @@ | Parameter | Value | -| :- | :- |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 %} +| :- | :- |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 or ghec %} | `title` | Custom title |{% endif %} | `file` | Filename | -| `col` | Column number, starting at 1 |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 %} +| `col` | Column number, starting at 1 |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 or ghec %} | `endColumn` | End column number |{% endif %} -| `line` | Line number, starting at 1 |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 %} +| `line` | Line number, starting at 1 |{% ifversion fpt or ghes > 3.2 or ghae-issue-4929 or ghec %} | `endLine` | End line number |{% endif %} diff --git a/data/reusables/actions/reusable-workflow-artifacts.md b/data/reusables/actions/reusable-workflow-artifacts.md index 4f5210333fa0..098a44f7559e 100644 --- a/data/reusables/actions/reusable-workflow-artifacts.md +++ b/data/reusables/actions/reusable-workflow-artifacts.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} All actions and workflows called within a run have write access to that run's artifacts. {% endif %} \ No newline at end of file diff --git a/data/reusables/actions/reusable-workflows.md b/data/reusables/actions/reusable-workflows.md index 377f69ce3203..17fd64a6f758 100644 --- a/data/reusables/actions/reusable-workflows.md +++ b/data/reusables/actions/reusable-workflows.md @@ -1,4 +1,4 @@ -{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 %} +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} ## Reusing workflows You can call one workflow from within another workflow. This allows you to reuse workflows, avoiding duplication and making your workflows easier to maintain. For more information, see "[Reusing workflows](/actions/learn-github-actions/reusing-workflows)." diff --git a/data/reusables/actions/workflow-runs-dependabot-note.md b/data/reusables/actions/workflow-runs-dependabot-note.md index b036943e4c37..0694bc91c367 100644 --- a/data/reusables/actions/workflow-runs-dependabot-note.md +++ b/data/reusables/actions/workflow-runs-dependabot-note.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** Workflow runs triggered by {% data variables.product.prodname_dependabot %} pull requests run as if they are from a forked repository, and therefore use a read-only `GITHUB_TOKEN`. These workflow runs cannot access any secrets. See ["Keeping your GitHub Actions and workflows secure: Preventing pwn requests"](https://securitylab.github.com/research/github-actions-preventing-pwn-requests) for strategies to keep these workflows secure. diff --git a/data/reusables/actions/workflow-template-overview.md b/data/reusables/actions/workflow-template-overview.md index b0e9469b276f..88eff614a29b 100644 --- a/data/reusables/actions/workflow-template-overview.md +++ b/data/reusables/actions/workflow-template-overview.md @@ -1,3 +1,3 @@ {% data variables.product.prodname_dotcom %} provides preconfigured workflow templates that you can customize to create your own continuous integration workflow. {% data variables.product.product_name %} analyzes your code and shows you CI templates that might be useful for your repository. For example, if your repository contains Node.js code, you'll see suggestions for Node.js projects. You can use workflow templates as a starting place to build your custom workflow or use them as-is. -You can browse the full list of workflow templates in the {% ifversion fpt %}[actions/starter-workflows](https://github.com/actions/starter-workflows) repository{% else %} `actions/starter-workflows` repository on {% data variables.product.product_location %}{% endif %}. +You can browse the full list of workflow templates in the {% ifversion fpt or ghec %}[actions/starter-workflows](https://github.com/actions/starter-workflows) repository{% else %} `actions/starter-workflows` repository on {% data variables.product.product_location %}{% endif %}. diff --git a/data/reusables/advanced-security/about-committer-numbers-ghec-ghes.md b/data/reusables/advanced-security/about-committer-numbers-ghec-ghes.md index 0720287a6ae5..7d2ada7680ca 100644 --- a/data/reusables/advanced-security/about-committer-numbers-ghec-ghes.md +++ b/data/reusables/advanced-security/about-committer-numbers-ghec-ghes.md @@ -1,6 +1,6 @@ We record and display two numbers of committers for {% data variables.product.prodname_GH_advanced_security %} on {% data variables.product.product_location %}: -- **Committers** is the number of committers who contributed to at least one {% ifversion fpt %}private {% endif %}repository in an organization and who use a seat in your enterprise license. That is, they are also an organization member, an external collaborator, or have a pending invitation to join an organization in your enterprise. +- **Committers** is the number of committers who contributed to at least one {% ifversion fpt or ghec %}private {% endif %}repository in an organization and who use a seat in your enterprise license. That is, they are also an organization member, an external collaborator, or have a pending invitation to join an organization in your enterprise. - **Unique to this repository/organization** is the number of committers who contributed only to this repository, or to repositories in this organization. This number shows how many license seats you can free up by disabling {% data variables.product.prodname_GH_advanced_security %} for that repository or organization. If there are no unique committers, all active committers also contribute to other repositories or organizations that use {% data variables.product.prodname_GH_advanced_security %}. Disabling the feature for that repository or organization would not free any seats on your license. diff --git a/data/reusables/advanced-security/about-ghas-organization-policy.md b/data/reusables/advanced-security/about-ghas-organization-policy.md index 577136a9d8a7..c3ef4704d194 100644 --- a/data/reusables/advanced-security/about-ghas-organization-policy.md +++ b/data/reusables/advanced-security/about-ghas-organization-policy.md @@ -1,4 +1,4 @@ -{% data variables.product.company_short %} bills for {% data variables.product.prodname_advanced_security %} on a per-committer basis. {% ifversion fpt %}For more information, see "[Managing licensing for {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-licensing-for-github-advanced-security)."{% elsif ghes > 3.0 %}For more information, see "[Managing {% data variables.product.prodname_GH_advanced_security %} for your Enterprise](/admin/advanced-security)."{% endif %} +{% data variables.product.company_short %} bills for {% data variables.product.prodname_advanced_security %} on a per-committer basis. {% ifversion fpt or ghec %}For more information, see "[Managing licensing for {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-licensing-for-github-advanced-security)."{% elsif ghes > 3.0 %}For more information, see "[Managing {% data variables.product.prodname_GH_advanced_security %} for your Enterprise](/admin/advanced-security)."{% endif %} You can enforce a policy that controls whether repository administrators are allowed to enable features for {% data variables.product.prodname_advanced_security %} in an organization's repositories. You can configure a policy for all organizations owned by your enterprise account, or for individual organizations that you choose. diff --git a/data/reusables/advanced-security/getting-the-most-from-your-license.md b/data/reusables/advanced-security/getting-the-most-from-your-license.md index 58b7b80a0a0a..6867b5d785b8 100644 --- a/data/reusables/advanced-security/getting-the-most-from-your-license.md +++ b/data/reusables/advanced-security/getting-the-most-from-your-license.md @@ -3,4 +3,4 @@ When you decide which repositories and organizations to prioritize for {% data v - Codebases that are the most critical to your company's success. These are the projects for which the introduction of vulnerable code, hard-coded secrets, or vulnerable dependencies would have the greatest impact on your company. - Codebases with the highest commit frequency. These are the most actively developed projects, consequently there is a higher risk that security problems could be introduced. -When you have enabled {% data variables.product.prodname_GH_advanced_security %} for these organizations or repositories, assess which other codebases you could add without incurring billing for unique committers. Finally, review the remaining important and busy codebases. {% ifversion fpt or ghes %}If you want to increase the number of seats in your license, contact {% data variables.contact.contact_enterprise_sales %}.{% endif %} +When you have enabled {% data variables.product.prodname_GH_advanced_security %} for these organizations or repositories, assess which other codebases you could add without incurring billing for unique committers. Finally, review the remaining important and busy codebases. {% ifversion fpt or ghes or ghec %}If you want to increase the number of seats in your license, contact {% data variables.contact.contact_enterprise_sales %}.{% endif %} diff --git a/data/reusables/advanced-security/ghas-helps-developers.md b/data/reusables/advanced-security/ghas-helps-developers.md index d3f2bdbad86b..4245b167480a 100644 --- a/data/reusables/advanced-security/ghas-helps-developers.md +++ b/data/reusables/advanced-security/ghas-helps-developers.md @@ -1,2 +1,2 @@ -{% data variables.product.prodname_GH_advanced_security %} helps developers improve and maintain the security and quality of code.{% ifversion fpt or ghes > 2.22 or ghae %} For more information, see "[About {% data variables.product.prodname_GH_advanced_security %}](/github/getting-started-with-github/about-github-advanced-security)." +{% data variables.product.prodname_GH_advanced_security %} helps developers improve and maintain the security and quality of code.{% ifversion fpt or ghes > 2.22 or ghae or ghec %} For more information, see "[About {% data variables.product.prodname_GH_advanced_security %}](/github/getting-started-with-github/about-github-advanced-security)." {% endif %} diff --git a/data/reusables/advanced-security/managing-license-usage-ghec-ghes.md b/data/reusables/advanced-security/managing-license-usage-ghec-ghes.md index 5b2cc77a04f1..5d06ab059010 100644 --- a/data/reusables/advanced-security/managing-license-usage-ghec-ghes.md +++ b/data/reusables/advanced-security/managing-license-usage-ghec-ghes.md @@ -1,5 +1,5 @@ When you enable or disable {% data variables.product.prodname_advanced_security %} for repositories, {% data variables.product.prodname_dotcom %} displays an overview of changes to the use of your license. If you disable access to {% data variables.product.prodname_GH_advanced_security %}, any seats used by "unique" committers are freed up. -If you are over your license limit, {% data variables.product.prodname_GH_advanced_security %} continues to work on all repositories where it is already enabled. However, in organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled for new repositories, repositories will be created with the feature disabled. In addition, the option to enable {% data variables.product.prodname_GH_advanced_security %} for existing repositories will not be available.{% ifversion fpt %} If you change the visibility of a public repository to private then {% data variables.product.prodname_GH_advanced_security %} will be disabled for that repository.{% endif %} +If you are over your license limit, {% data variables.product.prodname_GH_advanced_security %} continues to work on all repositories where it is already enabled. However, in organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled for new repositories, repositories will be created with the feature disabled. In addition, the option to enable {% data variables.product.prodname_GH_advanced_security %} for existing repositories will not be available.{% ifversion fpt or ghec %} If you change the visibility of a public repository to private then {% data variables.product.prodname_GH_advanced_security %} will be disabled for that repository.{% endif %} As soon as you free up some seats, by disabling {% data variables.product.prodname_GH_advanced_security %} for some repositories or by increasing your license size, the options for enabling {% data variables.product.prodname_GH_advanced_security %} will work again as normal. diff --git a/data/reusables/advanced-security/more-info-ghas.md b/data/reusables/advanced-security/more-info-ghas.md index b563264cbd7b..ea91ba44d5a5 100644 --- a/data/reusables/advanced-security/more-info-ghas.md +++ b/data/reusables/advanced-security/more-info-ghas.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} For more information, see "[About {% data variables.product.prodname_GH_advanced_security %}](/github/getting-started-with-github/about-github-advanced-security)." {% endif %} diff --git a/data/reusables/advanced-security/more-information-about-enforcement-policy.md b/data/reusables/advanced-security/more-information-about-enforcement-policy.md index f0446c8a7358..e4365739557e 100644 --- a/data/reusables/advanced-security/more-information-about-enforcement-policy.md +++ b/data/reusables/advanced-security/more-information-about-enforcement-policy.md @@ -1 +1 @@ -For more information, see "{% ifversion fpt %}[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise-account){% elsif ghes > 3.0 or ghae-next %}[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise](/admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise){% endif %}." +For more information, see "[Enforcing policies for {% data variables.product.prodname_advanced_security %} in your enterprise]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise)." \ No newline at end of file diff --git a/data/reusables/advanced-security/note-org-enable-uses-seats.md b/data/reusables/advanced-security/note-org-enable-uses-seats.md index f49fc2eae115..88f55191895a 100644 --- a/data/reusables/advanced-security/note-org-enable-uses-seats.md +++ b/data/reusables/advanced-security/note-org-enable-uses-seats.md @@ -1,6 +1,6 @@ -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} {% note %} -**Note:** If you enable {% data variables.product.prodname_GH_advanced_security %}, committers to these repositories will use seats on your {% data variables.product.prodname_GH_advanced_security %} license. This option is disabled if you have exceeded your license capacity. {% ifversion fpt %}For more information, see "[About billing for {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security)."{% endif %} +**Note:** If you enable {% data variables.product.prodname_GH_advanced_security %}, committers to these repositories will use seats on your {% data variables.product.prodname_GH_advanced_security %} license. This option is disabled if you have exceeded your license capacity. {% ifversion fpt or ghec %}For more information, see "[About billing for {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security)."{% endif %} {% endnote %} {% endif %} diff --git a/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md b/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md index 582e9150bd0c..dd113a9921a8 100644 --- a/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md +++ b/data/reusables/advanced-security/secret-scanning-add-custom-pattern-details.md @@ -4,4 +4,4 @@ 1. Provide a sample test string to make sure your configuration is matching the patterns you expect. ![Create a custom {% data variables.product.prodname_secret_scanning %} pattern form](/assets/images/help/repository/secret-scanning-create-custom-pattern.png) -1. When you are satisfied with your new custom pattern, click {% ifversion fpt or ghes > 3.2 or ghae-next %}**Create pattern**{% elsif ghes = 3.2 %}**Create custom pattern**{% endif %}. +1. When you are satisfied with your new custom pattern, click {% ifversion fpt or ghes > 3.2 or ghae-next or ghec %}**Create pattern**{% elsif ghes = 3.2 %}**Create custom pattern**{% endif %}. diff --git a/data/reusables/advanced-security/secret-scanning-new-custom-pattern.md b/data/reusables/advanced-security/secret-scanning-new-custom-pattern.md index 9239b557736e..a156ca01ef87 100644 --- a/data/reusables/advanced-security/secret-scanning-new-custom-pattern.md +++ b/data/reusables/advanced-security/secret-scanning-new-custom-pattern.md @@ -1 +1 @@ -1. Under "{% data variables.product.prodname_secret_scanning_caps %}", under "Custom patterns", click {% ifversion fpt or ghes > 3.2 or ghae-next %}**New pattern**{% elsif ghes = 3.2 %}**New custom pattern**{% endif %}. \ No newline at end of file +1. Under "{% data variables.product.prodname_secret_scanning_caps %}", under "Custom patterns", click {% ifversion fpt or ghes > 3.2 or ghae-next or ghec %}**New pattern**{% elsif ghes = 3.2 %}**New custom pattern**{% endif %}. \ No newline at end of file diff --git a/data/reusables/apps/deprecating_auth_with_query_parameters.md b/data/reusables/apps/deprecating_auth_with_query_parameters.md index e5c06ba6ee6a..80a1833994bc 100644 --- a/data/reusables/apps/deprecating_auth_with_query_parameters.md +++ b/data/reusables/apps/deprecating_auth_with_query_parameters.md @@ -1,7 +1,7 @@ -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} {% warning %} -**Deprecation Notice:** {% data variables.product.prodname_dotcom %} will discontinue authentication to the API using query parameters. Authenticating to the API should be done with [HTTP basic authentication](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens).{% ifversion fpt %} Using query parameters to authenticate to the API will no longer work on May 5, 2021. {% endif %} For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-10-deprecating-auth-through-query-param/). +**Deprecation Notice:** {% data variables.product.prodname_dotcom %} will discontinue authentication to the API using query parameters. Authenticating to the API should be done with [HTTP basic authentication](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens).{% ifversion fpt or ghec %} Using query parameters to authenticate to the API will no longer work on May 5, 2021. {% endif %} For more information, including scheduled brownouts, see the [blog post](https://developer.github.com/changes/2020-02-10-deprecating-auth-through-query-param/). {% ifversion ghes or ghae %} Authentication to the API using query parameters while available is no longer supported due to security concerns. Instead we recommend integrators move their access token, `client_id`, or `client_secret` in the header. {% data variables.product.prodname_dotcom %} will announce the removal of authentication by query parameters with advanced notice. {% endif %} diff --git a/data/reusables/apps/general-apps-restrictions.md b/data/reusables/apps/general-apps-restrictions.md index 3f941b4c5ee7..61f888476e25 100644 --- a/data/reusables/apps/general-apps-restrictions.md +++ b/data/reusables/apps/general-apps-restrictions.md @@ -1 +1 @@ -{% ifversion fpt %}If you are using your app with GitHub Actions and want to modify workflow files, you must authenticate on behalf of the user with an OAuth token that includes the `workflow` scope. The user must have admin or write permission to the repository that contains the workflow file. For more information, see "[Understanding scopes for OAuth apps](/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/#available-scopes)."{% endif %} +{% ifversion fpt or ghec %}If you are using your app with GitHub Actions and want to modify workflow files, you must authenticate on behalf of the user with an OAuth token that includes the `workflow` scope. The user must have admin or write permission to the repository that contains the workflow file. For more information, see "[Understanding scopes for OAuth apps](/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/#available-scopes)."{% endif %} diff --git a/data/reusables/apps/maximum-github-apps-allowed.md b/data/reusables/apps/maximum-github-apps-allowed.md index 7496af9de8a6..351f69754ceb 100644 --- a/data/reusables/apps/maximum-github-apps-allowed.md +++ b/data/reusables/apps/maximum-github-apps-allowed.md @@ -1 +1 @@ -{% ifversion fpt %}A user or organization can own up to 100 GitHub Apps.{% endif %} +{% ifversion fpt or ghec %}A user or organization can own up to 100 GitHub Apps.{% endif %} diff --git a/data/reusables/apps/maximum-oauth-apps-allowed.md b/data/reusables/apps/maximum-oauth-apps-allowed.md index c65c0607b294..dd573ce6f5e0 100644 --- a/data/reusables/apps/maximum-oauth-apps-allowed.md +++ b/data/reusables/apps/maximum-oauth-apps-allowed.md @@ -1 +1 @@ -{% ifversion fpt %}A user or organization can own up to 100 OAuth apps.{% endif %} +{% ifversion fpt or ghec %}A user or organization can own up to 100 OAuth apps.{% endif %} diff --git a/data/reusables/apps/oauth-apps-restrictions.md b/data/reusables/apps/oauth-apps-restrictions.md index cb487f14632a..73f42159c016 100644 --- a/data/reusables/apps/oauth-apps-restrictions.md +++ b/data/reusables/apps/oauth-apps-restrictions.md @@ -1 +1 @@ -{% ifversion fpt %}If you are using your OAuth App with GitHub Actions and want to modify workflow files, your OAuth token must have the `workflow` scope and the user must have owner or write permission to the repository that contains the workflow file. For more information, see "[Understanding scopes for OAuth apps](/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/#available-scopes)."{% endif %} +{% ifversion fpt or ghec %}If you are using your OAuth App with GitHub Actions and want to modify workflow files, your OAuth token must have the `workflow` scope and the user must have owner or write permission to the repository that contains the workflow file. For more information, see "[Understanding scopes for OAuth apps](/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/#available-scopes)."{% endif %} diff --git a/data/reusables/branches/set-default-branch.md b/data/reusables/branches/set-default-branch.md index af15ed12f22e..afd4e090717d 100644 --- a/data/reusables/branches/set-default-branch.md +++ b/data/reusables/branches/set-default-branch.md @@ -1 +1 @@ -You can set the name of the default branch for new repositories. For more information, see "[Managing the default branch for your repositories](/github/setting-up-and-managing-your-github-user-account/managing-the-default-branch-name-for-your-repositories)," "[Managing the default branch name for repositories in your organization](/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization)," and {% ifversion fpt %}"[Enforcing repository management policies in your enterprise account](/github/setting-up-and-managing-your-enterprise/enforcing-repository-management-policies-in-your-enterprise-account#enforcing-a-policy-on-the-default-branch-name)."{% else %}"[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-on-the-default-branch-name)."{% endif %} +You can set the name of the default branch for new repositories. For more information, see "[Managing the default branch for your repositories](/github/setting-up-and-managing-your-github-user-account/managing-the-default-branch-name-for-your-repositories)," "[Managing the default branch name for repositories in your organization](/organizations/managing-organization-settings/managing-the-default-branch-name-for-repositories-in-your-organization)," and "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-on-the-default-branch-name)." diff --git a/data/reusables/cli/about-cli.md b/data/reusables/cli/about-cli.md index 2d8458d00970..cde5245630ff 100644 --- a/data/reusables/cli/about-cli.md +++ b/data/reusables/cli/about-cli.md @@ -1 +1 @@ -{% data variables.product.prodname_cli %} is an open source tool for using {% data variables.product.product_name %} from your computer's command line. When you're working from the command line, you can use the {% data variables.product.prodname_cli %} to save time and avoid switching context. +{% data variables.product.prodname_cli %} is an open source tool for using {% data variables.product.prodname_dotcom %} from your computer's command line. When you're working from the command line, you can use the {% data variables.product.prodname_cli %} to save time and avoid switching context. diff --git a/data/reusables/cli/filter-issues-and-pull-requests-tip.md b/data/reusables/cli/filter-issues-and-pull-requests-tip.md index cde766c7a776..98812b7152cd 100644 --- a/data/reusables/cli/filter-issues-and-pull-requests-tip.md +++ b/data/reusables/cli/filter-issues-and-pull-requests-tip.md @@ -1,4 +1,4 @@ -{% ifversion fpt or ghes or ghae %} +{% ifversion fpt or ghes or ghae or ghec %} {% tip %} **Tip**: You can also filter issues or pull requests using the {% data variables.product.prodname_cli %}. For more information, see "[`gh issue list`](https://cli.github.com/manual/gh_issue_list)" or "[`gh pr list`](https://cli.github.com/manual/gh_pr_list)" in the {% data variables.product.prodname_cli %} documentation. diff --git a/data/reusables/code-scanning/beta-codeql-packs-cli.md b/data/reusables/code-scanning/beta-codeql-packs-cli.md index a3f012cc4dff..dff81e14994c 100644 --- a/data/reusables/code-scanning/beta-codeql-packs-cli.md +++ b/data/reusables/code-scanning/beta-codeql-packs-cli.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} diff --git a/data/reusables/code-scanning/click-alert-in-list.md b/data/reusables/code-scanning/click-alert-in-list.md index 30566a1e4aa9..ddfd6f9f3773 100644 --- a/data/reusables/code-scanning/click-alert-in-list.md +++ b/data/reusables/code-scanning/click-alert-in-list.md @@ -1,5 +1,5 @@ 1. Under "Code scanning," click the alert you'd like to explore. -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} ![List of alerts from {% data variables.product.prodname_code_scanning %}](/assets/images/help/repository/code-scanning-click-alert.png) {% else %} ![List of alerts from {% data variables.product.prodname_code_scanning %}](/assets/images/enterprise/3.1/help/repository/code-scanning-click-alert.png) diff --git a/data/reusables/code-scanning/licensing-note.md b/data/reusables/code-scanning/licensing-note.md index 2a73ed3b8ad7..22e63b326fee 100644 --- a/data/reusables/code-scanning/licensing-note.md +++ b/data/reusables/code-scanning/licensing-note.md @@ -1,6 +1,6 @@ {% note %} -**Note:** {% ifversion fpt %} +**Note:** {% ifversion fpt or ghec %} The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories that are maintained on {% data variables.product.prodname_dotcom_the_website %}, and available to use on private repositories that are owned by customers with an {% data variables.product.prodname_advanced_security %} license. For information, see "[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} Terms and Conditions](https://securitylab.github.com/tools/codeql/license)" and "[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)." {%- else %}The {% data variables.product.prodname_codeql_cli %} is available to customers with an {% data variables.product.prodname_advanced_security %} license. {% endif %} diff --git a/data/reusables/code-scanning/not-available.md b/data/reusables/code-scanning/not-available.md index eca9004f6898..c55963cc3122 100644 --- a/data/reusables/code-scanning/not-available.md +++ b/data/reusables/code-scanning/not-available.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** For private and internal repositories, {% data variables.product.prodname_code_scanning %} is available when {% data variables.product.prodname_GH_advanced_security %} features are enabled for the repository. If you see the error `Advanced Security must be enabled for this repository to use code scanning`, check that {% data variables.product.prodname_GH_advanced_security %} is enabled. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)." diff --git a/data/reusables/code-scanning/run-additional-queries.md b/data/reusables/code-scanning/run-additional-queries.md index 16acc6239631..f5e883b1c393 100644 --- a/data/reusables/code-scanning/run-additional-queries.md +++ b/data/reusables/code-scanning/run-additional-queries.md @@ -15,4 +15,4 @@ Any additional queries you want to run must belong to a {% data variables.produc You can specify a single _.ql_ file, a directory containing multiple _.ql_ files, a _.qls_ query suite definition file, or any combination. For more information about query suite definitions, see "[Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/)." {% endif %} -{% ifversion fpt %}We don't recommend referencing query suites directly from the `github/codeql` repository, like `github/codeql/cpp/ql/src@main`. Such queries may not be compiled with the same version of {% data variables.product.prodname_codeql %} as used for your other queries, which could lead to errors during analysis.{% endif %} +{% ifversion fpt or ghec %}We don't recommend referencing query suites directly from the `github/codeql` repository, like `github/codeql/cpp/ql/src@main`. Such queries may not be compiled with the same version of {% data variables.product.prodname_codeql %} as used for your other queries, which could lead to errors during analysis.{% endif %} diff --git a/data/reusables/code-scanning/upload-sarif-alert-limit.md b/data/reusables/code-scanning/upload-sarif-alert-limit.md index a1394e09c3a2..b74445809a02 100644 --- a/data/reusables/code-scanning/upload-sarif-alert-limit.md +++ b/data/reusables/code-scanning/upload-sarif-alert-limit.md @@ -1,7 +1,7 @@ {% note %} **Notes:** -- SARIF upload supports a maximum of {% ifversion ghae-next or fpt or ghes > 3.0 %}5000{% else %}1000{% endif %} results per upload. Any results over this limit are ignored. If a tool generates too many results, you should update the configuration to focus on results for the most important rules or queries. +- SARIF upload supports a maximum of {% ifversion ghae-next or fpt or ghes > 3.0 or ghec %}5000{% else %}1000{% endif %} results per upload. Any results over this limit are ignored. If a tool generates too many results, you should update the configuration to focus on results for the most important rules or queries. - For each upload, SARIF upload supports a maximum size of 10 MB for the `gzip`-compressed SARIF file. Any uploads over this limit will be rejected. If your SARIF file is too large because it contains too many results, you should update the configuration to focus on results for the most important rules or queries. diff --git a/data/reusables/code-scanning/upload-sarif-ghas.md b/data/reusables/code-scanning/upload-sarif-ghas.md index b129b0f683b1..76d96c01aaaf 100644 --- a/data/reusables/code-scanning/upload-sarif-ghas.md +++ b/data/reusables/code-scanning/upload-sarif-ghas.md @@ -1,8 +1,8 @@ -{% ifversion fpt or ghes > 2.22 or ghae %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} {% note %} -**Note:** Uploading SARIF data to display as {% data variables.product.prodname_code_scanning %} results in {% data variables.product.product_name %} is supported for organization-owned repositories with {% data variables.product.prodname_GH_advanced_security %} enabled{% ifversion fpt %}, and public repositories on {% data variables.product.prodname_dotcom_the_website %}{% endif %}. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)." +**Note:** Uploading SARIF data to display as {% data variables.product.prodname_code_scanning %} results in {% data variables.product.product_name %} is supported for organization-owned repositories with {% data variables.product.prodname_GH_advanced_security %} enabled{% ifversion fpt or ghec %}, and public repositories on {% data variables.product.prodname_dotcom_the_website %}{% endif %}. For more information, see "[Managing security and analysis settings for your repository](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository)." {% endnote %} diff --git a/data/reusables/code-scanning/use-codeql-runner-not-cli.md b/data/reusables/code-scanning/use-codeql-runner-not-cli.md index d8ea95d68b04..729d524fd950 100644 --- a/data/reusables/code-scanning/use-codeql-runner-not-cli.md +++ b/data/reusables/code-scanning/use-codeql-runner-not-cli.md @@ -1,4 +1,4 @@ -{% ifversion fpt or ghes > 3.1 or ghae-next %} +{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} If the {% data variables.product.prodname_codeql_cli %} is unsuitable for use in your CI system, the {% data variables.product.prodname_codeql_runner %} is available as an alternative. Typically, this is needed if the CI system would need to orchestrate compiler invocations as well as running {% data variables.product.prodname_codeql %} analysis. For more information, see "[Running {% data variables.product.prodname_codeql_runner %} in your CI system](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/running-codeql-runner-in-your-ci-system)." {% endif %} diff --git a/data/reusables/code-scanning/what-is-codeql-cli.md b/data/reusables/code-scanning/what-is-codeql-cli.md index d477b556de21..3c8e01fa71e5 100644 --- a/data/reusables/code-scanning/what-is-codeql-cli.md +++ b/data/reusables/code-scanning/what-is-codeql-cli.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} The {% data variables.product.prodname_codeql_cli %} is a standalone product that you can use to analyze code. Its main purpose is to generate a database representation of a codebase, a {% data variables.product.prodname_codeql %} database. Once the database is ready, you can query it interactively, or run a suite of queries to generate a set of results in SARIF format and upload the results to {% data variables.product.product_location %}. {% endif %} diff --git a/data/reusables/codespaces/your-codespaces-procedure-step.md b/data/reusables/codespaces/your-codespaces-procedure-step.md index 98849a777973..1626d8d7a0a9 100644 --- a/data/reusables/codespaces/your-codespaces-procedure-step.md +++ b/data/reusables/codespaces/your-codespaces-procedure-step.md @@ -1,3 +1,3 @@ -1. In the top right corner of {% data variables.product.product_name %}, click your profile photo, then click **Your codespaces**. +1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Your codespaces**. !['Your codespaces' menu option](/assets/images/help/codespaces/your-codespaces-option.png) diff --git a/data/reusables/command_line/provide-an-access-token.md b/data/reusables/command_line/provide-an-access-token.md index 57e4ce945bc4..eebb60fc1978 100644 --- a/data/reusables/command_line/provide-an-access-token.md +++ b/data/reusables/command_line/provide-an-access-token.md @@ -1 +1 @@ -{% ifversion fpt %}If you are accessing an organization that uses SAML SSO, you must also authorize your personal access token to access the organization before you authenticate. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)" and "[Authorizing a personal access token for use with SAML single sign-on](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)."{% endif %} +{% ifversion fpt or ghec %}If you are accessing an organization that uses SAML SSO, you must also authorize your personal access token to access the organization before you authenticate. For more information, see "[About authentication with SAML single sign-on](/github/authenticating-to-github/about-authentication-with-saml-single-sign-on)" and "[Authorizing a personal access token for use with SAML single sign-on](/github/authenticating-to-github/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)."{% endif %} diff --git a/data/reusables/dependabot/dependabot-tos.md b/data/reusables/dependabot/dependabot-tos.md index a72c36c5a119..5a89a6e49c6f 100644 --- a/data/reusables/dependabot/dependabot-tos.md +++ b/data/reusables/dependabot/dependabot-tos.md @@ -1 +1 @@ -{% data variables.product.prodname_dependabot %} and all related features are covered by [{% data variables.product.prodname_dotcom %}'s Terms of Service](/github/site-policy/github-terms-of-service). +{% data variables.product.prodname_dependabot %} and all related features are covered by [{% data variables.product.prodname_dotcom %}'s Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service). diff --git a/data/reusables/desktop/get-an-account.md b/data/reusables/desktop/get-an-account.md index 643cf349eba1..a31f76705e71 100644 --- a/data/reusables/desktop/get-an-account.md +++ b/data/reusables/desktop/get-an-account.md @@ -1,4 +1,4 @@ -you must already have a {% data variables.product.prodname_dotcom %} or {% data variables.product.prodname_enterprise %} account. +you must already have an account on {% data variables.product.product_location %}. -- For more information on creating a {% data variables.product.prodname_dotcom %} account, see "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/articles/signing-up-for-a-new-github-account/)". +- For more information on creating an account on {% data variables.product.product_location %} account, see "[Signing up for a new {% data variables.product.prodname_dotcom %} account](/articles/signing-up-for-a-new-github-account/)". - For a {% data variables.product.prodname_enterprise %} account, contact your {% data variables.product.prodname_enterprise %} site administrator. diff --git a/data/reusables/developer-site/pull_request_forked_repos_link.md b/data/reusables/developer-site/pull_request_forked_repos_link.md index b871adff699a..0683c31c8085 100644 --- a/data/reusables/developer-site/pull_request_forked_repos_link.md +++ b/data/reusables/developer-site/pull_request_forked_repos_link.md @@ -10,7 +10,7 @@ When you create a pull request from a forked repository to the base repository, Workflows don't run on forked repositories by default. You must enable GitHub Actions in the **Actions** tab of the forked repository. -{% ifversion fpt %} +{% ifversion fpt or ghec %} When a first-time contributor submits a pull request to a public repository, a maintainer with write access may need to approve running workflows on the pull request. For more information, see "[Approving workflow runs from public forks](/actions/managing-workflow-runs/approving-workflow-runs-from-public-forks)." {% endif %} diff --git a/data/reusables/dotcom_billing/view-all-subscriptions.md b/data/reusables/dotcom_billing/view-all-subscriptions.md index 94296ce64378..582598b93a09 100644 --- a/data/reusables/dotcom_billing/view-all-subscriptions.md +++ b/data/reusables/dotcom_billing/view-all-subscriptions.md @@ -1 +1 @@ -To view all the subscriptions for your {% data variables.product.product_name %} account, see "[Viewing your subscriptions and billing date](/articles/viewing-your-subscriptions-and-billing-date)." +To view all the subscriptions for your account on {% data variables.product.product_location %}, see "[Viewing your subscriptions and billing date](/articles/viewing-your-subscriptions-and-billing-date)." diff --git a/data/reusables/enterprise-accounts/about-enterprise-accounts.md b/data/reusables/enterprise-accounts/about-enterprise-accounts.md deleted file mode 100644 index 21d7e91b705c..000000000000 --- a/data/reusables/enterprise-accounts/about-enterprise-accounts.md +++ /dev/null @@ -1,95 +0,0 @@ -## About enterprise accounts on {% ifversion fpt %}{% data variables.product.prodname_ghe_cloud %}{% else %}{% data variables.product.product_name %}{% endif %} - -{% ifversion fpt %} - -Your enterprise account on {% data variables.product.prodname_dotcom_the_website %} allows you to manage multiple organizations. Your enterprise account must have a handle, like an organization or personal account on {% data variables.product.prodname_dotcom %}. - -{% elsif ghes or ghae %} - -The enterprise account on {% ifversion ghes %}{% data variables.product.product_location_enterprise %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} allows you to manage the organizations{% ifversion ghes %} on{% elsif ghae %} owned by{% endif %} your {% ifversion ghes %}{% data variables.product.prodname_ghe_server %} instance{% elsif ghae %}enterprise{% endif %}. - -{% endif %} - -Organizations are shared accounts where enterprise members can collaborate across many projects at once. Organization owners can manage access to the organization's data and projects with sophisticated security and administrative features. For more information, see {% ifversion fpt %}"[About organizations](/organizations/collaborating-with-groups-in-organizations/about-organizations)."{% elsif ghes or ghae %}"[About organizations](/organizations/collaborating-with-groups-in-organizations/about-organizations)" and "[Managing users, organizations, and repositories](/admin/user-management)."{% endif %} - -{% ifversion fpt %} - -Enterprise owners can create organizations and link the organizations to the enterprise. Alternatively, you can invite an existing organization to join your enterprise. After you add organizations to your enterprise account, you can manage and enforce policies for the organizations. Specific enforcement options vary by setting; generally, you can choose to enforce a single policy for every organization in your enterprise account or allow owners to set policy on the organization level. For more information, see "[Setting policies for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account)." - -{% elsif ghes or ghae %} - -For more information about the management of policies for your enterprise account, see "[Setting policies for your enterprise](/admin/policies)." - -{% endif %} - -## About administration of your enterprise account - -{% ifversion ghes or ghae %} - -From your enterprise account on {% ifversion ghae %}{% data variables.product.product_name %}{% elsif ghes %}a {% data variables.product.prodname_ghe_server %} instance{% endif %}, administrators can view enterprise membership and manage the following for the {% ifversion ghes %}{% data variables.product.prodname_ghe_server %} instance{% elsif ghae %}enterprise on {% data variables.product.prodname_ghe_managed %}{% endif %}. - -{% ifversion ghes %} -- License usage{% endif %} -- Security ({% ifversion ghae %}single sign-on, IP allow lists, {% endif %}SSH certificate authorities, two-factor authentication) -- Enterprise policies for organizations owned by the enterprise account - -{% endif %} - -{% ifversion ghes %} - -### About administration of your enterprise account on {% data variables.product.prodname_ghe_cloud %} - -{% endif %} - -{% ifversion fpt or ghes %}When you try or purchase {% data variables.product.prodname_enterprise %}, you can{% ifversion ghes %} also{% endif %} create an enterprise account for {% data variables.product.prodname_ghe_cloud %} on {% data variables.product.prodname_dotcom_the_website %}. Administrators for the enterprise account on {% data variables.product.prodname_dotcom_the_website %} can view membership and manage the following for the enterprise account{% ifversion ghes %} on {% data variables.product.prodname_dotcom_the_website %}{% endif %}. - -- Billing and usage (services on {% data variables.product.prodname_dotcom_the_website %}, {% data variables.product.prodname_GH_advanced_security %}, user licenses) -- Security (single sign-on, IP allow lists, SSH certificate authorities, two-factor authentication) -- Enterprise policies for organizations owned by the enterprise account - -If you use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}, you can also manage the following for {% data variables.product.prodname_ghe_server %} from your enterprise account on {% data variables.product.prodname_dotcom_the_website %}. - -- Billing and usage for {% data variables.product.prodname_ghe_server %} instances -- Requests and support bundle sharing with {% data variables.contact.enterprise_support %} - -You can also connect the enterprise account on {% data variables.product.product_location_enterprise %} to your enterprise account on {% data variables.product.prodname_dotcom_the_website %} to see license usage details for your {% data variables.product.prodname_enterprise %} subscription from {% data variables.product.prodname_dotcom_the_website %}. For more information, see {% ifversion fpt %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} - -For more information about the differences between {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}, see "[{% data variables.product.prodname_dotcom %}'s products](/get-started/learning-about-github/githubs-products)." {% data reusables.enterprise-accounts.to-upgrade-or-get-started %} - -{% endif %} - -{% ifversion fpt %} - -## About {% data variables.product.prodname_emus %} - -{% data reusables.enterprise-accounts.emu-short-summary %} - -{% endif %} - -## About billing for your enterprise account - -The bill for your enterprise account includes the monthly cost for each member of your enterprise. The bill includes {% ifversion fpt %}any paid licenses in organizations outside of your enterprise account, subscriptions to apps in {% data variables.product.prodname_marketplace %}, {% endif %}{% ifversion fpt or ghae %}additional paid services for your enterprise{% ifversion fpt %} like data packs for {% data variables.large_files.product_name_long %},{% endif %} and{% endif %} usage for {% data variables.product.prodname_GH_advanced_security %}. - -{% ifversion fpt %} - -For more information about billing for your {% data variables.product.prodname_ghe_cloud %} subscription, see "[Viewing the subscription and usage for your enterprise account](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)" and "[About billing for your enterprise](/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise)." - -{% elsif ghes %} - -{% data reusables.enterprise-accounts.enterprise-accounts-billing %} - -For more information about billing for {% ifversion fpt %}{% data variables.product.prodname_ghe_cloud %}{% else %}{% data variables.product.product_name %}{% endif %}, see "[About billing for your enterprise](/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise)." - -{% endif %} - -{% ifversion fpt or ghes %} - -{% ifversion fpt %} - -{% data variables.product.prodname_enterprise %} offers two deployment options. In addition to {% data variables.product.prodname_ghe_cloud %}, you can use {% data variables.product.prodname_ghe_server %} to host development work for your enterprise in your data center or supported cloud provider. {% endif %}Enterprise owners on {% data variables.product.prodname_dotcom_the_website %} can use an enterprise account to manage payment and licensing for {% data variables.product.prodname_ghe_server %} instances. For more information, see "[{% data variables.product.company_short %}'s products](/get-started/learning-about-github/githubs-products#github-enterprise)" and "[Managing your license for {% data variables.product.prodname_enterprise %}](/billing/managing-your-license-for-github-enterprise)." - -{% endif %} - -## Further reading - -- "[Enterprise accounts](/graphql/guides/managing-enterprise-accounts)" in the GraphQL API documentation diff --git a/data/reusables/enterprise-accounts/access-enterprise.md b/data/reusables/enterprise-accounts/access-enterprise.md index edb29bda1d6a..030980ff7c42 100644 --- a/data/reusables/enterprise-accounts/access-enterprise.md +++ b/data/reusables/enterprise-accounts/access-enterprise.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}1. In the top-right corner of {% data variables.product.product_name %}, click your profile photo, then click **Your enterprises**. +{% ifversion ghec %}1. In the top-right corner of {% data variables.product.prodname_dotcom_the_website %}, click your profile photo, then click **Your enterprises**. !["Your enterprises" in drop-down menu for profile photo on {% data variables.product.product_name %}](/assets/images/help/enterprises/your-enterprises.png) 1. In the list of enterprises, click the enterprise you want to view. diff --git a/data/reusables/enterprise-accounts/actions-runners-tab.md b/data/reusables/enterprise-accounts/actions-runners-tab.md index b6dc023362c3..6c1f67a0566f 100644 --- a/data/reusables/enterprise-accounts/actions-runners-tab.md +++ b/data/reusables/enterprise-accounts/actions-runners-tab.md @@ -1 +1 @@ -1. Click the {% ifversion fpt or ghes > 3.1 or ghae-next %}**Runners**{% else %}**Self-hosted runners**{% endif %} tab. +1. Click the {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}**Runners**{% else %}**Self-hosted runners**{% endif %} tab. diff --git a/data/reusables/enterprise-accounts/approved-domains-beta-note.md b/data/reusables/enterprise-accounts/approved-domains-beta-note.md index 7bf0aceb5f10..ba930b521db1 100644 --- a/data/reusables/enterprise-accounts/approved-domains-beta-note.md +++ b/data/reusables/enterprise-accounts/approved-domains-beta-note.md @@ -1,4 +1,4 @@ -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} {% note %} diff --git a/data/reusables/enterprise-accounts/domains-about-approval.md b/data/reusables/enterprise-accounts/domains-about-approval.md deleted file mode 100644 index 34f8a64e8926..000000000000 --- a/data/reusables/enterprise-accounts/domains-about-approval.md +++ /dev/null @@ -1,11 +0,0 @@ -{% data reusables.enterprise-accounts.approved-domains-beta-note %} - -{% data reusables.enterprise-accounts.approved-domains-about %} - -After you approve domains for your enterprise account, you can restrict email notifications for activity within your enterprise account to users with verified email addresses within verified or approved domains. {% ifversion fpt%}For more information, see "[Restricting email notifications for your enterprise account](/github/setting-up-and-managing-your-enterprise/restricting-email-notifications-for-your-enterprise-account)."{% endif %}{% ifversion ghes > 3.1 %}For more information, see "[Restricting email notifications for your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)."{% endif %} - -{% ifversion fpt%}To receive email notifications, the owner of the user account must verify the email address in on {% data variables.product.product_name %}. For more information, see "[Verifying your email address](/github/getting-started-with-github/verifying-your-email-address)."{% endif %} - -Organization owners cannot see the email address or which user account is associated with an email address from an approved domain. - -Organization owners can also approve additional domains for their organizations. For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)." diff --git a/data/reusables/enterprise-accounts/domains-about-verification.md b/data/reusables/enterprise-accounts/domains-about-verification.md deleted file mode 100644 index 330e94cbbff1..000000000000 --- a/data/reusables/enterprise-accounts/domains-about-verification.md +++ /dev/null @@ -1,11 +0,0 @@ -You can confirm that the websites and email addresses listed on the profiles of any organization owned by your enterprise account are controlled by your enterprise by verifying the domains. Verified domains for an enterprise account apply to every organization owned by the enterprise account. - -After you verify ownership of your enterprise account's domains, a "Verified" badge will display on the profile of each organization that has the domain listed on its profile. {% data reusables.organizations.verified-domains-details %} - -Organization owners will be able to verify the identity of organization members by viewing each member's email address within the verified domain. - -After you verify domains for your enterprise account, you can restrict email notifications to verified domains for all the organizations owned by your enterprise account. {% ifversion fpt%}For more information, see "[Restricting email notifications for your enterprise account](/github/setting-up-and-managing-your-enterprise/restricting-email-notifications-for-your-enterprise-account)."{% endif %}{% ifversion ghes > 3.1 %}For more information, see "[Restricting email notifications for your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)."{% endif %} - -Even if you don't restrict email notifications for the enterprise account, if an organization owner has restricted email notifications for the organization, organization members will be able to receive notifications at any domains verified or approved for the enterprise account, in addition to any domains verified or approved for the organization. For more information about restricting notifications for an organization, see "[Restricting email notifications for your organization](/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization)." - -Organization owners can also verify additional domains for their organizations. For more information, see "[Verifying or approving a domain for your organization](/organizations/managing-organization-settings/verifying-or-approving-a-domain-for-your-organization)." diff --git a/data/reusables/enterprise-accounts/domains-approving.md b/data/reusables/enterprise-accounts/domains-approving.md deleted file mode 100644 index 188594d654ac..000000000000 --- a/data/reusables/enterprise-accounts/domains-approving.md +++ /dev/null @@ -1,9 +0,0 @@ -{% data reusables.enterprise-accounts.approved-domains-beta-note %} - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.settings-tab %} -{% data reusables.enterprise-accounts.verified-domains-tab %} -{% data reusables.enterprise-accounts.add-a-domain %} -{% data reusables.organizations.add-domain %} -{% data reusables.organizations.domains-approve-it-instead %} -{% data reusables.organizations.domains-approve-domain %} diff --git a/data/reusables/enterprise-accounts/domains-removing.md b/data/reusables/enterprise-accounts/domains-removing.md deleted file mode 100644 index 464ac922bb59..000000000000 --- a/data/reusables/enterprise-accounts/domains-removing.md +++ /dev/null @@ -1,5 +0,0 @@ -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.settings-tab %} -{% data reusables.enterprise-accounts.verified-domains-tab %} -1. To the right of the domain to remove, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Delete**. - !["Delete" for a domain](/assets/images/help/organizations/domains-delete.png) diff --git a/data/reusables/enterprise-accounts/domains-verifying.md b/data/reusables/enterprise-accounts/domains-verifying.md deleted file mode 100644 index 8ead437331bb..000000000000 --- a/data/reusables/enterprise-accounts/domains-verifying.md +++ /dev/null @@ -1,16 +0,0 @@ -To verify your enterprise account's domain, you must have access to modify domain records with your domain hosting service. - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.settings-tab %} -{% data reusables.enterprise-accounts.verified-domains-tab %} -{% data reusables.enterprise-accounts.add-a-domain %} -{% data reusables.organizations.add-domain %} -{% data reusables.organizations.add-dns-txt-record %} -1. Wait for your DNS configuration to change, which may take up to 72 hours. You can confirm your DNS configuration has changed by running the `dig` command on the command line, replacing `ENTERPRISE-ACCOUNT` with the name of your enterprise account, and `example.com` with the domain you'd like to verify. You should see your new TXT record listed in the command output. - ```shell - dig _github-challenge-ENTERPRISE-ACCOUNT.example.com +nostats +nocomments +nocmd TXT - ``` -1. After confirming your TXT record is added to your DNS, follow steps one through four above to navigate to your enterprise account's approved and verified domains. -{% data reusables.enterprise-accounts.continue-verifying-domain %} -1. Optionally, after the "Verified" badge is visible on your organizations' profiles, delete the TXT entry from the DNS record at your domain hosting service. -![Verified badge](/assets/images/help/organizations/verified-badge.png) diff --git a/data/reusables/enterprise-accounts/email-restrictions-about.md b/data/reusables/enterprise-accounts/email-restrictions-about.md deleted file mode 100644 index b7c70bc7746f..000000000000 --- a/data/reusables/enterprise-accounts/email-restrictions-about.md +++ /dev/null @@ -1,15 +0,0 @@ -When you restrict email notifications, enterprise members can only use an email address in a verified or approved domain to receive email notifications about activity in organizations owned by your enterprise account. - -{% data reusables.enterprise-accounts.approved-domains-beta-note %} - -{% ifversion fpt %} -The domains can be inherited from the enterprise account or configured for the specific organization. For more information, see "[Verifying or approving a domain for your enterprise account](/github/setting-up-and-managing-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account)" and "[Restricting email notifications for your organization](/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization)." -{% endif %} - -{% ifversion ghes > 3.1 %} -The domains can be inherited from the enterprise account or configured for the specific organization. For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)" and "[Restricting email notifications for your organization](/organizations/keeping-your-organization-secure/restricting-email-notifications-for-your-organization)." -{% endif %} - -{% data reusables.notifications.email-restrictions-verification %} - -If email restrictions are enabled for an enterprise account, organization owners cannot disable email restrictions for any organization owned by the enterprise account. If changes occur that result in an organization having no verified or approved domains, either inherited from an enterprise account that owns the organization or for the specific organization, email restrictions will be disabled for the organization. diff --git a/data/reusables/enterprise-accounts/email-restrictions-restricting.md b/data/reusables/enterprise-accounts/email-restrictions-restricting.md deleted file mode 100644 index c2008eed9ed0..000000000000 --- a/data/reusables/enterprise-accounts/email-restrictions-restricting.md +++ /dev/null @@ -1,7 +0,0 @@ -Before you can restrict email notifications for your enterprise account, you must verify or approve at least one domain for the enterprise account. {% ifversion fpt %} For more information, see "[Verifying or approving a domain for your enterprise account](/github/setting-up-and-managing-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise-account)."{% endif %}{% ifversion ghes > 3.1 %} For more information, see "[Verifying or approving a domain for your enterprise](/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)."{% endif %} - -{% data reusables.enterprise-accounts.access-enterprise %} -{% data reusables.enterprise-accounts.settings-tab %} -{% data reusables.enterprise-accounts.verified-domains-tab %} -{% data reusables.enterprise-accounts.restrict-email-notifications-enterprise %} -1. Click **Save**. diff --git a/data/reusables/enterprise-accounts/emu-permission-follow.md b/data/reusables/enterprise-accounts/emu-permission-follow.md index f1667216346c..5fdf92693af4 100644 --- a/data/reusables/enterprise-accounts/emu-permission-follow.md +++ b/data/reusables/enterprise-accounts/emu-permission-follow.md @@ -1 +1 @@ -{% ifversion fpt %} Members of an {% data variables.product.prodname_emu_enterprise %} can only follow other members of their enterprise. {% endif %} \ No newline at end of file +{% ifversion ghec %} Members of an {% data variables.product.prodname_emu_enterprise %} can only follow other members of their enterprise. {% endif %} \ No newline at end of file diff --git a/data/reusables/enterprise-accounts/emu-permission-fork.md b/data/reusables/enterprise-accounts/emu-permission-fork.md index 411dfeed7b37..0b929d65fc19 100644 --- a/data/reusables/enterprise-accounts/emu-permission-fork.md +++ b/data/reusables/enterprise-accounts/emu-permission-fork.md @@ -1 +1 @@ -{% ifversion fpt %}Members of an {% data variables.product.prodname_emu_enterprise %} cannot fork repositories from outside of the enterprise or fork internal repositories.{% endif %} \ No newline at end of file +{% ifversion ghec %}Members of an {% data variables.product.prodname_emu_enterprise %} cannot fork repositories from outside of the enterprise or fork internal repositories.{% endif %} \ No newline at end of file diff --git a/data/reusables/enterprise-accounts/emu-permission-gist.md b/data/reusables/enterprise-accounts/emu-permission-gist.md index 3164ea3434dd..f1218f697a71 100644 --- a/data/reusables/enterprise-accounts/emu-permission-gist.md +++ b/data/reusables/enterprise-accounts/emu-permission-gist.md @@ -1 +1 @@ -{% ifversion fpt %}Members of an {% data variables.product.prodname_emu_enterprise %} cannot create gists and have read-only access to gists.{% endif %} \ No newline at end of file +{% ifversion ghec %}Members of an {% data variables.product.prodname_emu_enterprise %} cannot create gists and have read-only access to gists.{% endif %} \ No newline at end of file diff --git a/data/reusables/enterprise-accounts/emu-permission-interact.md b/data/reusables/enterprise-accounts/emu-permission-interact.md index 9bdeac19e891..cf784884e7c4 100644 --- a/data/reusables/enterprise-accounts/emu-permission-interact.md +++ b/data/reusables/enterprise-accounts/emu-permission-interact.md @@ -1 +1 @@ -{% ifversion fpt %} Members of an {% data variables.product.prodname_emu_enterprise %} can only interact with repositories within their enterprise. {% endif %} \ No newline at end of file +{% ifversion ghec %} Members of an {% data variables.product.prodname_emu_enterprise %} can only interact with repositories within their enterprise. {% endif %} \ No newline at end of file diff --git a/data/reusables/enterprise-accounts/emu-permission-propose.md b/data/reusables/enterprise-accounts/emu-permission-propose.md index 85fd4f66e3e1..7a796b726b13 100644 --- a/data/reusables/enterprise-accounts/emu-permission-propose.md +++ b/data/reusables/enterprise-accounts/emu-permission-propose.md @@ -1 +1 @@ -{% ifversion fpt %} Members of an {% data variables.product.prodname_emu_enterprise %} can only propose changes in repositories that are part of their enterprise. {% endif %} +{% ifversion ghec %} Members of an {% data variables.product.prodname_emu_enterprise %} can only propose changes in repositories that are part of their enterprise. {% endif %} diff --git a/data/reusables/enterprise-accounts/emu-permission-repo.md b/data/reusables/enterprise-accounts/emu-permission-repo.md index b4278362a52d..0802199c7038 100644 --- a/data/reusables/enterprise-accounts/emu-permission-repo.md +++ b/data/reusables/enterprise-accounts/emu-permission-repo.md @@ -1 +1 @@ -{% ifversion fpt %} Members of an {% data variables.product.prodname_emu_enterprise %} can only make changes in repositories that are part of their enterprise. {% endif %} +{% ifversion ghec %} Members of an {% data variables.product.prodname_emu_enterprise %} can only make changes in repositories that are part of their enterprise. {% endif %} diff --git a/data/reusables/enterprise-accounts/emu-saml-note.md b/data/reusables/enterprise-accounts/emu-saml-note.md index 2a5bdae038e9..7b8bfe876ccd 100644 --- a/data/reusables/enterprise-accounts/emu-saml-note.md +++ b/data/reusables/enterprise-accounts/emu-saml-note.md @@ -1,7 +1,7 @@ -{% ifversion fpt%} +{% ifversion ghec%} {% note %} -**Note**: If your enterprise uses {% data variables.product.prodname_emus %}, you must follow a different process to configure SAML single sign-on. For more information, see "[Configuring SAML single sign-on for Enterprise Managed Users](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users)." +**Note**: If your enterprise uses {% data variables.product.prodname_emus %}, you must follow a different process to configure SAML single sign-on. For more information, see "[Configuring SAML single sign-on for Enterprise Managed Users](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-saml-single-sign-on-for-enterprise-managed-users)." {% endnote %} {% endif %} \ No newline at end of file diff --git a/data/reusables/enterprise-accounts/emu-scim-note.md b/data/reusables/enterprise-accounts/emu-scim-note.md index 309ec9adfb02..361d0f482ece 100644 --- a/data/reusables/enterprise-accounts/emu-scim-note.md +++ b/data/reusables/enterprise-accounts/emu-scim-note.md @@ -1,7 +1,7 @@ -{% ifversion fpt%} +{% ifversion ghec%} {% note %} -**Note**: If your enterprise uses {% data variables.product.prodname_emus %}, you cannot use team synchronization and must instead configure SCIM to manage membership with your identity provider. For more information, see "[Configuring SCIM provisioning for Enterprise Managed Users](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users)." +**Note**: If your enterprise uses {% data variables.product.prodname_emus %}, you cannot use team synchronization and must instead configure SCIM to manage membership with your identity provider. For more information, see "[Configuring SCIM provisioning for Enterprise Managed Users](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users)." {% endnote %} {% endif %} \ No newline at end of file diff --git a/data/reusables/enterprise-accounts/emu-short-summary.md b/data/reusables/enterprise-accounts/emu-short-summary.md index 7e4f69fff977..68a27dfd8b44 100644 --- a/data/reusables/enterprise-accounts/emu-short-summary.md +++ b/data/reusables/enterprise-accounts/emu-short-summary.md @@ -1 +1 @@ -{% data variables.product.prodname_emus %} is a feature of {% data variables.product.prodname_ghe_cloud %} that provides even greater control over enterprise members and resources. With {% data variables.product.prodname_emus %}, all members are provisioned and managed through your identity provider (IdP) instead of users creating their own accounts on {% data variables.product.product_name %}. Team membership can be managed using groups on your IdP. {% data variables.product.prodname_managed_users_caps %} are restricted to their enterprise and are unable to push code, collaborate, or interact with users, repositories, and organizations outside of their enterprise. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." \ No newline at end of file +{% data variables.product.prodname_emus %} is a feature of {% data variables.product.prodname_ghe_cloud %} that provides even greater control over enterprise members and resources. With {% data variables.product.prodname_emus %}, all members are provisioned and managed through your identity provider (IdP) instead of users creating their own accounts on {% data variables.product.product_name %}. Team membership can be managed using groups on your IdP. {% data variables.product.prodname_managed_users_caps %} are restricted to their enterprise and are unable to push code, collaborate, or interact with users, repositories, and organizations outside of their enterprise. For more information, see "[About {% data variables.product.prodname_emus %}](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." \ No newline at end of file diff --git a/data/reusables/enterprise-accounts/enterprise-administrators.md b/data/reusables/enterprise-accounts/enterprise-administrators.md index 779c4a133336..eb93500b8dfd 100644 --- a/data/reusables/enterprise-accounts/enterprise-administrators.md +++ b/data/reusables/enterprise-accounts/enterprise-administrators.md @@ -1 +1 @@ -{% ifversion fpt %}Currently, there are two administrative roles available in enterprises: enterprise owners, who can access and manage all settings across the enterprise, and billing managers, who can access and manage only the enterprise's billing settings. {% endif %}Enterprise owners can {% ifversion fpt %}also {% endif %} see all of the members and outside collaborators for every organization owned by the enterprise. +{% ifversion fpt or ghec %}Currently, there are two administrative roles available in enterprises: enterprise owners, who can access and manage all settings across the enterprise, and billing managers, who can access and manage only the enterprise's billing settings. {% endif %}Enterprise owners can {% ifversion fpt or ghec %}also {% endif %} see all of the members and outside collaborators for every organization owned by the enterprise. diff --git a/data/reusables/enterprise-accounts/invite-organization.md b/data/reusables/enterprise-accounts/invite-organization.md index 1d5c99c11ee0..f1a6baa3fa9c 100644 --- a/data/reusables/enterprise-accounts/invite-organization.md +++ b/data/reusables/enterprise-accounts/invite-organization.md @@ -1 +1 @@ -Enterprise account owners and administrators can invite existing organization accounts to join their enterprise. For more information, see "[Inviting an organization to join your enterprise account](/github/setting-up-and-managing-your-enterprise/managing-organizations-in-your-enterprise-account/adding-organizations-to-your-enterprise-account#inviting-an-organization-to-join-your-enterprise-account)" +Enterprise account owners and administrators can invite existing organization accounts to join their enterprise. For more information, see "[Inviting an organization to join your enterprise account](/enterprise-cloud@latest/admin/user-management/managing-organizations-in-your-enterprise/adding-organizations-to-your-enterprise#inviting-an-organization-to-join-your-enterprise-account)." diff --git a/data/reusables/enterprise-accounts/license-tab.md b/data/reusables/enterprise-accounts/license-tab.md index 19a6082621ba..00680aa24dd4 100644 --- a/data/reusables/enterprise-accounts/license-tab.md +++ b/data/reusables/enterprise-accounts/license-tab.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. In the left sidebar, click **Enterprise licensing**. !["Enterprise licensing" tab in the enterprise account settings sidebar](/assets/images/help/enterprises/enterprise-licensing-tab.png) diff --git a/data/reusables/enterprise-accounts/support-entitlements.md b/data/reusables/enterprise-accounts/support-entitlements.md index 592f8d62e32e..7073c8d8edba 100644 --- a/data/reusables/enterprise-accounts/support-entitlements.md +++ b/data/reusables/enterprise-accounts/support-entitlements.md @@ -1 +1 @@ -To open, view, and comment on support tickets associated with an enterprise account, you must have support entitlements for the account. Enterprise owners and billing managers automatically have a support entitlement, and enterprise owners can add support entitlements to enterprise members. For more information, see "[Managing support entitlements for your enterprise](/github/setting-up-and-managing-your-enterprise/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise)." +To open, view, and comment on support tickets associated with an enterprise account, you must have support entitlements for the account. Enterprise owners and billing managers automatically have a support entitlement, and enterprise owners can add support entitlements to enterprise members. For more information, see "[Managing support entitlements for your enterprise](/admin/user-management/managing-users-in-your-enterprise/managing-support-entitlements-for-your-enterprise)." diff --git a/data/reusables/enterprise-accounts/team-sync-override.md b/data/reusables/enterprise-accounts/team-sync-override.md index a39283eed042..ea5c9196b46e 100644 --- a/data/reusables/enterprise-accounts/team-sync-override.md +++ b/data/reusables/enterprise-accounts/team-sync-override.md @@ -1 +1,3 @@ -If your organization is owned by an enterprise account, enabling team synchronization or SCIM provisioning for the enterprise account will override your organization-level team synchronization settings. For more information, see "[Managing team synchronization for organizations in your enterprise account](/github/setting-up-and-managing-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise-account)" and "[Configuring SCIM provisioning for Enterprise Managed Users](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users)." \ No newline at end of file +{% ifversion ghec %} +If your organization is owned by an enterprise account, enabling team synchronization or SCIM provisioning for the enterprise account will override your organization-level team synchronization settings. For more information, see "[Managing team synchronization for organizations in your enterprise account](/admin/authentication/managing-identity-and-access-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)" and "[Configuring SCIM provisioning for Enterprise Managed Users](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/configuring-scim-provisioning-for-enterprise-managed-users)." +{% endif %} \ No newline at end of file diff --git a/data/reusables/enterprise-licensing/you-can-sync-for-a-combined-view.md b/data/reusables/enterprise-licensing/you-can-sync-for-a-combined-view.md index 662c5f90b857..70d7a78cb2a1 100644 --- a/data/reusables/enterprise-licensing/you-can-sync-for-a-combined-view.md +++ b/data/reusables/enterprise-licensing/you-can-sync-for-a-combined-view.md @@ -1 +1 @@ -If you use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %} and sync license usage between the products, you can view license usage for both on {% data variables.product.prodname_dotcom_the_website %}. For more information, see {% ifversion fpt %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} +If you use both {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %} and sync license usage between the products, you can view license usage for both on {% data variables.product.prodname_dotcom_the_website %}. For more information, see {% ifversion fpt or ghec %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/enterprise-server/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)" in the {% data variables.product.prodname_ghe_server %} documentation.{% elsif ghes %}"[Syncing license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)."{% endif %} diff --git a/data/reusables/enterprise/about-deployment-methods.md b/data/reusables/enterprise/about-deployment-methods.md index 7b172e17c96c..86d661594f6a 100644 --- a/data/reusables/enterprise/about-deployment-methods.md +++ b/data/reusables/enterprise/about-deployment-methods.md @@ -1 +1 @@ -{% data variables.product.prodname_enterprise %} offers two deployment options. {% ifversion fpt %}In addition to {% data variables.product.prodname_ghe_cloud %}, you can use {% data variables.product.prodname_ghe_server %} to host development work for your enterprise in your data center or a supported cloud.{% elsif ghes %}In addition to {% data variables.product.product_name %}, you can use {% data variables.product.prodname_ghe_cloud %} to host development work for your enterprise on {% data variables.product.prodname_dotcom_the_website %}.{% endif %} For more information, see "[{% data variables.product.company_short %}'s products](/get-started/learning-about-github/githubs-products#github-enterprise)." +{% data variables.product.prodname_enterprise %} offers two deployment options. {% ifversion fpt or ghec %}In addition to {% data variables.product.prodname_ghe_cloud %}, you can use {% data variables.product.prodname_ghe_server %} to host development work for your enterprise in your data center or a supported cloud.{% elsif ghes %}In addition to {% data variables.product.product_name %}, you can use {% data variables.product.prodname_ghe_cloud %} to host development work for your enterprise on {% data variables.product.prodname_dotcom_the_website %}.{% endif %} For more information, see "[{% data variables.product.company_short %}'s products](/get-started/learning-about-github/githubs-products#github-enterprise)." diff --git a/data/reusables/enterprise_enterprise_support/submit-support-ticket-first-section.md b/data/reusables/enterprise_enterprise_support/submit-support-ticket-first-section.md index 1a778b40d342..2f9bb27178c6 100644 --- a/data/reusables/enterprise_enterprise_support/submit-support-ticket-first-section.md +++ b/data/reusables/enterprise_enterprise_support/submit-support-ticket-first-section.md @@ -1,4 +1,4 @@ -1. Under "Your email address", type the email address associated with your {% data variables.product.product_name %} account. +1. Under "Your email address", type the email address associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. ![Your email address field](/assets/images/enterprise/support/support-ticket-email-address-field.png) 1. Under "Subject", type a descriptive title for your issue. ![Subject field](/assets/images/enterprise/support/support-ticket-subject-field.png) @@ -7,13 +7,13 @@ - Steps to reproduce the issue - Any special circumstances surrounding the discovery of the issue (for example, the first occurrence or occurrence after a specific event, frequency of occurrence, business impact of the problem, and suggested urgency) - Exact wording of error messages -1. From the {% data variables.product.prodname_enterprise %} Product drop-down menu, select {% ifversion fpt %}{% data variables.product.prodname_ghe_cloud %}{% else %}{% data variables.product.prodname_ghe_server %}{% endif %}. +1. From the {% data variables.product.prodname_enterprise %} Product drop-down menu, select {% ifversion fpt or ghec %}{% data variables.product.prodname_ghe_cloud %}{% else %}{% data variables.product.prodname_ghe_server %}{% endif %}. ![Priority drop-down menu](/assets/images/enterprise/support/support-ticket-ghe-product.png) -1. From the "Priority" drop-down menu, select the appropriate urgency. For more information, see "[Assigning a priority to a support ticket]{% ifversion fpt %}(/articles/about-github-premium-support-for-github-enterprise-cloud#assigning-a-priority-to-a-support-ticket){% else %}(/enterprise/admin/guides/enterprise-support/about-github-enterprise-support#assigning-a-priority-to-a-support-ticket){% endif %}." +1. From the "Priority" drop-down menu, select the appropriate urgency. For more information, see "[Assigning a priority to a support ticket]{% ifversion fpt or ghec %}(/articles/about-github-premium-support-for-github-enterprise-cloud#assigning-a-priority-to-a-support-ticket){% else %}(/enterprise/admin/guides/enterprise-support/about-github-enterprise-support#assigning-a-priority-to-a-support-ticket){% endif %}." ![Priority drop-down menu](/assets/images/enterprise/support/support-ticket-priority.png) - - Choose **{% data variables.product.support_ticket_priority_urgent %}** to report {% ifversion fpt %}critical system failure{% else %}fatal system failures, outages impacting critical system operations, security incidents, and expired licenses{% endif %}. - - Choose **{% data variables.product.support_ticket_priority_high %}** to report issues impacting business operations, including {% ifversion fpt %}removing sensitive data (commits, issues, pull requests, uploaded attachments) from your own accounts and organization restorations{% else %}system performance issues{% endif %}, or to report critical bugs. - - Choose **{% data variables.product.support_ticket_priority_normal %}** to {% ifversion fpt %}request account recovery or spam unflagging, report user login issues{% else %}make technical requests like configuration changes and third-party integrations{% endif %}, and to report non-critical bugs. + - Choose **{% data variables.product.support_ticket_priority_urgent %}** to report {% ifversion fpt or ghec %}critical system failure{% else %}fatal system failures, outages impacting critical system operations, security incidents, and expired licenses{% endif %}. + - Choose **{% data variables.product.support_ticket_priority_high %}** to report issues impacting business operations, including {% ifversion fpt or ghec %}removing sensitive data (commits, issues, pull requests, uploaded attachments) from your own accounts and organization restorations{% else %}system performance issues{% endif %}, or to report critical bugs. + - Choose **{% data variables.product.support_ticket_priority_normal %}** to {% ifversion fpt or ghec %}request account recovery or spam unflagging, report user login issues{% else %}make technical requests like configuration changes and third-party integrations{% endif %}, and to report non-critical bugs. - Choose **{% data variables.product.support_ticket_priority_low %}** to ask general questions and submit requests for new features, purchases, training, or health checks.{% ifversion ghes %} 1. From the "{% data variables.product.prodname_enterprise %} Series" drop-down menu, select the version of {% data variables.product.prodname_ghe_server %} you're using. ![{% data variables.product.prodname_enterprise %} Series drop-down menu](/assets/images/enterprise/support/support-ticket-ghes-series.png) diff --git a/data/reusables/files/choose-commit-email.md b/data/reusables/files/choose-commit-email.md index 4ab9fb27437e..bdab65d53264 100644 --- a/data/reusables/files/choose-commit-email.md +++ b/data/reusables/files/choose-commit-email.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} -1. If you have more than one email address associated with your {% data variables.product.product_name %} account, click the email address drop-down menu and select the email address to use as the Git author email address. Only verified email addresses appear in this drop-down menu. If you enabled email address privacy, then `@users.noreply.github.com` is the default commit author email address. For more information, see "[Setting your commit email address](/articles/setting-your-commit-email-address)." +{% ifversion fpt or ghec %} +1. If you have more than one email address associated with your account on {% data variables.product.product_location %}, click the email address drop-down menu and select the email address to use as the Git author email address. Only verified email addresses appear in this drop-down menu. If you enabled email address privacy, then `@users.noreply.github.com` is the default commit author email address. For more information, see "[Setting your commit email address](/articles/setting-your-commit-email-address)." ![Choose commit email addresses](/assets/images/help/repository/choose-commit-email-address.png) {% endif %} diff --git a/data/reusables/files/commit-author-email-options.md b/data/reusables/files/commit-author-email-options.md index d3ff98afeb58..651353c8599b 100644 --- a/data/reusables/files/commit-author-email-options.md +++ b/data/reusables/files/commit-author-email-options.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you haven't enabled email address privacy, you can choose which verified email address to author changes with when you edit, delete, or create files or merge a pull request on {% data variables.product.product_name %}. If you enabled email address privacy, then the commit author email address cannot be changed and is `@users.noreply.github.com` by default. {% endif %} diff --git a/data/reusables/gated-features/actions.md b/data/reusables/gated-features/actions.md index 20abd3588bda..dacf7202b8cc 100644 --- a/data/reusables/gated-features/actions.md +++ b/data/reusables/gated-features/actions.md @@ -1 +1 @@ -{% data reusables.gated-features.actions-shared %} {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +{% data reusables.gated-features.actions-shared %} {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/auto-merge.md b/data/reusables/gated-features/auto-merge.md index 0956ec742eaa..60d0639ef5f9 100644 --- a/data/reusables/gated-features/auto-merge.md +++ b/data/reusables/gated-features/auto-merge.md @@ -1 +1 @@ -{% ifversion ghae %}Auto-merge for pull requests is available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}, {% else %}Auto-merge for pull requests is available {% endif %} in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +{% ifversion ghae %}Auto-merge for pull requests is available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}, {% else %}Auto-merge for pull requests is available {% endif %} in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/autolinks.md b/data/reusables/gated-features/autolinks.md index 3226765f6d93..bae7cad0cacf 100644 --- a/data/reusables/gated-features/autolinks.md +++ b/data/reusables/gated-features/autolinks.md @@ -1 +1 @@ -Autolinks are available in repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %},{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +Autolinks are available in repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %},{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/code-owners.md b/data/reusables/gated-features/code-owners.md index 0c59e50a7fb9..9ef9aa0c9719 100644 --- a/data/reusables/gated-features/code-owners.md +++ b/data/reusables/gated-features/code-owners.md @@ -1 +1 @@ -You can define code owners in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %},{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +You can define code owners in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %},{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/code-scanning.md b/data/reusables/gated-features/code-scanning.md index f5156da965b5..c5be34f9c64a 100644 --- a/data/reusables/gated-features/code-scanning.md +++ b/data/reusables/gated-features/code-scanning.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}{% data variables.product.prodname_code_scanning_capc %} is available for all public repositories, and for private repositories owned by organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled. +{% ifversion fpt or ghec %}{% data variables.product.prodname_code_scanning_capc %} is available for all public repositories, and for private repositories owned by organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled. {%- elsif ghes > 3.0 %}{% data variables.product.prodname_code_scanning_capc %} is available for organization-owned repositories where {% data variables.product.prodname_GH_advanced_security %} is enabled. {%- elsif ghae %} {% data variables.product.prodname_code_scanning_capc %} is available as part of {% data variables.product.prodname_GH_advanced_security %}, which is free during the beta release. diff --git a/data/reusables/gated-features/dependency-review.md b/data/reusables/gated-features/dependency-review.md index 8848c7a4e79c..e9c82919011d 100644 --- a/data/reusables/gated-features/dependency-review.md +++ b/data/reusables/gated-features/dependency-review.md @@ -1,3 +1,3 @@ -{% ifversion fpt %}Dependency review is available for all public repositories and for private repositories owned by organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled.{% endif %} +{% ifversion fpt or ghec %}Dependency review is available for all public repositories and for private repositories owned by organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled.{% endif %} {% ifversion ghes > 3.1 %}Dependency review is available for organization-owned repositories where {% data variables.product.prodname_GH_advanced_security %} is enabled. {% endif %} {% data reusables.advanced-security.more-info-ghas %} diff --git a/data/reusables/gated-features/draft-prs.md b/data/reusables/gated-features/draft-prs.md index 52452e1c53cd..9a8623e16824 100644 --- a/data/reusables/gated-features/draft-prs.md +++ b/data/reusables/gated-features/draft-prs.md @@ -1 +1 @@ -Draft pull requests are available in public repositories with {% data variables.product.prodname_free_team %} for organizations and legacy per-repository billing plans, and in public and private repositories with {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_server %} 2.17+,{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_cloud %}. {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +Draft pull requests are available in public repositories with {% data variables.product.prodname_free_team %} for organizations and legacy per-repository billing plans, and in public and private repositories with {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_server %} 2.17+,{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_cloud %}. {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/emus.md b/data/reusables/gated-features/emus.md index f9f25095ea44..ab8f83a8df56 100644 --- a/data/reusables/gated-features/emus.md +++ b/data/reusables/gated-features/emus.md @@ -1 +1 @@ -To manage users in your enterprise with your identity provider, your enterprise must be enabled for {% data variables.product.prodname_emus %}, which are available with {% data variables.product.prodname_ghe_cloud %}. For more information, see "[About {% data variables.product.prodname_emus %}](/github/setting-up-and-managing-your-enterprise/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." \ No newline at end of file +To manage users in your enterprise with your identity provider, your enterprise must be enabled for {% data variables.product.prodname_emus %}, which are available with {% data variables.product.prodname_ghe_cloud %}. For more information, see "[About {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." \ No newline at end of file diff --git a/data/reusables/gated-features/enterprise-accounts.md b/data/reusables/gated-features/enterprise-accounts.md index 3b0fe0b72109..9e32c5025ec0 100644 --- a/data/reusables/gated-features/enterprise-accounts.md +++ b/data/reusables/gated-features/enterprise-accounts.md @@ -1 +1 @@ -Enterprise accounts are available with {% data variables.product.prodname_ghe_cloud %}{% ifversion ghae %}, {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt %}For more information, see "[About enterprise accounts](/articles/about-enterprise-accounts)."{% endif %} +Enterprise accounts are available with {% data variables.product.prodname_ghe_cloud %}{% ifversion ghae %}, {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}. For more information, see "[About enterprise accounts]({% ifversion fpt or ghec %}/enterprise-cloud@latest{% endif %}/admin/overview/about-enterprise-accounts)." diff --git a/data/reusables/gated-features/environments.md b/data/reusables/gated-features/environments.md index 3a83d0f0b23c..a44f59487f3d 100644 --- a/data/reusables/gated-features/environments.md +++ b/data/reusables/gated-features/environments.md @@ -1 +1 @@ -Environments, environment protection rules, and environment secrets are available in **public** repositories for all products. For access to environments in **private** repositories, you must use {% data variables.product.prodname_enterprise %}.{% ifversion fpt %} {% data reusables.gated-features.more-info %}{% endif %} +Environments, environment protection rules, and environment secrets are available in **public** repositories for all products. For access to environments in **private** repositories, you must use {% data variables.product.prodname_enterprise %}.{% ifversion fpt or ghec %} {% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/ghas.md b/data/reusables/gated-features/ghas.md index a8814b11e14d..cf5d023b9f13 100644 --- a/data/reusables/gated-features/ghas.md +++ b/data/reusables/gated-features/ghas.md @@ -1 +1 @@ -{% data variables.product.prodname_GH_advanced_security %} is available for enterprise accounts on {% data variables.product.prodname_ghe_cloud %}{% ifversion ghae %}, {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}.{% ifversion fpt %} {% data variables.product.prodname_GH_advanced_security %} is also included in all public repositories on {% data variables.product.prodname_dotcom_the_website %}.{% endif %} For more information, see "[About GitHub's products](/github/getting-started-with-github/githubs-products)." +{% data variables.product.prodname_GH_advanced_security %} is available for enterprise accounts on {% data variables.product.prodname_ghe_cloud %}{% ifversion ghae %}, {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}.{% ifversion fpt or ghec %} {% data variables.product.prodname_GH_advanced_security %} is also included in all public repositories on {% data variables.product.prodname_dotcom_the_website %}.{% endif %} For more information, see "[About GitHub's products](/github/getting-started-with-github/githubs-products)." diff --git a/data/reusables/gated-features/more-info-org-products.md b/data/reusables/gated-features/more-info-org-products.md index fb5f436ae7de..02ed12148982 100644 --- a/data/reusables/gated-features/more-info-org-products.md +++ b/data/reusables/gated-features/more-info-org-products.md @@ -1 +1 @@ -{% ifversion fpt %}For more information, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)."{% endif %} +{% ifversion fpt or ghec %}For more information, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)."{% endif %} diff --git a/data/reusables/gated-features/more-info.md b/data/reusables/gated-features/more-info.md index fb5f436ae7de..02ed12148982 100644 --- a/data/reusables/gated-features/more-info.md +++ b/data/reusables/gated-features/more-info.md @@ -1 +1 @@ -{% ifversion fpt %}For more information, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)."{% endif %} +{% ifversion fpt or ghec %}For more information, see "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)."{% endif %} diff --git a/data/reusables/gated-features/packages.md b/data/reusables/gated-features/packages.md index f1ac972fd301..799b065d8c49 100644 --- a/data/reusables/gated-features/packages.md +++ b/data/reusables/gated-features/packages.md @@ -1,4 +1,4 @@ {% data variables.product.prodname_registry %} is available with {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, {% data variables.product.prodname_free_team %} for organizations, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %}, {% data variables.product.prodname_ghe_server %}, and {% data variables.product.prodname_ghe_managed %}. -{% ifversion fpt %} +{% ifversion fpt or ghec %}
{% data variables.product.prodname_registry %} is not available for private repositories owned by accounts using legacy per-repository plans. Also, accounts using legacy per-repository plans cannot access the {% data variables.product.prodname_container_registry %} since these accounts are billed by repository. {% data reusables.gated-features.more-info %} {% endif %} diff --git a/data/reusables/gated-features/pages.md b/data/reusables/gated-features/pages.md index f615da140f14..340f6ecaa6eb 100644 --- a/data/reusables/gated-features/pages.md +++ b/data/reusables/gated-features/pages.md @@ -1 +1 @@ -{% ifversion ghae %}{% data variables.product.prodname_pages %} is available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}. {% endif %}{% data variables.product.prodname_pages %} is available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +{% ifversion ghae %}{% data variables.product.prodname_pages %} is available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}. {% endif %}{% data variables.product.prodname_pages %} is available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/protected-branches.md b/data/reusables/gated-features/protected-branches.md index ebe68b94cdd9..6499c7496784 100644 --- a/data/reusables/gated-features/protected-branches.md +++ b/data/reusables/gated-features/protected-branches.md @@ -1 +1 @@ -{% ifversion ghae %}Protected branches are available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}, {% else%}Protected branches are available {% endif %}in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +{% ifversion ghae %}Protected branches are available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}, {% else%}Protected branches are available {% endif %}in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/gated-features/repository-insights.md b/data/reusables/gated-features/repository-insights.md index b8d4b5b1d2c3..294c79fa868a 100644 --- a/data/reusables/gated-features/repository-insights.md +++ b/data/reusables/gated-features/repository-insights.md @@ -1 +1 @@ -This repository insights graph is available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %},{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}.{% ifversion fpt %} For more information, see "[About repository graphs](/articles/about-repository-graphs)" and "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)."{% endif %} +This repository insights graph is available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %},{% ifversion ghae %} {% data variables.product.prodname_ghe_managed %},{% endif %} and {% data variables.product.prodname_ghe_server %}.{% ifversion fpt or ghec %} For more information, see "[About repository graphs](/articles/about-repository-graphs)" and "[{% data variables.product.prodname_dotcom %}'s products](/articles/github-s-products)."{% endif %} diff --git a/data/reusables/gated-features/secret-scanning.md b/data/reusables/gated-features/secret-scanning.md index 7b62f797be68..21e42e83c923 100644 --- a/data/reusables/gated-features/secret-scanning.md +++ b/data/reusables/gated-features/secret-scanning.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}{% data variables.product.prodname_secret_scanning_caps %} is available for all public repositories, and for private repositories owned by organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled. +{% ifversion fpt or ghec %}{% data variables.product.prodname_secret_scanning_caps %} is available for all public repositories, and for private repositories owned by organizations where {% data variables.product.prodname_GH_advanced_security %} is enabled. {%- elsif ghes > 3.0 or ghae-next %}{% data variables.product.prodname_secret_scanning_caps %} is available for organization-owned repositories where {% data variables.product.prodname_GH_advanced_security %} is enabled. {%- elsif ghae %} {% data variables.product.prodname_secret_scanning_caps %} is available as part of {% data variables.product.prodname_GH_advanced_security %}, which is free during the beta release. diff --git a/data/reusables/gated-features/team-synchronization.md b/data/reusables/gated-features/team-synchronization.md index 25f01dfb41c1..ac311e08ec00 100644 --- a/data/reusables/gated-features/team-synchronization.md +++ b/data/reusables/gated-features/team-synchronization.md @@ -1 +1 @@ -{% ifversion fpt %}Team synchronization is available for organizations and enterprise accounts using {% data variables.product.prodname_ghe_cloud %}. {% data reusables.gated-features.more-info-org-products %}{% elsif ghae %}Synchronization of teams with SCIM groups is available for organizations using {% data variables.product.prodname_ghe_managed %}. For more information, see "[GitHub's products](/github/getting-started-with-github/githubs-products)."{% endif %} +{% ifversion fpt or ghec %}Team synchronization is available for organizations and enterprise accounts using {% data variables.product.prodname_ghe_cloud %}. {% data reusables.gated-features.more-info-org-products %}{% elsif ghae %}Synchronization of teams with SCIM groups is available for organizations using {% data variables.product.prodname_ghe_managed %}. For more information, see "[GitHub's products](/github/getting-started-with-github/githubs-products)."{% endif %} diff --git a/data/reusables/gated-features/wikis.md b/data/reusables/gated-features/wikis.md index 683ac66d5163..8160b5f0c558 100644 --- a/data/reusables/gated-features/wikis.md +++ b/data/reusables/gated-features/wikis.md @@ -1 +1 @@ -{% ifversion ghae %}Wikis are available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}.{% endif %} Wikis are available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt %}{% data reusables.gated-features.more-info %}{% endif %} +{% ifversion ghae %}Wikis are available in internal and private repositories with {% data variables.product.prodname_ghe_managed %}.{% endif %} Wikis are available in public repositories with {% data variables.product.prodname_free_user %} and {% data variables.product.prodname_free_team %} for organizations, and in public and private repositories with {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, {% data variables.product.prodname_ghe_cloud %} and {% data variables.product.prodname_ghe_server %}. {% ifversion fpt or ghec %}{% data reusables.gated-features.more-info %}{% endif %} diff --git a/data/reusables/getting-started/api.md b/data/reusables/getting-started/api.md index 50c60b9738d9..b28ae4357b85 100644 --- a/data/reusables/getting-started/api.md +++ b/data/reusables/getting-started/api.md @@ -1 +1 @@ -There are two versions of the {% data variables.product.prodname_dotcom %} API: the REST API and the GraphQL API. You can use the {% data variables.product.prodname_dotcom %} APIs to automate common tasks, [back up your data](/github/creating-cloning-and-archiving-repositories/archiving-a-github-repository/backing-up-a-repository), or {% ifversion fpt %}[create integrations](/github/customizing-your-github-workflow/exploring-integrations/about-integrations){% else %}create integrations{% endif %} that extend {% data variables.product.product_name %}. For more information, see "[About {% data variables.product.prodname_dotcom %}'s APIs](/developers/overview/about-githubs-apis)." +There are two versions of the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API: the REST API and the GraphQL API. You can use the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs to automate common tasks, [back up your data](/github/creating-cloning-and-archiving-repositories/archiving-a-github-repository/backing-up-a-repository), or {% ifversion fpt or ghec %}[create integrations](/github/customizing-your-github-workflow/exploring-integrations/about-integrations){% else %}create integrations{% endif %} that extend {% data variables.product.product_name %}. For more information, see "[About {% data variables.product.prodname_dotcom %}'s APIs](/developers/overview/about-githubs-apis)." diff --git a/data/reusables/getting-started/contact-support.md b/data/reusables/getting-started/contact-support.md index 460c9cba2ade..12a4ca2349eb 100644 --- a/data/reusables/getting-started/contact-support.md +++ b/data/reusables/getting-started/contact-support.md @@ -1 +1 @@ -{% data variables.contact.github_support %} can help you troubleshoot issues you run into while using {% data variables.product.prodname_dotcom %}. For more information, see “[About {% data variables.contact.github_support %}](/github/working-with-github-support/about-github-support)." +{% data variables.contact.github_support %} can help you troubleshoot issues you run into while using {% data variables.product.prodname_dotcom %}. For more information, see "[About {% data variables.contact.github_support %}](/github/working-with-github-support/about-github-support)." diff --git a/data/reusables/getting-started/customizing-and-automating.md b/data/reusables/getting-started/customizing-and-automating.md index c384e99f9cd5..7d3689326206 100644 --- a/data/reusables/getting-started/customizing-and-automating.md +++ b/data/reusables/getting-started/customizing-and-automating.md @@ -1 +1 @@ -You can use tools from the {% data variables.product.prodname_marketplace %}, the {% data variables.product.product_name %} API, and existing {% data variables.product.product_name %} features to customize and automate your work. +You can use tools from the {% data variables.product.prodname_marketplace %}, the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API, and existing {% data variables.product.product_name %} features to customize and automate your work. diff --git a/data/reusables/getting-started/enterprise-advanced-security.md b/data/reusables/getting-started/enterprise-advanced-security.md index faffbe7d63d3..05d115d7dfae 100644 --- a/data/reusables/getting-started/enterprise-advanced-security.md +++ b/data/reusables/getting-started/enterprise-advanced-security.md @@ -1 +1 @@ -If you have a GitHub Advanced Security license for your enterprise account, you can enforce policies to manage {% data variables.product.prodname_dotcom %} Advanced Security features for organizations owned by an enterprise account. For more information, see "[Enforcing policies for Advanced Security in your enterprise account](/github/setting-up-and-managing-your-enterprise/setting-policies-for-organizations-in-your-enterprise-account/enforcing-policies-for-advanced-security-in-your-enterprise-account)." \ No newline at end of file +If you have a GitHub Advanced Security license for your enterprise account, you can enforce policies to manage {% data variables.product.prodname_dotcom %} Advanced Security features for organizations owned by an enterprise account. For more information, see "[Enforcing policies for Advanced Security in your enterprise account](/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-advanced-security-in-your-enterprise)." \ No newline at end of file diff --git a/data/reusables/getting-started/learning-lab-enterprise.md b/data/reusables/getting-started/learning-lab-enterprise.md index f4810ab1b9df..dfd8d34d5c1c 100644 --- a/data/reusables/getting-started/learning-lab-enterprise.md +++ b/data/reusables/getting-started/learning-lab-enterprise.md @@ -1,3 +1,3 @@ Your enterprise members can learn new skills by completing fun, realistic projects in their very own GitHub repository with [{% data variables.product.prodname_learning %}](https://lab.github.com/). Each course is a hands-on lesson created by the GitHub community and taught by the friendly Learning Lab bot. -For more information, see “[Git and {% data variables.product.prodname_dotcom %} learning resources](/github/getting-started-with-github/quickstart/git-and-github-learning-resources)." +For more information, see "[Git and {% data variables.product.prodname_dotcom %} learning resources](/github/getting-started-with-github/quickstart/git-and-github-learning-resources)." diff --git a/data/reusables/getting-started/learning-lab.md b/data/reusables/getting-started/learning-lab.md index 2a87845e26ed..569109de489c 100644 --- a/data/reusables/getting-started/learning-lab.md +++ b/data/reusables/getting-started/learning-lab.md @@ -1,3 +1,3 @@ You can learn new skills by completing fun, realistic projects in your very own GitHub repository with [{% data variables.product.prodname_learning %}](https://lab.github.com/). Each course is a hands-on lesson created by the GitHub community and taught by the friendly Learning Lab bot. -For more information, see “[Git and {% data variables.product.prodname_dotcom %} learning resources](/github/getting-started-with-github/quickstart/git-and-github-learning-resources)." +For more information, see "[Git and {% data variables.product.prodname_dotcom %} learning resources](/github/getting-started-with-github/quickstart/git-and-github-learning-resources)." diff --git a/data/reusables/getting-started/open-source-projects.md b/data/reusables/getting-started/open-source-projects.md index dd72b489deaf..ff2bb76ec28f 100644 --- a/data/reusables/getting-started/open-source-projects.md +++ b/data/reusables/getting-started/open-source-projects.md @@ -1,4 +1,4 @@ -Contributing to open source projects on {% data variables.product.prodname_dotcom %} can be a rewarding way to learn, teach, and build experience in just about any skill you can imagine. For more information, see “[How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)" in the Open Source Guides. +Contributing to open source projects on {% data variables.product.prodname_dotcom %} can be a rewarding way to learn, teach, and build experience in just about any skill you can imagine. For more information, see "[How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)" in the Open Source Guides. -You can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in [Explore](https://github.com/explore).{% ifversion fpt %} For more information, see “[Finding ways to contribute to open source on GitHub](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)." +You can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in [Explore](https://github.com/explore).{% ifversion fpt or ghec %} For more information, see "[Finding ways to contribute to open source on GitHub](/github/getting-started-with-github/finding-ways-to-contribute-to-open-source-on-github)." {% endif %} diff --git a/data/reusables/getting-started/packages.md b/data/reusables/getting-started/packages.md index aa74f71f1d11..e1b029ca65f5 100644 --- a/data/reusables/getting-started/packages.md +++ b/data/reusables/getting-started/packages.md @@ -1 +1 @@ -{% data variables.product.prodname_registry %} is a software package hosting service that allows you to host your software packages privately or publicly and use packages as dependencies in your projects. For more information, see “[Introduction to {% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages)." +{% data variables.product.prodname_registry %} is a software package hosting service that allows you to host your software packages privately or publicly and use packages as dependencies in your projects. For more information, see "[Introduction to {% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages)." diff --git a/data/reusables/getting-started/sponsors.md b/data/reusables/getting-started/sponsors.md index af9e9f863911..bcc8fe3645de 100644 --- a/data/reusables/getting-started/sponsors.md +++ b/data/reusables/getting-started/sponsors.md @@ -1 +1 @@ -{% data variables.product.prodname_sponsors %} allows you to make a monthly recurring payment to a developer or organization who designs, creates, or maintains open source projects you depend on. For more information, see “[About {% data variables.product.prodname_sponsors %}](/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." +{% data variables.product.prodname_sponsors %} allows you to make a monthly recurring payment to a developer or organization who designs, creates, or maintains open source projects you depend on. For more information, see "[About {% data variables.product.prodname_sponsors %}](/sponsors/getting-started-with-github-sponsors/about-github-sponsors)." diff --git a/data/reusables/github-actions/artifact-log-retention-statement.md b/data/reusables/github-actions/artifact-log-retention-statement.md index 57eaa29e2bad..0884f962b8e3 100644 --- a/data/reusables/github-actions/artifact-log-retention-statement.md +++ b/data/reusables/github-actions/artifact-log-retention-statement.md @@ -1,2 +1,2 @@ -{% ifversion fpt or ghes > 2.22 or ghae %} By default, {% data variables.product.product_name %} stores build logs and artifacts for 90 days, and this retention period can be customized. For more information, see "[Usage limits, billing, and administration](/actions/reference/usage-limits-billing-and-administration#artifact-and-log-retention-policy)".{% endif %} +{% ifversion fpt or ghes > 2.22 or ghae or ghec %} By default, {% data variables.product.product_name %} stores build logs and artifacts for 90 days, and this retention period can be customized. For more information, see "[Usage limits, billing, and administration](/actions/reference/usage-limits-billing-and-administration#artifact-and-log-retention-policy)".{% endif %} {% ifversion ghes = 2.22 %} {% data variables.product.product_name %} stores full build logs and artifacts for 90 days.{% endif %} diff --git a/data/reusables/github-actions/github-token-permissions.md b/data/reusables/github-actions/github-token-permissions.md index 98593b0cb65e..89d4630289e6 100644 --- a/data/reusables/github-actions/github-token-permissions.md +++ b/data/reusables/github-actions/github-token-permissions.md @@ -1 +1 @@ -The `GITHUB_TOKEN` secret is set to an access token for the repository each time a job in a workflow begins. {% ifversion fpt or ghes > 3.1 or ghae-next %}You should set the permissions for this access token in the workflow file to grant read access for the `contents` scope and write access for the `packages` scope. {% else %}It has read and write permissions for packages in the repository where the workflow runs. {% endif %}For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." +The `GITHUB_TOKEN` secret is set to an access token for the repository each time a job in a workflow begins. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}You should set the permissions for this access token in the workflow file to grant read access for the `contents` scope and write access for the `packages` scope. {% else %}It has read and write permissions for packages in the repository where the workflow runs. {% endif %}For more information, see "[Authenticating with the GITHUB_TOKEN](/actions/configuring-and-managing-workflows/authenticating-with-the-github_token)." diff --git a/data/reusables/github-actions/publish-to-packages-workflow-step.md b/data/reusables/github-actions/publish-to-packages-workflow-step.md index 75e13b33413c..abe399c328a9 100644 --- a/data/reusables/github-actions/publish-to-packages-workflow-step.md +++ b/data/reusables/github-actions/publish-to-packages-workflow-step.md @@ -1 +1 @@ -Runs the `mvn --batch-mode deploy` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the contents of the `GITHUB_TOKEN` secret. {% ifversion fpt or ghes > 3.1 or ghae-next %}The `permissions` key specifies the access granted to the `GITHUB_TOKEN`.{% endif %} +Runs the `mvn --batch-mode deploy` command to publish to {% data variables.product.prodname_registry %}. The `GITHUB_TOKEN` environment variable will be set with the contents of the `GITHUB_TOKEN` secret. {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}The `permissions` key specifies the access granted to the `GITHUB_TOKEN`.{% endif %} diff --git a/data/reusables/github-actions/self-hosted-runner-check-installation-success.md b/data/reusables/github-actions/self-hosted-runner-check-installation-success.md index a1ecf7a6424f..7dbccc072eae 100644 --- a/data/reusables/github-actions/self-hosted-runner-check-installation-success.md +++ b/data/reusables/github-actions/self-hosted-runner-check-installation-success.md @@ -1,7 +1,7 @@ ### Checking that your self-hosted runner was successfully added -After completing the steps to add a self-hosted runner, the runner and its status are now listed under {% ifversion fpt %}"Runners"{% elsif ghae or ghes %}"Self-hosted runners"{% endif %}. +After completing the steps to add a self-hosted runner, the runner and its status are now listed under {% ifversion fpt or ghec %}"Runners"{% elsif ghae or ghes %}"Self-hosted runners"{% endif %}. The self-hosted runner application must be active for the runner to accept jobs. When the runner application is connected to {% data variables.product.product_name %} and ready to receive jobs, you will see the following message on machine's terminal. diff --git a/data/reusables/github-actions/self-hosted-runner-configure-runner-group-access.md b/data/reusables/github-actions/self-hosted-runner-configure-runner-group-access.md index 2d68c99acedd..c27594de773b 100644 --- a/data/reusables/github-actions/self-hosted-runner-configure-runner-group-access.md +++ b/data/reusables/github-actions/self-hosted-runner-configure-runner-group-access.md @@ -1,4 +1,4 @@ -1. In the {% ifversion fpt or ghes > 3.1 or ghae-next %}"Runners"{% else %}"Self-hosted runners"{% endif %} section of the settings page, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} next to the runner group you'd like to configure, then click **Edit name and [organization|repository] access**. +1. In the {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}"Runners"{% else %}"Self-hosted runners"{% endif %} section of the settings page, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} next to the runner group you'd like to configure, then click **Edit name and [organization|repository] access**. ![Manage repository permissions](/assets/images/help/settings/actions-runner-manage-permissions.png) 1. Modify your policy options, or change the runner group name. diff --git a/data/reusables/github-actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md b/data/reusables/github-actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md index 8a858e4166d1..0e6f32fb4c98 100644 --- a/data/reusables/github-actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md +++ b/data/reusables/github-actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md @@ -1,10 +1,10 @@ 1. Navigate to where your self-hosted runner groups are located: * **In an organization or repository**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. - * {% ifversion fpt %}**If using an enterprise account**: navigate to your enterprise account by visiting `https://github.com/enterprises/ENTERPRISE-NAME`, replacing `ENTERPRISE-NAME` with your enterprise account's name.{% elsif ghes or ghae %}**If using an enterprise-level runner**: + * {% ifversion fpt or ghec %}**If using an enterprise account**: navigate to your enterprise account by visiting `https://github.com/enterprises/ENTERPRISE-NAME`, replacing `ENTERPRISE-NAME` with your enterprise account's name.{% elsif ghes or ghae %}**If using an enterprise-level runner**: 1. In the upper-right corner of any page, click {% octicon "rocket" aria-label="The rocket ship" %}. 1. In the left sidebar, click **Enterprise overview**. 1. {% endif %} In the enterprise sidebar, {% octicon "law" aria-label="The law icon" %} **Policies**. 1. Navigate to the "Runner groups" settings: - * **In an organization or repository**: Click **Actions** in the left sidebar{% ifversion fpt %}, then click **Runner groups** below it{% endif %}. - * {% ifversion fpt %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion fpt %}, then click the **Runners groups** tab{% endif %}. + * **In an organization or repository**: Click **Actions** in the left sidebar{% ifversion fpt or ghec %}, then click **Runner groups** below it{% endif %}. + * {% ifversion fpt or ghec %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion fpt or ghec %}, then click the **Runners groups** tab{% endif %}. diff --git a/data/reusables/github-actions/self-hosted-runner-list.md b/data/reusables/github-actions/self-hosted-runner-list.md index f6cb3732b190..09c0a3a8fd34 100644 --- a/data/reusables/github-actions/self-hosted-runner-list.md +++ b/data/reusables/github-actions/self-hosted-runner-list.md @@ -1 +1 @@ - 1. Locate the list of runners under {% ifversion fpt or ghes > 3.1 or ghae-next %}"Runners"{% else %}"Self-hosted runners"{% endif %}. + 1. Locate the list of runners under {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}"Runners"{% else %}"Self-hosted runners"{% endif %}. diff --git a/data/reusables/github-actions/self-hosted-runner-management-permissions-required.md b/data/reusables/github-actions/self-hosted-runner-management-permissions-required.md index 1beabd2f1ebc..b9cac89f7731 100644 --- a/data/reusables/github-actions/self-hosted-runner-management-permissions-required.md +++ b/data/reusables/github-actions/self-hosted-runner-management-permissions-required.md @@ -1,8 +1,8 @@ -A self-hosted runner can be located in either your repository, organization, or {% ifversion fpt %}enterprise account settings on {% data variables.product.prodname_dotcom %}{% elsif ghes or ghae %} enterprise settings on {% data variables.product.product_location %}{% endif %}. To manage a self-hosted runner, you must have the following permissions, depending on where the self-hosted runner was added: +A self-hosted runner can be located in either your repository, organization, or {% ifversion fpt or ghec %}enterprise account settings on {% data variables.product.prodname_dotcom %}{% elsif ghes or ghae %} enterprise settings on {% data variables.product.product_location %}{% endif %}. To manage a self-hosted runner, you must have the following permissions, depending on where the self-hosted runner was added: - **User repository**: You must be the repository owner. - **Organization**: You must be an organization owner. - **Organization repository**: You must be an organization owner, or have admin access to the repository. -{% ifversion fpt %} +{% ifversion fpt or ghec %} - **Enterprise account**: You must be an enterprise owner. {% elsif ghes or ghae %} - **Enterprise**: You must be a {% data variables.product.prodname_enterprise %} site administrator. diff --git a/data/reusables/github-actions/self-hosted-runner-navigate-to-repo-org-enterprise.md b/data/reusables/github-actions/self-hosted-runner-navigate-to-repo-org-enterprise.md index 8c454b5b03c3..e25e701ad943 100644 --- a/data/reusables/github-actions/self-hosted-runner-navigate-to-repo-org-enterprise.md +++ b/data/reusables/github-actions/self-hosted-runner-navigate-to-repo-org-enterprise.md @@ -1,10 +1,10 @@ 1. Navigate to where your self-hosted runner is registered: * **In an organization or repository**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. - * {% ifversion fpt %}**If using an enterprise account**: navigate to your enterprise account by visiting `https://github.com/enterprises/ENTERPRISE-NAME`, replacing `ENTERPRISE-NAME` with your enterprise account's name.{% elsif ghes or ghae %}**If using an enterprise-level runner**: + * {% ifversion fpt or ghec %}**If using an enterprise account**: navigate to your enterprise account by visiting `https://github.com/enterprises/ENTERPRISE-NAME`, replacing `ENTERPRISE-NAME` with your enterprise account's name.{% elsif ghes or ghae %}**If using an enterprise-level runner**: 1. In the upper-right corner of any page, click {% octicon "rocket" aria-label="The rocket ship" %}. 1. In the left sidebar, click **Enterprise overview**. 1. {% endif %} In the enterprise sidebar, {% octicon "law" aria-label="The law icon" %} **Policies**. 1. Navigate to the {% data variables.product.prodname_actions %} settings: - * **In an organization or repository**: Click **Actions** in the left sidebar{% ifversion fpt or ghes > 3.1 or ghae-next %}, then click **Runners**{% endif %}. - * {% ifversion fpt %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion fpt or ghes > 3.1 or ghae-next %}, then click the **Runners** tab{% endif %}. + * **In an organization or repository**: Click **Actions** in the left sidebar{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, then click **Runners**{% endif %}. + * {% ifversion fpt or ghec %}**If using an enterprise account**:{% elsif ghes or ghae %}**If using an enterprise-level runner**:{% endif %} Click **Actions** under "{% octicon "law" aria-label="The law icon" %} Policies"{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, then click the **Runners** tab{% endif %}. diff --git a/data/reusables/github-actions/self-hosted-runner-removing-a-runner.md b/data/reusables/github-actions/self-hosted-runner-removing-a-runner.md index aac9a6f36290..e60d1bdc3890 100644 --- a/data/reusables/github-actions/self-hosted-runner-removing-a-runner.md +++ b/data/reusables/github-actions/self-hosted-runner-removing-a-runner.md @@ -1,4 +1,4 @@ -1. Under {% ifversion fpt or ghes > 3.1 or ghae-next %}"Runners"{% else %}"Self-hosted runners"{% endif %}, locate the runner in the list. If your runner is in a group, click {% octicon "chevron-down" aria-label="The downwards chevron" %} to expand the list. +1. Under {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}"Runners"{% else %}"Self-hosted runners"{% endif %}, locate the runner in the list. If your runner is in a group, click {% octicon "chevron-down" aria-label="The downwards chevron" %} to expand the list. 1. Click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} next to the runner you want to remove, then click **Remove**. ![Removing a self-hosted runner setting](/assets/images/help/settings/actions-runner-remove.png) diff --git a/data/reusables/github-actions/settings-sidebar-actions-runner-groups.md b/data/reusables/github-actions/settings-sidebar-actions-runner-groups.md index d51fdc01ef0c..89d435389a65 100644 --- a/data/reusables/github-actions/settings-sidebar-actions-runner-groups.md +++ b/data/reusables/github-actions/settings-sidebar-actions-runner-groups.md @@ -1,2 +1,2 @@ -1. In the left sidebar, click **Actions**.{% ifversion fpt or ghes > 3.1 or ghae-next %} +1. In the left sidebar, click **Actions**.{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} 1. In the left sidebar, under "Actions", click **Runner groups**.{% endif %} diff --git a/data/reusables/github-actions/settings-sidebar-actions-runners.md b/data/reusables/github-actions/settings-sidebar-actions-runners.md index 181fbef51500..099d310ae2a4 100644 --- a/data/reusables/github-actions/settings-sidebar-actions-runners.md +++ b/data/reusables/github-actions/settings-sidebar-actions-runners.md @@ -1 +1 @@ -1. In the left sidebar, click **Actions**{% ifversion fpt or ghes > 3.1 or ghae-next %}, then click **Runners**{% endif %}. +1. In the left sidebar, click **Actions**{% ifversion fpt or ghes > 3.1 or ghae-next or ghec %}, then click **Runners**{% endif %}. diff --git a/data/reusables/github-actions/workflow-permissions-intro.md b/data/reusables/github-actions/workflow-permissions-intro.md index 88382e0d54f0..d6bc103ed05a 100644 --- a/data/reusables/github-actions/workflow-permissions-intro.md +++ b/data/reusables/github-actions/workflow-permissions-intro.md @@ -1 +1 @@ -You can set the default permissions granted to the `GITHUB_TOKEN`. For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow)." You can choose between a restricted set of permissions as the default or a permissive setting. +You can set the default permissions granted to the `GITHUB_TOKEN`. For more information about the `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." You can choose between a restricted set of permissions as the default or a permissive setting. diff --git a/data/reusables/gpg/private-email.md b/data/reusables/gpg/private-email.md index e93a1e448af3..571daec2ab26 100644 --- a/data/reusables/gpg/private-email.md +++ b/data/reusables/gpg/private-email.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} To keep your email address private, use your {% data variables.product.product_name %}-provided `no-reply` email address. {% endif %} diff --git a/data/reusables/issue-events/issue-event-common-properties.md b/data/reusables/issue-events/issue-event-common-properties.md index 7963cafc7bfb..2fb249e9f6c6 100644 --- a/data/reusables/issue-events/issue-event-common-properties.md +++ b/data/reusables/issue-events/issue-event-common-properties.md @@ -1,7 +1,7 @@ Name | Type | Description -----|------|-------------- `id` | `integer` | The unique identifier of the event. -`node_id` | `string` | The [Global Node ID](/graphql/guides/using-global-node-ids) of the event. +`node_id` | `string` | The [Global Node ID]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-global-node-ids) of the event. `url`| `string` | The REST API URL for fetching the event. `actor` | `object`| The person who generated the event. `event` | `string` | Identifies the actual type of event that occurred. diff --git a/data/reusables/large_files/can-include-lfs-objects-archives.md b/data/reusables/large_files/can-include-lfs-objects-archives.md index aed646de475b..5c20a2261db9 100644 --- a/data/reusables/large_files/can-include-lfs-objects-archives.md +++ b/data/reusables/large_files/can-include-lfs-objects-archives.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can choose whether {% data variables.large_files.product_name_short %} objects are included in source code archives, such as ZIP files and tarballs, that {% data variables.product.product_name %} creates for your repository. For more information, see "[Managing {% data variables.large_files.product_name_short %} objects in archives of your repository](/github/administering-a-repository/managing-git-lfs-objects-in-archives-of-your-repository)." {% endif %} diff --git a/data/reusables/marketplace/marketplace-double-purchases.md b/data/reusables/marketplace/marketplace-double-purchases.md index f434be5cba7f..0417dd94e750 100644 --- a/data/reusables/marketplace/marketplace-double-purchases.md +++ b/data/reusables/marketplace/marketplace-double-purchases.md @@ -1,5 +1,5 @@ {% warning %} -**Note:** In the current version of {% data variables.product.prodname_marketplace %}, it's possible for a customer to purchase your app through {% data variables.product.prodname_marketplace %} when they already have an existing account purchased from your app's website. If you find that you already have an account set up for the customer who purchased your app, please report the “double” purchases to [GitHub Support](https://github.com/contact). +**Note:** In the current version of {% data variables.product.prodname_marketplace %}, it's possible for a customer to purchase your app through {% data variables.product.prodname_marketplace %} when they already have an existing account purchased from your app's website. If you find that you already have an account set up for the customer who purchased your app, please report the "double" purchases to [GitHub Support](https://github.com/contact). {% endwarning %} diff --git a/data/reusables/notifications-v2/email-notification-caveats.md b/data/reusables/notifications-v2/email-notification-caveats.md index 370fdb84ea44..dd5f060c7db8 100644 --- a/data/reusables/notifications-v2/email-notification-caveats.md +++ b/data/reusables/notifications-v2/email-notification-caveats.md @@ -1,5 +1,5 @@ You'll only receive notification emails if you've chosen to receive email notifications in your notification settings. -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% data reusables.user_settings.verify-org-approved-email-domain %} {% endif %} diff --git a/data/reusables/notifications/email-restrictions-verification.md b/data/reusables/notifications/email-restrictions-verification.md index ae4f786ddc66..688828b73546 100644 --- a/data/reusables/notifications/email-restrictions-verification.md +++ b/data/reusables/notifications/email-restrictions-verification.md @@ -1 +1 @@ -After you enable email restrictions, members can receive email notifications at verified email addresses within domains that you've verified or approved. {% ifversion fpt %}For more information, see "[Verifying your email address](/github/getting-started-with-github/verifying-your-email-address)."{% endif %} +{% ifversion fpt or ghec %}To continue receiving email notifications after you enable restrictions, members must verify any email addresses within domains that you verify or approve. For more information, see "[Verifying your email address](/github/getting-started-with-github/verifying-your-email-address)."{% endif %} diff --git a/data/reusables/notifications/shared_state.md b/data/reusables/notifications/shared_state.md index b4200510fdb0..dc4a2f89dddd 100644 --- a/data/reusables/notifications/shared_state.md +++ b/data/reusables/notifications/shared_state.md @@ -1,5 +1,5 @@ {% tip %} -**Tip:** If you receive both web and email notifications, you can automatically sync the read or unread status of the notification so that web notifications are automatically marked as read once you've read the corresponding email notification. To enable this sync, your email client must be able to view images from {% ifversion fpt %}`notifications@github.com`{% else %}the `no-reply` email address {% ifversion ghae %}for your {% data variables.product.product_name %} hostname{% elsif ghes %}for {% data variables.product.product_location %}, which your site administrator configures{% endif %}{% endif %}. +**Tip:** If you receive both web and email notifications, you can automatically sync the read or unread status of the notification so that web notifications are automatically marked as read once you've read the corresponding email notification. To enable this sync, your email client must be able to view images from {% ifversion fpt or ghec %}`notifications@github.com`{% else %}the `no-reply` email address {% ifversion ghae %}for your {% data variables.product.product_name %} hostname{% elsif ghes %}for {% data variables.product.product_location %}, which your site administrator configures{% endif %}{% endif %}. {% endtip %} diff --git a/data/reusables/notifications/vulnerable-dependency-notification-delivery-method-customization.md b/data/reusables/notifications/vulnerable-dependency-notification-delivery-method-customization.md index 6a3d822bf9e8..d65eeb566d6d 100644 --- a/data/reusables/notifications/vulnerable-dependency-notification-delivery-method-customization.md +++ b/data/reusables/notifications/vulnerable-dependency-notification-delivery-method-customization.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghes or ghae-issue-4864 %} +{% ifversion fpt or ghes or ghae-issue-4864 or ghec %} You can choose the delivery method and frequency of notifications about {% data variables.product.prodname_dependabot_alerts %} on repositories that you are watching or where you have subscribed to notifications for security alerts. {% endif %} diff --git a/data/reusables/notifications/vulnerable-dependency-notification-enable.md b/data/reusables/notifications/vulnerable-dependency-notification-enable.md index 295c5d9a2360..ee90a424b9d3 100644 --- a/data/reusables/notifications/vulnerable-dependency-notification-enable.md +++ b/data/reusables/notifications/vulnerable-dependency-notification-enable.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} To receive notifications about {% data variables.product.prodname_dependabot_alerts %} on repositories, you need to watch these repositories, and subscribe to receive "All Activity" notifications or configure custom settings to include "Security alerts." For more information, see "[Configuring your watch settings for an individual repository](/github/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository)." {% endif %} \ No newline at end of file diff --git a/data/reusables/notifications/vulnerable-dependency-notification-options.md b/data/reusables/notifications/vulnerable-dependency-notification-options.md index cda795559e18..6e3c1ac5224a 100644 --- a/data/reusables/notifications/vulnerable-dependency-notification-options.md +++ b/data/reusables/notifications/vulnerable-dependency-notification-options.md @@ -1,5 +1,5 @@ -{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 %} -{% ifversion fpt %}By default, you will receive notifications:{% endif %}{% ifversion ghes > 3.1 or ghae-issue-4864 %}By default, if your enterprise owner has configured email for notifications on your instance, you will receive {% data variables.product.prodname_dependabot_alerts %}:{% endif %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 or ghec %} +{% ifversion fpt or ghec %}By default, you will receive notifications:{% endif %}{% ifversion ghes > 3.1 or ghae-issue-4864 %}By default, if your enterprise owner has configured email for notifications on your instance, you will receive {% data variables.product.prodname_dependabot_alerts %}:{% endif %} - by email, an email is sent when {% data variables.product.prodname_dependabot %} is enabled for a repository, when a new manifest file is committed to the repository, and when a new vulnerability with a critical or high severity is found (**Email each time a vulnerability is found** option). - in the user interface, a warning is shown in your repository's file and code views if there are any vulnerable dependencies (**UI alerts** option). diff --git a/data/reusables/organizations/cancel_org_invite.md b/data/reusables/organizations/cancel_org_invite.md index 5e99af9565a9..0eaf18625d0c 100644 --- a/data/reusables/organizations/cancel_org_invite.md +++ b/data/reusables/organizations/cancel_org_invite.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can [edit or cancel an invitation](/articles/canceling-or-editing-an-invitation-to-join-your-organization) any time before the user accepts. {% endif %} diff --git a/data/reusables/organizations/choose-to-restore-privileges.md b/data/reusables/organizations/choose-to-restore-privileges.md index 7c0ab787e22a..d1920f42bbb4 100644 --- a/data/reusables/organizations/choose-to-restore-privileges.md +++ b/data/reusables/organizations/choose-to-restore-privileges.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}1. If the person you're inviting was an organization member within the last three months, choose whether to restore their privileges or start fresh, then click **Invite and reinstate** or **Invite and start fresh**. +{% ifversion fpt or ghec %}1. If the person you're inviting was an organization member within the last three months, choose whether to restore their privileges or start fresh, then click **Invite and reinstate** or **Invite and start fresh**. ![Choose whether to restore privileges](/assets/images/help/organizations/choose_whether_to_restore_org_member_info.png){% else %} 1. If the person you're adding was an organization member within the last three months, choose whether to restore their privileges or start fresh, then click **Add and reinstate** or **Add and start fresh**. ![Choose whether to restore privileges](/assets/images/help/organizations/choose_whether_to_restore_org_member_info_ghe.png){% endif %} diff --git a/data/reusables/organizations/choose-user-role-send-invitation.md b/data/reusables/organizations/choose-user-role-send-invitation.md index 74459ff737a9..a9afc8a0cc5d 100644 --- a/data/reusables/organizations/choose-user-role-send-invitation.md +++ b/data/reusables/organizations/choose-user-role-send-invitation.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}1. If the person you're inviting has never been a member of the organization or if you cleared their privileges, choose a role for the user and optionally add them to some teams, then click **Send invitation**. +{% ifversion fpt or ghec %}1. If the person you're inviting has never been a member of the organization or if you cleared their privileges, choose a role for the user and optionally add them to some teams, then click **Send invitation**. ![Role and team options and send invitation button](/assets/images/help/organizations/add-role-send-invitation.png){% else %} 1. If the person you're inviting has never been a member of the organization or if you cleared their privileges, choose a role for the user, and optionally add them to some teams, then click **Add member**. ![Role and team options and add member button](/assets/images/help/organizations/add-role-add-member.png){% else %} diff --git a/data/reusables/organizations/internal-repos-enterprise.md b/data/reusables/organizations/internal-repos-enterprise.md index 26dcecf62936..d3b55e1d1bac 100644 --- a/data/reusables/organizations/internal-repos-enterprise.md +++ b/data/reusables/organizations/internal-repos-enterprise.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note:** Internal repositories are available for organizations that are part of an enterprise account. For more information, see "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility)." diff --git a/data/reusables/organizations/invite_member_from_people_tab.md b/data/reusables/organizations/invite_member_from_people_tab.md index ddec309fd24e..d8eaa3172cc1 100644 --- a/data/reusables/organizations/invite_member_from_people_tab.md +++ b/data/reusables/organizations/invite_member_from_people_tab.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}1. On the People tab, click **Invite member**. +{% ifversion fpt or ghec %}1. On the People tab, click **Invite member**. ![Invite member button](/assets/images/help/organizations/people-tab-invite-member.png){% else %} 1. On the People tab, click **Add member**. ![Add member button](/assets/images/help/organizations/people-tab-invite-member-ghe.png){% endif %} diff --git a/data/reusables/organizations/invite_to_org.md b/data/reusables/organizations/invite_to_org.md index 2b3871721d2f..6f06bee8c2e7 100644 --- a/data/reusables/organizations/invite_to_org.md +++ b/data/reusables/organizations/invite_to_org.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}1. Type the username, full name, or email address of the person you want to invite and click **Invite**. +{% ifversion fpt or ghec %}1. Type the username, full name, or email address of the person you want to invite and click **Invite**. ![Invite member form](/assets/images/help/organizations/org-invite-modal.png){% else %} 1. Type the username, full name, or email address of the person you want to add and click **Invite**. ![Invite member form](/assets/images/help/organizations/org-invite-modal.png){% endif %} diff --git a/data/reusables/organizations/invite_to_team.md b/data/reusables/organizations/invite_to_team.md index 6dc3030bf88a..707660586e70 100644 --- a/data/reusables/organizations/invite_to_team.md +++ b/data/reusables/organizations/invite_to_team.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. Add an organization member to the team or invite a non-member to join a team: - If the person you want to add is already a member of your organization, type their username and click **Enter**. The user will immediately be added to the team. - If the person you want to add is not member of your organization, type their username or email address and click **Enter**. The user will receive an email invitation to join your organization and will be added to the team once they accept the invitation.{% else %} diff --git a/data/reusables/organizations/navigate-to-org.md b/data/reusables/organizations/navigate-to-org.md index 2732d1750e7f..f3ae7af0344e 100644 --- a/data/reusables/organizations/navigate-to-org.md +++ b/data/reusables/organizations/navigate-to-org.md @@ -1 +1 @@ -1. On {% data variables.product.product_name %}, navigate to the main page of the organization. +1. On {% data variables.product.product_location %}, navigate to the main page of the organization. diff --git a/data/reusables/organizations/new_team.md b/data/reusables/organizations/new_team.md index 71ca70726b64..0618627853fc 100644 --- a/data/reusables/organizations/new_team.md +++ b/data/reusables/organizations/new_team.md @@ -1,5 +1,5 @@ 1. Under your organization name, click {% octicon "people" aria-label="The people icon" %} **Teams**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![Teams tab](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} ![Teams tab](/assets/images/help/organizations/organization-teams-tab.png) diff --git a/data/reusables/organizations/oauth_app_access.md b/data/reusables/organizations/oauth_app_access.md index b705d8a458c5..7155b3a2c690 100644 --- a/data/reusables/organizations/oauth_app_access.md +++ b/data/reusables/organizations/oauth_app_access.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. In the Settings sidebar, click **Third-party access**. ![{% data variables.product.prodname_oauth_app %} access tab in the left sidebar](/assets/images/help/settings/settings-sidebar-third-party-access.png) {% endif %} diff --git a/data/reusables/organizations/oauth_app_restrictions_default.md b/data/reusables/organizations/oauth_app_restrictions_default.md index 1fd7d50bcf55..219378917f06 100644 --- a/data/reusables/organizations/oauth_app_restrictions_default.md +++ b/data/reusables/organizations/oauth_app_restrictions_default.md @@ -1 +1 @@ -{% ifversion fpt %}When you create a new organization, {% data variables.product.prodname_oauth_app %} access restrictions are enabled by default. Organization owners can [disable {% data variables.product.prodname_oauth_app %} access restrictions](/articles/disabling-oauth-app-access-restrictions-for-your-organization) at any time.{% endif %} +{% ifversion fpt or ghec %}When you create a new organization, {% data variables.product.prodname_oauth_app %} access restrictions are enabled by default. Organization owners can [disable {% data variables.product.prodname_oauth_app %} access restrictions](/articles/disabling-oauth-app-access-restrictions-for-your-organization) at any time.{% endif %} diff --git a/data/reusables/organizations/org_settings.md b/data/reusables/organizations/org_settings.md index 314bc2463d0f..c679fb885a73 100644 --- a/data/reusables/organizations/org_settings.md +++ b/data/reusables/organizations/org_settings.md @@ -1,5 +1,5 @@ 1. Under your organization name, click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![Organization settings button](/assets/images/help/organizations/organization-settings-tab-with-overview-tab.png) {% else %} ![Organization settings button](/assets/images/help/organizations/organization-settings-tab.png) diff --git a/data/reusables/organizations/organization-wide-project.md b/data/reusables/organizations/organization-wide-project.md index a9f05db9e491..9b331164cc90 100644 --- a/data/reusables/organizations/organization-wide-project.md +++ b/data/reusables/organizations/organization-wide-project.md @@ -1,5 +1,5 @@ 1. Under your organization name, click {% octicon "project" aria-label="The Projects icon" %} **Projects**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![Projects tab for your organization](/assets/images/help/organizations/organization-projects-tab-with-overview-tab.png) {% else %} ![Projects tab for your organization](/assets/images/help/organizations/organization-projects-tab.png) diff --git a/data/reusables/organizations/organizations_include.md b/data/reusables/organizations/organizations_include.md index 42c555873169..4d2d171ae4ef 100644 --- a/data/reusables/organizations/organizations_include.md +++ b/data/reusables/organizations/organizations_include.md @@ -5,7 +5,7 @@ Organizations include: - The ability for organization owners to view members' [two-factor authentication (2FA) status](/articles/about-two-factor-authentication) - The option to [require all organization members to use two-factor authentication](/articles/requiring-two-factor-authentication-in-your-organization){% endif %} -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can use organizations for free, with {% data variables.product.prodname_free_team %}, which includes unlimited collaborators on unlimited public repositories with full features, and unlimited private repositories with limited features. For additional features, including sophisticated user authentication and management, and improved support coverage, you can upgrade to {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %}. {% data reusables.gated-features.more-info %} diff --git a/data/reusables/organizations/outside-collaborators-use-seats.md b/data/reusables/organizations/outside-collaborators-use-seats.md index 014e747ead29..bd2b9f205d53 100644 --- a/data/reusables/organizations/outside-collaborators-use-seats.md +++ b/data/reusables/organizations/outside-collaborators-use-seats.md @@ -1 +1 @@ -{% ifversion fpt %}Adding an outside collaborator to a private repository will use one of your organization's paid licenses. For more information, see "[About per-user pricing](/articles/about-per-user-pricing/)."{% endif %} +{% ifversion fpt or ghec %}Adding an outside collaborator to a private repository will use one of your organization's paid licenses. For more information, see "[About per-user pricing](/articles/about-per-user-pricing/)."{% endif %} diff --git a/data/reusables/organizations/owners-team.md b/data/reusables/organizations/owners-team.md index b642a1a184ba..2a0cdbfb9c35 100644 --- a/data/reusables/organizations/owners-team.md +++ b/data/reusables/organizations/owners-team.md @@ -1,5 +1,5 @@ 1. Under your organization name, click {% octicon "people" aria-label="The people icon" %} **Teams**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![Teams tab](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} ![Teams tab](/assets/images/help/organizations/organization-teams-tab.png) diff --git a/data/reusables/organizations/people.md b/data/reusables/organizations/people.md index 90b70a60d0f1..f1c13a613b01 100644 --- a/data/reusables/organizations/people.md +++ b/data/reusables/organizations/people.md @@ -1,5 +1,5 @@ 1. Under your organization name, click {% octicon "organization" aria-label="The People icon" %} **People**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![The People tab](/assets/images/help/organizations/organization-people-tab-with-overview-tab.png) {% else %} ![The People tab](/assets/images/help/organizations/organization-people-tab.png) diff --git a/data/reusables/organizations/send-invitation.md b/data/reusables/organizations/send-invitation.md index c2bfc336b352..fb9f4b6a49fd 100644 --- a/data/reusables/organizations/send-invitation.md +++ b/data/reusables/organizations/send-invitation.md @@ -1 +1 @@ -1. Click {% ifversion fpt %}**Send invitation**{% else %}**Add member**{% endif %}. +1. Click {% ifversion fpt or ghec %}**Send invitation**{% else %}**Add member**{% endif %}. diff --git a/data/reusables/organizations/specific_team.md b/data/reusables/organizations/specific_team.md index a313a3323905..2d5f711315a4 100644 --- a/data/reusables/organizations/specific_team.md +++ b/data/reusables/organizations/specific_team.md @@ -1,5 +1,5 @@ 1. Under your organization name, click {% octicon "people" aria-label="The people icon" %} **Teams**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![Teams tab](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} ![Teams tab](/assets/images/help/organizations/organization-teams-tab.png) diff --git a/data/reusables/organizations/team-synchronization.md b/data/reusables/organizations/team-synchronization.md index e088d9bccfe9..079b6797fdcf 100644 --- a/data/reusables/organizations/team-synchronization.md +++ b/data/reusables/organizations/team-synchronization.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghae %} +{% ifversion fpt or ghae or ghec %} You can use team synchronization to automatically add and remove organization members to teams through an identity provider. For more information, see "[Synchronizing a team with an identity provider group](/organizations/organizing-members-into-teams/synchronizing-a-team-with-an-identity-provider-group)." {% endif %} diff --git a/data/reusables/organizations/team_maintainers_can.md b/data/reusables/organizations/team_maintainers_can.md index eadd0613736f..8d704d65d8f6 100644 --- a/data/reusables/organizations/team_maintainers_can.md +++ b/data/reusables/organizations/team_maintainers_can.md @@ -10,6 +10,6 @@ Members with team maintainer permissions can: - [Add organization members to the team](/articles/adding-organization-members-to-a-team) - [Remove organization members from the team](/articles/removing-organization-members-from-a-team) - [Promote an existing team member to team maintainer](/articles/giving-team-maintainer-permissions-to-an-organization-member) -- Remove the team's access to repositories{% ifversion fpt or ghes or ghae %} -- [Manage code review assignment for the team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team){% endif %}{% ifversion fpt %} +- Remove the team's access to repositories{% ifversion fpt or ghes or ghae or ghec %} +- [Manage code review assignment for the team](/organizations/organizing-members-into-teams/managing-code-review-assignment-for-your-team){% endif %}{% ifversion fpt or ghec %} - [Manage scheduled reminders for pull requests](/github/setting-up-and-managing-organizations-and-teams/managing-scheduled-reminders-for-pull-requests){% endif %} diff --git a/data/reusables/organizations/teams.md b/data/reusables/organizations/teams.md index 1a2bc7eda3f6..8f9af3548a9b 100644 --- a/data/reusables/organizations/teams.md +++ b/data/reusables/organizations/teams.md @@ -1,5 +1,5 @@ 1. Under your organization name, click {% octicon "people" aria-label="The people icon" %} **Teams**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![Teams tab on the organization page](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} ![Teams tab on the organization page](/assets/images/help/organizations/organization-teams-tab.png) diff --git a/data/reusables/package_registry/about-packaging-and-actions.md b/data/reusables/package_registry/about-packaging-and-actions.md index 114804e61545..2eb3cca7e744 100644 --- a/data/reusables/package_registry/about-packaging-and-actions.md +++ b/data/reusables/package_registry/about-packaging-and-actions.md @@ -8,7 +8,7 @@ For example, a continuous integration workflow for a Java project may run `mvn p Now, when reviewing a pull request, you'll be able to look at the workflow run and download the artifact that was produced. -{% ifversion fpt or ghes > 3.0 or ghae %} +{% ifversion fpt or ghes > 3.0 or ghae or ghec %} ![Download artifact drop-down menu](/assets/images/help/repository/artifact-drop-down-updated.png) {% else %} ![Download artifact drop-down menu](/assets/images/help/repository/artifact-drop-down.png) diff --git a/data/reusables/package_registry/authenticate-packages.md b/data/reusables/package_registry/authenticate-packages.md index 2deda31fd1c9..a766f6e96d9f 100644 --- a/data/reusables/package_registry/authenticate-packages.md +++ b/data/reusables/package_registry/authenticate-packages.md @@ -1,6 +1,6 @@ You need an access token to publish, install, and delete packages. -You can use a personal access token (PAT) to authenticate to {% data variables.product.prodname_registry %} or the {% data variables.product.prodname_dotcom %} API. When you create a personal access token, you can assign the token different scopes depending on your needs. For more information about packages-related scopes for a PAT, see "[About permissions for GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages#about-scopes-and-permissions-for-package-registries)." +You can use a personal access token (PAT) to authenticate to {% data variables.product.prodname_registry %} or the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API. When you create a personal access token, you can assign the token different scopes depending on your needs. For more information about packages-related scopes for a PAT, see "[About permissions for GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages#about-scopes-and-permissions-for-package-registries)." To authenticate to a {% data variables.product.prodname_registry %} registry within a {% data variables.product.prodname_actions %} workflow, you can use: - `GITHUB_TOKEN` to publish packages associated with the workflow repository. diff --git a/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md b/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md index 117bd9cfaa4f..978ed2bc8003 100644 --- a/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md +++ b/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} To authenticate to the {% data variables.product.prodname_container_registry %} within a {% data variables.product.prodname_actions %} workflow, use the `GITHUB_TOKEN` for the best security and experience. If your workflow is using a personal access token (PAT) to authenticate to `ghcr.io`, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. diff --git a/data/reusables/package_registry/create-npmrc-owner-step.md b/data/reusables/package_registry/create-npmrc-owner-step.md index f8f4a5b20cc4..af4ee63bcd6f 100644 --- a/data/reusables/package_registry/create-npmrc-owner-step.md +++ b/data/reusables/package_registry/create-npmrc-owner-step.md @@ -1,6 +1,6 @@ 2. In the same directory as your `package.json` file, create or edit an `.npmrc` file to include a line specifying {% data variables.product.prodname_registry %} URL and the account owner. Replace `OWNER` with the name of the user or organization account that owns the repository containing your project. -{% ifversion fpt %} +{% ifversion fpt or ghec %} ```shell @OWNER:registry=https://npm.pkg.github.com ``` diff --git a/data/reusables/package_registry/docker_registry_deprecation_status.md b/data/reusables/package_registry/docker_registry_deprecation_status.md index b773a2e01186..999dba77eeea 100644 --- a/data/reusables/package_registry/docker_registry_deprecation_status.md +++ b/data/reusables/package_registry/docker_registry_deprecation_status.md @@ -1,5 +1,5 @@ {% warning %} -**Note:** The {% data variables.product.prodname_registry %} Docker registry {% ifversion ghes or ghae %} will be superseded in a future {% data variables.product.product_name %} release with the {% data variables.product.prodname_container_registry %}, which offers improved container support.{% elsif fpt %} is superseded by the {% data variables.product.prodname_container_registry %}, which offers improved container support. {% endif %} {% ifversion fpt %} For more information, see "[Migrating to the {% data variables.product.prodname_container_registry %} from the Docker registry](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)." {% endif %} +**Note:** The {% data variables.product.prodname_registry %} Docker registry {% ifversion ghes or ghae %} will be superseded in a future {% data variables.product.product_name %} release with the {% data variables.product.prodname_container_registry %}, which offers improved container support.{% elsif fpt %} is superseded by the {% data variables.product.prodname_container_registry %}, which offers improved container support. {% endif %} {% ifversion fpt or ghec %} For more information, see "[Migrating to the {% data variables.product.prodname_container_registry %} from the Docker registry](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)." {% endif %} {% endwarning %} diff --git a/data/reusables/package_registry/package-settings-from-org-level.md b/data/reusables/package_registry/package-settings-from-org-level.md index 97a10906989b..257d010534f1 100644 --- a/data/reusables/package_registry/package-settings-from-org-level.md +++ b/data/reusables/package_registry/package-settings-from-org-level.md @@ -1,6 +1,6 @@ 1. On {% data variables.product.prodname_dotcom %}, navigate to the main page of your organization. 2. Under your organization name, click **Packages**. - {% ifversion fpt or ghes > 3.2 %} + {% ifversion fpt or ghes > 3.2 or ghec %} ![Packages tab on org landing page](/assets/images/help/package-registry/org-tab-for-packages-with-overview-tab.png) {% else %} ![Packages tab on org landing page](/assets/images/help/package-registry/org-tab-for-packages.png) diff --git a/data/reusables/package_registry/package-settings-from-user-level.md b/data/reusables/package_registry/package-settings-from-user-level.md index 9e7d084f772a..9dd9b5a07430 100644 --- a/data/reusables/package_registry/package-settings-from-user-level.md +++ b/data/reusables/package_registry/package-settings-from-user-level.md @@ -1,5 +1,5 @@ 1. On {% data variables.product.prodname_dotcom %}, navigate to the main page of your user account. -2. In the top right corner of {% data variables.product.product_name %}, click your profile photo, then click **Your profile**. +2. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Your profile**. ![Profile photo](/assets/images/help/profile/top_right_avatar.png) 3. On your profile page, in the top right, click **Packages**. ![Packages option on profile page](/assets/images/help/package-registry/packages-from-user-profile.png) diff --git a/data/reusables/package_registry/packages-billing.md b/data/reusables/package_registry/packages-billing.md index adc9c87bed06..afa94b0611b1 100644 --- a/data/reusables/package_registry/packages-billing.md +++ b/data/reusables/package_registry/packages-billing.md @@ -1 +1 @@ -{% data variables.product.prodname_registry %} usage is free for public packages. For private packages, each {% data variables.product.product_name %} account receives a certain amount of free storage and data transfer, depending on the product used with the account. Any usage beyond the included amounts is controlled by spending limits. +{% data variables.product.prodname_registry %} usage is free for public packages. For private packages, each account on {% data variables.product.product_location %} receives a certain amount of free storage and data transfer, depending on the product used with the account. Any usage beyond the included amounts is controlled by spending limits. diff --git a/data/reusables/package_registry/packages-from-code-tab.md b/data/reusables/package_registry/packages-from-code-tab.md index 4559b7ca2ceb..a40480073da3 100644 --- a/data/reusables/package_registry/packages-from-code-tab.md +++ b/data/reusables/package_registry/packages-from-code-tab.md @@ -1,5 +1,5 @@ 1. To the right of the list of files, click **Packages**. - {% ifversion fpt %} + {% ifversion fpt or ghec %} ![Packages link on repo overview page](/assets/images/help/package-registry/packages-link.png) {% else %} ![Packages link on repo overview page](/assets/images/help/package-registry/packages-from-repo.png) diff --git a/data/reusables/package_registry/public-or-private-packages.md b/data/reusables/package_registry/public-or-private-packages.md index 378e2409ac48..49487b37e227 100644 --- a/data/reusables/package_registry/public-or-private-packages.md +++ b/data/reusables/package_registry/public-or-private-packages.md @@ -1 +1 @@ -You can publish packages in {% ifversion ghae %}an internal{% else %}a public{% endif %} repository ({% ifversion ghae %}internal{% else %}public{% endif %} packages) to share with {% ifversion fpt %}all of {% data variables.product.prodname_dotcom %}{% else %}everyone on your enterprise{% endif %}, or in a private repository (private packages) to share with collaborators or an organization. +You can publish packages in {% ifversion ghae %}an internal{% else %}a public{% endif %} repository ({% ifversion ghae %}internal{% else %}public{% endif %} packages) to share with {% ifversion fpt or ghec %}all of {% data variables.product.prodname_dotcom %}{% else %}everyone on your enterprise{% endif %}, or in a private repository (private packages) to share with collaborators or an organization. diff --git a/data/reusables/package_registry/visibility-and-access-permissions.md b/data/reusables/package_registry/visibility-and-access-permissions.md index 97f5b8350576..59f3a620d898 100644 --- a/data/reusables/package_registry/visibility-and-access-permissions.md +++ b/data/reusables/package_registry/visibility-and-access-permissions.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you have admin permissions to a container image, you can set the access permissions for the container image to private or public. Public images allow anonymous access and can be pulled without authentication or signing in via the CLI. As an admin, you can also grant access permissions for a container image that are separate from the permissions you've set at the organization and repository levels. diff --git a/data/reusables/pages/best-with-supported-themes.md b/data/reusables/pages/best-with-supported-themes.md index 3e8c720bb763..1c207b80b9c1 100644 --- a/data/reusables/pages/best-with-supported-themes.md +++ b/data/reusables/pages/best-with-supported-themes.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} These instructions work best with themes that are officially supported by {% data variables.product.prodname_pages %}. For a complete list of supported themes, see "[Supported themes](https://pages.github.com/themes/)" on the {% data variables.product.prodname_pages %} site. {% endif %} diff --git a/data/reusables/pages/decide-publishing-source.md b/data/reusables/pages/decide-publishing-source.md index 71f416f6cd08..29d919076f88 100644 --- a/data/reusables/pages/decide-publishing-source.md +++ b/data/reusables/pages/decide-publishing-source.md @@ -1 +1 @@ -1. {% ifversion fpt or ghes > 2.22 or ghae %}Decide{% else %}If you're creating a project site, decide{% endif %} which publishing source you want to use. {% ifversion ghes < 3.0 %}If you're creating a user or organization site, you must store your site's source code on the `master` branch.{% endif %} For more information, see "[About {% data variables.product.prodname_pages %}](/articles/about-github-pages#publishing-sources-for-github-pages-sites)." +1. {% ifversion fpt or ghes > 2.22 or ghae or ghec %}Decide{% else %}If you're creating a project site, decide{% endif %} which publishing source you want to use. {% ifversion ghes < 3.0 %}If you're creating a user or organization site, you must store your site's source code on the `master` branch.{% endif %} For more information, see "[About {% data variables.product.prodname_pages %}](/articles/about-github-pages#publishing-sources-for-github-pages-sites)." diff --git a/data/reusables/pages/new-or-existing-repo.md b/data/reusables/pages/new-or-existing-repo.md index 2dbac12a4f0d..6d692f3a8d1f 100644 --- a/data/reusables/pages/new-or-existing-repo.md +++ b/data/reusables/pages/new-or-existing-repo.md @@ -1,5 +1,5 @@ -If your site is an independent project, you can create a new repository to store your site's source code. If your site is associated with an existing project, you can add the source code {% ifversion fpt or ghes > 2.22 or ghae %}to that project's repository, in a `/docs` folder on the default branch or on a different branch.{% else %}for your site to a `gh-pages` branch or a `docs` folder on the `master` branch in that project's repository.{% endif %} For example, if you're creating a site to publish documentation for a project that's already on {% data variables.product.product_name %}, you may want to store the source code for the site in the same repository as the project. +If your site is an independent project, you can create a new repository to store your site's source code. If your site is associated with an existing project, you can add the source code {% ifversion fpt or ghes > 2.22 or ghae or ghec %}to that project's repository, in a `/docs` folder on the default branch or on a different branch.{% else %}for your site to a `gh-pages` branch or a `docs` folder on the `master` branch in that project's repository.{% endif %} For example, if you're creating a site to publish documentation for a project that's already on {% data variables.product.product_name %}, you may want to store the source code for the site in the same repository as the project. -{% ifversion fpt %}If the account that owns the repository uses {% data variables.product.prodname_free_user %} or {% data variables.product.prodname_free_team %} for organizations, the repository must be public.{% endif %} +{% ifversion fpt or ghec %}If the account that owns the repository uses {% data variables.product.prodname_free_user %} or {% data variables.product.prodname_free_team %} for organizations, the repository must be public.{% endif %} If you want to create a site in an existing repository, skip to the "[Creating your site](#creating-your-site)" section. diff --git a/data/reusables/pages/org-owners-can-restrict-pages-creation.md b/data/reusables/pages/org-owners-can-restrict-pages-creation.md index 00aad16459cd..dfddeb6f0be0 100644 --- a/data/reusables/pages/org-owners-can-restrict-pages-creation.md +++ b/data/reusables/pages/org-owners-can-restrict-pages-creation.md @@ -1,4 +1,4 @@ -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} {% note %} **Note:** Organization owners can restrict the publication of {% data variables.product.prodname_pages %} sites from repositories owned by the organization. For more information, see "[Managing the publication of {% data variables.product.prodname_pages %} sites](/organizations/managing-organization-settings/managing-the-publication-of-github-pages-sites-for-your-organization)." diff --git a/data/reusables/pages/private_pages_are_public_warning.md b/data/reusables/pages/private_pages_are_public_warning.md index 0203c5447cb9..c5c5066fdf54 100644 --- a/data/reusables/pages/private_pages_are_public_warning.md +++ b/data/reusables/pages/private_pages_are_public_warning.md @@ -1,5 +1,5 @@ {% warning %} -**Warning**: {% ifversion ghes or ghae %}If your site administrator has enabled Public Pages, {% endif %}{% data variables.product.prodname_pages %} sites are publicly available on the internet{% ifversion fpt %} by default{% endif %}, even if the repository for the site is private or internal.{% ifversion fpt %} {% data reusables.pages.about-private-publishing %} Otherwise, if{% else %} If{% endif %} you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see{% ifversion ghes or ghae %} "[Configuring {% data variables.product.prodname_pages %} for your enterprise](/admin/configuration/configuring-github-pages-for-your-enterprise#enabling-public-sites-for-github-pages)" and{% endif %} "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility){% ifversion fpt %}" and "[Changing the visibility of your {% data variables.product.prodname_pages %} site](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site)."{% else %}."{% endif %} +**Warning**: {% ifversion ghes or ghae %}If your site administrator has enabled Public Pages, {% endif %}{% data variables.product.prodname_pages %} sites are publicly available on the internet{% ifversion fpt or ghec %} by default{% endif %}, even if the repository for the site is private or internal.{% ifversion fpt or ghec %} {% data reusables.pages.about-private-publishing %} Otherwise, if{% else %} If{% endif %} you have sensitive data in your site's repository, you may want to remove the data before publishing. For more information, see{% ifversion ghes or ghae %} "[Configuring {% data variables.product.prodname_pages %} for your enterprise](/admin/configuration/configuring-github-pages-for-your-enterprise#enabling-public-sites-for-github-pages)" and{% endif %} "[About repositories](/repositories/creating-and-managing-repositories/about-repositories#about-repository-visibility){% ifversion fpt or ghec %}" and "[Changing the visibility of your {% data variables.product.prodname_pages %} site](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site)."{% else %}."{% endif %} {% endwarning %} diff --git a/data/reusables/pages/sidebar-pages.md b/data/reusables/pages/sidebar-pages.md index 6891d189cd92..fcefd519d47e 100644 --- a/data/reusables/pages/sidebar-pages.md +++ b/data/reusables/pages/sidebar-pages.md @@ -1,4 +1,4 @@ -{% ifversion fpt or ghes > 3.1 %} +{% ifversion fpt or ghes > 3.1 or ghec %} 1. In the left sidebar, click **Pages**. ![Page tab in the left-hand sidebar](/assets/images/help/pages/pages-tab.png) {% endif %} diff --git a/data/reusables/pages/update_your_dns_settings.md b/data/reusables/pages/update_your_dns_settings.md index 056b9f6140c8..ddf1f3c297e6 100644 --- a/data/reusables/pages/update_your_dns_settings.md +++ b/data/reusables/pages/update_your_dns_settings.md @@ -1 +1 @@ -{% ifversion fpt %}1. If there's a custom domain enabled for your site, to avoid a domain takeover, update your DNS settings. For more information, see "[Configuring a custom domain for your {% data variables.product.prodname_pages %} site](/pages/configuring-a-custom-domain-for-your-github-pages-site)."{% endif %} +{% ifversion fpt or ghec %}1. If there's a custom domain enabled for your site, to avoid a domain takeover, update your DNS settings. For more information, see "[Configuring a custom domain for your {% data variables.product.prodname_pages %} site](/pages/configuring-a-custom-domain-for-your-github-pages-site)."{% endif %} diff --git a/data/reusables/policies/abuse.md b/data/reusables/policies/abuse.md index d09f191a7fae..5becf677135d 100644 --- a/data/reusables/policies/abuse.md +++ b/data/reusables/policies/abuse.md @@ -1 +1 @@ -{% data variables.product.prodname_dotcom %} does not tolerate abuse.{% ifversion fpt %} For more information on {% data variables.product.prodname_dotcom %}'s policies, see our [Terms of Service](/articles/github-terms-of-service) and [Community Guidelines](/articles/github-community-guidelines).{% endif %} +{% data variables.product.prodname_dotcom %} does not tolerate abuse.{% ifversion fpt or ghec %} For more information on {% data variables.product.prodname_dotcom %}'s policies, see our [Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service) and [Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines).{% endif %} diff --git a/data/reusables/policies/github-community-guidelines-and-terms.md b/data/reusables/policies/github-community-guidelines-and-terms.md index aefebea4420e..aa5e271fef1c 100644 --- a/data/reusables/policies/github-community-guidelines-and-terms.md +++ b/data/reusables/policies/github-community-guidelines-and-terms.md @@ -1 +1 @@ -{% data variables.product.company_short %} provides a baseline code of conduct for everyone who uses {% data variables.product.prodname_dotcom_the_website %}. For more information, see "[{% data variables.product.company_short %} Terms of Service](/github/site-policy/github-terms-of-service)" and "[{% data variables.product.company_short %} Community Guidelines](/github/site-policy/github-community-guidelines)." +{% data variables.product.company_short %} provides a baseline code of conduct for everyone who uses {% data variables.product.prodname_dotcom_the_website %}. For more information, see "[{% data variables.product.company_short %} Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service)" and "[{% data variables.product.company_short %} Community Guidelines](/free-pro-team@latest/github/site-policy/github-community-guidelines)." diff --git a/data/reusables/profile/access_org.md b/data/reusables/profile/access_org.md index 93bc11dfe1ca..a34d78acb56d 100644 --- a/data/reusables/profile/access_org.md +++ b/data/reusables/profile/access_org.md @@ -1,2 +1,2 @@ -1. In the top right corner of {% data variables.product.product_name %}, click your profile photo, then click **Your organizations**. +1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Your organizations**. ![Your organizations in the profile menu](/assets/images/help/profile/your-organizations.png) diff --git a/data/reusables/profile/access_profile.md b/data/reusables/profile/access_profile.md index 98b5aa4d45a2..9a8e6026f724 100644 --- a/data/reusables/profile/access_profile.md +++ b/data/reusables/profile/access_profile.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}1. In the top right corner of {% data variables.product.product_name %}, click your profile photo, then click **Your profile**. +{% ifversion fpt or ghec %}1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Your profile**. ![Profile photo](/assets/images/help/profile/top_right_avatar.png){% else %} -1. In the top right corner of {% data variables.product.product_name %}, click your profile photo, then click **Your profile**. +1. In the top right corner of {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}, click your profile photo, then click **Your profile**. ![Profile photo](/assets/images/enterprise/settings/top_right_avatar.png){% endif %} diff --git a/data/reusables/project-management/copy-project-boards.md b/data/reusables/project-management/copy-project-boards.md index 84e3fde683e0..ce3a80ab6c00 100644 --- a/data/reusables/project-management/copy-project-boards.md +++ b/data/reusables/project-management/copy-project-boards.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can also copy a project board to reuse its customizations for similar projects. For more information, see "[Copying a project board](/articles/copying-a-project-board)." {% endif %} diff --git a/data/reusables/project-management/project-board-import-with-api.md b/data/reusables/project-management/project-board-import-with-api.md index ba15893fea96..559e748a3783 100644 --- a/data/reusables/project-management/project-board-import-with-api.md +++ b/data/reusables/project-management/project-board-import-with-api.md @@ -1 +1 @@ -You can use {% data variables.product.prodname_dotcom %}'s API to import a project board. For more information, see "[importProject](/graphql/reference/mutations#importproject/)." +You can use {% data variables.product.prodname_dotcom %}'s API to import a project board. For more information, see "[importProject]({% ifversion ghec%}/free-pro-team@latest{% endif %}/graphql/reference/mutations#importproject/)." diff --git a/data/reusables/projects/project_boards_old.md b/data/reusables/projects/project_boards_old.md index 7b01dd23aab3..3dcb812342f6 100644 --- a/data/reusables/projects/project_boards_old.md +++ b/data/reusables/projects/project_boards_old.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} diff --git a/data/reusables/pull_requests/close-issues-using-keywords.md b/data/reusables/pull_requests/close-issues-using-keywords.md index b169a4b03a23..b6d3070db6e8 100644 --- a/data/reusables/pull_requests/close-issues-using-keywords.md +++ b/data/reusables/pull_requests/close-issues-using-keywords.md @@ -1 +1 @@ -You can link a pull request to an issue to{% ifversion fpt or ghes or ghae %} show that a fix is in progress and to{% endif %} automatically close the issue when someone merges the pull request. For more information, see "[Linking a pull request to an issue](/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue)." +You can link a pull request to an issue to{% ifversion fpt or ghes or ghae or ghec %} show that a fix is in progress and to{% endif %} automatically close the issue when someone merges the pull request. For more information, see "[Linking a pull request to an issue](/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue)." diff --git a/data/reusables/pull_requests/collect-co-author-commit-git-config-info.md b/data/reusables/pull_requests/collect-co-author-commit-git-config-info.md index 115e9308702c..1f6be9b84c44 100644 --- a/data/reusables/pull_requests/collect-co-author-commit-git-config-info.md +++ b/data/reusables/pull_requests/collect-co-author-commit-git-config-info.md @@ -1 +1 @@ -1. Collect the name and email address for each co-author.{% ifversion fpt %} If a person chooses to keep their email address private, you should use their {% data variables.product.product_name %}-provided `no-reply` email to protect their privacy.{% endif %} +1. Collect the name and email address for each co-author.{% ifversion fpt or ghec %} If a person chooses to keep their email address private, you should use their {% data variables.product.product_name %}-provided `no-reply` email to protect their privacy.{% endif %} diff --git a/data/reusables/pull_requests/perms-to-open-pull-request.md b/data/reusables/pull_requests/perms-to-open-pull-request.md index 11c96e34161f..881d727dede8 100644 --- a/data/reusables/pull_requests/perms-to-open-pull-request.md +++ b/data/reusables/pull_requests/perms-to-open-pull-request.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} diff --git a/data/reusables/pull_requests/resolving-conversations.md b/data/reusables/pull_requests/resolving-conversations.md index 769b10b67744..6b99c3007d46 100644 --- a/data/reusables/pull_requests/resolving-conversations.md +++ b/data/reusables/pull_requests/resolving-conversations.md @@ -12,7 +12,7 @@ The entire conversation will be collapsed and marked as resolved, making it easi If the suggestion in a comment is out of your pull request's scope, you can open a new issue that tracks the feedback and links back to the original comment. For more information, see "[Opening an issue from a comment](/github/managing-your-work-on-github/opening-an-issue-from-a-comment)." -{% ifversion fpt or ghes > 3.1 or ghae-issue-4382 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4382 or ghec %} #### Discovering and navigating conversations You can discover and navigate to all the conversations in your pull request using the **Conversations** menu that's shown at the top of the **Files Changed** tab. diff --git a/data/reusables/pull_requests/you-can-auto-merge.md b/data/reusables/pull_requests/you-can-auto-merge.md index e995a0c74cb3..88a7903ac95c 100644 --- a/data/reusables/pull_requests/you-can-auto-merge.md +++ b/data/reusables/pull_requests/you-can-auto-merge.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghae or ghes > 3.0 %} +{% ifversion fpt or ghae or ghes > 3.0 or ghec %} You can configure a pull request to merge automatically when all merge requirements are met. For more information, see "[Automatically merging a pull request](/github/collaborating-with-issues-and-pull-requests/automatically-merging-a-pull-request)." {% endif %} diff --git a/data/reusables/repositories/blocked-passwords.md b/data/reusables/repositories/blocked-passwords.md index 06d45f1c6da3..a6d9c7bd35ba 100644 --- a/data/reusables/repositories/blocked-passwords.md +++ b/data/reusables/repositories/blocked-passwords.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} When you type a password to sign in, create an account, or change your password, {% data variables.product.product_name %} will check if the password you entered is considered weak according to datasets like HaveIBeenPwned. The password may be identified as weak even if you have never used that password before. {% data variables.product.product_name %} only inspects the password at the time you type it, and never stores the password you entered in plaintext. For more information, see [HaveIBeenPwned](https://haveibeenpwned.com/). diff --git a/data/reusables/repositories/copy-clone-url.md b/data/reusables/repositories/copy-clone-url.md index 95dc853da62a..0125a9db8c65 100644 --- a/data/reusables/repositories/copy-clone-url.md +++ b/data/reusables/repositories/copy-clone-url.md @@ -1,6 +1,6 @@ 1. Above the list of files, click {% octicon "download" aria-label="The download icon" %} **Code**. !["Code" button](/assets/images/help/repository/code-button.png) -1. To clone the repository using HTTPS, under "Clone with HTTPS", click {% octicon "clippy" aria-label="The clipboard icon" %}. To clone the repository using an SSH key, including a certificate issued by your organization's SSH certificate authority, click **Use SSH**, then click {% octicon "clippy" aria-label="The clipboard icon" %}.{% ifversion fpt or ghes > 2.22 or ghae %} To clone a repository using {% data variables.product.prodname_cli %}, click **Use {% data variables.product.prodname_cli %}**, then click {% octicon "clippy" aria-label="The clipboard icon" %}.{% endif %} +1. To clone the repository using HTTPS, under "Clone with HTTPS", click {% octicon "clippy" aria-label="The clipboard icon" %}. To clone the repository using an SSH key, including a certificate issued by your organization's SSH certificate authority, click **Use SSH**, then click {% octicon "clippy" aria-label="The clipboard icon" %}.{% ifversion fpt or ghes > 2.22 or ghae or ghec %} To clone a repository using {% data variables.product.prodname_cli %}, click **Use {% data variables.product.prodname_cli %}**, then click {% octicon "clippy" aria-label="The clipboard icon" %}.{% endif %} ![The clipboard icon for copying the URL to clone a repository](/assets/images/help/repository/https-url-clone.png) - {% ifversion fpt or ghes or ghae %} + {% ifversion fpt or ghes or ghae or ghec %} ![The clipboard icon for copying the URL to clone a repository with GitHub CLI](/assets/images/help/repository/https-url-clone-cli.png){% endif %} diff --git a/data/reusables/repositories/default-issue-templates.md b/data/reusables/repositories/default-issue-templates.md index cd6b33058730..f0eeada25fa6 100644 --- a/data/reusables/repositories/default-issue-templates.md +++ b/data/reusables/repositories/default-issue-templates.md @@ -1,2 +1,2 @@ -You can create default issue templates{% ifversion fpt or ghes or ghae %} and a default configuration file for issue templates{% endif %} for your organization{% ifversion fpt or ghes or ghae %} or user account{% endif %}. For more information, see "[Creating a default community health file](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." +You can create default issue templates{% ifversion fpt or ghes or ghae or ghec %} and a default configuration file for issue templates{% endif %} for your organization{% ifversion fpt or ghes or ghae or ghec %} or user account{% endif %}. For more information, see "[Creating a default community health file](/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)." diff --git a/data/reusables/repositories/deleted_forks_from_private_repositories_warning.md b/data/reusables/repositories/deleted_forks_from_private_repositories_warning.md index ddbf49a52775..290affbc4863 100644 --- a/data/reusables/repositories/deleted_forks_from_private_repositories_warning.md +++ b/data/reusables/repositories/deleted_forks_from_private_repositories_warning.md @@ -6,6 +6,6 @@ - When [LDAP Sync is enabled](/enterprise/admin/authentication/using-ldap#enabling-ldap-sync), if you remove a person from a repository, they will lose access but their forks will not be deleted. If the person is added to a team with access to the original organization repository within three months, their access to the forks will be automatically restored on the next sync.{% endif %} - You are responsible for ensuring that people who have lost access to a repository delete any confidential information or intellectual property. -- People with admin permissions to a private{% ifversion fpt or ghes or ghae %} or internal{% endif %} repository can disallow forking of that repository, and organization owners can disallow forking of any private{% ifversion fpt or ghes or ghae %} or internal{% endif %} repository in an organization. For more information, see "[Managing the forking policy for your organization](/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)" and "[Managing the forking policy for your repository](/github/administering-a-repository/managing-the-forking-policy-for-your-repository)." +- People with admin permissions to a private{% ifversion fpt or ghes or ghae or ghec %} or internal{% endif %} repository can disallow forking of that repository, and organization owners can disallow forking of any private{% ifversion fpt or ghes or ghae or ghec %} or internal{% endif %} repository in an organization. For more information, see "[Managing the forking policy for your organization](/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)" and "[Managing the forking policy for your repository](/github/administering-a-repository/managing-the-forking-policy-for-your-repository)." {% endwarning %} diff --git a/data/reusables/repositories/dependency-review.md b/data/reusables/repositories/dependency-review.md index 4c29e05ad2dd..734a376e3b24 100644 --- a/data/reusables/repositories/dependency-review.md +++ b/data/reusables/repositories/dependency-review.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 %} +{% ifversion fpt or ghes > 3.1 or ghae-issue-4864 or ghec %} Additionally, {% data variables.product.prodname_dotcom %} can review any dependencies added, updated, or removed in a pull request made against the default branch of a repository, and flag any changes that would introduce a vulnerability into your project. This allows you to spot and deal with vulnerable dependencies before, rather than after, they reach your codebase. For more information, see "[Reviewing dependency changes in a pull request](/github/collaborating-with-issues-and-pull-requests/reviewing-dependency-changes-in-a-pull-request)." {% endif %} diff --git a/data/reusables/repositories/deploy-keys.md b/data/reusables/repositories/deploy-keys.md index 3f3948dc84fb..f9060120603c 100644 --- a/data/reusables/repositories/deploy-keys.md +++ b/data/reusables/repositories/deploy-keys.md @@ -1 +1 @@ -You can launch projects from a {% data variables.product.product_name %} repository to your server by using a deploy key, which is an SSH key that grants access to a single repository. {% data variables.product.product_name %} attaches the public part of the key directly to your repository instead of a personal user account, and the private part of the key remains on your server. For more information, see "[Delivering deployments](/rest/guides/delivering-deployments)." +You can launch projects from a repository on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} to your server by using a deploy key, which is an SSH key that grants access to a single repository. {% data variables.product.product_name %} attaches the public part of the key directly to your repository instead of a personal user account, and the private part of the key remains on your server. For more information, see "[Delivering deployments](/rest/guides/delivering-deployments)." diff --git a/data/reusables/repositories/internal-repo-default.md b/data/reusables/repositories/internal-repo-default.md index e59bbac89e33..10156b3b1cfc 100644 --- a/data/reusables/repositories/internal-repo-default.md +++ b/data/reusables/repositories/internal-repo-default.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} Internal repositories are the default setting for all new repositories created in an organization owned by an enterprise account. {% endif %} diff --git a/data/reusables/repositories/navigate-to-job-superlinter.md b/data/reusables/repositories/navigate-to-job-superlinter.md index d38db581b93a..3bf838a438f5 100644 --- a/data/reusables/repositories/navigate-to-job-superlinter.md +++ b/data/reusables/repositories/navigate-to-job-superlinter.md @@ -1,4 +1,4 @@ -{% ifversion fpt or ghes > 3.0 %} +{% ifversion fpt or ghes > 3.0 or ghec %} 1. Under **Jobs** or in the visualization graph, click the job you want to see. ![Lint code base job](/assets/images/help/repository/superlinter-lint-code-base-job-updated.png) {% elsif ghes > 2.22 %} diff --git a/data/reusables/repositories/navigate-to-repo.md b/data/reusables/repositories/navigate-to-repo.md index fa308c015c0a..cfc2b47c7fb8 100644 --- a/data/reusables/repositories/navigate-to-repo.md +++ b/data/reusables/repositories/navigate-to-repo.md @@ -1 +1 @@ -1. On {% data variables.product.product_name %}, navigate to the main page of the repository. +1. On {% data variables.product.product_location %}, navigate to the main page of the repository. diff --git a/data/reusables/repositories/repo-size-limit.md b/data/reusables/repositories/repo-size-limit.md index b068676702be..08da5d26b726 100644 --- a/data/reusables/repositories/repo-size-limit.md +++ b/data/reusables/repositories/repo-size-limit.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} Repositories and individual files are subject to size limits. For more information, see "[What is my disk quota?](/articles/what-is-my-disk-quota)" {% endif %} diff --git a/data/reusables/repositories/security-alert-delivery-options.md b/data/reusables/repositories/security-alert-delivery-options.md index 84e0b4354f3f..35ab3f8fef9e 100644 --- a/data/reusables/repositories/security-alert-delivery-options.md +++ b/data/reusables/repositories/security-alert-delivery-options.md @@ -1,3 +1,3 @@ {% ifversion not ghae %} -If your repository has a supported dependency manifest{% ifversion fpt %} (and if you've set up the dependency graph if it's a private repository){% endif %}, whenever {% data variables.product.product_name %} detects a vulnerable dependency in your repository, you will receive a weekly digest email. You can also configure your security alerts as web notifications, individual email notifications, daily email digests, or alerts in the {% data variables.product.product_name %} interface. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." +If your repository has a supported dependency manifest{% ifversion fpt or ghec %} (and if you've set up the dependency graph if it's a private repository){% endif %}, whenever {% data variables.product.product_name %} detects a vulnerable dependency in your repository, you will receive a weekly digest email. You can also configure your security alerts as web notifications, individual email notifications, daily email digests, or alerts in the {% data variables.product.product_name %} interface. For more information, see "[About alerts for vulnerable dependencies](/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies)." {% endif %} diff --git a/data/reusables/repositories/security-alerts-x-github-severity.md b/data/reusables/repositories/security-alerts-x-github-severity.md index 4b353c8b2a42..eaeb2562f97e 100644 --- a/data/reusables/repositories/security-alerts-x-github-severity.md +++ b/data/reusables/repositories/security-alerts-x-github-severity.md @@ -1 +1 @@ -Email notifications for {% ifversion fpt or ghes %}{% data variables.product.prodname_dependabot_alerts %}{% else %}security alerts{% endif %} that affect one or more repositories include the `X-GitHub-Severity` header field. You can use the value of the `X-GitHub-Severity` header field to filter email notifications for {% ifversion fpt or ghes %}{% data variables.product.prodname_dependabot_alerts %}{% else %}security alerts{% endif %}. +Email notifications for {% ifversion fpt or ghes or ghec %}{% data variables.product.prodname_dependabot_alerts %}{% else %}security alerts{% endif %} that affect one or more repositories include the `X-GitHub-Severity` header field. You can use the value of the `X-GitHub-Severity` header field to filter email notifications for {% ifversion fpt or ghes or ghec %}{% data variables.product.prodname_dependabot_alerts %}{% else %}security alerts{% endif %}. diff --git a/data/reusables/repositories/security-guidelines.md b/data/reusables/repositories/security-guidelines.md index 2be7c536fdcf..b958030cbb49 100644 --- a/data/reusables/repositories/security-guidelines.md +++ b/data/reusables/repositories/security-guidelines.md @@ -1,3 +1,3 @@ -{% ifversion fpt or ghes > 3.0 or ghae-next %} +{% ifversion fpt or ghes > 3.0 or ghae-next or ghec %} You can create a security policy to give people instructions for reporting security vulnerabilities in your project. For more information, see "[Adding a security policy to your repository](/code-security/getting-started/adding-a-security-policy-to-your-repository)." {% endif %} diff --git a/data/reusables/repositories/select-marketplace-apps.md b/data/reusables/repositories/select-marketplace-apps.md index 5e4bbcefb2d0..f6f74cd9b7da 100644 --- a/data/reusables/repositories/select-marketplace-apps.md +++ b/data/reusables/repositories/select-marketplace-apps.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. Optionally, if the personal account or organization in which you're creating uses any {% data variables.product.prodname_github_apps %} from {% data variables.product.prodname_marketplace %}, select any apps you'd like to use in the repository. ![List of your account's {% data variables.product.prodname_github_apps %} from {% data variables.product.prodname_marketplace %} and option to grant access](/assets/images/help/repository/create-repository-choose-marketplace-apps.png) {% endif %} diff --git a/data/reusables/repositories/sidebar-dependabot-alerts.md b/data/reusables/repositories/sidebar-dependabot-alerts.md index d82b2b7667d1..fdeed8b96338 100644 --- a/data/reusables/repositories/sidebar-dependabot-alerts.md +++ b/data/reusables/repositories/sidebar-dependabot-alerts.md @@ -1,2 +1,2 @@ -1. In the security sidebar, click **{% data variables.product.prodname_dependabot_alerts %}**.{% ifversion fpt %} +1. In the security sidebar, click **{% data variables.product.prodname_dependabot_alerts %}**.{% ifversion fpt or ghec %} ![{% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/help/repository/dependabot-alerts-tab.png){% else %}![{% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/repository/dependabot-alerts-tab.png){% endif %} diff --git a/data/reusables/repositories/sidebar-issues.md b/data/reusables/repositories/sidebar-issues.md index a3735f592422..f5e718265196 100644 --- a/data/reusables/repositories/sidebar-issues.md +++ b/data/reusables/repositories/sidebar-issues.md @@ -1,4 +1,4 @@ 2. Under your repository name, click {% octicon "issue-opened" aria-label="The issues icon" %} **Issues**. - {% ifversion fpt or ghes > 3.1 or ghae-next %} + {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Issues tab](/assets/images/help/repository/repo-tabs-issues.png){% else %} ![Issues tab](/assets/images/enterprise/3.1/help/repository/repo-tabs-issues.png){% endif %} diff --git a/data/reusables/repositories/sidebar-pr.md b/data/reusables/repositories/sidebar-pr.md index 525fbbd26f2d..35051d69fb25 100644 --- a/data/reusables/repositories/sidebar-pr.md +++ b/data/reusables/repositories/sidebar-pr.md @@ -1,4 +1,4 @@ 1. Under your repository name, click {% octicon "git-pull-request" aria-label="The pull request icon" %} **Pull requests**. - {% ifversion fpt or ghes > 3.1 or ghae-next %} + {% ifversion fpt or ghes > 3.1 or ghae-next or ghec %} ![Issues and pull requests tab selection](/assets/images/help/repository/repo-tabs-pull-requests.png){% else %} ![Issues tab](/assets/images/enterprise/3.1/help/repository/repo-tabs-pull-requests.png){% endif %} diff --git a/data/reusables/repositories/squash-and-rebase-linear-commit-hisitory.md b/data/reusables/repositories/squash-and-rebase-linear-commit-hisitory.md index a056cfa2b29d..eddee42d31e0 100644 --- a/data/reusables/repositories/squash-and-rebase-linear-commit-hisitory.md +++ b/data/reusables/repositories/squash-and-rebase-linear-commit-hisitory.md @@ -1 +1 @@ -{% ifversion fpt or ghes or ghae %}If there is a protected branch rule in your repository that requires a linear commit history, you must allow squash merging, rebase merging, or both. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches#require-pull-request-reviews-before-merging)."{% endif %} +{% ifversion fpt or ghes or ghae or ghec %}If there is a protected branch rule in your repository that requires a linear commit history, you must allow squash merging, rebase merging, or both. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches#require-pull-request-reviews-before-merging)."{% endif %} diff --git a/data/reusables/repositories/start-line-comment.md b/data/reusables/repositories/start-line-comment.md index 6e3d8c62e9fe..1990d4f680d7 100644 --- a/data/reusables/repositories/start-line-comment.md +++ b/data/reusables/repositories/start-line-comment.md @@ -1,2 +1,2 @@ -1. Hover over the line of code where you'd like to add a comment, and click the blue comment icon.{% ifversion fpt or ghes or ghae %} To add a comment on multiple lines, click and drag to select the range of lines, then click the blue comment icon.{% endif %} +1. Hover over the line of code where you'd like to add a comment, and click the blue comment icon.{% ifversion fpt or ghes or ghae or ghec %} To add a comment on multiple lines, click and drag to select the range of lines, then click the blue comment icon.{% endif %} ![Blue comment icon](/assets/images/help/commits/hover-comment-icon.gif) diff --git a/data/reusables/repositories/suggest-changes.md b/data/reusables/repositories/suggest-changes.md index d41c4c67b1b5..c9079f8ec068 100644 --- a/data/reusables/repositories/suggest-changes.md +++ b/data/reusables/repositories/suggest-changes.md @@ -1,2 +1,2 @@ -1. Optionally, to suggest a specific change to the line{% ifversion fpt or ghes or ghae %} or lines{% endif %}, click {% octicon "diff" aria-label="The diff symbol" %}, then edit the text within the suggestion block. +1. Optionally, to suggest a specific change to the line{% ifversion fpt or ghes or ghae or ghec %} or lines{% endif %}, click {% octicon "diff" aria-label="The diff symbol" %}, then edit the text within the suggestion block. ![Suggestion block](/assets/images/help/pull_requests/suggestion-block.png) diff --git a/data/reusables/repositories/transfer-repository-steps.md b/data/reusables/repositories/transfer-repository-steps.md index b701e6b93a2c..b2e63a734680 100644 --- a/data/reusables/repositories/transfer-repository-steps.md +++ b/data/reusables/repositories/transfer-repository-steps.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. Under "Danger Zone", click **Transfer**. ![Transfer button](/assets/images/help/repository/repo-transfer.png) 1. Read the information about transferring a repository, then type the name of the user or organization you'd like to transfer ownership of the repository to. diff --git a/data/reusables/repositories/view-failed-job-results-superlinter.md b/data/reusables/repositories/view-failed-job-results-superlinter.md index 43332d58c297..20dae33d18ef 100644 --- a/data/reusables/repositories/view-failed-job-results-superlinter.md +++ b/data/reusables/repositories/view-failed-job-results-superlinter.md @@ -1,6 +1,6 @@ -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} 1. Any failed steps are automatically expanded to display the results. - {% ifversion fpt or ghes > 3.0 %} + {% ifversion fpt or ghes > 3.0 or ghec %} ![Super linter workflow results](/assets/images/help/repository/super-linter-workflow-results-updated-2.png){% else %} ![Super linter workflow results](/assets/images/help/repository/super-linter-workflow-results-updated.png){% endif %} {% else %} diff --git a/data/reusables/repositories/view-specific-line-superlinter.md b/data/reusables/repositories/view-specific-line-superlinter.md index 9a326212674d..394e79ec6742 100644 --- a/data/reusables/repositories/view-specific-line-superlinter.md +++ b/data/reusables/repositories/view-specific-line-superlinter.md @@ -1,6 +1,6 @@ -{% ifversion fpt or ghes > 2.22 %} +{% ifversion fpt or ghes > 2.22 or ghec %} 1. Optionally, to get a link to a specific line in the logs, click on the step's line number. You can then copy the link from the address bar of your web browser. - {% ifversion fpt or ghes > 3.0 %} + {% ifversion fpt or ghes > 3.0 or ghec %} ![Button to copy link](/assets/images/help/repository/copy-link-button-updated-2.png) {% else %} ![Button to copy link](/assets/images/help/repository/copy-link-button-updated.png) diff --git a/data/reusables/repositories/workflow-notifications.md b/data/reusables/repositories/workflow-notifications.md index d9f2a271db79..3bf01b0f2565 100644 --- a/data/reusables/repositories/workflow-notifications.md +++ b/data/reusables/repositories/workflow-notifications.md @@ -1,5 +1,5 @@ If you enable email or web notifications for {% data variables.product.prodname_actions %}, you'll receive a notification when any workflow runs that you've triggered have completed. The notification will include the workflow run's status (including successful, failed, neutral, and canceled runs). You can also choose to receive a notification only when a workflow run has failed. For more information about enabling or disabling notifications, see "[About notifications](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications)." -Notifications for scheduled workflows are sent to the user who initially created the workflow. If a different user updates the cron syntax in the workflow file, subsequent notifications will be sent to that user instead.{% ifversion fpt or ghes > 2.22 %} If a scheduled workflow is disabled and then re-enabled, notifications will be sent to the user who re-enabled the workflow rather than the user who last modified the cron syntax.{% endif %} +Notifications for scheduled workflows are sent to the user who initially created the workflow. If a different user updates the cron syntax in the workflow file, subsequent notifications will be sent to that user instead.{% ifversion fpt or ghes > 2.22 or ghec %} If a scheduled workflow is disabled and then re-enabled, notifications will be sent to the user who re-enabled the workflow rather than the user who last modified the cron syntax.{% endif %} You can also see the status of workflow runs on a repository's Actions tab. For more information, see "[Managing a workflow run](/actions/automating-your-workflow-with-github-actions/managing-a-workflow-run)." diff --git a/data/reusables/repositories/you-can-fork.md b/data/reusables/repositories/you-can-fork.md index dfa12615a936..a06569b74dc1 100644 --- a/data/reusables/repositories/you-can-fork.md +++ b/data/reusables/repositories/you-can-fork.md @@ -1,7 +1,7 @@ {% ifversion ghae %}If the policies for your enterprise permit forking internal and private repositories, you{% else %}You{% endif %} can fork a repository to your user account or any organization where you have repository creation permissions. For more information, see "[Permission levels for an organization](/articles/permission-levels-for-an-organization)." -{% ifversion fpt or ghes %} +{% ifversion fpt or ghes or ghec %} -If you have access to a private repository and the owner permits forking, you can fork the repository to your user account or any organization on {% ifversion fpt %}{% data variables.product.prodname_team %}{% else %}{% data variables.product.product_location %}{% endif %} where you have repository creation permissions. {% ifversion fpt %}You cannot fork a private repository to an organization using {% data variables.product.prodname_free_team %}. For more information, see "[GitHub's products](/articles/githubs-products)."{% endif %} +If you have access to a private repository and the owner permits forking, you can fork the repository to your user account or any organization on {% ifversion fpt or ghec %}{% data variables.product.prodname_team %}{% else %}{% data variables.product.product_location %}{% endif %} where you have repository creation permissions. {% ifversion fpt or ghec %}You cannot fork a private repository to an organization using {% data variables.product.prodname_free_team %}. For more information, see "[GitHub's products](/articles/githubs-products)."{% endif %} {% endif %} diff --git a/data/reusables/rest-api/dotcom-only-guide-note.md b/data/reusables/rest-api/dotcom-only-guide-note.md index 5c873f01e0ba..c007486d6236 100644 --- a/data/reusables/rest-api/dotcom-only-guide-note.md +++ b/data/reusables/rest-api/dotcom-only-guide-note.md @@ -1,4 +1,4 @@ -{% ifversion not fpt %} +{% ifversion not fpt or ghec %} {% note %} diff --git a/data/reusables/saml/about-linked-identities.md b/data/reusables/saml/about-linked-identities.md index 25747fe6296b..ff141ede459a 100644 --- a/data/reusables/saml/about-linked-identities.md +++ b/data/reusables/saml/about-linked-identities.md @@ -1,3 +1,3 @@ -You can view the single sign-on identity that a member has linked to their {% data variables.product.product_name %} account. +You can view the single sign-on identity that a member has linked to their account on {% data variables.product.product_location %}. -If a member links the wrong identity to their {% data variables.product.product_name %} account, you can revoke the linked identity to allow the member to try again. +If a member links the wrong identity to their account on {% data variables.product.product_location %}, you can revoke the linked identity to allow the member to try again. diff --git a/data/reusables/saml/assert-the-administrator-attribute.md b/data/reusables/saml/assert-the-administrator-attribute.md index ff9e3bc75d7c..e94ebc5b94ed 100644 --- a/data/reusables/saml/assert-the-administrator-attribute.md +++ b/data/reusables/saml/assert-the-administrator-attribute.md @@ -1 +1 @@ -To make a person an enterprise owner, you must delegate ownership permission in your IdP. Include the `administrator` attribute in the SAML assertion for the user account on the IdP, with the value of `true`. For more information about enterprise owners, see "[Roles in an enterprise](/github/setting-up-and-managing-your-enterprise/roles-in-an-enterprise)." +To make a person an enterprise owner, you must delegate ownership permission in your IdP. Include the `administrator` attribute in the SAML assertion for the user account on the IdP, with the value of `true`. For more information about enterprise owners, see "[Roles in an enterprise](/admin/user-management/managing-users-in-your-enterprise/roles-in-an-enterprise)." diff --git a/data/reusables/saml/saml-supported-idps.md b/data/reusables/saml/saml-supported-idps.md index e790ac95dbd5..0d54e7877273 100644 --- a/data/reusables/saml/saml-supported-idps.md +++ b/data/reusables/saml/saml-supported-idps.md @@ -1,7 +1,14 @@ -We offer limited support for all identity providers that implement the SAML 2.0 standard. We officially support these identity providers that have been internally tested: +{% data variables.product.product_name %} supports SAML SSO with IdPs that implement the SAML 2.0 standard. For more information, see the [SAML Wiki](https://wiki.oasis-open.org/security) on the OASIS website. + +{% data variables.product.company_short %} officially supports and internally tests the following IdPs. + +{% ifversion fpt or ghec or ghes %} - Active Directory Federation Services (AD FS) - Azure Active Directory (Azure AD) - Okta - OneLogin - PingOne - Shibboleth +{% elsif ghae %} +- Azure Active Directory (Azure AD) +{% endif %} \ No newline at end of file diff --git a/data/reusables/saml/you-must-periodically-authenticate.md b/data/reusables/saml/you-must-periodically-authenticate.md index e47803a0acb7..da3e05cc5c93 100644 --- a/data/reusables/saml/you-must-periodically-authenticate.md +++ b/data/reusables/saml/you-must-periodically-authenticate.md @@ -1 +1 @@ -You must periodically authenticate with your SAML IdP to authenticate and gain access to {% ifversion fpt %}the organization's resources on {% data variables.product.prodname_dotcom_the_website %}{% elsif ghae %}{% data variables.product.product_location %}{% endif %}. The duration of this login period is specified by your IdP and is generally 24 hours. This periodic login requirement limits the length of access and requires you to re-identify yourself to continue. {% ifversion fpt %}You can view and manage your active SAML sessions in your security settings. For more information, see "[Viewing and managing your active SAML sessions](/articles/viewing-and-managing-your-active-saml-sessions)."{% endif %} +You must periodically authenticate with your SAML IdP to authenticate and gain access to {% ifversion fpt or ghec %}the organization's resources on {% data variables.product.prodname_dotcom_the_website %}{% elsif ghae %}{% data variables.product.product_location %}{% endif %}. The duration of this login period is specified by your IdP and is generally 24 hours. This periodic login requirement limits the length of access and requires you to re-identify yourself to continue. {% ifversion fpt or ghec %}You can view and manage your active SAML sessions in your security settings. For more information, see "[Viewing and managing your active SAML sessions](/articles/viewing-and-managing-your-active-saml-sessions)."{% endif %} diff --git a/data/reusables/scim/after-you-configure-saml.md b/data/reusables/scim/after-you-configure-saml.md index 0fcca436f240..5380291f3844 100644 --- a/data/reusables/scim/after-you-configure-saml.md +++ b/data/reusables/scim/after-you-configure-saml.md @@ -1 +1 @@ -By default, your IdP does not communicate with {% data variables.product.product_name %} automatically when you assign or unassign the application. {% data variables.product.product_name %} {% ifversion fpt %}provisions access to your resources on {% else %}creates a user account {% endif %}using SAML Just-in-Time (JIT) provisioning the first time someone navigates to {% ifversion fpt %}your resources on {% endif %} {% data variables.product.product_name %} and signs in by authenticating through your IdP. You may need to manually notify users when you grant access to {% data variables.product.product_name %}, and you must manually {% ifversion fpt %}deprovision access {% else %}deactivate the user account on {% endif %}{% data variables.product.product_name %} during offboarding. You can use SCIM to provision and deprovision {% ifversion fpt %}access to organizations owned by your enterprise on {% data variables.product.prodname_dotcom_the_website %} {% else %}user accounts and access for {% data variables.product.product_name %} {% endif %}automatically when you assign or unassign the application on your IdP. +By default, your IdP does not communicate with {% data variables.product.product_name %} automatically when you assign or unassign the application. {% data variables.product.product_name %} {% ifversion fpt or ghec %}provisions access to your resources on {% else %}creates a user account {% endif %}using SAML Just-in-Time (JIT) provisioning the first time someone navigates to {% ifversion fpt or ghec %}your resources on {% endif %} {% data variables.product.product_name %} and signs in by authenticating through your IdP. You may need to manually notify users when you grant access to {% data variables.product.product_name %}, and you must manually {% ifversion fpt or ghec %}deprovision access {% else %}deactivate the user account on {% endif %}{% data variables.product.product_name %} during offboarding. You can use SCIM to provision and deprovision {% ifversion fpt or ghec %}access to organizations owned by your enterprise on {% data variables.product.prodname_dotcom_the_website %} {% else %}user accounts and access for {% data variables.product.product_name %} {% endif %}automatically when you assign or unassign the application on your IdP. diff --git a/data/reusables/secret-scanning/about-secret-scanning.md b/data/reusables/secret-scanning/about-secret-scanning.md index 518d3650e360..287a8fa52377 100644 --- a/data/reusables/secret-scanning/about-secret-scanning.md +++ b/data/reusables/secret-scanning/about-secret-scanning.md @@ -1,2 +1,2 @@ -If someone checks a secret with a known pattern into a {% ifversion fpt %}public or private{% endif %} repository on {% data variables.product.product_name %}, {% data variables.product.prodname_secret_scanning %} catches the secret as it's checked in, and helps you mitigate the impact of the leak. +If someone checks a secret with a known pattern into a {% ifversion fpt or ghec %}public or private{% endif %} repository on {% data variables.product.product_name %}, {% data variables.product.prodname_secret_scanning %} catches the secret as it's checked in, and helps you mitigate the impact of the leak. Repository administrators are notified about any commit that contains a secret, and they can quickly view all detected secrets in the Security tab for the repository. diff --git a/data/reusables/security-advisory/link-browsing-advisory-db.md b/data/reusables/security-advisory/link-browsing-advisory-db.md index f902e28cc183..69348c7684a5 100644 --- a/data/reusables/security-advisory/link-browsing-advisory-db.md +++ b/data/reusables/security-advisory/link-browsing-advisory-db.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} For more information, see "[Browsing security vulnerabilities in the {% data variables.product.prodname_advisory_database %}](/code-security/supply-chain-security/browsing-security-vulnerabilities-in-the-github-advisory-database)" and "[About {% data variables.product.prodname_security_advisories %}](/code-security/security-advisories/about-github-security-advisories)." {% else %} For more information about advisory data, see "Browsing security vulnerabilities in the {% data variables.product.prodname_advisory_database %}." diff --git a/data/reusables/security/displayed-information.md b/data/reusables/security/displayed-information.md index 753fc26cb3bb..54d53c355068 100644 --- a/data/reusables/security/displayed-information.md +++ b/data/reusables/security/displayed-information.md @@ -1,7 +1,7 @@ When you enable one or more security and analysis features for existing repositories, you will see any results displayed on {% data variables.product.prodname_dotcom %} within minutes: - All the existing repositories will have the selected configuration. -- New repositories will follow the selected configuration if you've enabled the checkbox for new repositories.{% ifversion fpt %} +- New repositories will follow the selected configuration if you've enabled the checkbox for new repositories.{% ifversion fpt or ghec %} - We use the permissions to scan for manifest files to apply the relevant services. - If enabled, you'll see dependency information in the dependency graph. - If enabled, {% data variables.product.prodname_dotcom %} will generate {% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies. diff --git a/data/reusables/security/security-and-analysis-features-enable-read-only.md b/data/reusables/security/security-and-analysis-features-enable-read-only.md index 4b433230f003..e6fae918fa33 100644 --- a/data/reusables/security/security-and-analysis-features-enable-read-only.md +++ b/data/reusables/security/security-and-analysis-features-enable-read-only.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} If you enable security and analysis features, {% data variables.product.company_short %} performs read-only analysis on your repository. For more information, see "[About {% data variables.product.company_short %}'s use of your data](/github/understanding-how-github-uses-and-protects-your-data/about-githubs-use-of-your-data)." {% endif %} diff --git a/data/reusables/security/some-security-and-analysis-features-are-enabled-by-default.md b/data/reusables/security/some-security-and-analysis-features-are-enabled-by-default.md index 5d6e8bbf72ac..08b23b62267b 100644 --- a/data/reusables/security/some-security-and-analysis-features-are-enabled-by-default.md +++ b/data/reusables/security/some-security-and-analysis-features-are-enabled-by-default.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} {% note %} **Note**: You can't disable some security and analysis features that are enabled by default for public repositories. diff --git a/data/reusables/sponsors/accept-legal-terms.md b/data/reusables/sponsors/accept-legal-terms.md index d1538aa73322..9ce7905d6a3a 100644 --- a/data/reusables/sponsors/accept-legal-terms.md +++ b/data/reusables/sponsors/accept-legal-terms.md @@ -1 +1 @@ -1. Review the [{% data variables.product.prodname_sponsors %} Additional Terms](/github/site-policy/github-sponsors-additional-terms) and [{% data variables.product.prodname_dotcom %} Privacy Statement](/articles/github-privacy-statement), then click **Join the waitlist**. +1. Review the [{% data variables.product.prodname_sponsors %} Additional Terms](/free-pro-team@latest/github/site-policy/github-sponsors-additional-terms) and [{% data variables.product.prodname_dotcom %} Privacy Statement](/free-pro-team@latest/github/site-policy/github-privacy-statement), then click **Join the waitlist**. diff --git a/data/reusables/sponsors/legal-additional-terms.md b/data/reusables/sponsors/legal-additional-terms.md index 434fee48afe6..5c60b895113f 100644 --- a/data/reusables/sponsors/legal-additional-terms.md +++ b/data/reusables/sponsors/legal-additional-terms.md @@ -1 +1 @@ -The {% data variables.product.prodname_matching_fund %} is a gift designed to encourage community funding of work on open source and is subject to additional terms and conditions. For detailed information about the {% data variables.product.prodname_matching_fund %}, see the "[{% data variables.product.prodname_sponsors %} Additional Terms](/github/site-policy/github-sponsors-additional-terms)." +The {% data variables.product.prodname_matching_fund %} is a gift designed to encourage community funding of work on open source and is subject to additional terms and conditions. For detailed information about the {% data variables.product.prodname_matching_fund %}, see the "[{% data variables.product.prodname_sponsors %} Additional Terms](/free-pro-team@latest/github/site-policy/github-sponsors-additional-terms)." diff --git a/data/reusables/sponsors/payout-info.md b/data/reusables/sponsors/payout-info.md index f2e4ba89de2c..002122f173d2 100644 --- a/data/reusables/sponsors/payout-info.md +++ b/data/reusables/sponsors/payout-info.md @@ -1 +1 @@ -For information about timing for payments from {% data variables.product.prodname_sponsors %}, see "[GitHub Sponsors Additional Terms](/github/site-policy/github-sponsors-additional-terms#43-payment-timing)." +For information about timing for payments from {% data variables.product.prodname_sponsors %}, see "[GitHub Sponsors Additional Terms](/free-pro-team@latest/github/site-policy/github-sponsors-additional-terms#43-payment-timing)." diff --git a/data/reusables/sponsors/select-sponsorship-billing.md b/data/reusables/sponsors/select-sponsorship-billing.md index 6e89a04d1775..8395b954d0e5 100644 --- a/data/reusables/sponsors/select-sponsorship-billing.md +++ b/data/reusables/sponsors/select-sponsorship-billing.md @@ -1 +1 @@ -4. Under "Billing information", review your payment details. Optionally, to change the payment details for your entire {% data variables.product.product_name %} account, click **Edit**. Then, follow the prompts to complete the payment form. +4. Under "Billing information", review your payment details. Optionally, to change the payment details for your entire account on {% data variables.product.product_location %}, click **Edit**. Then, follow the prompts to complete the payment form. diff --git a/data/reusables/ssh/key-type-support.md b/data/reusables/ssh/key-type-support.md index c844af9547be..4d8f1bf49420 100644 --- a/data/reusables/ssh/key-type-support.md +++ b/data/reusables/ssh/key-type-support.md @@ -2,7 +2,7 @@ **Note:** {% data variables.product.company_short %} is improving security by dropping older, insecure key types. -DSA keys (`ssh-dss`) are no longer supported. Existing keys will continue to function through March 15, 2022. You cannot add new DSA keys to your user account on {% data variables.product.product_name %}. +DSA keys (`ssh-dss`) are no longer supported. Existing keys will continue to function through March 15, 2022. You cannot add new DSA keys to your user account on {% data variables.product.product_location %}. RSA keys (`ssh-rsa`) with a `valid_after` before November 2, 2021 may continue to use any signature algorithm. RSA keys generated after that date must use a SHA-2 signature algorithm. Some older clients may need to be upgraded in order to use SHA-2 signatures. diff --git a/data/reusables/support/connect-in-the-forum-bootcamp.md b/data/reusables/support/connect-in-the-forum-bootcamp.md index 5c2fbea04f36..72271368b3d4 100644 --- a/data/reusables/support/connect-in-the-forum-bootcamp.md +++ b/data/reusables/support/connect-in-the-forum-bootcamp.md @@ -1 +1 @@ -{% data variables.product.product_name %} has a great support community where you can ask for help and talk to people from around the world. Join the conversation on [Github Support Community](https://github.community/). +{% data variables.product.prodname_dotcom %} has a great support community where you can ask for help and talk to people from around the world. Join the conversation on [Github Support Community](https://github.community/). diff --git a/data/reusables/support/ghae-priorities.md b/data/reusables/support/ghae-priorities.md index ea6cd23bc69f..0ec00f97a56e 100644 --- a/data/reusables/support/ghae-priorities.md +++ b/data/reusables/support/ghae-priorities.md @@ -2,5 +2,5 @@ | :---: | --- | --- | | {% data variables.product.support_ticket_priority_urgent %} - Sev A | {% data variables.product.product_name %} is inaccessible or failing entirely, and the failure directly impacts the operation of your business.

_After you file a support ticket, reach out to {% data variables.contact.github_support %} via phone._ |
  • Errors or outages that affect core Git or web application functionality for all users
  • Severe network or performance degradation for majority of users
  • Full or rapidly filling storage
  • Known security incidents or a breach of access
| | {% data variables.product.support_ticket_priority_high %} - Sev B | {% data variables.product.product_name %} is failing in a production environment, with limited impact to your business processes, or only affecting certain customers. |
  • Performance degradation that reduces productivity for many users
  • Reduced redundancy concerns from failures or service degradation
  • Production-impacting bugs or errors
  • {% data variables.product.product_name %} configuration security concerns
| -| {% data variables.product.support_ticket_priority_normal %} - Sev C | {% data variables.product.product_name %} is experiencing limited or moderate issues and errors with {% data variables.product.product_name %}, or you have general concerns or questions about the operation of {% data variables.product.product_name %}. |
  • Advice on using {% data variables.product.prodname_dotcom %} APIs and features, or questions about integrating business workflows
  • Issues with user tools and data collection methods
  • Upgrades
  • Bug reports, general security questions, or other feature related questions
  • | +| {% data variables.product.support_ticket_priority_normal %} - Sev C | {% data variables.product.product_name %} is experiencing limited or moderate issues and errors with {% data variables.product.product_name %}, or you have general concerns or questions about the operation of {% data variables.product.product_name %}. |
    • Advice on using {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs and features, or questions about integrating business workflows
    • Issues with user tools and data collection methods
    • Upgrades
    • Bug reports, general security questions, or other feature related questions
    • | | {% data variables.product.support_ticket_priority_low %} - Sev D| {% data variables.product.product_name %} is functioning as expected, however, you have a question or suggestion about {% data variables.product.product_name %} that is not time-sensitive, or does not otherwise block the productivity of your team. |
      • Feature requests and product feedback
      • General questions on overall configuration or use of {% data variables.product.product_name %}
      • Notifying {% data variables.contact.github_support %} of any planned changes
      | diff --git a/data/reusables/support/ghes-priorities.md b/data/reusables/support/ghes-priorities.md index 9ec54358ac59..d5fc8b4703f5 100644 --- a/data/reusables/support/ghes-priorities.md +++ b/data/reusables/support/ghes-priorities.md @@ -2,5 +2,5 @@ | :---: | --- | --- | | {% data variables.product.support_ticket_priority_urgent %} | {% data variables.product.prodname_ghe_server %} is failing in a production environment, and the failure directly impacts the operation of your business.

      _{% data reusables.support.priority-urgent-english-only %}_ |
      • Errors or outages that affect core Git or web application functionality for all users
      • Severe performance degradation for majority of users
      • Full or rapidly filling storage
      • Inability to install a renewed license file
      • Security incident
      • Loss of administrative access to the instance with no known workaround
      • Failure to restore a backup to a production environment
      | | {% data variables.product.support_ticket_priority_high %} | {% data variables.product.prodname_ghe_server %} is failing in a production environment, but impact on your business is limited. |
      • Performance degradation that reduces productivity for many users
      • Reduced redundancy from failure of High Availability (HA) or cluster nodes
      • Failure to back up instance
      • Failure to restore a backup to a test or staging environment that could compromise successful restoration to a production environment
      | -| {% data variables.product.support_ticket_priority_normal %} | You're experiencing limited or moderate issues with {% data variables.product.prodname_ghe_server %}, or you have general concerns or questions about the operation of your instance. |
      • Problems in a test or staging environment
      • Advice on using {% data variables.product.prodname_dotcom %} APIs and features, or questions about configuring third-party integrations from your instance
      • Issues with tools for user data migration that {% data variables.product.company_short %} provides
      • Upgrades
      • Bug reports
      • Features not working as expected
      • General security questions
      | +| {% data variables.product.support_ticket_priority_normal %} | You're experiencing limited or moderate issues with {% data variables.product.prodname_ghe_server %}, or you have general concerns or questions about the operation of your instance. |
      • Problems in a test or staging environment
      • Advice on using {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} APIs and features, or questions about configuring third-party integrations from your instance
      • Issues with tools for user data migration that {% data variables.product.company_short %} provides
      • Upgrades
      • Bug reports
      • Features not working as expected
      • General security questions
      | | {% data variables.product.support_ticket_priority_low %} | You have a question or suggestion about {% data variables.product.prodname_ghe_server %} that is not time-sensitive, or does not otherwise block the productivity of your team. |
      • Feature requests
      • Product feedback
      • Requests for health checks (available for customers with a {% data variables.product.premium_support_plan %} only at this time)
      • Notifying {% data variables.product.company_short %} of planned maintenance on your instance
      | diff --git a/data/reusables/support/receiving-credits.md b/data/reusables/support/receiving-credits.md index 55d39f074080..78f76bf08963 100644 --- a/data/reusables/support/receiving-credits.md +++ b/data/reusables/support/receiving-credits.md @@ -6,7 +6,7 @@ If you don't receive an initial response within the guaranteed response time to The credit request must be made within 30 days of the end of the quarter during which {% data variables.contact.premium_support %} did not respond to your tickets within the designated response time. Credit requests will not be honored if the respective deadline has passed. Once the respective deadline passes, you have waived the ability to claim a refund for the qualified credit. To receive a refund, you must submit a completed credit request to . To be eligible, the credit request must: -- Be sent from an email address associated with your {% data variables.product.product_name %} account +- Be sent from an email address associated with your account on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} - Be received by {% data variables.product.company_short %} by the end of the 30th day after the quarter in which the four qualifying credits occurred - Include "Credit Request" in the subject line @@ -14,6 +14,6 @@ The following information **must be included** in your credit request: - **Date** (The date must be within 30 days after the quarter based on {% data variables.product.company_short %}’s fiscal year end in which the claims occurred [January 31, April 30, July 31, or October 31].) - **Customer contact** (You must specify both name and email address.) - **Customer address** -- **Qualifying credits** (You must provide the date of each qualifying credit and the associated ticket number.){% ifversion fpt %} +- **Qualifying credits** (You must provide the date of each qualifying credit and the associated ticket number.){% ifversion fpt or ghec %} - **Name of {% data variables.product.prodname_ghe_cloud %} organization**{% endif %} - **Ticket numbers** diff --git a/data/reusables/supported-languages/C.md b/data/reusables/supported-languages/C.md index 21af13fb3d49..bd109116cf96 100644 --- a/data/reusables/supported-languages/C.md +++ b/data/reusables/supported-languages/C.md @@ -1 +1 @@ -| C {% ifversion fpt %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} +| C {% ifversion fpt or ghec %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} diff --git a/data/reusables/supported-languages/Cpp.md b/data/reusables/supported-languages/Cpp.md index 6a8677acdf0e..b8adcf4b6480 100644 --- a/data/reusables/supported-languages/Cpp.md +++ b/data/reusables/supported-languages/Cpp.md @@ -1 +1 @@ -| C++ {% ifversion fpt %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} +| C++ {% ifversion fpt or ghec %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} diff --git a/data/reusables/supported-languages/Cs.md b/data/reusables/supported-languages/Cs.md index 2c57d5ebd0bd..729ee85bccd7 100644 --- a/data/reusables/supported-languages/Cs.md +++ b/data/reusables/supported-languages/Cs.md @@ -1 +1 @@ -| C# {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI |{% endif %} +| C# {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      `dotnet` CLI |{% endif %} diff --git a/data/reusables/supported-languages/go.md b/data/reusables/supported-languages/go.md index 75603c2a459c..fb849c115f66 100644 --- a/data/reusables/supported-languages/go.md +++ b/data/reusables/supported-languages/go.md @@ -1 +1 @@ -| Go {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Go modules | {% octicon "check" aria-label="The check icon" %}
      Go modules | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes > 3.1 %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Go modules | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} +| Go {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Go modules | {% octicon "check" aria-label="The check icon" %}
      Go modules | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes > 3.1 %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Go modules | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} diff --git a/data/reusables/supported-languages/java.md b/data/reusables/supported-languages/java.md index 4bc8dc891a3d..b7a1b16b42ee 100644 --- a/data/reusables/supported-languages/java.md +++ b/data/reusables/supported-languages/java.md @@ -1 +1 @@ -| Java {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle |{% endif %} +| Java {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle |{% endif %} diff --git a/data/reusables/supported-languages/javascript.md b/data/reusables/supported-languages/javascript.md index 58352dd43fda..ce2ff91ffea2 100644 --- a/data/reusables/supported-languages/javascript.md +++ b/data/reusables/supported-languages/javascript.md @@ -1 +1 @@ -| JavaScript {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %}
      npm | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% endif %} +| JavaScript {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %}
      npm | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% endif %} diff --git a/data/reusables/supported-languages/php.md b/data/reusables/supported-languages/php.md index 769cc3e7d7bf..ca3106b7ae97 100644 --- a/data/reusables/supported-languages/php.md +++ b/data/reusables/supported-languages/php.md @@ -1 +1 @@ -| PHP {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Composer | {% octicon "check" aria-label="The check icon" %}
      Composer | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Composer | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} +| PHP {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Composer | {% octicon "check" aria-label="The check icon" %}
      Composer | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Composer | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} diff --git a/data/reusables/supported-languages/products-table-header.md b/data/reusables/supported-languages/products-table-header.md index 10027073627a..9becd01a5606 100644 --- a/data/reusables/supported-languages/products-table-header.md +++ b/data/reusables/supported-languages/products-table-header.md @@ -1,4 +1,4 @@ -{% ifversion fpt %}| [Code navigation](/github/managing-files-in-a-repository/navigating-code-on-github) | [{% data variables.product.prodname_code_scanning_capc %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning) | [Dependency graph, {% data variables.product.prodname_dependabot_alerts %}, {% data variables.product.prodname_dependabot_security_updates %}](/code-security/supply-chain-security/about-the-dependency-graph#supported-package-ecosystems) | [{% data variables.product.prodname_dependabot_version_updates %}](/code-security/supply-chain-security/about-dependabot-version-updates#supported-repositories-and-ecosystems) | [{% data variables.product.prodname_actions %}](/actions/guides/about-continuous-integration#supported-languages) | [{% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages#supported-clients-and-formats) | +{% ifversion fpt or ghec %}| [Code navigation](/github/managing-files-in-a-repository/navigating-code-on-github) | [{% data variables.product.prodname_code_scanning_capc %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning) | [Dependency graph, {% data variables.product.prodname_dependabot_alerts %}, {% data variables.product.prodname_dependabot_security_updates %}](/code-security/supply-chain-security/about-the-dependency-graph#supported-package-ecosystems) | [{% data variables.product.prodname_dependabot_version_updates %}](/code-security/supply-chain-security/about-dependabot-version-updates#supported-repositories-and-ecosystems) | [{% data variables.product.prodname_actions %}](/actions/guides/about-continuous-integration#supported-languages) | [{% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages#supported-clients-and-formats) | | :-- | :-: | :-: | :-: | :-: | :-: | :-: |{% elsif ghes %}| [{% data variables.product.prodname_code_scanning_capc %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning) | [Dependency graph, {% data variables.product.prodname_dependabot_alerts %}](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph#supported-package-ecosystems) | [{% data variables.product.prodname_actions %}](/actions/guides/about-continuous-integration#supported-languages) | [{% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages#supported-clients-and-formats) | | :-- | :-: | :-: | :-: | :-: |{% elsif ghae %}| [{% data variables.product.prodname_code_scanning_capc %}](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning) | [{% data variables.product.prodname_actions %}](/actions/guides/about-continuous-integration#supported-languages) | [{% data variables.product.prodname_registry %}](/packages/learn-github-packages/introduction-to-github-packages#supported-clients-and-formats) | | :-- | :-: | :-: | :-: |{% endif %} diff --git a/data/reusables/supported-languages/python.md b/data/reusables/supported-languages/python.md index 1bff2c4dee5b..ac54eb0b8e00 100644 --- a/data/reusables/supported-languages/python.md +++ b/data/reusables/supported-languages/python.md @@ -1 +1 @@ -| Python {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      pip | {% octicon "check" aria-label="The check icon" %}
      pip | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      pip | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} +| Python {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      pip | {% octicon "check" aria-label="The check icon" %}
      pip | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      pip | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} diff --git a/data/reusables/supported-languages/ruby.md b/data/reusables/supported-languages/ruby.md index 853611507c45..4fae0f4b0994 100644 --- a/data/reusables/supported-languages/ruby.md +++ b/data/reusables/supported-languages/ruby.md @@ -1 +1 @@ -| Ruby {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      RubyGems | {% octicon "check" aria-label="The check icon" %}
      RubyGems | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      RubyGems |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      RubyGems | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      RubyGems |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      RubyGems |{% endif %} +| Ruby {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      RubyGems | {% octicon "check" aria-label="The check icon" %}
      RubyGems | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      RubyGems |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      RubyGems | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      RubyGems |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      RubyGems |{% endif %} diff --git a/data/reusables/supported-languages/scala.md b/data/reusables/supported-languages/scala.md index 39737f23146d..9939cd6a4c0d 100644 --- a/data/reusables/supported-languages/scala.md +++ b/data/reusables/supported-languages/scala.md @@ -1 +1 @@ -| Scala {% ifversion fpt %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Maven | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} +| Scala {% ifversion fpt or ghec %}| {% octicon "x" aria-label="The X icon" %} | {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Maven | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %}
      Maven, Gradle | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %}1 | {% octicon "check" aria-label="The check icon" %} | {% octicon "x" aria-label="The X icon" %} |{% endif %} diff --git a/data/reusables/supported-languages/typescript.md b/data/reusables/supported-languages/typescript.md index 2833340cce42..043a8755a524 100644 --- a/data/reusables/supported-languages/typescript.md +++ b/data/reusables/supported-languages/typescript.md @@ -1 +1 @@ -| TypeScript {% ifversion fpt %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %}
      npm | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% endif %} +| TypeScript {% ifversion fpt or ghec %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %}
      npm | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghes %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm, Yarn | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% elsif ghae %}| {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %} | {% octicon "check" aria-label="The check icon" %}
      npm |{% endif %} diff --git a/data/reusables/two_fa/after-2fa-add-security-key.md b/data/reusables/two_fa/after-2fa-add-security-key.md index 720584fcfc94..ff79660e510f 100644 --- a/data/reusables/two_fa/after-2fa-add-security-key.md +++ b/data/reusables/two_fa/after-2fa-add-security-key.md @@ -1 +1 @@ -After you configure 2FA using a mobile app{% ifversion fpt %} or via text message{% endif %}, you can add a security key, like a fingerprint reader or Windows Hello. The technology that enables authentication with a security key is called WebAuthn. WebAuthn is the successor to U2F and works in all modern browsers. For more information, see "[WebAuthn](https://webauthn.guide/)" and "[Can I Use](https://caniuse.com/#search=webauthn)." +After you configure 2FA using a mobile app{% ifversion fpt or ghec %} or via text message{% endif %}, you can add a security key, like a fingerprint reader or Windows Hello. The technology that enables authentication with a security key is called WebAuthn. WebAuthn is the successor to U2F and works in all modern browsers. For more information, see "[WebAuthn](https://webauthn.guide/)" and "[Can I Use](https://caniuse.com/#search=webauthn)." diff --git a/data/reusables/two_fa/send-invite-to-reinstate-user-before-2fa-is-enabled.md b/data/reusables/two_fa/send-invite-to-reinstate-user-before-2fa-is-enabled.md index 6502f5b42a28..cb929fcd58b6 100644 --- a/data/reusables/two_fa/send-invite-to-reinstate-user-before-2fa-is-enabled.md +++ b/data/reusables/two_fa/send-invite-to-reinstate-user-before-2fa-is-enabled.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can send an invitation to reinstate a user's privileges and access to the organization before they have enabled two-factor authentication and they must enable 2FA before they can accept your invitation to rejoin the organization. {% endif %} diff --git a/data/reusables/user-settings/marketplace_apps.md b/data/reusables/user-settings/marketplace_apps.md index d2e2020d74d0..67e2648552f7 100644 --- a/data/reusables/user-settings/marketplace_apps.md +++ b/data/reusables/user-settings/marketplace_apps.md @@ -1,4 +1,4 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} 1. In the left sidebar, click either **OAuth Apps** or **GitHub Apps** depending on the {% data variables.product.prodname_marketplace %} listing you'd like to manage. **Note:** You can also manage your listing by navigating to https://github.com/marketplace/manage. ![App type selection](/assets/images/settings/apps_choose_app.png) diff --git a/data/reusables/user_settings/about-commit-email-addresses.md b/data/reusables/user_settings/about-commit-email-addresses.md index e6d47eb9f58e..8b927a865f40 100644 --- a/data/reusables/user_settings/about-commit-email-addresses.md +++ b/data/reusables/user_settings/about-commit-email-addresses.md @@ -1 +1 @@ -For more information on commit email addresses,{% ifversion fpt %} including your {% data variables.product.product_name %}-provided `noreply` email address,{% endif %} see "[Setting your commit email address](/articles/setting-your-commit-email-address)." +For more information on commit email addresses,{% ifversion fpt or ghec %} including your `noreply` email address for {% data variables.product.product_name %},{% endif %} see "[Setting your commit email address](/articles/setting-your-commit-email-address)." diff --git a/data/reusables/user_settings/add_and_verify_email.md b/data/reusables/user_settings/add_and_verify_email.md index 76192eb264e4..220a80fe2328 100644 --- a/data/reusables/user_settings/add_and_verify_email.md +++ b/data/reusables/user_settings/add_and_verify_email.md @@ -1,5 +1,5 @@ {% ifversion not ghae %} 1. In "Add email address", type your email address and click **Add**. - ![Email addition button](/assets/images/help/settings/add-email-address.png){% ifversion fpt %} + ![Email addition button](/assets/images/help/settings/add-email-address.png){% ifversion fpt or ghec %} 2. [Verify your email address](/articles/verifying-your-email-address).{% endif %} {% endif %} diff --git a/data/reusables/user_settings/export-data.md b/data/reusables/user_settings/export-data.md index 89487bc5931c..6a449a86fffa 100644 --- a/data/reusables/user_settings/export-data.md +++ b/data/reusables/user_settings/export-data.md @@ -1,3 +1,3 @@ -{% ifversion fpt %} +{% ifversion fpt or ghec %} You can export and review the metadata that {% data variables.product.product_name %} stores about your personal account. {% endif %} diff --git a/data/reusables/user_settings/no-verification-disposable-emails.md b/data/reusables/user_settings/no-verification-disposable-emails.md index d208c7ef7102..48e16fddbebd 100644 --- a/data/reusables/user_settings/no-verification-disposable-emails.md +++ b/data/reusables/user_settings/no-verification-disposable-emails.md @@ -1 +1 @@ -You cannot verify email addresses from disposable email address services (services that allow you to receive email at a temporary address that expires after a certain time). If you'd like to keep your email address private, you can use a {% data variables.product.product_name %}-provided `noreply` email address. For more information, see "[Setting your commit email address on {% data variables.product.prodname_dotcom %}](/articles/setting-your-commit-email-address#setting-your-commit-email-address-on-github)." +You cannot verify email addresses from disposable email address services (services that allow you to receive email at a temporary address that expires after a certain time). If you'd like to keep your email address private, you can use a {% data variables.product.prodname_dotcom %}-provided `noreply` email address. For more information, see "[Setting your commit email address on {% data variables.product.prodname_dotcom %}](/articles/setting-your-commit-email-address#setting-your-commit-email-address-on-github)." diff --git a/data/reusables/user_settings/personal_dashboard.md b/data/reusables/user_settings/personal_dashboard.md index 1d757aec3ce1..5736fe674ce3 100644 --- a/data/reusables/user_settings/personal_dashboard.md +++ b/data/reusables/user_settings/personal_dashboard.md @@ -1 +1 @@ -{% ifversion fpt %}[personal dashboard](https://github.com/dashboard){% else %}personal dashboard (`https://[hostname]/dashboard`){% endif %} +{% ifversion fpt or ghec %}[personal dashboard](https://github.com/dashboard){% else %}personal dashboard (`https://[hostname]/dashboard`){% endif %} diff --git a/data/reusables/user_settings/removes-personal-access-tokens.md b/data/reusables/user_settings/removes-personal-access-tokens.md index 09c90d0cf564..b11c0bbd8bfd 100644 --- a/data/reusables/user_settings/removes-personal-access-tokens.md +++ b/data/reusables/user_settings/removes-personal-access-tokens.md @@ -1 +1 @@ -As a security precaution, {% data variables.product.company_short %} automatically removes personal access tokens that haven't been used in a year.{% ifversion fpt or ghes > 3.1 or ghae-issue-4374 %} To provide additional security, we highly recommend adding an expiration to your personal access tokens.{% endif %} +As a security precaution, {% data variables.product.company_short %} automatically removes personal access tokens that haven't been used in a year.{% ifversion fpt or ghes > 3.1 or ghae-issue-4374 or ghec %} To provide additional security, we highly recommend adding an expiration to your personal access tokens.{% endif %} diff --git a/data/reusables/user_settings/set_your_email_address_in_git.md b/data/reusables/user_settings/set_your_email_address_in_git.md index 946a996bd4a0..0c675057f787 100644 --- a/data/reusables/user_settings/set_your_email_address_in_git.md +++ b/data/reusables/user_settings/set_your_email_address_in_git.md @@ -1 +1 @@ -Set an email address in Git. You can use {% ifversion fpt %}your [{% data variables.product.product_name %}-provided `no-reply` email address](/articles/setting-your-commit-email-address) or {% endif %}any email address. +Set an email address in Git. You can use {% ifversion fpt or ghec %}your [{% data variables.product.product_name %}-provided `no-reply` email address](/articles/setting-your-commit-email-address) or {% endif %}any email address. diff --git a/data/reusables/webhooks/check_run_properties.md b/data/reusables/webhooks/check_run_properties.md index ba777d0e9acd..e882396d8810 100644 --- a/data/reusables/webhooks/check_run_properties.md +++ b/data/reusables/webhooks/check_run_properties.md @@ -3,10 +3,10 @@ Key | Type | Description `action`|`string` | The action performed. Can be one of:
      • `created` - A new check run was created.
      • `completed` - The `status` of the check run is `completed`.
      • `rerequested` - Someone requested to re-run your check run from the pull request UI. See "[About status checks](/articles/about-status-checks#checks)" for more details about the GitHub UI. When you receive a `rerequested` action, you'll need to [create a new check run](/rest/reference/checks#create-a-check-run). Only the {% data variables.product.prodname_github_app %} that someone requests to re-run the check will receive the `rerequested` payload.
      • `requested_action` - Someone requested an action your app provides to be taken. Only the {% data variables.product.prodname_github_app %} someone requests to perform an action will receive the `requested_action` payload. To learn more about check runs and requested actions, see "[Check runs and requested actions](/rest/reference/checks#check-runs-and-requested-actions)."
      `check_run`|`object` | The [check_run](/rest/reference/checks#get-a-check-run). `check_run[status]`|`string` | The current status of the check run. Can be `queued`, `in_progress`, or `completed`. -`check_run[conclusion]`|`string` | The result of the completed check run. Can be one of `success`, `failure`, `neutral`, `cancelled`, `timed_out`, {% ifversion fpt or ghes or ghae %}`action_required` or `stale`{% else %}or `action_required`{% endif %}. This value will be `null` until the check run has `completed`. +`check_run[conclusion]`|`string` | The result of the completed check run. Can be one of `success`, `failure`, `neutral`, `cancelled`, `timed_out`, {% ifversion fpt or ghes or ghae or ghec %}`action_required` or `stale`{% else %}or `action_required`{% endif %}. This value will be `null` until the check run has `completed`. `check_run[name]`|`string` | The name of the check run. `check_run[check_suite][id]`|`integer` | The id of the check suite that this check run is part of. -`check_run[check_suite][pull_requests]`|`array`| An array of pull requests that match this check suite. A pull request matches a check suite if they have the same `head_sha` and `head_branch`. When the check suite's `head_branch` is in a forked repository it will be `null` and the `pull_requests` array will be empty.{% ifversion fpt or ghes > 3.0 or ghae %} +`check_run[check_suite][pull_requests]`|`array`| An array of pull requests that match this check suite. A pull request matches a check suite if they have the same `head_sha` and `head_branch`. When the check suite's `head_branch` is in a forked repository it will be `null` and the `pull_requests` array will be empty.{% ifversion fpt or ghes > 3.0 or ghae or ghec %} `check_run[check_suite][deployment]`|`object`| A deployment to a repository environment. This will only be populated if the check run was created by a {% data variables.product.prodname_actions %} workflow job that references an environment.{% endif %} `requested_action`|`object` | The action requested by the user. `requested_action[identifier]`|`string` | The integrator reference of the action requested by the user. diff --git a/data/reusables/webhooks/check_suite_properties.md b/data/reusables/webhooks/check_suite_properties.md index bfd75ff5ba32..fe77bfcfd05a 100644 --- a/data/reusables/webhooks/check_suite_properties.md +++ b/data/reusables/webhooks/check_suite_properties.md @@ -5,6 +5,6 @@ Key | Type | Description `check_suite[head_branch]`|`string` | The head branch name the changes are on. `check_suite[head_sha]`|`string` | The SHA of the most recent commit for this check suite. `check_suite[status]`|`string` | The summary status for all check runs that are part of the check suite. Can be `requested`, `in_progress`, or `completed`. -`check_suite[conclusion]`|`string`| The summary conclusion for all check runs that are part of the check suite. Can be one of `success`, `failure`, `neutral`, `cancelled`, `timed_out`, {% ifversion fpt or ghes or ghae %}`action_required` or `stale`{% else %}or `action_required`{% endif %}. This value will be `null` until the check run has `completed`. +`check_suite[conclusion]`|`string`| The summary conclusion for all check runs that are part of the check suite. Can be one of `success`, `failure`, `neutral`, `cancelled`, `timed_out`, {% ifversion fpt or ghes or ghae or ghec %}`action_required` or `stale`{% else %}or `action_required`{% endif %}. This value will be `null` until the check run has `completed`. `check_suite[url]`|`string` | URL that points to the check suite API resource. `check_suite[pull_requests]`|`array`| An array of pull requests that match this check suite. A pull request matches a check suite if they have the same `head_sha` and `head_branch`. When the check suite's `head_branch` is in a forked repository it will be `null` and the `pull_requests` array will be empty. diff --git a/data/reusables/webhooks/code_scanning_alert_event_short_desc.md b/data/reusables/webhooks/code_scanning_alert_event_short_desc.md index e5163ce2d013..067f04aa556b 100644 --- a/data/reusables/webhooks/code_scanning_alert_event_short_desc.md +++ b/data/reusables/webhooks/code_scanning_alert_event_short_desc.md @@ -1 +1 @@ -Activity related to code scanning alerts in a repository. The type of activity is specified in the action property of the payload object. For more information, see “[About code scanning](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning).” +Activity related to code scanning alerts in a repository. The type of activity is specified in the action property of the payload object. For more information, see "[About code scanning](/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning)." diff --git a/data/reusables/webhooks/create_properties.md b/data/reusables/webhooks/create_properties.md index a22751894b35..eb5ad53fbc1f 100644 --- a/data/reusables/webhooks/create_properties.md +++ b/data/reusables/webhooks/create_properties.md @@ -2,5 +2,5 @@ Key | Type | Description ----|------|------------- `ref`|`string` | The [`git ref`](/rest/reference/git#get-a-reference) resource. `ref_type`|`string` | The type of Git ref object created in the repository. Can be either `branch` or `tag`. -`master_branch`|`string` | The name of the repository's default branch (usually {% ifversion fpt or ghes > 3.1 or ghae %}`main`{% else %}`master`{% endif %}). +`master_branch`|`string` | The name of the repository's default branch (usually {% ifversion fpt or ghes > 3.1 or ghae or ghec %}`main`{% else %}`master`{% endif %}). `description`|`string` | The repository's current description. diff --git a/data/reusables/webhooks/discussion_desc.md b/data/reusables/webhooks/discussion_desc.md index a573e31f2795..b3f769749aa0 100644 --- a/data/reusables/webhooks/discussion_desc.md +++ b/data/reusables/webhooks/discussion_desc.md @@ -1 +1 @@ -`discussion` | `object` | The [`discussion`](/graphql/guides/using-the-graphql-api-for-discussions#discussion) resource. +`discussion` | `object` | The [`discussion`]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/guides/using-the-graphql-api-for-discussions#discussion) resource. diff --git a/data/reusables/webhooks/installation_properties.md b/data/reusables/webhooks/installation_properties.md index f34659b7540f..c2a6d203e6d2 100644 --- a/data/reusables/webhooks/installation_properties.md +++ b/data/reusables/webhooks/installation_properties.md @@ -1,4 +1,4 @@ Key | Type | Description ----|------|------------ -`action` | `string` | The action that was performed. Can be one of:
      • `created` - Someone installs a {% data variables.product.prodname_github_app %}.
      • `deleted` - Someone uninstalls a {% data variables.product.prodname_github_app %}
      • {% ifversion fpt or ghes or ghae %}
      • `suspend` - Someone suspends a {% data variables.product.prodname_github_app %} installation.
      • `unsuspend` - Someone unsuspends a {% data variables.product.prodname_github_app %} installation.
      • {% endif %}
      • `new_permissions_accepted` - Someone accepts new permissions for a {% data variables.product.prodname_github_app %} installation. When a {% data variables.product.prodname_github_app %} owner requests new permissions, the person who installed the {% data variables.product.prodname_github_app %} must accept the new permissions request.
      +`action` | `string` | The action that was performed. Can be one of:
      • `created` - Someone installs a {% data variables.product.prodname_github_app %}.
      • `deleted` - Someone uninstalls a {% data variables.product.prodname_github_app %}
      • {% ifversion fpt or ghes or ghae or ghec %}
      • `suspend` - Someone suspends a {% data variables.product.prodname_github_app %} installation.
      • `unsuspend` - Someone unsuspends a {% data variables.product.prodname_github_app %} installation.
      • {% endif %}
      • `new_permissions_accepted` - Someone accepts new permissions for a {% data variables.product.prodname_github_app %} installation. When a {% data variables.product.prodname_github_app %} owner requests new permissions, the person who installed the {% data variables.product.prodname_github_app %} must accept the new permissions request.
      `repositories` | `array` | An array of repository objects that the installation can access. diff --git a/data/reusables/webhooks/org_desc_graphql.md b/data/reusables/webhooks/org_desc_graphql.md index 4bd5d803b119..70cd79150f88 100644 --- a/data/reusables/webhooks/org_desc_graphql.md +++ b/data/reusables/webhooks/org_desc_graphql.md @@ -1 +1 @@ -`organization` | `object` | Webhook payloads contain the [`organization`](/graphql/reference/objects#organization) object when the webhook is configured for an organization or the event occurs from activity in a repository owned by an organization. +`organization` | `object` | Webhook payloads contain the [`organization`]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#organization) object when the webhook is configured for an organization or the event occurs from activity in a repository owned by an organization. diff --git a/data/reusables/webhooks/pull_request_webhook_properties.md b/data/reusables/webhooks/pull_request_webhook_properties.md index fc23e9410be6..0d7bfb0184db 100644 --- a/data/reusables/webhooks/pull_request_webhook_properties.md +++ b/data/reusables/webhooks/pull_request_webhook_properties.md @@ -1,3 +1,3 @@ Key | Type | Description ----|------|------------- -`action`|`string` | The action that was performed. Can be one of:
      • `assigned`
      • {% ifversion fpt or ghes > 3.0 or ghae %}
      • `auto_merge_disabled`
      • `auto_merge_enabled`
      • {% endif %}
      • `closed`: If the action is `closed` and the `merged` key is `false`, the pull request was closed with unmerged commits. If the action is `closed` and the `merged` key is `true`, the pull request was merged.
      • `converted_to_draft`
      • `edited`
      • `labeled`
      • `locked`
      • `opened`
      • `ready_for_review`
      • `reopened`
      • `review_request_removed`
      • `review_requested`
      • `synchronize`: Triggered when a pull request's head branch is updated. For example, when the head branch is updated from the base branch, when new commits are pushed to the head branch, or when the base branch is changed.
      • `unassigned`
      • `unlabeled`
      • `unlocked`
      +`action`|`string` | The action that was performed. Can be one of:
      • `assigned`
      • {% ifversion fpt or ghes > 3.0 or ghae or ghec %}
      • `auto_merge_disabled`
      • `auto_merge_enabled`
      • {% endif %}
      • `closed`: If the action is `closed` and the `merged` key is `false`, the pull request was closed with unmerged commits. If the action is `closed` and the `merged` key is `true`, the pull request was merged.
      • `converted_to_draft`
      • `edited`
      • `labeled`
      • `locked`
      • `opened`
      • `ready_for_review`
      • `reopened`
      • `review_request_removed`
      • `review_requested`
      • `synchronize`: Triggered when a pull request's head branch is updated. For example, when the head branch is updated from the base branch, when new commits are pushed to the head branch, or when the base branch is changed.
      • `unassigned`
      • `unlabeled`
      • `unlocked`
      diff --git a/data/reusables/webhooks/repo_desc_graphql.md b/data/reusables/webhooks/repo_desc_graphql.md index 99798803b0fa..187177d626f8 100644 --- a/data/reusables/webhooks/repo_desc_graphql.md +++ b/data/reusables/webhooks/repo_desc_graphql.md @@ -1 +1 @@ -`repository` | `object` | The [`repository`](/graphql/reference/objects#repository) where the event occurred. +`repository` | `object` | The [`repository`]({% ifversion ghec %}/free-pro-team@latest{% endif %}/graphql/reference/objects#repository) where the event occurred. diff --git a/data/reusables/webhooks/secret.md b/data/reusables/webhooks/secret.md index cd3b94375002..4651c27dbb30 100644 --- a/data/reusables/webhooks/secret.md +++ b/data/reusables/webhooks/secret.md @@ -1 +1 @@ -Setting a webhook secret allows you to ensure that `POST` requests sent to the payload URL are from {% data variables.product.product_name %}. When you set a secret, you'll receive the {% ifversion fpt or ghes > 2.22 %}`X-Hub-Signature` and `X-Hub-Signature-256` headers{% elsif ghes < 3.0 %}`X-Hub-Signature` header{% elsif ghae %}`X-Hub-Signature-256` header{% endif %} in the webhook `POST` request. For more information on how to use a secret with a signature header to secure your webhook payloads, see "[Securing your webhooks](/webhooks/securing/)." +Setting a webhook secret allows you to ensure that `POST` requests sent to the payload URL are from {% data variables.product.product_name %}. When you set a secret, you'll receive the {% ifversion fpt or ghes > 2.22 or ghec %}`X-Hub-Signature` and `X-Hub-Signature-256` headers{% elsif ghes < 3.0 %}`X-Hub-Signature` header{% elsif ghae %}`X-Hub-Signature-256` header{% endif %} in the webhook `POST` request. For more information on how to use a secret with a signature header to secure your webhook payloads, see "[Securing your webhooks](/webhooks/securing/)." diff --git a/data/reusables/webhooks/secret_scanning_alert_event_short_desc.md b/data/reusables/webhooks/secret_scanning_alert_event_short_desc.md index 5da7e75271fa..f871e25c1cbb 100644 --- a/data/reusables/webhooks/secret_scanning_alert_event_short_desc.md +++ b/data/reusables/webhooks/secret_scanning_alert_event_short_desc.md @@ -1 +1 @@ -Activity related to secret scanning alerts in a repository. The type of activity is specified in the action property of the payload object. For more information, see “[About secret scanning](/github/administering-a-repository/about-secret-scanning).” +Activity related to secret scanning alerts in a repository. The type of activity is specified in the action property of the payload object. For more information, see "[About secret scanning](/github/administering-a-repository/about-secret-scanning)." diff --git a/data/reusables/webhooks/webhooks-rest-api-links.md b/data/reusables/webhooks/webhooks-rest-api-links.md index 49fc3c15dc3e..436fd8fef515 100644 --- a/data/reusables/webhooks/webhooks-rest-api-links.md +++ b/data/reusables/webhooks/webhooks-rest-api-links.md @@ -1,5 +1,5 @@ -The webhook REST APIs enable you to manage repository{% ifversion ghes < 3.0 %} and organization{% else %}, organization, and app{% endif %} webhooks.{% ifversion fpt or ghes > 3.2 or ghae %} You can use this API to list webhook deliveries for a webhook, or get and redeliver an individual delivery for a webhook, which can be integrated into an external app or service.{% endif %}{% ifversion fpt or ghes > 2.22 or ghae %} You can also use the REST API to change the configuration of the webhook. For example, you can modify the payload URL, content type, SSL verification, and secret.{% endif %} For more information, see: +The webhook REST APIs enable you to manage repository{% ifversion ghes < 3.0 %} and organization{% else %}, organization, and app{% endif %} webhooks.{% ifversion fpt or ghes > 3.2 or ghae or ghec %} You can use this API to list webhook deliveries for a webhook, or get and redeliver an individual delivery for a webhook, which can be integrated into an external app or service.{% endif %}{% ifversion fpt or ghes > 2.22 or ghae or ghec %} You can also use the REST API to change the configuration of the webhook. For example, you can modify the payload URL, content type, SSL verification, and secret.{% endif %} For more information, see: - [Repository Webhooks REST API](/rest/reference/repos#webhooks) -- [Organization Webhooks REST API](/rest/reference/orgs#webhooks){% ifversion fpt or ghes > 2.22 or ghae %} +- [Organization Webhooks REST API](/rest/reference/orgs#webhooks){% ifversion fpt or ghes > 2.22 or ghae or ghec %} - [{% data variables.product.prodname_github_app %} Webhooks REST API](/rest/reference/apps#webhooks){% endif %} diff --git a/data/variables/command_line.yml b/data/variables/command_line.yml index ac184c5618b9..79543fa250eb 100644 --- a/data/variables/command_line.yml +++ b/data/variables/command_line.yml @@ -1,11 +1,11 @@ # Use this variable wherever backticks are necessary backticks: >- - {% ifversion fpt %}github.com{% else %}[hostname]{% endif %} + {% ifversion fpt or ghec %}github.com{% else %}[hostname]{% endif %} # Use this variable within codeblocks (because it includes HTML! Which only renders in shell codeblocks!) codeblock: >- - {% ifversion fpt %}github.com{% else %}hostname{% endif %} + {% ifversion fpt or ghec %}github.com{% else %}hostname{% endif %} # GitHub URL example git_url_example: >- - https://{% ifversion fpt %}github.com{% else %}github.example.com{% endif %} + https://{% ifversion fpt or ghec %}github.com{% else %}github.example.com{% endif %} diff --git a/data/variables/contact.yml b/data/variables/contact.yml index 9e3f84ac4407..0d3f861196bd 100644 --- a/data/variables/contact.yml +++ b/data/variables/contact.yml @@ -2,19 +2,19 @@ contact_ent_support: '[GitHub Enterprise Support](https://enterprise.githubsupport.com/hc/en-us) or [GitHub Premium Support](https://premium.githubsupport.com)' contact_support: >- - {% ifversion fpt %}[GitHub Support](https://support.github.com/contact?tags=docs-generic){% else %}your site administrator{% endif %} + {% ifversion fpt or ghec %}[GitHub Support](https://support.github.com/contact?tags=docs-generic){% elsif ghes %}your site administrator{% elsif ghae %}your enterprise owner{% endif %} report_abuse: >- - {% ifversion fpt %}[Report abuse](https://github.com/contact/report-abuse){% endif %} + {% ifversion fpt or ghec %}[Report abuse](https://github.com/contact/report-abuse){% endif %} report_content: >- - {% ifversion fpt %}[Report content](https://github.com/contact/report-content){% endif %} + {% ifversion fpt or ghec %}[Report content](https://github.com/contact/report-content){% endif %} contact_dmca: >- - {% ifversion fpt %}[Copyright claims form](https://github.com/contact/dmca){% endif %} + {% ifversion fpt or ghec %}[Copyright claims form](https://github.com/contact/dmca){% endif %} contact_privacy: >- - {% ifversion fpt %}[Privacy contact form](https://github.com/contact/privacy){% endif %} + {% ifversion fpt or ghec %}[Privacy contact form](https://github.com/contact/privacy){% endif %} contact_enterprise_sales: "[GitHub's Sales team](https://enterprise.github.com/contact)" diff --git a/data/variables/explore.yml b/data/variables/explore.yml index c2d9bf30ba73..1ef5ff7902c4 100644 --- a/data/variables/explore.yml +++ b/data/variables/explore.yml @@ -1,8 +1,8 @@ explore_github: >- - {% ifversion fpt %}[Explore GitHub](https://github.com/explore){% else %}Explore GitHub (`https://[hostname]/explore`){% endif %} + {% ifversion fpt or ghec %}[Explore GitHub](https://github.com/explore){% else %}Explore GitHub (`https://[hostname]/explore`){% endif %} your_stars_page: >- - {% ifversion fpt %}[stars page](https://github.com/stars){% else %}stars page (`https://[hostname]/stars`){% endif %} + {% ifversion fpt or ghec %}[stars page](https://github.com/stars){% else %}stars page (`https://[hostname]/stars`){% endif %} trending_page: >- - {% ifversion fpt %}[Trending page](https://github.com/trending){% else %}Trending page (`https://[hostname]/trending`){% endif %} + {% ifversion fpt or ghec %}[Trending page](https://github.com/trending){% else %}Trending page (`https://[hostname]/trending`){% endif %} diff --git a/data/variables/gists.yml b/data/variables/gists.yml index e6d82ec53258..f0ba874f2990 100644 --- a/data/variables/gists.yml +++ b/data/variables/gists.yml @@ -1,8 +1,8 @@ gist_homepage: >- - {% ifversion fpt %}[gist home page](https://gist.github.com/){% elsif ghae %}gist home page, `http(s)://gist.[hostname)`,{% else %}gist home page, `http(s)://[hostname]/gist` or `http(s)://gist.[hostname]` if subdomains are enabled{% endif %} + {% ifversion fpt or ghec %}[gist home page](https://gist.github.com/){% elsif ghae %}gist home page, `http(s)://gist.[hostname)`,{% else %}gist home page, `http(s)://[hostname]/gist` or `http(s)://gist.[hostname]` if subdomains are enabled{% endif %} gist_search_url: >- - {% ifversion fpt %}[Gist Search](https://gist.github.com/search){% elsif ghae %}Gist Search, `http(s)://gist.[hostname]/search`,{% else %}Gist Search, `http(s)://[hostname]/gist/search` or `http(s)://gist.[hostname]/search` if subdomains are enabled{% endif %} + {% ifversion fpt or ghec %}[Gist Search](https://gist.github.com/search){% elsif ghae %}Gist Search, `http(s)://gist.[hostname]/search`,{% else %}Gist Search, `http(s)://[hostname]/gist/search` or `http(s)://gist.[hostname]/search` if subdomains are enabled{% endif %} discover_url: >- - {% ifversion fpt %}[Discover](https://gist.github.com/discover){% elsif ghae %}Discover, `http(s)://gist.[hostname]/discover`,{% else %}Discover, `http(s)://[hostname]/gist/discover` or `http(s)://gist.[hostname]/discover` if subdomains are enabled{% endif %} + {% ifversion fpt or ghec %}[Discover](https://gist.github.com/discover){% elsif ghae %}Discover, `http(s)://gist.[hostname]/discover`,{% else %}Discover, `http(s)://[hostname]/gist/discover` or `http(s)://gist.[hostname]/discover` if subdomains are enabled{% endif %} diff --git a/data/variables/migrations.yml b/data/variables/migrations.yml index 55bf48f08da7..a483a334995b 100644 --- a/data/variables/migrations.yml +++ b/data/variables/migrations.yml @@ -1,7 +1,7 @@ user_migrations_intro: >- You can use this API to review, backup, or migrate your user data stored on {% data variables.product.product_name %}.com. organization_migrations_intro: >- - The organization migrations API lets you move a repository from {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.prodname_ghe_server %}. For more information, see "[Exporting migration data from GitHub.com](/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom)." + The organization migrations API lets you move a repository from {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.prodname_ghe_server %}. For more information, see "[Exporting migration data from GitHub.com](/enterprise-server@latest/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom)" in the {% data variables.product.prodname_ghe_server %} documentation. source_imports_intro: >- The Source Import API lets you start an import from a Git, Subversion, Mercurial, or Team Foundation Version Control source repository. This is the same diff --git a/data/variables/notifications.yml b/data/variables/notifications.yml index 3cafcc4e2931..bc4b4d7f646a 100644 --- a/data/variables/notifications.yml +++ b/data/variables/notifications.yml @@ -1,5 +1,5 @@ no_reply_address: >- - {% ifversion fpt %}`noreply@github.com`{% else %}the no-reply email address configured by your site administrator{% endif %} + {% ifversion fpt or ghec %}`noreply@github.com`{% else %}the no-reply email address configured by your site administrator{% endif %} cc_address: >- - {% ifversion fpt %}`@noreply.github.com`{% else %}based on the no-reply email address configured by your site administrator{% endif %} + {% ifversion fpt or ghec %}`@noreply.github.com`{% else %}based on the no-reply email address configured by your site administrator{% endif %} diff --git a/data/variables/product.yml b/data/variables/product.yml index afbaab0c36e3..becab1d03e3d 100644 --- a/data/variables/product.yml +++ b/data/variables/product.yml @@ -6,9 +6,8 @@ company_short: 'GitHub' # GitHub's flagship products -## Until we have versioning to support GitHub Enterprise Cloud content, avoid using this variable if the output should specifically be GitHub Enterprise Cloud or GitHub Enterprise Server product_name: >- - {% ifversion ghes %}GitHub Enterprise Server{% elsif ghae %}GitHub AE{% else %}GitHub{% endif %} + {% ifversion ghec %}GitHub Enterprise Cloud{% elsif ghes %}GitHub Enterprise Server{% elsif ghae %}GitHub AE{% else %}GitHub{% endif %} ## Use this variable when the output should always be GitHub, regardless of the product the user is using prodname_dotcom: 'GitHub' @@ -26,7 +25,7 @@ prodname_ghe_one: 'GitHub One' ## Use these variables when referring specifically to a location within a product product_location: >- - {% ifversion ghes %}your GitHub Enterprise Server instance{% elsif ghae %}your enterprise{% else %}GitHub{% endif %} + {% ifversion ghes %}your GitHub Enterprise Server instance{% elsif ghae %}your enterprise{% else %}GitHub.com{% endif %} # Used ONLY when you need to refer to a GHES instance in an article that is versioned for non-GHES versions. # Do not use in other situations! @@ -187,36 +186,36 @@ prodname_copilot: 'GitHub Copilot' # Links product_url: >- - {% ifversion fpt %}github.com{% else %}[hostname]{% endif %} + {% ifversion fpt or ghec %}github.com{% else %}[hostname]{% endif %} pricing_url: 'https://github.com/pricing' signin_link: >- - {% ifversion fpt %}[Sign in](https://github.com/login){% else %}Sign in (`https://[hostname]/login`){% endif %} + {% ifversion fpt or ghec %}[Sign in](https://github.com/login){% else %}Sign in (`https://[hostname]/login`){% endif %} signout_link: >- - {% ifversion fpt %}[Sign out](https://github.com/logout){% else %}Sign out (`https://[hostname]/logout`){% endif %} + {% ifversion fpt or ghec %}[Sign out](https://github.com/logout){% else %}Sign out (`https://[hostname]/logout`){% endif %} raw_github_com: >- - {% ifversion fpt %}raw.githubusercontent.com{% else %}[hostname]/user/repo/raw{% endif %} + {% ifversion fpt or ghec %}raw.githubusercontent.com{% else %}[hostname]/user/repo/raw{% endif %} # GitHub Enterprise Server past versions current-340-version: '11.10.354' # Developer site product variables # Use this inside command-line and other code blocks doc_url_pre: >- - {% ifversion fpt %}https://docs.github.com/rest{% elsif ghes %}https://docs.github.com/enterprise/{{ currentVersion | version_num }}/rest{% elsif ghae %}https://docs.github.com/github-ae@latest/rest{% endif %} + {% ifversion fpt or ghec %}https://docs.github.com/rest{% elsif ghes %}https://docs.github.com/enterprise/{{ currentVersion | version_num }}/rest{% elsif ghae %}https://docs.github.com/github-ae@latest/rest{% endif %} # Use this inside command-line code blocks api_url_pre: >- - {% ifversion fpt %}https://api.github.com{% elsif ghes %}http(s)://[hostname]/api/v3{% elsif ghae %}https://[hostname]/api/v3{% endif %} + {% ifversion fpt or ghec %}https://api.github.com{% elsif ghes %}http(s)://[hostname]/api/v3{% elsif ghae %}https://[hostname]/api/v3{% endif %} # Use this inside command-line code blocks # Enterprise OAuth paths that don't include "/graphql" or "/api/v3" oauth_host_code: >- - {% ifversion fpt %}https://github.com{% else %}http(s)://[hostname]{% endif %} + {% ifversion fpt or ghec %}https://github.com{% else %}http(s)://[hostname]{% endif %} device_authorization_url: >- [`https://github.com/login/device`](https://github.com/login/device) # Use this all other code blocks api_url_code: >- - {% ifversion fpt %}https://api.github.com{% elsif ghes %}http(s)://[hostname]/api/v3{% elsif ghae %}https://[hostname]/api/v3{% endif %} + {% ifversion fpt or ghec %}https://api.github.com{% elsif ghes %}http(s)://[hostname]/api/v3{% elsif ghae %}https://[hostname]/api/v3{% endif %} # Use this inside command-line code blocks graphql_url_pre: >- - {% ifversion fpt %}https://api.github.com/graphql{% elsif ghes %}http(s)://[hostname]/api/graphql{% elsif ghae %}https://api.[hostname]/graphql{% endif %} + {% ifversion fpt or ghec %}https://api.github.com/graphql{% elsif ghes %}http(s)://[hostname]/api/graphql{% elsif ghae %}https://api.[hostname]/graphql{% endif %} # Use this all other code blocks graphql_url_code: >- - {% ifversion fpt %}https://api.github.com/graphql{% elsif ghes %}http(s)://[hostname]/api/graphql{% elsif ghae %}https://api.[hostname]/graphql{% endif %} + {% ifversion fpt or ghec %}https://api.github.com/graphql{% elsif ghes %}http(s)://[hostname]/api/graphql{% elsif ghae %}https://api.[hostname]/graphql{% endif %} diff --git a/data/variables/search.yml b/data/variables/search.yml index 737b2d66453c..da439db65e83 100644 --- a/data/variables/search.yml +++ b/data/variables/search.yml @@ -1,5 +1,5 @@ advanced_url: >- - {% ifversion fpt %}[advanced search](https://github.com/search/advanced) page{% else %}advanced search page (`https://[hostname]/search/advanced`){% endif %} + {% ifversion fpt or ghec %}[advanced search](https://github.com/search/advanced) page{% else %}advanced search page (`https://[hostname]/search/advanced`){% endif %} search_page_url: >- - {% ifversion fpt %}[search](https://github.com/search) page{% else %}search page (`https://[hostname]/search`){% endif %} + {% ifversion fpt or ghec %}[search](https://github.com/search) page{% else %}search page (`https://[hostname]/search`){% endif %} diff --git a/includes/tool-switcher.html b/includes/tool-switcher.html index d5b854f5d789..17e8afbb471a 100644 --- a/includes/tool-switcher.html +++ b/includes/tool-switcher.html @@ -1,7 +1,7 @@

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 literal 0 HcmV?d00001 diff --git a/assets/images/enterprise/site-admin-settings/add-global-webhook-active-checkbox.png b/assets/images/enterprise/site-admin-settings/add-global-webhook-active-checkbox.png index 5a2826ecd5a20ccafe01ce92a95a429dd2290fdb..3cc41c4d024696532bb0fb114a0f72f8f72f8592 100644 GIT binary patch literal 13469 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 literal 52229 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