diff --git a/.github/actions-scripts/enterprise-server-issue-templates/release-issue.md b/.github/actions-scripts/enterprise-server-issue-templates/release-issue.md index 304d3dba00..906f803700 100644 --- a/.github/actions-scripts/enterprise-server-issue-templates/release-issue.md +++ b/.github/actions-scripts/enterprise-server-issue-templates/release-issue.md @@ -18,7 +18,7 @@ If you aren't comfortable going through the steps alone, sync up with a docs eng ``` script/update-enterprise-dates.js ``` -- [ ] Create REST files based on previous version. Copy the latest GHES version of the dereferenced file from `lib/rest/static/dereferenced` to a new file in the same directory for the new GHES release. Ex, `cp lib/rest/static/dereferenced/ghes-3.4.deref.json lib/rest/static/dereferenced/ghes-3.5.deref.json`. Then run `script/rest/updated-files.js --decorate-only` and check in the resulting files. +- [ ] Create REST files based on previous version. Copy the latest GHES version of the dereferenced file from `lib/rest/static/dereferenced` to a new file in the same directory for the new GHES release. Ex, `cp lib/rest/static/dereferenced/ghes-3.4.deref.json lib/rest/static/dereferenced/ghes-3.5.deref.json`. Then run `script/rest/update-files.js --decorate-only` and check in the resulting files. - [ ] Create GraphQL files based on previous version: diff --git a/.github/workflows/copy-api-issue-to-internal.yml b/.github/workflows/copy-api-issue-to-internal.yml index 13bac002f1..d14236eea9 100644 --- a/.github/workflows/copy-api-issue-to-internal.yml +++ b/.github/workflows/copy-api-issue-to-internal.yml @@ -52,13 +52,6 @@ jobs: ISSUE_TITLE: ${{ github.event.issue.title }} ISSUE_BODY: ${{ github.event.issue.body }} - - name: Comment on the new issue - run: gh issue comment $NEW_ISSUE --body "This issue was originally opened in the open source repo as $OLD_ISSUE" - env: - GITHUB_TOKEN: ${{secrets.DOCUBOT_READORG_REPO_WORKFLOW_SCOPES}} - NEW_ISSUE: ${{ env.NEW_ISSUE }} - OLD_ISSUE: ${{ github.event.issue.html_url }} - - name: Comment on the old issue run: gh issue comment $OLD_ISSUE --body "Thank you for opening this issue! Updates to the REST/GraphQL API description must be made internally. I have copied your issue to an internal issue, so I will close this issue." env: @@ -70,3 +63,10 @@ jobs: env: GITHUB_TOKEN: ${{secrets.DOCUBOT_READORG_REPO_WORKFLOW_SCOPES}} OLD_ISSUE: ${{ github.event.issue.html_url }} + + - name: Comment on the new issue + run: gh issue comment $NEW_ISSUE --body "This issue was originally opened in the open source repo as $OLD_ISSUE" + env: + GITHUB_TOKEN: ${{secrets.DOCUBOT_READORG_REPO_WORKFLOW_SCOPES}} + NEW_ISSUE: ${{ env.NEW_ISSUE }} + OLD_ISSUE: ${{ github.event.issue.html_url }} diff --git a/.github/workflows/link-check-all.yml b/.github/workflows/link-check-all.yml index db3848d588..d983604699 100644 --- a/.github/workflows/link-check-all.yml +++ b/.github/workflows/link-check-all.yml @@ -53,6 +53,14 @@ jobs: # Don't care about CDN caching image URLs DISABLE_REWRITE_ASSET_URLS: true run: | + + # Note as of Aug 2022, we *don't* check external links + # on the pages you touched in the PR. We could enable that + # but it has the added risk of false positives blocking CI. + # We are using this script for the daily/nightly checker that + # checks external links too. Once we're confident it really works + # well, we can consider enabling it here on every content PR too. + ./script/rendered-content-link-checker.js \ --language en \ --max 100 \ diff --git a/.github/workflows/site-policy-reminder.yml b/.github/workflows/site-policy-reminder.yml index 4491321bcc..e1484c1b8d 100644 --- a/.github/workflows/site-policy-reminder.yml +++ b/.github/workflows/site-policy-reminder.yml @@ -9,6 +9,7 @@ on: types: [labeled] permissions: + pull-requests: write contents: none jobs: diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 80b06b48ee..0d6db808d3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -23,6 +23,9 @@ env: # Setting this will activate the jest tests that depend on actually # sending real search queries to Elasticsearch ELASTICSEARCH_URL: http://localhost:9200/ + # Hopefully the name is clear enough. By enabling this, we're testing + # the future code. + ENABLE_SEARCH_RESULTS_PAGE: true jobs: test: @@ -52,7 +55,7 @@ jobs: if: ${{ matrix.test-group == 'content' }} uses: getong/elasticsearch-action@95b501ab0c83dee0aac7c39b7cea3723bef14954 with: - elasticsearch version: '7.17.5' + elasticsearch version: '7.11.1' host port: 9200 container port: 9200 host node port: 9300 diff --git a/.gitignore b/.gitignore index 7a5746c1df..30492bcbc5 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ .DS_Store .env .vscode/settings.json +.idea/ /node_modules/ npm-debug.log coverage/ diff --git a/assets/images/help/repository/code-scanning-analysis-not-found.png b/assets/images/enterprise/3.4/repository/code-scanning-analysis-not-found.png similarity index 100% rename from assets/images/help/repository/code-scanning-analysis-not-found.png rename to assets/images/enterprise/3.4/repository/code-scanning-analysis-not-found.png diff --git a/assets/images/help/business-accounts/project-visibility-change-drop-down.png b/assets/images/help/business-accounts/project-visibility-change-drop-down.png new file mode 100644 index 0000000000..1b672e9082 Binary files /dev/null and b/assets/images/help/business-accounts/project-visibility-change-drop-down.png differ diff --git a/assets/images/help/classroom/classroom-settings-click-google-classroom.png b/assets/images/help/classroom/classroom-settings-click-google-classroom.png new file mode 100644 index 0000000000..f43d23817c Binary files /dev/null and b/assets/images/help/classroom/classroom-settings-click-google-classroom.png differ diff --git a/assets/images/help/codespaces/codespaces-badge-on-readme.png b/assets/images/help/codespaces/codespaces-badge-on-readme.png new file mode 100644 index 0000000000..9a81b001ea Binary files /dev/null and b/assets/images/help/codespaces/codespaces-badge-on-readme.png differ diff --git a/assets/images/help/codespaces/configure-and-create-option.png b/assets/images/help/codespaces/configure-and-create-option.png new file mode 100644 index 0000000000..7a0f4e3407 Binary files /dev/null and b/assets/images/help/codespaces/configure-and-create-option.png differ diff --git a/assets/images/help/codespaces/jupyter-notebook-step3.png b/assets/images/help/codespaces/jupyter-notebook-step3.png new file mode 100644 index 0000000000..2b7208bf5b Binary files /dev/null and b/assets/images/help/codespaces/jupyter-notebook-step3.png differ diff --git a/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png b/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png new file mode 100644 index 0000000000..64a573c63f Binary files /dev/null and b/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png differ diff --git a/assets/images/help/codespaces/jupyter-python-kernel-link.png b/assets/images/help/codespaces/jupyter-python-kernel-link.png new file mode 100644 index 0000000000..6809b4498c Binary files /dev/null and b/assets/images/help/codespaces/jupyter-python-kernel-link.png differ diff --git a/assets/images/help/codespaces/jupyter-run-all.png b/assets/images/help/codespaces/jupyter-run-all.png new file mode 100644 index 0000000000..429aaa1245 Binary files /dev/null and b/assets/images/help/codespaces/jupyter-run-all.png differ diff --git a/assets/images/help/codespaces/open-codespace-in-jupyter.png b/assets/images/help/codespaces/open-codespace-in-jupyter.png new file mode 100644 index 0000000000..f404c6f615 Binary files /dev/null and b/assets/images/help/codespaces/open-codespace-in-jupyter.png differ diff --git a/assets/images/help/enterprises/audit-stream-choice-datadog.png b/assets/images/help/enterprises/audit-stream-choice-datadog.png new file mode 100644 index 0000000000..0d81cd0bc5 Binary files /dev/null and b/assets/images/help/enterprises/audit-stream-choice-datadog.png differ diff --git a/assets/images/help/enterprises/audit-stream-datadog-site.png b/assets/images/help/enterprises/audit-stream-datadog-site.png new file mode 100644 index 0000000000..05826e3230 Binary files /dev/null and b/assets/images/help/enterprises/audit-stream-datadog-site.png differ diff --git a/assets/images/help/enterprises/audit-stream-datadog-token.png b/assets/images/help/enterprises/audit-stream-datadog-token.png new file mode 100644 index 0000000000..68af0881e8 Binary files /dev/null and b/assets/images/help/enterprises/audit-stream-datadog-token.png differ diff --git a/assets/images/help/issues/development-menu-apply.png b/assets/images/help/issues/development-menu-apply.png new file mode 100644 index 0000000000..7f341501d0 Binary files /dev/null and b/assets/images/help/issues/development-menu-apply.png differ diff --git a/assets/images/help/issues/development-menu-select-pr-or-branch.png b/assets/images/help/issues/development-menu-select-pr-or-branch.png new file mode 100644 index 0000000000..f7befad130 Binary files /dev/null and b/assets/images/help/issues/development-menu-select-pr-or-branch.png differ diff --git a/assets/images/help/issues/development-menu-select-repository.png b/assets/images/help/issues/development-menu-select-repository.png new file mode 100644 index 0000000000..2fd36d05a9 Binary files /dev/null and b/assets/images/help/issues/development-menu-select-repository.png differ diff --git a/assets/images/help/issues/development-menu.png b/assets/images/help/issues/development-menu.png new file mode 100644 index 0000000000..891810ee93 Binary files /dev/null and b/assets/images/help/issues/development-menu.png differ diff --git a/assets/images/help/settings/cookie-settings-accept-or-reject.png b/assets/images/help/settings/cookie-settings-accept-or-reject.png new file mode 100644 index 0000000000..3c220255fd Binary files /dev/null and b/assets/images/help/settings/cookie-settings-accept-or-reject.png differ diff --git a/assets/images/help/settings/cookie-settings-manage.png b/assets/images/help/settings/cookie-settings-manage.png new file mode 100644 index 0000000000..c95b55080a Binary files /dev/null and b/assets/images/help/settings/cookie-settings-manage.png differ diff --git a/assets/images/help/settings/cookie-settings-save.png b/assets/images/help/settings/cookie-settings-save.png new file mode 100644 index 0000000000..7a85412d78 Binary files /dev/null and b/assets/images/help/settings/cookie-settings-save.png differ diff --git a/assets/images/help/settings/ssh-sso-authorize.png b/assets/images/help/settings/ssh-sso-authorize.png index 84ca29e199..457c6df876 100644 Binary files a/assets/images/help/settings/ssh-sso-authorize.png and b/assets/images/help/settings/ssh-sso-authorize.png differ diff --git a/assets/images/help/settings/ssh-sso-button.png b/assets/images/help/settings/ssh-sso-button.png index 8779fbdc46..b71135fafb 100644 Binary files a/assets/images/help/settings/ssh-sso-button.png and b/assets/images/help/settings/ssh-sso-button.png differ diff --git a/assets/images/hosted-runner-mgmt.png b/assets/images/hosted-runner-mgmt.png new file mode 100644 index 0000000000..9b62a8c944 Binary files /dev/null and b/assets/images/hosted-runner-mgmt.png differ diff --git a/assets/images/hosted-runner.png b/assets/images/hosted-runner.png new file mode 100644 index 0000000000..fa052d51ee Binary files /dev/null and b/assets/images/hosted-runner.png differ diff --git a/components/article/PlatformPicker.tsx b/components/article/PlatformPicker.tsx index 16ee3b9f0a..accb40ae3f 100644 --- a/components/article/PlatformPicker.tsx +++ b/components/article/PlatformPicker.tsx @@ -5,7 +5,7 @@ import { sendEvent, EventType } from 'components/lib/events' import { useRouter } from 'next/router' import { useArticleContext } from 'components/context/ArticleContext' -import parseUserAgent from 'components/lib/user-agent' +import { parseUserAgent } from 'components/lib/user-agent' const platforms = [ { id: 'mac', label: 'Mac' }, diff --git a/components/context/PlaygroundContext.tsx b/components/context/PlaygroundContext.tsx index b7f5245cfd..3047070894 100644 --- a/components/context/PlaygroundContext.tsx +++ b/components/context/PlaygroundContext.tsx @@ -59,8 +59,9 @@ export const PlaygroundContextProvider = (props: { children: React.ReactNode }) const router = useRouter() const [activeSectionIndex, setActiveSectionIndex] = useState(0) const [scrollToSection, setScrollToSection] = useState() - const path = router.asPath.split('?')[0].split('#')[0] - + const path = router.asPath.includes('@latest') + ? router.asPath.split('?')[0].split('#')[0].split('@latest')[1] + : router.asPath.split('?')[0].split('#')[0] const relevantArticles = articles.filter(({ slug }) => slug === path) const { langId } = router.query diff --git a/components/hooks/useTheme.ts b/components/hooks/useTheme.ts index b8134a0e57..b9f9d87111 100644 --- a/components/hooks/useTheme.ts +++ b/components/hooks/useTheme.ts @@ -81,7 +81,8 @@ export function getCssTheme(cookieValue = ''): CssColorTheme { darkTheme: filterTheme(dark_theme) || defaultCSSTheme.darkTheme, } } catch (err) { - console.warn("Unable to parse 'color_mode' cookie", err) + if (process.env.NODE_ENV === 'development') + console.warn("Unable to parse 'color_mode' cookie", err) return defaultCSSTheme } } diff --git a/components/lib/events.ts b/components/lib/events.ts index 2f65b8056a..7a1758342a 100644 --- a/components/lib/events.ts +++ b/components/lib/events.ts @@ -1,7 +1,7 @@ /* eslint-disable camelcase */ import { v4 as uuidv4 } from 'uuid' import Cookies from 'js-cookie' -import parseUserAgent from './user-agent' +import { parseUserAgent } from './user-agent' const COOKIE_NAME = '_docs-events' diff --git a/components/lib/get-rest-code-samples.ts b/components/lib/get-rest-code-samples.ts index 982c6945cb..be97ce6129 100644 --- a/components/lib/get-rest-code-samples.ts +++ b/components/lib/get-rest-code-samples.ts @@ -43,9 +43,14 @@ export function getShellExample(operation: Operation, codeSample: CodeSample) { } } + let authHeader = '-H "Authorization: Bearer "' + if (operation.subcategory === 'management-console') { + authHeader = '-u "api_key:your-password"' + } + const args = [ operation.verb !== 'get' && `-X ${operation.verb.toUpperCase()}`, - `-H "Accept: ${defaultAcceptHeader}" \\ \n -H "Authorization: token "`, + `-H "Accept: ${defaultAcceptHeader}" \\ \n ${authHeader}`, `${operation.serverUrl}${requestPath}`, requestBodyParams, ].filter(Boolean) @@ -86,12 +91,12 @@ export function getGHExample(operation: Operation, codeSample: CodeSample) { requestBodyParams = Object.keys(codeSample.request.bodyParameters) .map((key) => { if (typeof codeSample.request.bodyParameters[key] === 'string') { - return `-f ${key}='${codeSample.request.bodyParameters[key]}'\n` + return `-f ${key}='${codeSample.request.bodyParameters[key]}' ` } else { - return `-F ${key}=${codeSample.request.bodyParameters[key]}\n` + return `-F ${key}=${codeSample.request.bodyParameters[key]} ` } }) - .join(' ') + .join('\\\n ') } const args = [ operation.verb !== 'get' && `--method ${operation.verb.toUpperCase()}`, @@ -141,11 +146,7 @@ export function getJSExample(operation: Operation, codeSample: CodeSample) { } } const comment = `// Octokit.js\n// https://github.com/octokit/core.js#readme\n` - const require = `const octokit = new Octokit(${stringify( - { auth: 'personal-access-token123' }, - null, - 2 - )})\n\n` + const require = `const octokit = new Octokit(${stringify({ auth: 'YOUR-TOKEN' }, null, 2)})\n\n` return `${comment}${require}await octokit.request('${operation.verb.toUpperCase()} ${ operation.requestPath diff --git a/components/lib/user-agent.ts b/components/lib/user-agent.ts index 60d52a14b7..377e765988 100644 --- a/components/lib/user-agent.ts +++ b/components/lib/user-agent.ts @@ -19,7 +19,7 @@ const BROWSER_REGEXPS = [ /ms(ie)\/([^\s)]+)/i, ] -export default function parseUserAgent(ua = navigator.userAgent) { +export function parseUserAgent(ua = navigator.userAgent) { ua = ua.toLowerCase() const osRe = OS_REGEXPS.find((re) => re.test(ua)) let [, os = 'other', os_version = '0'] = (osRe && ua.match(osRe)) || [] diff --git a/components/playground/CodeLanguagePicker.tsx b/components/playground/CodeLanguagePicker.tsx index f7df48ed4c..83389ed99f 100644 --- a/components/playground/CodeLanguagePicker.tsx +++ b/components/playground/CodeLanguagePicker.tsx @@ -15,7 +15,7 @@ export const CodeLanguagePicker = () => { {language.label} diff --git a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/dotnet.tsx b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/dotnet.tsx index 010d218b1d..d04647983e 100644 --- a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/dotnet.tsx +++ b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/dotnet.tsx @@ -53,18 +53,26 @@ const article: PlaygroundArticleT = { To set up your repository to use a custom dev container, you will need to create one or more \`devcontainer.json\` files. You can add these either from a template, in Visual Studio Code, or you can write your own. For more information on dev container configurations, see "[Introduction to dev containers](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project)". - 1. Access the Command Palette (Shift + Command + P / Ctrl + Shift + P), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. - ![Codespaces: Add Development Container Configuration Files... in the command palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 1. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. + + ![Codespaces: Add Development Container Configuration Files... in the Command Palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 2. For this example, click **C# (.NET)**. If you need additional features you can select any container that’s specific to C# (.NET) or a combination of tools such as C# (.NET) and MS SQL. - ![Select C# (.NET) option from the list](/assets/images/help/codespaces/add-dotnet-prebuilt-container.png) + ![Select C# (.NET) option from the list](/assets/images/help/codespaces/add-dotnet-prebuilt-container.png) + 3. Click the recommended version of .NET. - ![.NET version selection](/assets/images/help/codespaces/add-dotnet-version.png) + + ![.NET version selection](/assets/images/help/codespaces/add-dotnet-version.png) + 4. Accept the default option to add Node.js to your customization. - ![Add Node.js selection](/assets/images/help/codespaces/dotnet-options.png) + + ![Add Node.js selection](/assets/images/help/codespaces/dotnet-options.png) + 5. Select any additional features to install and click **OK**. - 6. Access the command palette (Shift + Command + P / Ctrl + Shift + P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + 6. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. + ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + `, }, { @@ -197,13 +205,16 @@ const article: PlaygroundArticleT = { "postCreateCommand": "dotnet restore", \`\`\` - 4. Access the command palette (\`Shift + Command + P\`/ \`Ctrl + Shift + P\`), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) - Rebuilding inside your codespace ensures your changes work as expected before you commit the changes to the repository. If something does result in a failure, you’ll be placed in a codespace with a recovery container that you can rebuild from to keep adjusting your container. + 4. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. + + ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + + Rebuilding inside your codespace ensures your changes work as expected before you commit the changes to the repository. If something does result in a failure, you’ll be placed in a codespace with a recovery container that you can rebuild from to keep adjusting your container. 5. Check your changes were successfully applied by verifying the "Code Spell Checker" extension was installed. - ![Extensions list](/assets/images/help/codespaces/dotnet-extensions.png) + ![Extensions list](/assets/images/help/codespaces/dotnet-extensions.png) + `, }, { @@ -217,9 +228,10 @@ const article: PlaygroundArticleT = { 1. Run your application by pressing \`F5\` or entering \`dotnet watch run\` in your terminal. - 2. When your project starts, you should see a message in the bottom right corner with a prompt to connect to the port your project uses. + 2. When your project starts, you should see a message in the bottom right corner with a prompt to connect to the port your project uses. + + ![Port forwarding toast](/assets/images/help/codespaces/python-port-forwarding.png) - ![Port forwarding toast](/assets/images/help/codespaces/python-port-forwarding.png) `, }, { diff --git a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/java.tsx b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/java.tsx index 6824f820c6..3950e5920f 100644 --- a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/java.tsx +++ b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/java.tsx @@ -51,15 +51,23 @@ const article: PlaygroundArticleT = { To set up your repository to use a custom dev container, you will need to create one or more \`devcontainer.json\` files. You can add these either from a template, in Visual Studio Code, or you can write your own. For more information on dev container configurations, see "[Introduction to dev containers](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project)". - 1. Access the Command Palette (\`Shift + Command + P\` / \`Ctrl + Shift + P\`), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. - !["Codespaces: Add Development Container Configuration Files..." in the command palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 1. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. + + !["Codespaces: Add Development Container Configuration Files..." in the Command Palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 2. For this example, click **Java**. In practice, you could select any container that’s specific to Java or a combination of tools such as Java and Azure Functions. - ![Select Java option from the list](/assets/images/help/codespaces/add-java-prebuilt-container.png) + + ![Select Java option from the list](/assets/images/help/codespaces/add-java-prebuilt-container.png) + 3. Click the recommended version of Java. - ![Java version selection](/assets/images/help/codespaces/add-java-version.png) + + ![Java version selection](/assets/images/help/codespaces/add-java-version.png) + 4. Select any additional features to install and click **OK**. - 5. Access the command palette (\`Shift + Command + P\`/ \`Ctrl + Shift + P\`), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + 5. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. + + ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + `, }, { @@ -185,9 +193,11 @@ const article: PlaygroundArticleT = { For more information about \`devcontainer.json\` properties, see the Visual Studio Code documentation: "[devcontainer.json reference](https://code.visualstudio.com/docs/remote/devcontainerjson-reference)." - 4. Access the command palette (\`Shift + Command + P\`/ \`Ctrl + Shift + P\`), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) - Rebuilding inside your codespace ensures your changes work as expected before you commit the changes to the repository. If something does result in a failure, you’ll be placed in a codespace with a recovery container that you can rebuild from to keep adjusting your container. + 4. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. + + ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + + Rebuilding inside your codespace ensures your changes work as expected before you commit the changes to the repository. If something does result in a failure, you’ll be placed in a codespace with a recovery container that you can rebuild from to keep adjusting your container. `, }, { diff --git a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/nodejs.tsx b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/nodejs.tsx index 6667f11234..eebba23d1f 100644 --- a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/nodejs.tsx +++ b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/nodejs.tsx @@ -29,7 +29,7 @@ const article: PlaygroundArticleT = { content: dedent` 1. Under the repository name, use the **Code** drop-down menu, and in the **Codespaces** tab, click **Create codespace on BRANCH**. - ![New codespace button](/assets/images/help/codespaces/new-codespace-button.png) + ![New codespace button](/assets/images/help/codespaces/new-codespace-button.png) If you don’t see this option, GitHub Codespaces isn't available for your project. See [Access to GitHub Codespaces](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces) for more information. @@ -51,15 +51,23 @@ const article: PlaygroundArticleT = { To set up your repository to use a custom dev container, you will need to create one or more \`devcontainer.json\` files. You can add these either from a template, in Visual Studio Code, or you can write your own. For more information on dev container configurations, see "[Introduction to dev containers](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project)". - 1. Access the Command Palette (\`Shift + Command + P\` / \`Ctrl + Shift + P\`), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. - !["Codespaces: Add Development Container Configuration Files..." in the command palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 1. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. + + !["Codespaces: Add Development Container Configuration Files..." in the Command Palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 2. For this example, click **Node.js**. If you need additional features you can select any container that’s specific to Node or a combination of tools such as Node and MongoDB. - ![Select Node option from the list](/assets/images/help/codespaces/add-node-prebuilt-container.png) + + ![Select Node option from the list](/assets/images/help/codespaces/add-node-prebuilt-container.png) + 3. Click the recommended version of Node.js. - ![Node.js version selection](/assets/images/help/codespaces/add-node-version.png) + + ![Node.js version selection](/assets/images/help/codespaces/add-node-version.png) + 4. Select any additional features to install and click **OK**. - 5. Access the command palette (\`Shift + Command + P\`/ \`Ctrl + Shift + P\`), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + 5. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. + + ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + `, }, { @@ -173,7 +181,9 @@ const article: PlaygroundArticleT = { With your dev container configuration added and a basic understanding of what everything does, you can now make changes to customize your environment further. In this example, you'll add properties to install npm when your codespace launches and make a list of ports inside the container available locally. 1. In the Explorer, select the \`devcontainer.json\` file from the tree to open it. You might have to expand the \`.devcontainer\` folder to see it. - ![devcontainer.json file in the Explorer](/assets/images/help/codespaces/devcontainers-options.png) + + ![devcontainer.json file in the Explorer](/assets/images/help/codespaces/devcontainers-options.png) + 2. Add the following lines to your \`devcontainer.json\` file after \`extensions\`: \`\`\`js{:copy} @@ -182,10 +192,11 @@ const article: PlaygroundArticleT = { \`\`\` For more information about \`devcontainer.json\` properties, see the Visual Studio Code documentation: "[devcontainer.json reference](https://code.visualstudio.com/docs/remote/devcontainerjson-reference)." - 1. Access the command palette (\`Shift + Command + P\`/ \`Ctrl + Shift + P\`), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + 3. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - Rebuilding inside your codespace ensures your changes work as expected before you commit the changes to the repository. If something does result in a failure, you’ll be placed in a codespace with a recovery container that you can rebuild from to keep adjusting your container. + ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + + Rebuilding inside your codespace ensures your changes work as expected before you commit the changes to the repository. If something does result in a failure, you’ll be placed in a codespace with a recovery container that you can rebuild from to keep adjusting your container. `, }, { diff --git a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/python.tsx b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/python.tsx index 7bba6a54a8..87425b849b 100644 --- a/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/python.tsx +++ b/components/playground/content/codespaces/setting-up-your-project-for-codespaces/setting-up-your-project-for-codespaces/python.tsx @@ -29,9 +29,9 @@ const article: PlaygroundArticleT = { content: dedent` 1. Under the repository name, use the **Code** drop-down menu, and in the **Codespaces** tab, click **Create codespace on BRANCH**. - ![New codespace button](/assets/images/help/codespaces/new-codespace-button.png) + ![New codespace button](/assets/images/help/codespaces/new-codespace-button.png) - If you don’t see this option, GitHub Codespaces isn't available for your project. See [Access to GitHub Codespaces](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces) for more information. + If you don’t see this option, GitHub Codespaces isn't available for your project. See [Access to GitHub Codespaces](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces) for more information. When you create a codespace, your project is created on a remote VM that is dedicated to you. By default, the container for your codespace has many languages and runtimes including Python, pip, and Miniconda. It also includes a common set of tools like git, wget, rsync, openssh, and nano. @@ -53,17 +53,27 @@ const article: PlaygroundArticleT = { To set up your repository to use a custom dev container, you will need to create one or more \`devcontainer.json\` files. You can add these either from a template, in Visual Studio Code, or you can write your own. For more information on dev container configurations, see "[Introduction to dev containers](/codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project)". - 1. Access the command palette (\`Shift + Command + P\` / \`Ctrl + Shift + P\`), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. - !["Codespaces: Add Development Container Configuration Files..." in the command palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 1. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "dev container". Select **Codespaces: Add Development Container Configuration Files...**. + + !["Codespaces: Add Development Container Configuration Files..." in the Command Palette](/assets/images/help/codespaces/add-prebuilt-container-command.png) + 2. For this example, click **Python 3**. If you need additional features you can select any container that’s specific to Python or a combination of tools such as Python 3 and PostgreSQL. - ![Select Python option from the list](/assets/images/help/codespaces/add-python-prebuilt-container.png) + + ![Select Python option from the list](/assets/images/help/codespaces/add-python-prebuilt-container.png) + 3. Click the recommended version of Python. - ![Python version selection](/assets/images/help/codespaces/add-python-version.png) + + ![Python version selection](/assets/images/help/codespaces/add-python-version.png) + 4. Accept the default option to add Node.js to your customization. - ![Add Node.js selection](/assets/images/help/codespaces/add-nodejs-selection.png) + + ![Add Node.js selection](/assets/images/help/codespaces/add-nodejs-selection.png) + 5. Select any additional features to install and click **OK**. - 6. Access the command palette (\`Shift + Command + P\` / \`Ctrl + Shift + P\`), then start typing "rebuild". Select **Codespaces: Rebuild Container**. - ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + 6. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. + + ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) + `, }, { @@ -197,7 +207,7 @@ const article: PlaygroundArticleT = { "postCreateCommand": "pip3 install --user -r requirements.txt", \`\`\` - 4. Access the command palette (\`Shift + Command + P\` / \`Ctrl + Shift + P\`), then start typing "rebuild". Select **Codespaces: Rebuild Container**. + 4. Access the Command Palette (Shift+Command+P / Ctrl+Shift+P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) diff --git a/components/rest/RestCodeSamples.tsx b/components/rest/RestCodeSamples.tsx index 0ceeb6f37a..5b0e3b6d01 100644 --- a/components/rest/RestCodeSamples.tsx +++ b/components/rest/RestCodeSamples.tsx @@ -60,14 +60,17 @@ export function RestCodeSamples({ operation, slug }: Props) { })) // Menu options for the language selector - const languageSelectOptions: LanguageOptionT[] = [ - { key: CURLKEY, text: 'cURL' }, - { key: JSKEY, text: 'JavaScript' }, - ] - // Not all examples support the GH CLI language option. If any of - // the examples don't support it, we don't show GH CLI as an option. - if (!languageExamples.some((example) => example.ghcli === undefined)) { - languageSelectOptions.push({ key: GHCLIKEY, text: 'GitHub CLI' }) + const languageSelectOptions: LanguageOptionT[] = [{ key: CURLKEY, text: 'cURL' }] + + // Management Console operations are not supported by Octokit + if (operation.subcategory !== 'management-console') { + languageSelectOptions.push({ key: JSKEY, text: 'JavaScript' }) + + // Not all examples support the GH CLI language option. If any of + // the examples don't support it, we don't show GH CLI as an option. + if (!languageExamples.some((example) => example.ghcli === undefined)) { + languageSelectOptions.push({ key: GHCLIKEY, text: 'GitHub CLI' }) + } } // Menu options for the example selector diff --git a/components/rest/RestOperation.module.scss b/components/rest/RestOperation.module.scss index 37efa6b34a..8d582d3a47 100644 --- a/components/rest/RestOperation.module.scss +++ b/components/rest/RestOperation.module.scss @@ -13,6 +13,6 @@ table-layout: fixed !important; } -.codeBlock code { +.codeBlock code:not(td *) { word-break: break-all; } diff --git a/components/ui/MiniTocs/MiniTocs.tsx b/components/ui/MiniTocs/MiniTocs.tsx index 81e49de99f..c1301d20a0 100644 --- a/components/ui/MiniTocs/MiniTocs.tsx +++ b/components/ui/MiniTocs/MiniTocs.tsx @@ -1,43 +1,42 @@ +import { Heading, NavList } from '@primer/react' import cx from 'classnames' -import { ActionList, Heading } from '@primer/react' -import type { MiniTocItem } from 'components/context/ArticleContext' +import { MiniTocItem } from 'components/context/ArticleContext' import { Link } from 'components/Link' import { useTranslation } from 'components/hooks/useTranslation' +import styles from './Minitocs.module.scss' + export type MiniTocsPropsT = { pageTitle: string miniTocItems: MiniTocItem[] } -const renderTocItem = (item: MiniTocItem) => { +function RenderTocItem(item: MiniTocItem) { return ( - li': { - ':hover': { - bg: 'var(--color-neutral-subtle) !important', - }, - }, - }} - > -
- - {item.contents.title} - - {item.items && item.items.length > 0 ? ( -
    {item.items.map(renderTocItem)}
- ) : null} -
-
+
+ + {item.contents.title} + + {item.items && item.items.length > 0 && ( +
    + {item.items.map((toc) => ( + + ))} +
+ )} +
) } @@ -46,17 +45,22 @@ export function MiniTocs({ pageTitle, miniTocItems }: MiniTocsPropsT) { return ( <> - + {t('miniToc')} - -
- {miniTocItems.map((items, i) => { - return
    {renderTocItem(items)}
- })} -
-
+ + {miniTocItems.map((items, i) => { + return ( + + ) + })} + ) } diff --git a/components/ui/MiniTocs/Minitocs.module.scss b/components/ui/MiniTocs/Minitocs.module.scss new file mode 100644 index 0000000000..f1d6cec325 --- /dev/null +++ b/components/ui/MiniTocs/Minitocs.module.scss @@ -0,0 +1,12 @@ +.indentNested { + padding-inline-start: 0; +} + +.nested { + div ul div li { + padding-left: 4em; + } + div li { + padding-left: 2em; + } +} diff --git a/content/README.md b/content/README.md index 73a5127c20..139e1802d4 100644 --- a/content/README.md +++ b/content/README.md @@ -227,7 +227,7 @@ defaultPlatform: linux ### `defaultTool` -- Purpose: Override the initial tool selection for a page, where tool refers to the application the reader is using to work with GitHub (such as GitHub.com's web UI, the GitHub CLI, or GitHub Desktop) or the GitHub APIs (such as cURL or the GitHub CLI). For more information about the tool selector, see [Markup reference for GitHub Docs](../contributing/content-markup-reference.md#tool-tags). If this frontmatter is omitted, then the tool-specific content matching the GitHub web UI is shown by default. If a user has indicated a tool preference (by clicking on a tool tab), then the user's preference will be applied instead of the default value. +- Purpose: Override the initial tool selection for a page, where the tool refers to the application the reader is using to work with GitHub (such as GitHub.com's web UI, the GitHub CLI, or GitHub Desktop) or the GitHub APIs (such as cURL or the GitHub CLI). For more information about the tool selector, see [Markup reference for GitHub Docs](../contributing/content-markup-reference.md#tool-tags). If this frontmatter is omitted, then the tool-specific content matching the GitHub web UI is shown by default. If a user has indicated a tool preference (by clicking on a tool tab), then the user's preference will be applied instead of the default value. - Type: `String`, one of: `webui`, `cli`, `desktop`, `curl`, `codespaces`, `vscode`, `importer_cli`, `graphql`, `powershell`, `bash`, `javascript`. - Optional. @@ -263,9 +263,9 @@ includeGuides: - Optional. ### `topics` -- Purpose: Indicate the topics covered by the article. The topics are used to filter guides on some landing pages. For example, the guides at the bottom of [this page](https://docs.github.com/en/actions/guides) can be filtered by topics and the topics are listed under the guide intro. Topics are also added to all search records that get created for each page. The search records contain a `topics` property that is used to filter search results by topics. For more information, see the [Search](/contributing/search.md) contributing guide. Refer to the content models for more details around adding topics. A full list of existing topics is located in the [allowed topics file](/data/allowed-topics.js). If topics in article frontmatter and the allow-topics list become out of sync, the [topics CI test](/tests/unit/search/topics.js) will fail. +- Purpose: Indicate the topics covered by the article. The topics are used to filter guides on some landing pages. For example, the guides at the bottom of [this page](https://docs.github.com/en/actions/guides) can be filtered by topics, and the topics are listed under the guide intro. Topics are also added to all search records that get created for each page. The search records contain a `topics` property that is used to filter search results by topics. For more information, see the [Search](/contributing/search.md) contributing guide. Refer to the content models for more details about adding topics. A full list of existing topics is located in the [allowed topics file](/data/allowed-topics.js). If topics in article frontmatter and the allow-topics list become out of sync, the [topics CI test](/tests/unit/search/topics.js) will fail. - Type: Array of `String`s -- Optional: Topics are preferred for each article, but, there may be cases where existing articles don't yet have topics or adding a topic to a new article may not add value. +- Optional: Topics are preferred for each article, but, there may be cases where existing articles don't yet have topics, or adding a topic to a new article may not add value. ### `contributor` - Purpose: Indicate an article is contributed and maintained by a third-party organization, typically a GitHub Technology Partner. @@ -294,7 +294,7 @@ contributor: If you see two single quotes in a row (`''`) in YML frontmatter where you might expect to see one (`'`), this is the YML-preferred way to escape a single quote. From [the YAML spec](https://yaml.org/spec/history/2001-12-10.html): -> In single quoted leaves, a single quote character needs to be escaped. This is done by repeating the character. +> In single-quoted leaves, a single quote character needs to be escaped. This is done by repeating the character. As an alternative, you can change the single quotes surrounding the frontmatter field to double quotes and leave interior single quotes unescaped. @@ -314,7 +314,7 @@ Make sure not to add hardcoded "In this article" sections in the Markdown source A content file can have **two** types of versioning: * [`versions`](#versions) frontmatter (**required**) - * Determines in which the versions the page is available. See [contributing/permalinks](../contributing/permalinks.md) for more info. + * Determines in which versions the page is available. See [contributing/permalinks](../contributing/permalinks.md) for more info. * Liquid statements in content (**optional**) * Conditionally render content depending on the current version being viewed. See [contributing/liquid-helpers](../contributing/liquid-helpers.md) for more info. Note Liquid conditionals can also appear in `data` and `include` files. @@ -358,7 +358,7 @@ and when viewed on GitHub Enterprise Server docs, the version is included as wel ### Preventing transformations -Sometimes you want to link to a Dotcom-only article in Enterprise content and you don't want the link to be Enterprise-ified. To prevent the transformation, include the preferred version in the path. +Sometimes you want to link to a Dotcom-only article in Enterprise content and you don't want the link to be Enterprise-ified. To prevent the transformation, you should include the preferred version in the path. ```markdown "[GitHub's Terms of Service](/free-pro-team@latest/github/site-policy/github-terms-of-service)" @@ -388,8 +388,8 @@ The homepage is the main Table of Contents file for the docs site. The homepage To create a product guides page (e.g. [Actions' Guide page](https://docs.github.com/en/actions/guides)), create or modify an existing markdown file with these specific frontmatter values: -1. Use the product guides page template by referencing it `layout: product-guides` -2. (optional) Include the learning tracks in [`learningTracks`](#learningTracks) +1. Use the product guides page template by referencing `layout: product-guides`. +2. (optional) Include the learning tracks in [`learningTracks`](#learningTracks). 3. (optional) Define which articles to include with [`includeGuides`](#includeGuides). If using learning tracks, they need to be defined in [`data/learning-tracks/*.yml`](../data/learning-tracks/README.md). diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md index 2f1b6925f7..7a6d7d6320 100644 --- a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md @@ -25,6 +25,7 @@ children: - /managing-the-default-branch-name-for-your-repositories - /managing-security-and-analysis-settings-for-your-personal-account - /managing-access-to-your-personal-accounts-project-boards + - /managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages - /integrating-jira-with-your-personal-projects - /what-does-the-available-for-hire-checkbox-do shortTitle: Personal account settings diff --git a/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md new file mode 100644 index 0000000000..9f7621f056 --- /dev/null +++ b/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md @@ -0,0 +1,33 @@ +--- +title: Managing your cookie preferences for GitHub's enterprise marketing pages +intro: "You can control how {% data variables.product.company_short %} uses information from non-essential tracking cookies for enterprise marketing pages." +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +shortTitle: Manage cookie preferences +--- + +## About cookie preferences on enterprise marketing pages + +{% data variables.product.company_short %} may use non-essential cookies on some enterprise marketing pages. You can customize how these cookies behave. For more information about how {% data variables.product.company_short %} uses cookies, see "[{% data variables.product.company_short %} Privacy Statement](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement)." + +## Changing your cookie preferences + +You can customize how non-essential cookies behave on any {% data variables.product.company_short %} enterprise marketing page. + +1. Navigate to the {% data variables.product.company_short %} enterprise marketing page where you'd like to change your cookie preferences. For example, navigate to [{% data variables.product.company_short %} Resources](https://resources.github.com/). +1. Scroll to the bottom of the page, then click **Manage Cookies**. + + ![Screenshot of button to manage cookie settings.](/assets/images/help/settings/cookie-settings-manage.png) + +1. Under "Manage cookie preferences," to accept or reject each non-essential cookie, click **Accept** or **Reject**. + + ![Screenshot of radio buttons to choose "Accept" or "Reject" for non-essential cookies.](/assets/images/help/settings/cookie-settings-accept-or-reject.png) + +1. Click **Save changes**. + + ![Screenshot of button to save changes.](/assets/images/help/settings/cookie-settings-save.png) diff --git a/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md b/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md index 8103a977e8..f3eecc8858 100644 --- a/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md +++ b/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md @@ -145,11 +145,11 @@ With OIDC, a {% data variables.product.prodname_actions %} workflow requires a t Audience and Subject claims are typically used in combination while setting conditions on the cloud role/resources to scope its access to the GitHub workflows. - **Audience**: By default, this value uses the URL of the organization or repository owner. This can be used to set a condition that only the workflows in the specific organization can access the cloud role. -- **Subject**: Has a predefined format and is a concatenation of some of the key metadata about the workflow, such as the {% data variables.product.prodname_dotcom %} organization, repository, branch, or associated [`job`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) environment. See "[Example subject claims](#example-subject-claims)" to see how the subject claim is assembled from concatenated metadata. +- **Subject**: By default, has a predefined format and is a concatenation of some of the key metadata about the workflow, such as the {% data variables.product.prodname_dotcom %} organization, repository, branch, or associated [`job`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) environment. See "[Example subject claims](#example-subject-claims)" to see how the subject claim is assembled from concatenated metadata. -There are also many additional claims supported in the OIDC token that can also be used for setting these conditions. +If you need more granular trust conditions, you can customize the issuer (`iss`) and subject (`sub`) claims that are included with the JWT. For more information, see "[Customizing the token claims](#customizing-the-token-claims)". -In addition, your cloud provider could allow you to assign a role to the access tokens, letting you specify even more granular permissions. +There are also many additional claims supported in the OIDC token that can be used for setting these conditions. In addition, your cloud provider could allow you to assign a role to the access tokens, letting you specify even more granular permissions. {% note %} @@ -243,9 +243,13 @@ curl -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" "$ACTIONS_ID_TOK {% ifversion actions-oidc-hardening-config %} ## Customizing the token claims -You can security harden your OIDC configuration by customizing the claims that are included with the JWT. This allows your cloud provider to apply more granular trust conditions when determining whether to grant access to its resources. For example, {% ifversion ghec %}you can customize the issuer (`iss`) claim to only allow access from a specific enterprise URL, and {% endif %}you can customize the subject (`sub`) value to require that requests originate from a specific repository, reusable workflow, or other source. +You can security harden your OIDC configuration by customizing the claims that are included with the JWT. These customisations allow you to define more granular trust conditions on your cloud roles when allowing your workflows to access resources hosted in the cloud: -To configure the claim conditions on {% data variables.product.prodname_dotcom %}, you can use the REST API endpoints described in the following sections. +{% ifversion ghec %} - For an additional layer of security, you can append the `issuer` url with your enterprise slug. This lets you set conditions on the issuer (`iss`) claim, configuring it to only accept JWT tokens from a unique `issuer` URL that must include your enterprise slug.{% endif %} +- You can standardize your OIDC configuration by setting conditions on the subject (`sub`) claim that require JWT tokens to originate from a specific repository, reusable workflow, or other source. +- You can define granular OIDC policies by using additional OIDC token claims, such as `repository_id` and `repo_visibility`. For more information, see "[Understanding the OIDC token](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#understanding-the-oidc-token)". + +To customize these claim formats, organization and repository admins can use the REST API endpoints described in the following sections. {% ifversion ghec %} @@ -280,19 +284,21 @@ After this setting is applied, the JWT will contain the updated `iss` value. In To configure organization-wide security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)." +Customizing the claims results in a new format for the entire `sub` claim, which replaces the default predefined `sub` format in the token described in "[Example subject claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims)." + The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, organization admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim. {% data reusables.actions.use-request-body-api %} -To customize your subject claims, you should first create a matching condition in your cloud provider's OIDC configuration, before adding the configuration using the REST API. Once the configuration is completed, each time a new job runs, the OIDC token generated during that job will follow the new customization template. If the matching condition doesn't exist in the cloud provider's OIDC configuration before the job runs, the generated token might not be accepted by the cloud provider, since the cloud conditions may not be synchronized. +To customize your subject claims, you should first create a matching condition in your cloud provider's OIDC configuration, before customizing the configuration using the REST API. Once the configuration is completed, each time a new job runs, the OIDC token generated during that job will follow the new customization template. If the matching condition doesn't exist in the cloud provider's OIDC configuration before the job runs, the generated token might not be accepted by the cloud provider, since the cloud conditions may not be synchronized. {% note %} -**Note**: When the organization template is applied, it will not affect any existing repositories that already use OIDC. For new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration. For more information, see "[Set the opt-in flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)." +**Note**: When the organization template is applied, it will not affect any existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration. For more information, see "[Set the opt-in flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)." {% endnote %} #### Example: Allowing repository based on visibility and owner -This example template enables cloud access based on repository visibility and owner, letting you restrict cloud role access to only private repositories within an organization or enterprise. {% data reusables.actions.use-request-body-api %} +This example template allows the `sub` claim to have a new format, using `repository_owner` and `repository_visibility`: ```json { @@ -303,11 +309,11 @@ This example template enables cloud access based on repository visibility and ow } ``` -In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repository_owner` and `repository_visibility`. For example: `"repository_owner: "monalisa":repository_visibility:private"`. +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repository_owner` and `repository_visibility`. For example: `"repository_owner: "monalisa":repository_visibility:private"`. The approach lets you restrict cloud role access to only private repositories within an organization or enterprise. #### Example: Allowing access to all repositories with a specific owner -This example template grants access to all repositories with a specified `repository_owner`. {% data reusables.actions.use-request-body-api %} +This example template enables the `sub` claim to have a new format with only the value of `repository_owner`. {% data reusables.actions.use-request-body-api %} ```json { @@ -322,7 +328,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re #### Example: Requiring a reusable workflow -This example template requires a specific reusable workflow in a claim, letting an enterprise enforce consistent deployments across its enterprise, organizations, and repositories. {% data reusables.actions.use-request-body-api %} +This example template allows the `sub` claim to have a new format that contains the value of the `job_workflow_ref` claim. This enables an enterprise to use [reusable workflows](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims) to enforce consistent deployments across its organizations and repositories. + +{% data reusables.actions.use-request-body-api %} ```json { @@ -336,7 +344,9 @@ In your cloud provider's OIDC configuration, configure the `sub` condition to re #### Example: Requiring a reusable workflow and other claims -This example template combines the requirement of a specific reusable workflow with additional claims. {% data reusables.actions.use-request-body-api %} +The following example template combines the requirement of a specific reusable workflow with additional claims. {% data reusables.actions.use-request-body-api %} + +This example also demonstrates how to use `"context"` to define your conditions. This is the part that follows the repository in the [default `sub` format](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims). For example, when the job references an environment, the context contains: `environment:`. ```json { @@ -350,6 +360,9 @@ This example template combines the requirement of a specific reusable workflow w In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repo`, `context`, and `job_workflow_ref`. +This customization template requires that the `sub` uses the following format: `repo::environment::job_workflow_ref:`. +For example: `"sub": "repo:octo-org/octo-repo:environment:prod:job_workflow_ref:octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main"` + #### Example: Granting access to a specific repository This example template lets you grant cloud access to all the workflows in a specific repository, across all branches/tags and environments. To help improve security, combine this template with the custom issuer URL described in "[Customizing the token URL for an enterprise](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-url-for-an-enterprise)." diff --git a/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md b/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md index 1fb177d065..25ba9d8db0 100644 --- a/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md +++ b/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md @@ -23,11 +23,18 @@ topics: Rather than copying and pasting deployment jobs from one workflow to another, you can create a reusable workflow that performs the deployment steps. A reusable workflow can be used by another workflow if it meets one of the access requirements described in "[Reusing workflows](/actions/learn-github-actions/reusing-workflows#access-to-reusable-workflows)." -When combined with OpenID Connect (OIDC), reusable workflows let you enforce consistent deployments across your repository, organization, or enterprise. You can do this by defining trust conditions on cloud roles based on reusable workflows. +You should be familiar with the concepts described in "[Reusing workflows](/actions/learn-github-actions/reusing-workflows" and "[About security hardening with OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)." -In order to create trust conditions based on reusable workflows, your cloud provider must support custom claims for `job_workflow_ref`. This allows your cloud provider to identify which repository the job originally came from. If your cloud provider only supports the standard claims (_audience_ and _subject_), it will not be able to determine that the job originated from the reusable workflow repository. Cloud providers that support `job_workflow_ref` include Google Cloud Platform and HashiCorp Vault. +## Defining the trust conditions -Before proceeding, you should be familiar with the concepts of [reusable workflows](/actions/learn-github-actions/reusing-workflows) and [OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect). +When combined with OpenID Connect (OIDC), reusable workflows let you enforce consistent deployments across your repository, organization, or enterprise. You can do this by defining trust conditions on cloud roles based on reusable workflows. The available options will vary depending on your cloud provider: + +- **Using `job_workflow_ref`**: + - To create trust conditions based on reusable workflows, your cloud provider must support custom claims for `job_workflow_ref`. This allows your cloud provider to identify which repository the job originally came from. + - For clouds that only support the standard claims (audience (`aud`) and subject (`sub`)), you can use the API to customize the `sub` claim to include `job_workflow_ref`. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". Support for custom claims is currently available for Google Cloud Platform and HashiCorp Vault. + +- **Customizing the token claims**: + - You can configure more granular trust conditions by customizing the issuer (`iss`) and subject (`sub`) claims included with the JWT. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". ## How the token works with reusable workflows 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 33df75d7fe..6e76788770 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 @@ -71,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.organizations.settings-sidebar-actions-runners %} -1. Click **New runner**. +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {% elsif ghae or ghes < 3.4 %} {% data reusables.organizations.navigate-to-org %} 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 f3f28d5e15..f95896503d 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 @@ -18,15 +18,24 @@ shortTitle: Run runner app on startup {% capture service_first_step %}1. Stop the self-hosted runner application if it is currently running.{% endcapture %} {% capture service_non_windows_intro_shell %}On the runner machine, open a shell in the directory where you installed the self-hosted runner application. Use the commands below to install and manage the self-hosted runner service.{% endcapture %} -{% capture service_nonwindows_intro %}You must add a runner to {% data variables.product.product_name %} before you can configure the self-hosted runner application as a service. For more information, see "[Adding self-hosted runners](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)."{% endcapture %} -{% capture service_win_name %}actions.runner.*{% endcapture %} +{% capture service_nonwindows_intro %} + +{% note %} + +**Note:** You must add a runner to {% data variables.product.product_name %} before you can configure the self-hosted runner application as a service. +For more information, see "[Adding self-hosted runners](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)." + +{% endnote %} +{% endcapture %} + +{% capture service_win_name %}actions.runner.*{% endcapture %} {% linux %} {{ service_nonwindows_intro }} -For Linux systems that use `systemd`, you can use the `svc.sh` script distributed with the self-hosted runner application to install and manage using the application as a service. +For Linux systems that use `systemd`, you can use the `svc.sh` script that is created after successfully adding the runner to install and manage using the application as a service. {{ service_non_windows_intro_shell }} 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 63a8e542c8..acf5f26451 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 @@ -9,216 +9,65 @@ versions: ghae: '*' ghec: '*' type: tutorial -shortTitle: Manage access to runners +shortTitle: Using runner groups --- {% data reusables.actions.enterprise-beta %} {% data reusables.actions.enterprise-github-hosted-runners %} -## About self-hosted runner groups +## About runner groups -{% ifversion fpt %} -{% 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. - -{% endnote %} - -Self-hosted runner groups are used to control access to self-hosted runners. Organization admins can configure access policies that control which repositories in an organization have access to the runner group. - -If you use {% data variables.product.prodname_ghe_cloud %}, you can create additional runner groups; enterprise admins can configure access policies that control which organizations in an enterprise have access to the runner group; and organization admins can assign additional granular repository access policies to the enterprise runner group. For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups). -{% endif %} +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups).{% endif %} {% ifversion ghec or ghes or ghae %} -Self-hosted runner groups are used to control access to self-hosted runners at the organization and enterprise level. Enterprise owners can configure access policies that control which organizations {% ifversion restrict-groups-to-workflows %}and workflows {% endif %}in an enterprise have access to the runner group. Organization owners can configure access policies that control which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} in an organization have access to the runner group. - -When an enterprise owner grants an organization access to a runner group, organization owners can see the runner group listed in the organization's self-hosted runner settings. The organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} and workflow{% endif %} access policies to the enterprise runner group. - -When new runners are created, they are automatically assigned to the default group. Runners can only be in one group at a time. You can move runners from the default group to another group. For more information, see "[Moving a self-hosted runner to a group](#moving-a-self-hosted-runner-to-a-group)." ## Creating a self-hosted runner group for an organization -All organizations have a single default self-hosted runner group. Organizations within an enterprise account can create additional self-hosted groups. Organization admins can allow individual repositories access to a runner group. For information about how to create a self-hosted runner group with the REST API, see "[Self-hosted runner groups](/rest/reference/actions#self-hosted-runner-groups)." +{%- ifversion ghec or ghes %} -Self-hosted runners are automatically assigned to the default group when created, and can only be members of one group at a time. You can move a runner from the default group to any group you create. +{% data reusables.actions.self-hosted-runner-security-admonition %} -When creating a group, you must choose a policy that defines which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} have access to the runner group. +{%- endif %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. In the "Runner groups" section, click **New runner group**. -1. Enter a name for your runner group. - {% data reusables.actions.runner-group-assign-policy-repo %} - - {% warning %} - - **Warning**: {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} -{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group.{% endif %} -{% data reusables.actions.self-hosted-runner-create-group %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. Under {% ifversion ghes or ghae %}"Runners"{% endif %}, click **Add new**, and then **New group**. - - ![Add runner group](/assets/images/help/settings/actions-org-add-runner-group.png) -1. Enter a name for your runner group, and assign a policy for repository access. - - You can configure a runner group to be accessible to a specific list of repositories, or to all repositories in the organization.{% ifversion ghec or ghes %} 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.{% endif %} - - {%- ifversion ghes %} - {% warning %} - - **Warning**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} - - ![Add runner group options](/assets/images/help/settings/actions-org-add-runner-group-options.png) -1. Click **Save group** to create the group and apply the policy. -{% endif %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} ## Creating a self-hosted runner group for an enterprise -Enterprises can add their self-hosted runners to groups for access management. Enterprises can create groups of self-hosted runners that are accessible to specific organizations in the enterprise account{% ifversion restrict-groups-to-workflows %} or to specific workflows{% endif %}. Organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} or workflow{% endif %} access policies to the enterprise runner groups. For information about how to create a self-hosted runner group with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runner-groups). + {%- ifversion ghec or ghes %} -Self-hosted runners are automatically assigned to the default group when created, and can only be members of one group at a time. You can assign the runner to a specific group during the registration process, or you can later move the runner from the default group to a custom group. +{% data reusables.actions.self-hosted-runner-security-admonition %} -When creating a group, you must choose a policy that defines which organizations have access to the runner group. +{%- endif %} -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} -1. To choose a policy for organization access, select the **Organization access** drop-down, and click a policy. You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise.{% ifversion ghes %} By default, only private repositories can access runners in a runner group, but you can override this.{% endif %} - - {%- ifversion ghec or ghes %} - {% warning %} - - **Warning**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} - {%- ifversion ghec or ghes %} - - ![Add runner group options](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) - {%- elsif ghae %} - - ![Add runner group options](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) - {%- endif %} -{% data reusables.actions.runner-group-assign-policy-workflow %} -1. Click **Save group** to create the group and apply the policy. +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} {% endif %} ## Changing the access policy of a self-hosted runner group -For runner groups in an enterprise, you can change what organizations in the enterprise can access a runner group{% ifversion restrict-groups-to-workflows %} or restrict what workflows a runner group can run{% endif %}. For runner groups in an organization, you can change what repositories in the organization can access a runner group{% ifversion restrict-groups-to-workflows %} or restrict what workflows a runner group can run{% endif %}. +{%- ifversion fpt or ghec or ghes %} -### Changing what organizations or repositories can access a runner group +{% data reusables.actions.self-hosted-runner-security-admonition %} -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. For runner groups in an enterprise, under **Organization access**, modify what organizations can access the runner group. For runner groups in an organization, under **Repository access**, modify what repositories can access the runner group. +{%- endif %} - {%- ifversion fpt or ghec or ghes %} - {% warning %} - - **Warning**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group-access %} -{% endif %} - -{% ifversion restrict-groups-to-workflows %} -### Changing what workflows can access a runner group -You can configure a self-hosted runner group to run either selected workflows or all workflows. For example, you might use this setting to protect secrets that are stored on self-hosted runners or to standardize deployment workflows by restricting a runner group to run only a specific reusable workflow. This setting cannot be overridden if you are configuring an organization's runner group that was shared by an enterprise. -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Under **Workflow access**, select the dropdown menu and click **Selected workflows**. -1. Click {% octicon "gear" aria-label="the gear icon" %}. -1. Enter a comma separated list of the workflows that can access the runner group. Use the full path, including the repository name and owner. Pin the workflow to a branch, tag, or full SHA. For example: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`. - - Only jobs directly defined within the selected workflows will have access to the runner group. - - Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group. - -1. Click **Save**. - -{% endif %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} ## Changing the name of a runner group -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Change the runner group name. - -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group %} -1. Change the runner group name. -{% endif %} +{% data reusables.actions.changing-the-name-of-a-runner-group %} {% ifversion ghec or ghes or ghae %} ## Automatically adding a self-hosted runner to a group -You can use the configuration script to automatically add a new self-hosted runner to a group. For example, this command registers a new self-hosted runner and uses the `--runnergroup` parameter to add it to a group named `rg-runnergroup`. - -```sh -./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup -``` - -The command will fail if the runner group doesn't exist: - -``` -Could not find any self-hosted runner group named "rg-runnergroup". -``` +{% data reusables.actions.automatically-adding-a-runner-to-a-group %} ## 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. - -{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -1. In the "Runners" list, click the runner that you want to configure. -2. Select the **Runner group** drop-down. -3. In "Move runner to group", choose a destination group for the runner. -{% elsif ghae or ghes < 3.4 %} -1. In the {% ifversion ghes or ghae %}"Runner groups"{% endif %} section of the settings page, locate the current group of the runner you want to move and expand the list of group members. - ![View runner group members](/assets/images/help/settings/actions-org-runner-group-members.png) -2. Select the checkbox next to the self-hosted runner, and then click **Move to group** to see the available destinations. - ![Runner group member move](/assets/images/help/settings/actions-org-runner-group-member-move.png) -3. To move the runner, click on the destination group. - ![Runner group member move](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) -{% endif %} +{% data reusables.actions.moving-a-runner-to-a-group %} ## Removing a self-hosted runner group -Self-hosted runners are automatically returned to the default group when their group is removed. - -{% ifversion ghes or ghae or ghec %} -{% data reusables.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" %}. -2. To remove the group, click **Remove group**. -3. Review the confirmation prompts, and click **Remove this runner group**. +{% data reusables.actions.removing-a-runner-group %} {% endif %} -{% endif %} diff --git a/content/actions/learn-github-actions/contexts.md b/content/actions/learn-github-actions/contexts.md index a8abf6ce7e..74256153a3 100644 --- a/content/actions/learn-github-actions/contexts.md +++ b/content/actions/learn-github-actions/contexts.md @@ -425,11 +425,11 @@ This example `jobs` context contains the result and outputs of a job from a reus ```json { - example_job: { - result: success, - outputs: { - output1: hello, - output2: world + "example_job": { + "result": "success", + "outputs": { + "output1": "hello", + "output2": "world" } } } @@ -488,7 +488,7 @@ The `steps` context contains information about the steps in the current job that This example `steps` context shows two previous steps that had an [`id`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepsid) specified. The first step had the `id` named `checkout`, the second `generate_number`. The `generate_number` step had an output named `random_number`. -```yaml +```json { "checkout": { "outputs": {}, @@ -549,7 +549,7 @@ The `runner.workspace` property is purposefully not documented. It is an early A The following example context is from a Linux {% data variables.product.prodname_dotcom %}-hosted runner. -```yaml +```json { "os": "Linux", "arch": "X64", @@ -606,7 +606,7 @@ The `secrets` context contains the names and values of secrets that are availabl The following example contents of the `secrets` context shows the automatic `GITHUB_TOKEN`, as well as two other secrets available to the workflow run. -```yaml +```json { "github_token": "***", "NPM_TOKEN": "***", @@ -634,7 +634,7 @@ For workflows with a matrix, the `strategy` context contains information about t The following example contents of the `strategy` context is from a matrix with four jobs, and is taken from the final job. Note the difference between the zero-based `job-index` number, and `job-total` which is not zero-based. -```yaml +```json { "fail-fast": true, "job-index": 3, @@ -683,7 +683,7 @@ There are no standard properties in the `matrix` context, only those which are d The following example contents of the `matrix` context is from a job in a matrix that has the `os` and `node` matrix properties defined in the workflow. The job is executing the matrix combination of an `ubuntu-latest` OS and Node.js version `16`. -```yaml +```json { "os": "ubuntu-latest", "node": 16 @@ -732,7 +732,7 @@ The `needs` context contains outputs from all jobs that are defined as a depende The following example contents of the `needs` context shows information for two jobs that the current job depends on. -```yaml +```json { "build": { "result": "success", @@ -800,7 +800,7 @@ There are no standard properties in the `inputs` context, only those which are d The following example contents of the `inputs` context is from a workflow that has defined the `build_id`, `deploy_target`, and `perform_deploy` inputs. -```yaml +```json { "build_id": 123456768, "deploy_target": "deployment_sys_1a", diff --git a/content/actions/learn-github-actions/understanding-github-actions.md b/content/actions/learn-github-actions/understanding-github-actions.md index 3ac38d19c6..f6e9e9ca75 100644 --- a/content/actions/learn-github-actions/understanding-github-actions.md +++ b/content/actions/learn-github-actions/understanding-github-actions.md @@ -2,6 +2,7 @@ title: Understanding GitHub Actions shortTitle: Understanding GitHub Actions intro: 'Learn the basics of {% data variables.product.prodname_actions %}, including core concepts and essential terminology.' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/automating-your-workflow-with-github-actions/core-concepts-for-github-actions - /actions/automating-your-workflow-with-github-actions/core-concepts-for-github-actions @@ -82,7 +83,7 @@ For more information, see "[Creating actions](/actions/creating-actions)." ### Runners -{% data reusables.actions.about-runners %} Each runner can run a single job at a time. {% ifversion ghes or ghae %} You must host your own runners for {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} provides Ubuntu Linux, Microsoft Windows, and macOS runners to run your workflows; each workflow run executes in a fresh, newly-provisioned virtual machine. If you need a different operating system or require a specific hardware configuration, you can host your own runners.{% endif %} For more information{% ifversion fpt or ghec %} about self-hosted runners{% endif %}, see "[Hosting your own runners](/actions/hosting-your-own-runners)." +{% data reusables.actions.about-runners %} Each runner can run a single job at a time. {% ifversion ghes or ghae %} You must host your own runners for {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} provides Ubuntu Linux, Microsoft Windows, and macOS runners to run your workflows; each workflow run executes in a fresh, newly-provisioned virtual machine. {% ifversion actions-hosted-runners %} {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." {% endif %}If you need a different operating system or require a specific hardware configuration, you can host your own runners.{% endif %} For more information{% ifversion fpt or ghec %} about self-hosted runners{% endif %}, see "[Hosting your own runners](/actions/hosting-your-own-runners)." {% data reusables.actions.workflow-basic-example-and-explanation %} diff --git a/content/actions/publishing-packages/publishing-nodejs-packages.md b/content/actions/publishing-packages/publishing-nodejs-packages.md index 50746929a6..0768413dbc 100644 --- a/content/actions/publishing-packages/publishing-nodejs-packages.md +++ b/content/actions/publishing-packages/publishing-nodejs-packages.md @@ -98,9 +98,9 @@ Each time you create a new release, you can trigger a workflow to publish your p ### Configuring the destination repository -If you don't provide the `repository` key in your *package.json* file, then {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the `name` field of the *package.json* file. For example, a package named `@my-org/test` is published to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. +Linking your package to {% data variables.product.prodname_registry %} using the `repository` key is optional. If you choose not to provide the `repository` key in your *package.json* file, then {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the `name` field of the *package.json* file. For example, a package named `@my-org/test` is published to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. If the `url` specified in the `repository` key is invalid, your package may still be published however it won't be linked to the repository source as intended. -However, if you do provide the `repository` key, then the repository in that key is used as the destination npm registry for {% data variables.product.prodname_registry %}. For example, publishing the below *package.json* results in a package named `my-amazing-package` published to the `octocat/my-other-repo` {% data variables.product.prodname_dotcom %} repository. +If you do provide the `repository` key in your *package.json* file, then the repository in that key is used as the destination npm registry for {% data variables.product.prodname_registry %}. For example, publishing the below *package.json* results in a package named `my-amazing-package` published to the `octocat/my-other-repo` {% data variables.product.prodname_dotcom %} repository. Once published, only the repository source is updated, and the package doesn't inherit any permissions from the destination repository. ```json { 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 dcfa57bf9b..62fe7d964c 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 @@ -86,6 +86,15 @@ While the job runs, the logs and output can be viewed in the {% data variables.p ## Supported runners and hardware resources +{% ifversion actions-hosted-runners %} + +{% note %} + +**Note**: {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." + +{% endnote %} +{% endif %} + Hardware specification for Windows and Linux virtual machines: - 2-core CPU (x86_64) - 7 GB of RAM diff --git a/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md b/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md new file mode 100644 index 0000000000..6aac71b234 --- /dev/null +++ b/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md @@ -0,0 +1,50 @@ +--- +title: Controlling access to larger runners +intro: You can use policies to limit access to {% data variables.actions.hosted_runner %}s that have been added to an organization or enterprise. +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: 'actions-hosted-runners' +type: tutorial +shortTitle: Controlling access to {% data variables.actions.hosted_runner %}s +--- + +{% data reusables.actions.enterprise-beta %} +{% data reusables.actions.enterprise-github-hosted-runners %} + +## About runner groups + +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/using-github-hosted-runners/controlling-access-to-larger-runners).{% endif %} + +{% ifversion ghec or ghes or ghae %} + +## Creating a runner group for an organization + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} + +## Creating a runner group for an enterprise + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} + +{% endif %} + +## Changing the access policy of a runner group + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} + +## Changing the name of a runner group + +{% data reusables.actions.changing-the-name-of-a-runner-group %} + +{% ifversion ghec or ghes or ghae %} +## Moving a runner to a group + +{% data reusables.actions.moving-a-runner-to-a-group %} + +## Removing a runner group + +{% data reusables.actions.removing-a-runner-group %} + +{% endif %} diff --git a/content/actions/using-github-hosted-runners/index.md b/content/actions/using-github-hosted-runners/index.md index 2c05480126..89da172b2b 100644 --- a/content/actions/using-github-hosted-runners/index.md +++ b/content/actions/using-github-hosted-runners/index.md @@ -7,6 +7,8 @@ versions: ghes: '*' children: - /about-github-hosted-runners + - /using-larger-runners + - /controlling-access-to-larger-runners - /monitoring-your-current-jobs - /customizing-github-hosted-runners - /connecting-to-a-private-network diff --git a/content/actions/using-github-hosted-runners/using-larger-runners.md b/content/actions/using-github-hosted-runners/using-larger-runners.md new file mode 100644 index 0000000000..22ea007919 --- /dev/null +++ b/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -0,0 +1,135 @@ +--- +title: Using larger runners +intro: '{% data variables.product.prodname_dotcom %} offers larger runners with more RAM and CPU.' +miniTocMaxHeadingLevel: 3 +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: 'actions-hosted-runners' +shortTitle: Using {% data variables.actions.hosted_runner %}s +--- + +## Overview of {% data variables.actions.hosted_runner %}s + +In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. + +When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. + +## Architectural overview of {% data variables.actions.hosted_runner %}s + +The {% data variables.actions.hosted_runner %}s are managed at the organization level, where they are arranged into groups that can contain multiple instances of the runner. They can also be created at the enterprise level and shared with organizations in the hierarchy. Once you've created a group, you can then add a runner to the group and update your workflows to target the label assigned to the {% data variables.actions.hosted_runner %}. You can also control which repositories are permitted to send jobs to the group for processing. For more information about groups, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +In the following diagram, a class of hosted runner named `ubuntu-20.04-16core` has been defined with customized hardware and operating system configuration. + +![Diagram explaining {% data variables.actions.hosted_runner %}](/assets/images/hosted-runner.png) + +1. Instances of this runner are automatically created and added to a group called `ubuntu-20.04-16core`. +2. The runners have been assigned the label `ubuntu-20.04-16core`. +3. Workflow jobs use the `ubuntu-20.04-16core` label in their `runs-on` key to indicate the type of runner they need to execute the job. +4. {% data variables.product.prodname_actions %} checks the runner group to see if your repository is authorized to send jobs to the runner. +5. The job runs on the next available instance of the `ubuntu-20.04-16core` runner. + +## Autoscaling {% data variables.actions.hosted_runner %}s + +Your {% data variables.actions.hosted_runner %}s can be configured to automatically scale to suit your needs. When jobs are submitted for processing, more machines can be automatically provisioned to run the jobs, until reaching a pre-defined maximum limit. Each machine only handles one job at a time, so these settings effectively determine the number of jobs that can be run concurrently. + +During the runner deployment process, you can configure the _Max_ option, which allows you to control your costs by setting the maximum parallel number of machines that are created in this set. A higher value here can help avoid workflows being blocked due to parallelism. + +## Networking for {% data variables.actions.hosted_runner %}s + +By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive a static IP address from {% data variables.product.prodname_dotcom %}'s IP address pool. When enabled, instances of the {% data variables.actions.hosted_runner %} will receive an address from a range that is unique to the runner, allowing you to use this range to configure a firewall allowlist. You can use up to 10 static IP address ranges in total across all your {% data variables.actions.hosted_runner %}s. + +{% note %} + +**Note**: If runners are unused for more than 30 days, their IP address ranges are automatically removed and cannot be recovered. + +{% endnote %} + +## Planning for {% data variables.actions.hosted_runner %}s + +### Create a runner group + +Runner groups are used to collect sets of virtual machines and create a security boundary around them. You can then decide which organizations or repositories are permitted to run jobs on those sets of machines. During the {% data variables.actions.hosted_runner %} deployment process, the runner can be added to an existing group, or otherwise it will join a default group. You can create a group by following the steps in "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +### Understanding billing + +Compared to standard {% data variables.product.prodname_dotcom %}-hosted runners, {% data variables.actions.hosted_runner %}s are billed differently. For more information, see "[Per-minute rates](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)". + +## Adding a {% data variables.actions.hosted_runner %} to an enterprise + +You can add {% data variables.actions.hosted_runner %}s to an enterprise, where they can be assigned to multiple organizations. The organization admins can then control which repositories can use the runners. To add a {% data variables.actions.hosted_runner %} to an enterprise, you must be an enterprise owner. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.enterprise-accounts.actions-runners-tab %} +{% data reusables.actions.add-hosted-runner %} +1. To allow organizations to access your {% data variables.actions.hosted_runner %}s, you specify the list of organizations that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Adding a {% data variables.actions.hosted_runner %} to an organization + +You can add a {% data variables.actions.hosted_runner %} to an organization, where the organization admins can control which repositories can use it. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runners %} +{% data reusables.actions.add-hosted-runner %} +1. To allow repositories to access your {% data variables.actions.hosted_runner %}s, add them to the list of repositories that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Running jobs on your runner + +Once your runner type has been been defined, you can update your workflows to send jobs to the runner instances for processing. In this example, a runner group is populated with Ubuntu 16-core runners, which have been assigned the label `ubuntu-20.04-16core`. If you have a runner matching this label, the `check-bats-version` job then uses the `runs-on` key to target that runner whenever the job is run: + +```yaml +name: learn-github-actions +on: [push] +jobs: + check-bats-version: + runs-on: ubuntu-20.04-16core + steps: + - uses: {% data reusables.actions.action-checkout %} + - uses:{% data reusables.actions.action-setup-node %} + with: + node-version: '14' + - run: npm install -g bats + - run: bats -v +``` + +## Managing access to your runners + +{% note %} + +**Note**: Before your workflows can send jobs to {% data variables.actions.hosted_runner %}s, you must first configure permissions for the runner group. See the following sections for more information. + +{% endnote %} + +Runner groups are used to control which repositories can run jobs on your {% data variables.actions.hosted_runner %}s. You must grant access to the group from each level of the management hierarchy, depending on where you've defined the {% data variables.actions.hosted_runner %}: + +- **Runners at the enterprise level**: Configure the runner group to grant access to all the required organizations. In addition, for each organization, you must configure the group to specify which repositories are allowed access. +- **Runners at the organization level**: Configure the runner group by specifying which repositories are allowed access. + +For example, the following diagram has a runner group named `grp-ubuntu-20.04-16core` at the enterprise level. Before the repository named `octo-repo` can use the runners in the group, you must first configure the group at the enterprise level to allow access from the `octo-org` organization; you must then configure the group at the organization level to allow access from `octo-repo`: + +![Diagram explaining {% data variables.actions.hosted_runner %} groups](/assets/images/hosted-runner-mgmt.png) + +### Allowing repositories to access a runner group + +This procedure demonstrates how to configure group permissions at the enterprise and organization levels: + +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} + - For runner groups in an enterprise: under **Organization access**, modify which organizations can access the runner group. + - For runner groups in an organization: under **Repository access**, modify which repositories can access the runner group. + +{% warning %} + +**Warning**: + +{% data reusables.actions.hosted-runner-security %} + +For more information, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +{% endwarning %} diff --git a/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index f636895b40..2de67fe8e5 100644 --- a/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -51,7 +51,7 @@ For more information on workflow run artifacts, see "[Persisting workflow data u A workflow can access and restore a cache created in the current branch, the base branch (including base branches of forked repositories), or the default branch (usually `main`). For example, a cache created on the default branch would be accessible from any pull request. Also, if the branch `feature-b` has the base branch `feature-a`, a workflow triggered on `feature-b` would have access to caches created in the default branch (`main`), `feature-a`, and `feature-b`. -Access restrictions provide cache isolation and security by creating a logical boundary between different branches. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). +Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`). Multiple workflows within a repository share cache entries. A cache created for a branch within a workflow can be accessed and restored from another workflow for the same repository and branch. diff --git a/content/actions/using-workflows/reusing-workflows.md b/content/actions/using-workflows/reusing-workflows.md index bbdf28e7fe..676a5f6f41 100644 --- a/content/actions/using-workflows/reusing-workflows.md +++ b/content/actions/using-workflows/reusing-workflows.md @@ -23,7 +23,7 @@ topics: Rather than copying and pasting from one workflow to another, you can make workflows reusable. You and anyone with access to the reusable workflow can then call the reusable workflow from another workflow. -Reusing workflows avoids duplication. This makes workflows easier to maintain and allows you to create new workflows more quickly by building on the work of others, just as you do with actions. Workflow reuse also promotes best practice by helping you to use workflows that are well designed, have already been tested, and have been proved to be effective. Your organization can build up a library of reusable workflows that can be centrally maintained. +Reusing workflows avoids duplication. This makes workflows easier to maintain and allows you to create new workflows more quickly by building on the work of others, just as you do with actions. Workflow reuse also promotes best practice by helping you to use workflows that are well designed, have already been tested, and have been proven to be effective. Your organization can build up a library of reusable workflows that can be centrally maintained. The diagram below shows three build jobs on the left of the diagram. After each of these jobs completes successfully a dependent job called "Deploy" runs. This job calls a reusable workflow that contains three jobs: "Staging", "Review", and "Production." The "Production" deployment job only runs after the "Staging" job has completed successfully. Using a reusable workflow to run deployment jobs allows you to run those jobs for each build without duplicating code in workflows. @@ -127,7 +127,7 @@ You can define inputs and secrets, which can be passed from the caller workflow runs-on: ubuntu-latest environment: production steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.envPAT }} @@ -168,12 +168,13 @@ jobs: name: Pass input and secrets to my-action runs-on: ubuntu-latest steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.token }} ``` {% endraw %} + {% ifversion actions-reusable-workflow-matrix %} ## Using a matrix strategy with a reusable workflow diff --git a/content/actions/using-workflows/workflow-commands-for-github-actions.md b/content/actions/using-workflows/workflow-commands-for-github-actions.md index c86943284f..34308f8f03 100644 --- a/content/actions/using-workflows/workflow-commands-for-github-actions.md +++ b/content/actions/using-workflows/workflow-commands-for-github-actions.md @@ -334,6 +334,12 @@ Write-Output "::add-mask::Mona The Octocat" {% endpowershell %} +{% warning %} + +**Warning:** Make sure you register the secret with 'add-mask' before outputting it in the build logs or using it in any other workflow commands. + +{% endwarning %} + ### Example: Masking an environment variable When you print the variable `MY_NAME` or the value `"Mona The Octocat"` in the log, you'll see `"***"` instead of `"Mona The Octocat"`. diff --git a/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md b/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md new file mode 100644 index 0000000000..adb32e7246 --- /dev/null +++ b/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md @@ -0,0 +1,52 @@ +--- +title: Configuring dependency review for your appliance +shortTitle: Configuring dependency review +intro: 'To helps users understand dependency changes when reviewing pull requests, you can enable, configure, and disable dependency review for {% data variables.product.product_location %}.' +product: '{% data reusables.gated-features.dependency-review %}' +miniTocMaxHeadingLevel: 3 +versions: + feature: dependency-review-action-ghes +type: how_to +topics: + - Advanced Security + - Enterprise + - Dependency review + - Security +--- + +{% data reusables.dependency-review.beta %} + +## About dependency review + +{% data reusables.dependency-review.feature-overview %} + +Some additional features, such as license checks, blocking of pull requests, and CI/CD integration, are available with the [dependency review action](https://github.com/actions/dependency-review-action). + +## Checking whether your license includes {% data variables.product.prodname_GH_advanced_security %} + +{% data reusables.advanced-security.check-for-ghas-license %} + +## Prerequisites for dependency review + +- A license for {% data variables.product.prodname_GH_advanced_security %}{% ifversion ghes %} (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 %} + +- The dependency graph enabled for the instance. Site administrators can enable the dependency graph via the management console or the administrative shell (see "[Enabling the dependency graph for your enterprise](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)"). + +- {% data variables.product.prodname_github_connect %} enabled to download and synchronize vulnerabilities from the {% data variables.product.prodname_advisory_database %}. This is usually configured as part of setting up {% data variables.product.prodname_dependabot %} (see "[Enabling Dependabot for your enterprise](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)"). + +## Enabling and disabling dependency review + +To enable or disable dependency review, you need to enable or disable the dependency graph for your instance. + +For more information, see "[Enabling the dependency graph for your enterprise](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)." + +## Running dependency review using {% data variables.product.prodname_actions %} + +{% data reusables.dependency-review.dependency-review-action-beta-note %} + +The dependency review action is included in your installation of {% data variables.product.prodname_ghe_server %}. It is available for all repositories that have {% data variables.product.prodname_GH_advanced_security %} and dependency graph enabled. + +{% data reusables.dependency-review.dependency-review-action-overview %} + +Users run the dependency review action using a {% data variables.product.prodname_actions %} workflow. If you have not already set up runners for {% data variables.product.prodname_actions %}, you must do this to enable users to run workflows. You can provision self-hosted runners at the repository, organization, or enterprise account level. For 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)." + diff --git a/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md b/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md index f3ee256100..dcd835e93d 100644 --- a/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md +++ b/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md @@ -14,6 +14,7 @@ topics: children: - /enabling-github-advanced-security-for-your-enterprise - /configuring-code-scanning-for-your-appliance + - /configuring-dependency-review-for-your-appliance - /configuring-secret-scanning-for-your-appliance --- diff --git a/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md b/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md index f3fd106760..2dad20eda8 100644 --- a/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md +++ b/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md @@ -23,7 +23,7 @@ You can enable the dependency graph via the {% data variables.enterprise.managem ## Enabling the dependency graph via the {% data variables.enterprise.management_console %} -If your {% data variables.product.product_location %} uses clustering, you cannot enable the dependency graph with the {% data variables.enterprise.management_console %} and must use the administrative shell instead. For more information, see "[Enabling the dependency graph via the administrative shell](#enabling-the-dependency-graph-via-the-administrative-shell)." +If {% data variables.product.product_location %} uses clustering, you cannot enable the dependency graph with the {% data variables.enterprise.management_console %} and must use the administrative shell instead. For more information, see "[Enabling the dependency graph via the administrative shell](#enabling-the-dependency-graph-via-the-administrative-shell)." {% data reusables.enterprise_site_admin_settings.sign-in %} {% data reusables.enterprise_site_admin_settings.access-settings %} diff --git a/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md b/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md index e9760a9de7..e400844d43 100644 --- a/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md +++ b/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md @@ -16,7 +16,9 @@ topics: --- If you configure a hostname instead of a hard-coded IP address, you will be able to change the physical hardware that {% data variables.product.product_location %} runs on without affecting users or client software. -The hostname setting in the {% data variables.enterprise.management_console %} should be set to an appropriate fully qualified domain name (FQDN) which is resolvable on the internet or within your internal network. For example, your hostname setting could be `github.companyname.com.` Web and API requests will automatically redirect to the hostname configured in the {% data variables.enterprise.management_console %}. Note that `localhost` is not a valid hostname setting. +The hostname setting in the {% data variables.enterprise.management_console %} should be set to an appropriate fully qualified domain name (FQDN) which is resolvable on the internet or within your internal network. For example, your hostname setting could be `github.companyname.com.` Web and API requests will automatically redirect to the hostname configured in the {% data variables.enterprise.management_console %}. Note that `localhost` is not a valid hostname setting. + +Hostnames must be less than 63 characters in length per [Section 2.3.4 of the Domain Names Specification RFC](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4). After you configure a hostname, you can enable subdomain isolation to further increase the security of {% data variables.product.product_location %}. For more information, see "[Enabling subdomain isolation](/enterprise/admin/guides/installation/enabling-subdomain-isolation/)." diff --git a/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md b/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md index e83bab2bcd..dda4d46612 100644 --- a/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md +++ b/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md @@ -90,6 +90,14 @@ settings to allow incoming emails](#configuring-dns-and-firewall-settings-to-all You can enforce TLS encryption for all incoming SMTP connections, which can help satisfy an ISO-27017 certification requirement. +{%- ifversion ghes = 3.6 %} +{% note %} + +**Note**: Enforcement of TLS for SMTP connections is unavailable in {% data variables.product.product_name %} 3.6.0. The feature will be available in an upcoming release. + +{% endnote %} +{%- endif %} + {% data reusables.enterprise_site_admin_settings.email-settings %} 1. Under "Authentication," select **Enforce TLS auth (recommended)**. diff --git a/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md b/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md index e074b64fd8..5bd322dcae 100644 --- a/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md +++ b/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md @@ -131,46 +131,49 @@ Key | Description {% ifversion ghes %} ## Indexing -GitHub's [code search][] features are powered by [ElasticSearch][]. This section of the site admin dashboard shows you the current status of your ElasticSearch cluster and provides you with several tools to control the behavior of searching and indexing. These tools are split into the following three categories. +GitHub's search features are powered by Elasticsearch. This section of the site admin dashboard shows you the current status of your Elasticsearch cluster and provides you with several tools to control search and index behavior. - [Code Search]: https://github.com/blog/1381-a-whole-new-code-search - [ElasticSearch]: http://www.elasticsearch.org/ +For more information about code search, see "[Searching for information on {% data variables.product.prodname_dotcom %}](/search-github)." For more information about Elasticsearch, see the [Elasticsearch website](https://elastic.co). + +{% note %} + +**Note**: In normal use, site administrators do not need to create new indices or schedule repair jobs. For troubleshooting or other support purposes, {% data variables.contact.github_support %} may instruct you to run a repair job. + +{% endnote %} + +### Index management + +{% data variables.product.product_name %} reconciles the state of the search index with data on the instance automatically and regularly. + +- Issues, pull requests, repositories, and users in the database +- Git repositories (source code) on disk + +Your instance uses repair jobs to reconcile the data, and schedules a repair job in the background when the following events occur. + +- A new search index is created. +- Missing data needs to be backfilled. +- Old search data needs to be updated. + +You can create a new index, or you can click on an existing index in the list to manage the index. You can perform the following operations on an index. + +- Make the index searchable. +- Make the index writable. +- Update the index. +- Delete the index +- Reset the index repair state. +- Start a new index repair job. +- Enable or disable index repair jobs. + +A progress bar shows the current status of a repair job across background workers. The bar is the percentage difference of the repair offset with the highest record ID in the database. You can ignore the value shown in the progress bar after a repair job has completed. The progress bar shows the difference between the repair offset and the highest record ID in the database, and will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. + +To minimize the effects on I/O performance and reduce the chances of operations timing out, run the repair job during off-peak hours. As the job reconciles the search index with database and Git repository data, one CPU will be used. Monitor your system's load averages and CPU usage with a utility like `top`. If you don't notice any significant increase in resource consumption, it should also be safe to run an index repair job during peak hours. + +Repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. ### Code search This allows you to enable or disable both search and index operations on source code. -### Code search index repair - -This controls how the code search index is repaired. You can - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state - -{% data variables.product.prodname_enterprise %} uses repair jobs to reconcile the state of the search index with data stored in a database (issues, pull requests, repositories, and users) and data stored in Git repositories (source code). This happens when - -- a new search index is created; -- missing data needs to be backfilled; or -- old search data needs to be updated. - -In other words, repair jobs are started as needed and run in the background—they are not scheduled by site admins in any way. - -Furthermore, repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. - -A progress bar shows the current status of a repair job across all of its background workers. It is the percentage difference of the repair offset with the highest record ID in the database. Don't worry about the value shown in the progress bar after a repair job has completed: because it shows the difference between the repair offset and the highest record ID in the database, it will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. - -You can start a new code-search index repair job at any time. It will use a single CPU as it reconciles the search index with database and Git repository data. To minimize the effects this will have on I/O performance and reduce the chances of operations timing out, try to run a repair job during off-peak hours first. Monitor your system's load averages and CPU usage with a utility like `top`; if you don't notice any significant changes, it should be safe to run an index repair job during peak hours, as well. - -### Issues index repair - -This controls how the [Issues][] index is repaired. You can - - [Issues]: https://github.com/blog/831-issues-2-0-the-next-generation - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state {% endif %} ## Reserved logins diff --git a/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md b/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md index 86fdff08dd..f96aca87a5 100644 --- a/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md +++ b/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md @@ -14,7 +14,7 @@ topics: - Infrastructure shortTitle: Initiate failover to appliance --- -The time required to failover depends on how long it takes to manually promote the replica and redirect traffic. The average time ranges between 2-10 minutes. +The time required to failover depends on how long it takes to manually promote the replica and redirect traffic. The average time ranges between 20-30 minutes. {% data reusables.enterprise_installation.promoting-a-replica %} diff --git a/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md b/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md index dbc7885a81..eaf7abed76 100644 --- a/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md +++ b/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md @@ -83,7 +83,7 @@ You can create a runner group to manage access to the runner that you added to y {% data variables.product.product_name %} adds all new runners to a group. Runners can be in one group at a time. By default, {% data variables.product.product_name %} adds new runners to the "Default" group. -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} 1. To choose a policy for organization access, under "Organization access", select the **Organization access** drop-down, and click **Selected organizations**. 1. To the right of the drop-down with the organization access policy, click {% octicon "gear" aria-label="The Gear icon" %}. 1. Select the organizations you'd like to grant access to the runner group. @@ -100,7 +100,7 @@ You can create a runner group to manage access to the runner that you added to y {% endwarning %} {%- endif %} -{% data reusables.actions.self-hosted-runner-create-group %} +{% data reusables.actions.create-runner-group %} {%- ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} 1. Click the "Runners" tab. 1. In the list of runners, click the runner that you deployed in the previous section. diff --git a/content/admin/guides.md b/content/admin/guides.md index 08b0727759..5959ce4fd7 100644 --- a/content/admin/guides.md +++ b/content/admin/guides.md @@ -45,6 +45,7 @@ includeGuides: - /admin/configuration/configuring-built-in-firewall-rules - /admin/configuration/configuring-code-scanning-for-your-appliance - /admin/configuration/configuring-data-encryption-for-your-enterprise + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance - /admin/configuration/configuring-dns-nameservers - /admin/configuration/configuring-rate-limits - /admin/configuration/configuring-secret-scanning-for-your-appliance @@ -98,7 +99,7 @@ includeGuides: - /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-policies-for-projects-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 diff --git a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md index 33fed05966..897ffc7acf 100644 --- a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md +++ b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md @@ -146,6 +146,9 @@ The scope of the events that appear in your enterprise's audit log depend on whe {%- ifversion ghec or ghes %} | `business.set_fork_pr_workflows_policy` | The policy for workflows on private repository forks was changed. For more information, see "{% ifversion ghec %}[Enforcing policies for {% data variables.product.prodname_actions %} in an enterprise](/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 audit-log-sso-response-events %} +|`business.sso_response` | A SAML single sign-on (SSO) response was generated when a member attempted to authenticate with your enterprise. This event is only available via audit log streaming and the REST API. +{%- endif %} {%- ifversion ghes %} | `business.update_actions_settings` | An enterprise owner or site administrator updated {% data variables.product.prodname_actions %} policy settings for an enterprise. For more information, see "[Enforcing policies for GitHub Actions in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise)." {%- endif %} @@ -730,8 +733,8 @@ Before you'll see `git` category actions, you must enable Git events in the audi {%- ifversion fpt or ghec or ghes %} | `org.set_fork_pr_workflows_policy` | The policy for workflows on private repository forks was 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 ghes %} -| `org.sso_response` | A SAML single sign-on response was generated when a member attempted to authenticate with an organization. +{%- ifversion ghes or audit-log-sso-response-events %} +| `org.sso_response` | A SAML single sign-on (SSO) response was generated when a member attempted to authenticate with your organization. This event is only available via audit log streaming and the REST API. {%- endif %} {%- ifversion not ghae %} | `org.transform` | A user account was converted into an organization. For more information, see "[Converting a user into an organization](/github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization)." @@ -793,9 +796,9 @@ Before you'll see `git` category actions, you must enable Git events in the audi | Action | Description |--------|------------- -| `organization_projects_change.clear` | An enterprise owner{% ifversion ghes %} or site administrator{% endif %} cleared the policy setting for organization-wide project boards in an enterprise. For more information, see "[Enforcing a policy for organization-wide project boards](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise#enforcing-a-policy-for-organization-wide-project-boards)." -| `organization_projects_change.disable` | Organization projects were disabled for all organizations in an enterprise. For more information, see "[Enforcing a policy for organization-wide project boards](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise#enforcing-a-policy-for-organization-wide-project-boards)." -| `organization_projects_change.enable` | Organization projects were enabled for all organizations in an enterprise. For more information, see "[Enforcing a policy for organization-wide project boards](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise#enforcing-a-policy-for-organization-wide-project-boards)." +| `organization_projects_change.clear` | An enterprise owner{% ifversion ghes %} or site administrator{% endif %} cleared the policy setting for organization-wide project boards in an enterprise. For more information, see "[Enforcing policies for projects in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise#enforcing-a-policy-for-organization-wide-project-boards)." +| `organization_projects_change.disable` | Organization projects were disabled for all organizations in an enterprise. For more information, see "[Enforcing policies for projects in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise#enforcing-a-policy-for-organization-wide-project-boards)." +| `organization_projects_change.enable` | Organization projects were enabled for all organizations in an enterprise. For more information, see "[Enforcing policies for projects in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise#enforcing-a-policy-for-organization-wide-project-boards)." {%- endif %} ## `packages` category actions @@ -1110,7 +1113,7 @@ Before you'll see `git` category actions, you must enable Git events in the audi | Action | Description |--------|------------- -| `repository_projects_change.clear` | The repository projects policy was removed for an organization, or all organizations in the enterprise. Organization admins can now control their repository projects settings. For more information, see "[Enforcing project board policies in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise)." +| `repository_projects_change.clear` | The repository projects policy was removed for an organization, or all organizations in the enterprise. Organization admins can now control their repository projects settings. For more information, see "[Enforcing policies for projects in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise)." | `repository_projects_change.disable` | Repository projects were disabled for a repository, all repositories in an organization, or all organizations in an enterprise. | `repository_projects_change.enable` | Repository projects were enabled for a repository, all repositories in an organization, or all organizations in an enterprise. diff --git a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md index daea61b47a..b34b1c60c3 100644 --- a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md +++ b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md @@ -44,7 +44,8 @@ You set up the audit log stream on {% data variables.product.product_name %} by - [Amazon S3](#setting-up-streaming-to-amazon-s3) - [Azure Blob Storage](#setting-up-streaming-to-azure-blob-storage) -- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs) +- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs){% ifversion streaming-datadog %} +- [Datadog](#setting-up-streaming-to-datadog){% endif %} - [Google Cloud Storage](#setting-up-streaming-to-google-cloud-storage) - [Splunk](#setting-up-streaming-to-splunk) @@ -60,7 +61,7 @@ You can set up streaming to S3 with access keys or, to avoid storing long-lived #### Setting up streaming to S3 with access keys {% endif %} -To stream audit logs to Amazon's S3 endpoint, you must have a bucket and access keys. For more information, see [Creating, configuring, and working with Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) in the the AWS documentation. Make sure to block public access to the bucket to protect your audit log information. +To stream audit logs to Amazon's S3 endpoint, you must have a bucket and access keys. For more information, see [Creating, configuring, and working with Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) in the AWS documentation. Make sure to block public access to the bucket to protect your audit log information. To set up audit log streaming from {% data variables.product.prodname_dotcom %} you will need: * The name of your Amazon S3 bucket @@ -231,6 +232,32 @@ You need two pieces of information about your event hub: its instance name and t {% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +{% ifversion streaming-datadog %} +### Setting up streaming to Datadog + +To set up streaming to Datadog, you must create a client token or an API key in Datadog, then configure audit log streaming in {% data variables.product.product_name %} using the token for authentication. You do not need to create a bucket or other storage container in Datadog. + +After you set up streaming to Datadog, you can see your audit log data by filtering by "github.audit.streaming." For more information, see [Log Management](https://docs.datadoghq.com/logs/). + +1. If you don't already have a Datadog account, create one. +1. In Datadog, generate a client token or an API key, then click **Copy key**. For more information, see [API and Application Keys](https://docs.datadoghq.com/account_management/api-app-keys/) in Datadog Docs. +{% data reusables.enterprise.navigate-to-log-streaming-tab %} +1. Select the **Configure stream** dropdown menu and click **Datadog**. + + ![Screenshot of the "Configure stream" dropdown menu with "Datadog" highlighted](/assets/images/help/enterprises/audit-stream-choice-datadog.png) +1. Under "Token", paste the token you copied earlier. + + ![Screenshot of the "Token" field](/assets/images/help/enterprises/audit-stream-datadog-token.png) +1. Select the "Site" dropdown menu and click your Datadog site. To determine your Datadog site, compare your Datadog URL to the table in [Datadog sites](https://docs.datadoghq.com/getting_started/site/) in Datadog Docs. + + ![Screenshot of the "Site" dropdown menu](/assets/images/help/enterprises/audit-stream-datadog-site.png) +1. To verify that {% data variables.product.prodname_dotcom %} can connect and write to the Datadog endpoint, click **Check endpoint**. + + ![Check the endpoint](/assets/images/help/enterprises/audit-stream-check.png) +{% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +1. After a few minutes, confirm that audit log data is appearing on the **Logs** tab in Datadog. If audit log data is not appearing, confirm that your token and site are correct in {% data variables.product.prodname_dotcom %}. +{% endif %} + ### Setting up streaming to Google Cloud Storage To set up streaming to Google Cloud Storage, you must create a service account in Google Cloud with the appropriate credentials and permissions, then configure audit log streaming in {% data variables.product.product_name %} using the service account's credentials for authentication. @@ -292,6 +319,10 @@ To stream audit logs to Splunk's HTTP Event Collector (HEC) endpoint you must ma Pausing the stream allows you to perform maintenance on the receiving application without losing audit data. Audit logs are stored for up to seven days on {% data variables.product.product_location %} and are then exported when you unpause the stream. +{% ifversion streaming-datadog %} +Datadog only accepts logs from up to 18 hours in the past. If you pause a stream to a Datadog endpoint for more than 18 hours, you risk losing logs that Datadog won't accept after you resume streaming. +{% endif %} + {% data reusables.enterprise.navigate-to-log-streaming-tab %} 1. Click **Pause stream**. diff --git a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md index 839a06c309..c16e6c9f88 100644 --- a/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md +++ b/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md @@ -121,7 +121,7 @@ For more information about the audit log REST API, see "[Enterprise administrati The query below searches for audit log events created on Jan 1st, 2022 in the `avocado-corp` enterprise, and return the first page with a maximum of 100 items per page using [REST API pagination](/rest/overview/resources-in-the-rest-api#pagination): ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&page=1&per_page=100" ``` @@ -133,7 +133,7 @@ You can specify multiple search phrases, such as `created` and `actor`, by separ The query below searches for audit log events for pull requests, where the event occurred on or after Jan 1st, 2022 in the `avocado-corp` enterprise, and the action was performed by the `octocat` user: ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat" ``` diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise.md new file mode 100644 index 0000000000..3561e7bf12 --- /dev/null +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise.md @@ -0,0 +1,73 @@ +--- +title: Enforcing policies for projects in your enterprise +intro: 'You can enforce policies for {% data variables.projects.projects_v2_and_v1 %} within your enterprise''s organizations, or allow policies to be set in each organization.' +permissions: Enterprise owners can enforce policies for projects in an enterprise. +redirect_from: + - /articles/enforcing-project-board-settings-for-organizations-in-your-business-account + - /articles/enforcing-project-board-policies-for-organizations-in-your-enterprise-account + - /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 + - /admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise +versions: + ghec: '*' + ghes: '*' + ghae: '*' +type: how_to +topics: + - Enterprise + - Policies + - Projects +shortTitle: Project board policies +--- + +## About policies for projects in your enterprise + +You can enforce policies to control how enterprise members manage {% data variables.projects.projects_v2_and_v1 %}, or you can allow organization owners to manage policies for {% data variables.projects.projects_v2_and_v1 %} at the organization level.{% ifversion project-visibility-policy %} + +Some policies apply to both {% data variables.product.prodname_projects_v2 %}, the new projects experience, and {% data variables.product.prodname_projects_v1 %}, the previous experience, while some apply only to {% data variables.product.prodname_projects_v1 %}. For more information about each experience, see "[About {% data variables.product.prodname_projects_v2 %}](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)" and "[About {% data variables.product.prodname_projects_v1 %}](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards)." +{% else %}For more information, see "[About project boards](/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards)."{% endif %} + +## Enforcing a policy for organization-wide projects + +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 %} +{% data reusables.enterprise-accounts.projects-tab %} +4. Under "Organization projects", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. Under "Organization projects", use the drop-down menu and choose a policy. + ![Drop-down menu with organization project board policy options](/assets/images/help/business-accounts/organization-projects-policy-drop-down.png) + +{% ifversion project-visibility-policy %} +## Enforcing a policy for visibility changes to projects + +Across all organizations owned by your enterprise, you can enable or disable the ability for people with admin access to a project to change the visibility of the project, or you can 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.projects-tab %} +1. Under "Project visibility change permission", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +1. Select the dropdown menu, then click a policy. + + ![Screenshot of the dropdown menu for configuring the "Project visibility change permission" policy](/assets/images/help/business-accounts/project-visibility-change-drop-down.png) +{% endif %} + +{% ifversion projects-v1 %} +## Enforcing policies for {% data variables.product.prodname_projects_v1 %} + +Some policies apply only to {% data variables.product.prodname_projects_v1 %}. + +### Enforcing a policy for repository projects + +Across all organizations owned by your enterprise, you can enable or disable repository-level projects, or allow owners to administer the setting at the organization level. + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.projects-tab %} +4. Under "Repository projects", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. Under "Repository projects", use the drop-down menu and choose a policy. + + ![Drop-down menu with repository project board policy options](/assets/images/help/business-accounts/repository-projects-policy-drop-down.png) +{% endif %} \ No newline at end of file diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md index 69f3a55303..75b2044c67 100644 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md @@ -81,6 +81,8 @@ You can also configure allowed IP addresses for an individual organization. For {% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} diff --git a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise.md b/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise.md deleted file mode 100644 index 92779bbbf0..0000000000 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -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. -redirect_from: - - /articles/enforcing-project-board-settings-for-organizations-in-your-business-account - - /articles/enforcing-project-board-policies-for-organizations-in-your-enterprise-account - - /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: - ghec: '*' - ghes: '*' - ghae: '*' -type: how_to -topics: - - Enterprise - - Policies - - Projects -shortTitle: Project board policies ---- - -## 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, 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 %} -{% data reusables.enterprise-accounts.projects-tab %} -4. Under "Organization projects", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Under "Organization projects", use the drop-down menu and choose a policy. - ![Drop-down menu with organization project board policy options](/assets/images/help/business-accounts/organization-projects-policy-drop-down.png) - -## Enforcing a policy for repository project boards - -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 %} -{% data reusables.enterprise-accounts.projects-tab %} -4. Under "Repository projects", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Under "Repository projects", use the drop-down menu and choose a policy. - ![Drop-down menu with repository project board policy options](/assets/images/help/business-accounts/repository-projects-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 b226150160..0b01d039df 100644 --- a/content/admin/policies/enforcing-policies-for-your-enterprise/index.md +++ b/content/admin/policies/enforcing-policies-for-your-enterprise/index.md @@ -16,7 +16,7 @@ children: - /about-enterprise-policies - /enforcing-repository-management-policies-in-your-enterprise - /enforcing-team-policies-in-your-enterprise - - /enforcing-project-board-policies-in-your-enterprise + - /enforcing-policies-for-projects-in-your-enterprise - /restricting-email-notifications-for-your-enterprise - /enforcing-policies-for-security-settings-in-your-enterprise - /enforcing-policies-for-dependency-insights-in-your-enterprise diff --git a/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md b/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md index 77c7fffea0..d3757186db 100644 --- a/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md +++ b/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md @@ -44,7 +44,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * A [list of the repositories](/free-pro-team@latest/rest/repos#list-organization-repositories) you want to migrate: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X POST \ -H "Accept: application/vnd.github+json" \ -d'{"lock_repositories":true,"repositories":["orgname/reponame", "orgname/reponame"]}' \ @@ -59,7 +59,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id ``` @@ -74,7 +74,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ -L -o migration_archive.tar.gz \ https://api.github.com/orgs/orgname/migrations/id/archive @@ -84,7 +84,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X DELETE \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id/archive diff --git a/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md b/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md index 0e8aa46005..c614ef94ce 100644 --- a/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md +++ b/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md @@ -133,7 +133,7 @@ To unlock the repositories on a {% data variables.product.prodname_dotcom_the_we * The unique `id` of the migration * The name of the repository to unlock ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ -H "Accept: application/vnd.github.wyandotte-preview+json" \ https://api.github.com/orgs/orgname/migrations/id/repos/repo_name/lock ``` @@ -142,7 +142,7 @@ curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ After unlocking the {% data variables.product.prodname_dotcom_the_website %} organization's repositories, you should delete every repository you previously migrated using [the repository delete endpoint](/rest/repos/#delete-a-repository). You'll need your access token for authentication: ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ https://api.github.com/repos/orgname/repo_name ``` 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 71109a9ae2..968a6a8403 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 @@ -26,11 +26,12 @@ You can authorize an existing SSH key, or create a new SSH key and then authoriz {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.ssh %} -3. Next to the SSH key you'd like to authorize, click **Enable SSO** or **Disable SSO**. -![SSO token authorize button](/assets/images/help/settings/ssh-sso-button.png) -4. Find the organization you'd like to authorize the SSH key for. -5. Click **Authorize**. -![Token authorize button](/assets/images/help/settings/ssh-sso-authorize.png) +1. To the right of the SSH key you'd like to authorize, click **Configure SSO**. + + ![Screenshot of the SSO token authorize button](/assets/images/help/settings/ssh-sso-button.png) +1. To the right of the organization you'd like to authorize the SSH key for, click **Authorize**. + + ![Screenshot of the token authorize button](/assets/images/help/settings/ssh-sso-authorize.png) ## Further reading 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 e1c8492c46..b7ece38d4e 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 @@ -28,11 +28,11 @@ topics: {% data reusables.command_line.open_the_multi_os_terminal %} 3. Generate a GPG key pair. Since there are multiple versions of GPG, you may need to consult the relevant [_man page_](https://en.wikipedia.org/wiki/Man_page) to find the appropriate key generation command. Your key must use RSA. - If you are on version 2.1.17 or greater, paste the text below to generate a GPG key pair. - ```shell + ```shell{:copy} $ gpg --full-generate-key ``` - If you are not on version 2.1.17 or greater, the `gpg --full-generate-key` command doesn't work. Paste the text below and skip to step 6. - ```shell + ```shell{:copy} $ gpg --default-new-key-algo rsa4096 --gen-key ``` 4. At the prompt, specify the kind of key you want, or press `Enter` to accept the default. @@ -51,10 +51,10 @@ topics: {% data reusables.gpg.list-keys-with-note %} {% data reusables.gpg.copy-gpg-key-id %} 10. Paste the text below, substituting in the GPG key ID you'd like to use. In this example, the GPG key ID is `3AA5C34371567BD2`: - ```shell - $ gpg --armor --export 3AA5C34371567BD2 - # Prints the GPG key ID, in ASCII armor format - ``` + ```shell{:copy} + $ gpg --armor --export 3AA5C34371567BD2 + # Prints the GPG key ID, in ASCII armor format + ``` 11. Copy your GPG key, beginning with `-----BEGIN PGP PUBLIC KEY BLOCK-----` and ending with `-----END PGP PUBLIC KEY BLOCK-----`. 12. [Add the GPG key to your GitHub account](/articles/adding-a-gpg-key-to-your-github-account). 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 5d22caf825..ffc87c9154 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 @@ -1,6 +1,7 @@ --- title: About billing for GitHub Actions intro: 'If you want to use {% data variables.product.prodname_actions %} beyond the storage or minutes included in your account, you will be billed for additional usage.' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-actions - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/about-billing-for-github-actions @@ -27,6 +28,14 @@ Minutes reset every month, while storage usage does not. ### Included storage and minutes +{% ifversion actions-hosted-runners %} +{% note %} + +**Note**: Entitlement minutes cannot be used for Windows and Ubuntu runners over 2-cores. These runners will always be charged for, including in public repos. For more information, see "[Per-minute rates for runners](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)." + +{% endnote %} +{% endif %} + |Product | Storage | Minutes (per month)| |------- | ------- | ---------| | {% data variables.product.prodname_free_user %} | 500 MB | 2,000 | @@ -57,15 +66,15 @@ The storage used by a repository is the total storage used by {% data variables. ### Per-minute rates -| Operating system | Per-minute rate (USD) | -|------- | ---------| -| Linux | $0.008 | -| macOS | $0.08 | -| Windows | $0.016 | +{% data reusables.billing.billing-standard-runners %} +{% ifversion actions-hosted-runners %}{% data reusables.billing.billing-hosted-runners %}{% endif %} -The number of jobs you can run concurrently across all repositories in your user or organization account depends on your GitHub plan. 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. - -{% data reusables.user-settings.context_switcher %} +- The number of jobs you can run concurrently across all repositories in your user or organization account depends on your GitHub plan. 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. +- {% data reusables.user-settings.context_switcher %} +{% ifversion actions-hosted-runners %} +- For {% data variables.actions.hosted_runner %}s, there is no additional cost for configurations that assign public static IP addresses to a {% data variables.actions.hosted_runner %}. For more information on {% data variables.actions.hosted_runner %}s, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." +- Entitlement minutes cannot be used for {% data variables.actions.hosted_runner %}s. +{% endif %} ## Calculating minute and storage spending 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 89a7a591d4..693aff8c64 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 @@ -359,7 +359,7 @@ In the following example, the `+` symbol ensures that the specified additional { ## Using a custom configuration file -A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries and to specify which directories to scan during analysis. +A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries{% ifversion code-scanning-exclude-queries-from-analysis %}, exclude or include specific queries,{% endif %} and to specify which directories to scan during analysis. In the workflow file, use the `config-file` parameter of the `init` action to specify the path to the configuration file you want to use. This example loads the configuration file _./.github/codeql/codeql-config.yml_. @@ -442,6 +442,41 @@ Optionally, you can give each array element a name, as shown in the example conf If you only want to run custom queries, you can disable the default security queries by using `disable-default-queries: true`. +{% ifversion code-scanning-exclude-queries-from-analysis %} +### Excluding specific queries from analysis + +You can add `exclude` and `include` filters to your custom configuration file, to specify the queries you want to exclude or include in the analysis. + +This is useful if you want to exclude, for example: +- Specific queries from the default suites (`security`, `security-extended` and `security-and-quality`). +- Specific queries whose results do not interest you. +- All the queries that generate warnings and recommendations. + +You can use `exclude` filters similar to those in the configuration file below to exclude queries that you want to remove from the default analysis. In the example of configuration file below, both the `js/redundant-assignment` and the `js/useless-assignment-to-local` queries are excluded from analysis. + +```yaml +query-filters: + - exclude: + id: js/redundant-assignment + - exclude: + id: js/useless-assignment-to-local +``` +To find the id of a query, you can click the alert in the list of alerts in the Security tab. This opens the alert details page. The `Rule ID` field contains the query id. For more information about the alert details page, see "[About {% data variables.product.prodname_code_scanning %} alerts](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-alerts#about-alert-details)." + +{% tip %} + +**Tips:** +- The order of the filters is important. The first filter instruction that appears after the instructions about the queries and query packs determines whether the queries are included or excluded by default. +- Subsequent instructions are executed in order and the instructions that appear later in the file take precedence over the earlier instructions. + +{% endtip %} + +You can find another example illustrating the use of these filters in the "[Example configuration files](#example-configuration-files)" section. + +For more information about using `exclude` and `include` filters in your custom configuration file, see "[Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/#filtering-the-queries-in-a-query-suite)." For information on the query metadata you can filter on, see "[Metadata for CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/metadata-for-codeql-queries/)." + +{% endif %} + ### Specifying directories to scan For the interpreted languages that {% data variables.product.prodname_codeql %} supports (Python{% ifversion fpt or ghes > 3.3 or ghae-issue-5017 %}, Ruby{% endif %} and JavaScript/TypeScript), you can restrict {% data variables.product.prodname_code_scanning %} to files in specific directories by adding a `paths` array to the configuration file. You can exclude the files in specific directories from analysis by adding a `paths-ignore` array. 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 a5948aba46..23e20a25a3 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 @@ -43,8 +43,8 @@ By default, the code scanning alerts page is filtered to show alerts for the def ![Summary of alerts](/assets/images/help/repository/code-scanning-click-alert.png) {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} - {% data reusables.code-scanning.alert-default-branch %} - ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} + {% data reusables.code-scanning.alert-default-branch %} + ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} 1. Optionally, if the alert highlights a problem with data flow, click **Show paths** to display the path from the data source to the sink where it's used. {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} ![The "Show paths" link on an alert](/assets/images/help/repository/code-scanning-show-paths.png) 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 52e0b98fd3..32cea9db26 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 @@ -151,25 +151,29 @@ 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 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. +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. -{% ifversion fpt or ghes > 3.2 or ghae or ghec %} - ![Analysis not found for commit message](/assets/images/help/repository/code-scanning-analysis-not-found.png) +{% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-7095 %} + +{% elsif ghes < 3.5 or ghae %} +If you used a pull request to add {% data variables.product.prodname_code_scanning %} to the repository, you will initially see {% ifversion ghes > 3.2 or ghae %}an "Analysis not found"{% elsif ghes = 3.2 %}a "Missing analysis"{% endif %} message when you click **Details** on the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" check. + +{% ifversion ghes > 3.2 or ghae %} + ![Analysis not found for commit message](/assets/images/enterprise/3.4/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. For example, in the screenshot above, {% data variables.product.prodname_code_scanning %} found an analysis for the merge commit of the pull request, but no analysis for the head of the main branch. -{% else %} - ![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 or ghec %} ### Reasons for the "Analysis not found" message -{% else %} + +{% elsif ghes = 3.2 %} + ![Missing analysis for commit message](/assets/images/enterprise/3.2/repository/code-scanning-missing-analysis.png) + ### 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 or ghec %}"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 ghes > 3.2 or ghae %}"Analysis not found"{% elsif ghes = 3.2 %}"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: @@ -177,7 +181,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. -![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) + ![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) The solution in this situation is to add the name of the base branch to the `on:push` and `on:pull_request` specification in the {% data variables.product.prodname_code_scanning %} workflow on that branch and then make a change that updates the open pull request that you want to scan. @@ -189,6 +193,8 @@ There are other situations where there may be no analysis for the latest commit Merge a trivial change into the base branch to trigger {% data variables.product.prodname_code_scanning %} on this latest commit, then push a change to the pull request to retrigger {% data variables.product.prodname_code_scanning %}. +{% endif %} + ## Next steps After setting up {% data variables.product.prodname_code_scanning %}, and allowing its actions to complete, you can: 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 c983e246ac..5cad113a82 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 @@ -33,8 +33,6 @@ In repositories where {% data variables.product.prodname_code_scanning %} is con - The **Conversation** tab of the pull request, as part of a pull request review {% endif %} - The **Files changed** tab of the pull request -{% ifversion code-scanning-pr-conversations-tab %} {% endif %} - 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 or ghec %} 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 daeb17e483..19be329625 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 @@ -45,9 +45,15 @@ If you upload a second SARIF file for a commit with the same category and from t If you're new to SARIF and want to learn more, see Microsoft's [`SARIF tutorials`](https://github.com/microsoft/sarif-tutorials) repository. -## Preventing duplicate alerts using fingerprints +## Providing data to track {% data variables.product.prodname_code_scanning %} alerts across runs -Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the right line of code when files are edited. +Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the correct line of code when files are edited. The `ruleID` for a result has to be the same across analysis. + +### Reporting consistent filepaths + +The filepath has to be consistent across the runs to enable a computation of a stable fingerprint. If the filepaths differ for the same result, each time there is a new analysis a new alert will be created, and the old one will be closed. This will cause having multiple alerts for the same result. + +### Including data for fingerprint generation {% data variables.product.prodname_dotcom %} uses the `partialFingerprints` property in the OASIS standard to detect when two results are logically identical. For more information, see the "[partialFingerprints property](https://docs.oasis-open.org/sarif/sarif/v2.1.0/cs01/sarif-v2.1.0-cs01.html#_Toc16012611)" entry in the OASIS documentation. @@ -65,6 +71,29 @@ SARIF files support both rules and results. The information stored in these elem When you compare SARIF files generated by analyzing different codebases with the same tool and rules, you should see differences in the results of the analyses but not in the rules. +## Specifying the root for source files + +{% data variables.product.prodname_code_scanning_capc %} interprets results that are reported with relative paths as relative to the root of the repository analyzed. If a result contains an absolute URI, the URI is converted to a relative URI. The relative URI can then be matched against a file committed to the repository. + +You can provide the source root for conversion from absolute to relative URIs in one of the following ways. + +- [`checkout_path`](https://github.com/github/codeql-action/blob/c2c0a2908e95769d01b907f9930050ecb5cf050d/analyze/action.yml#L44-L47) input to the `github/codeql-action/analyze` action +- `checkout_uri` parameter to the SARIF upload API endpoint. For more information, see "[{% data variables.product.prodname_code_scanning_capc %}](/rest/code-scanning#upload-an-analysis-as-sarif-data)" in the REST API documentation +- [`invocation.workingDirectory.uri`](https://docs.oasis-open.org/sarif/sarif/v2.1.0/csprd01/sarif-v2.1.0-csprd01.html#_Toc9244365) property in the SARIF file + +If you provide a source root, any location of an artifact specified using an absolute URI must use the same URI scheme. If there is a mismatch between the URI scheme for the source root and one or more of the absolute URIs, the upload is rejected. + +For example, a SARIF file is uploaded using a source root of `file:///github/workspace`. + +``` +# Conversion of absolute URIs to relative URIs for location artifacts + +file:///github/workspace/src/main.go -> src/main.go +file:///tmp/go-build/tmp.go -> file:///tmp/go-build/tmp.go +``` + +The file is successfully uploaded as both absolute URIs use the same URI scheme as the source root. + ## Validating your SARIF file @@ -77,6 +106,12 @@ You can check a SARIF file is compatible with {% data variables.product.prodname If you use a code analysis engine other than {% data variables.product.prodname_codeql %}, you can review the supported SARIF properties to optimize how your analysis results will appear on {% data variables.product.prodname_dotcom %}. +{% note %} + +**Note:** You must supply an explicit value for any property marked as "required". The empty string is not supported for required properties. + +{% endnote %} + Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.product.prodname_code_scanning %} will only use the following supported properties. ### `sarifLog` object @@ -95,6 +130,7 @@ Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.pr |----|----| | `tool.driver` | **Required.** A `toolComponent` object that describes the analysis tool. For more information, see the [`toolComponent` object](#toolcomponent-object). | | `tool.extensions[]` | **Optional.** An array of `toolComponent` objects that represent any plugins or extensions used by the tool during analysis. For more information, see the [`toolComponent` object](#toolcomponent-object). | +| `invocation.workingDirectory.uri` | **Optional.** This field is used only when `checkout_uri` (SARIF upload API only) or `checkout_path` (% data variables.product.prodname_actions %} only) are not provided. The value is used to convert absolute URIs used in [`physicalLocation` objects](#physicallocation-object) to relative URIs. For more information, see "[Specifying the root for source files](#specifying-the-root-for-source-files)."| | `results[]` | **Required.** The results of the analysis tool. {% data variables.product.prodname_code_scanning_capc %} displays the results on {% data variables.product.prodname_dotcom %}. For more information, see the [`result` object](#result-object). ### `toolComponent` object @@ -138,7 +174,7 @@ Each `result` object contains details for one alert in the codebase. Within the | `level`| **Optional.** The severity of the result. This level overrides the default severity defined by the rule. {% data variables.product.prodname_code_scanning_capc %} uses the level to filter results by severity on {% data variables.product.prodname_dotcom %}. | `message.text`| **Required.** A message that describes the result. {% data variables.product.prodname_code_scanning_capc %} displays the message text as the title of the result. Only the first sentence of the message will be displayed when visible space is limited. | `locations[]`| **Required.** The set of locations where the result was detected up to a maximum of 10. Only one location should be included unless the problem can only be corrected by making a change at every specified location. **Note:** At least one location is required for {% data variables.product.prodname_code_scanning %} to display a result. {% data variables.product.prodname_code_scanning_capc %} will use this property to decide which file to annotate with the result. Only the first value of this array is used. All other values are ignored. -| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Preventing duplicate alerts using fingerprints](#preventing-duplicate-alerts-using-fingerprints)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. +| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Providing data to track code scanning alerts across runs](#providing-data-to-track-code-scanning-alerts-across-runs)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. | `codeFlows[].threadFlows[].locations[]`| **Optional.** An array of `location` objects for a `threadFlow` object, which describes the progress of a program through a thread of execution. A `codeFlow` object describes a pattern of code execution used to detect a result. If code flows are provided, {% data variables.product.prodname_code_scanning %} will expand code flows on {% data variables.product.prodname_dotcom %} for the relevant result. For more information, see the [`location` object](#location-object). | `relatedLocations[]`| A set of locations relevant to this result. {% data variables.product.prodname_code_scanning_capc %} will link to related locations when they are embedded in the result message. For more information, see the [`location` object](#location-object). @@ -156,7 +192,7 @@ A location within a programming artifact, such as a file in the repository or a | Name | Description | |----|----| -| `artifactLocation.uri`| **Required.** A URI indicating the location of an artifact, usually a file either in the repository or generated during a build. If the URI is relative, it should be relative to the root of the {% data variables.product.prodname_dotcom %} repository being analyzed. For example, main.js or src/script.js are relative to the root of the repository. If the URI is absolute, {% data variables.product.prodname_code_scanning %} can use the URI to checkout the artifact and match up files in the repository. For example, `https://github.com/ghost/example/blob/00/src/promiseUtils.js`. +| `artifactLocation.uri`| **Required.** A URI indicating the location of an artifact, usually a file either in the repository or generated during a build. For the best results we recommend that this is a relative path from the root of the GitHub repository being analyzed. For example, `src/main.js`. For more information about artifact URIs, see "[Specifying the root for source files](#specifying-the-root-for-source-files)."| | `region.startLine` | **Required.** The line number of the first character in the region. | `region.startColumn` | **Required.** The column number of the first character in the region. | `region.endLine` | **Required.** The line number of the last character in the region. @@ -204,7 +240,7 @@ These example SARIF output files show supported properties and example values. ### Example with minimum required properties -This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties or don't include values, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. +This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties, omit values, or use an empty string, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. ```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 1e03a239f3..193ee54f5a 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 @@ -58,7 +58,7 @@ For more information see the [`upload-sarif` action](https://github.com/github/c The `upload-sarif` action can be configured to run when the `push` and `scheduled` event occur. For more information about {% data variables.product.prodname_actions %} events, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)." -If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#preventing-duplicate-alerts-using-fingerprints)." +If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#providing-data-to-track-code-scanning-alerts-across-runs)." {% data reusables.code-scanning.upload-sarif-alert-limit %} 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 54ca86d3af..a9c8d47e23 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 @@ -78,7 +78,8 @@ You can display the command-line help for any command using the `--help``--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. | | `--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). -| `--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. | +| `--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. |{% ifversion fpt or ghec or ghes > 3.2 or ghae %} +| `--codescanning-config` | | Optional (Advanced). Use if you have a configuration file that specifies how to create the {% data variables.product.prodname_codeql %} databases and what queries to run in later steps. For more information, see "[Using a custom configuration file](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-a-custom-configuration-file)" and "[database create](https://codeql.github.com/docs/codeql-cli/manual/database-create/#cmdoption-codeql-database-create-codescanning-config)." |{% endif %} 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 %}. diff --git a/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md b/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md index ab896c473e..0a31422a67 100644 --- a/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md +++ b/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md @@ -52,9 +52,9 @@ Generally, we name our supported ecosystems after the software programming langu - Composer (registry: https://packagist.org/){% ifversion GH-advisory-db-erlang-support %} - Erlang (registry: https://hex.pm/){% endif %} - Go (registry: https://pkg.go.dev/) -{% ifversion fpt or ghec or ghes > 3.6 or ghae-issue-7508 %} +{%- ifversion fpt or ghec or ghes > 3.6 or ghae-issue-7508 %} - GitHub Actions (https://github.com/marketplace?type=actions/) {% endif %} -- Maven (registry: https://repo1.maven.org/maven2/org/) +- Maven (registry: https://repo.maven.apache.org/maven2) - npm (registry: https://www.npmjs.com/) - NuGet (registry: https://www.nuget.org/) - pip (registry: https://pypi.org/) diff --git a/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 141e720d52..60bf852121 100644 --- a/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -417,7 +417,7 @@ updates: ### `open-pull-requests-limit` -By default, {% data variables.product.prodname_dependabot %} opens a maximum of five pull requests for version updates. Once there are five open pull requests, new requests are blocked until you merge or close some of the open requests, after which new pull requests can be opened on subsequent updates. Use `open-pull-requests-limit` to change this limit. This also provides a simple way to temporarily disable version updates for a package manager. +By default, {% data variables.product.prodname_dependabot %} opens a maximum of five pull requests for version updates. Once there are five open pull requests from {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_dependabot %} will not open any new requests until some of those open requests are merged or closed. Use `open-pull-requests-limit` to change this limit. This also provides a simple way to temporarily disable version updates for a package manager. This option has no impact on security updates, which have a separate, internal limit of ten open pull requests. diff --git a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md index 5cf97e5410..bd543a91a3 100644 --- a/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md +++ b/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md @@ -75,7 +75,7 @@ The following configuration options are available. {% endtip %} {% endif %} -This {% data variables.product.prodname_dependency_review_action %} example file illustrates how you can use these configuration options. +This {% data variables.product.prodname_dependency_review_action %} example file illustrates how you can use these configuration options. Notice that the example uses short version number for the action (`v2`) instead of a semver release number (for example, `v2.0.8`). This ensures that you use the most recent minor version of the action. ```yaml{:copy} name: 'Dependency Review' 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 7e5c96aa99..24fca3adc8 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 @@ -12,25 +12,25 @@ shortTitle: Private image registry ## About private image registries and {% data variables.product.prodname_github_codespaces %} -A registry is a secure space for storing, managing, and fetching private container images. You may use one to store one or more images. There are many examples of registries, such as {% data variables.product.prodname_dotcom %} Container Registry, Azure Container Registry, or DockerHub. +A registry is a secure space for storing, managing, and fetching private container images. You may use one to store one or more images. There are many examples of registries, such as {% data variables.product.prodname_container_registry %}, {% data variables.product.prodname_npm_registry %}, Azure Container Registry, or DockerHub. -{% data variables.product.prodname_dotcom %} Container Registry can be configured to pull container images seamlessly, without having to provide any authentication credentials to {% data variables.product.prodname_github_codespaces %}. For other image registries, you must create secrets in {% data variables.product.prodname_dotcom %} to store the access details, which will allow {% data variables.product.prodname_codespaces %} to access images stored in that registry. +{% data variables.product.prodname_ghcr_and_npm_registry %} can be configured to allow container images to be pulled seamlessly into {% data variables.product.prodname_github_codespaces %} during codespace creation, without having to provide any authentication credentials. For other image registries, you must create secrets in {% data variables.product.prodname_dotcom %} to store the access details, which will allow {% data variables.product.prodname_codespaces %} to access images stored in that registry. -## Accessing images stored in {% data variables.product.prodname_dotcom %} Container Registry +## Accessing images stored in {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data variables.product.prodname_dotcom %} Container Registry is the easiest way for {% data variables.product.prodname_codespaces %} to consume devcontainer container images. +{% data variables.product.prodname_ghcr_and_npm_registry %} provide the easiest way for {% data variables.product.prodname_codespaces %} to consume dev container images. -For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)". +For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)" and "[Working with the npm registry](/packages/working-with-a-github-packages-registry/working-with-the-npm-registry)". ### Accessing an image published to the same repository as the codespace -If you publish a container image to {% data variables.product.prodname_dotcom %} Container Registry in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. You won't have to provide any additional credentials, unless the **Inherit access from repo** option was unselected when the container image was published. +If you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %} in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. You won't have to provide any additional credentials, unless the **Inherit access from repo** option was unselected when the container image was published. #### Inheriting access from the repository from which an image was published -By default, when you publish a container image to {% data variables.product.prodname_dotcom %} Container Registry, the image inherits the access setting of the repository from which the image was published. For example, if the repository is public, the image is also public. If the repository is private, the image is also private, but is accessible from the repository. +By default, when you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %}, the image inherits the access setting of the repository from which the image was published. For example, if the repository is public, the image is also public. If the repository is private, the image is also private, but is accessible from the repository. -This behavior is controlled by the **Inherit access from repo** option. **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.product.prodname_dotcom %} Container Registry using a Personal Access Token (PAT). +This behavior is controlled by the **Inherit access from repo** option. **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.product.prodname_ghcr_or_npm_registry %} using a Personal Access Token (PAT). If the **Inherit access from repo** option was not selected when the image was published, you can manually add the repository to the published container image's access controls. For more information, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#inheriting-access-for-a-container-image-from-a-repository)." @@ -46,13 +46,13 @@ If you want to allow a subset of an organization's repositories to access a cont ### Publishing a container image from a codespace -Seamless access from a codespace to {% data variables.product.prodname_dotcom %} Container Registry is limited to pulling container images. If you want to publish a container image from inside a codespace, you must use a personal access token (PAT) with the `write:packages` scope. +Seamless access from a codespace to {% data variables.product.prodname_ghcr_or_npm_registry %} is limited to pulling container images. If you want to publish a container image from inside a codespace, you must use a personal access token (PAT) with the `write:packages` scope. -We recommend publishing images via {% data variables.product.prodname_actions %}. For more information, see "[Publishing Docker images](/actions/publishing-packages/publishing-docker-images)." +We recommend publishing images via {% data variables.product.prodname_actions %}. For more information, see "[Publishing Docker images](/actions/publishing-packages/publishing-docker-images)" and "[Publishing Node.js packages](/actions/publishing-packages/publishing-nodejs-packages)." ## Accessing images stored in other container registries -If you are accessing a container image from a registry that isn't {% data variables.product.prodname_dotcom %} Container Registry, {% data variables.product.prodname_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. If these secrets are found, {% data variables.product.prodname_github_codespaces %} will make the registry available inside your codespace. +If you are accessing a container image from a registry that isn't {% data variables.product.prodname_ghcr_or_npm_registry %}, {% data variables.product.prodname_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. If these secrets are found, {% data variables.product.prodname_github_codespaces %} will make the registry available inside your codespace. - `<*>_CONTAINER_REGISTRY_SERVER` - `<*>_CONTAINER_REGISTRY_USER` diff --git a/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md b/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md index bf2b347536..a26e5f7ebd 100644 --- a/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md +++ b/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md @@ -17,7 +17,7 @@ redirect_from: ## About the {% data variables.product.prodname_vscode_command_palette %} -The Command Palette is one of the focal features of {% data variables.product.prodname_vscode %} and is available for you to use in {% data variables.product.prodname_github_codespaces %}. The {% data variables.product.prodname_vscode_command_palette %} allows you to access many commands for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_vscode_shortname %}. For more information on using the {% data variables.product.prodname_vscode_command_palette_shortname %}, see "[User Interface](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" in the {% data variables.product.prodname_vscode_shortname %} documentation. +The Command Palette is one of the focal features of {% data variables.product.prodname_vscode %} and is available for you to use in {% data variables.product.prodname_github_codespaces %}. The Command Palette allows you to access many commands for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_vscode_shortname %}. For more information on using the {% data variables.product.prodname_vscode_command_palette_shortname %}, see "[User Interface](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" in the {% data variables.product.prodname_vscode_shortname %} documentation. ## Accessing the {% data variables.product.prodname_vscode_command_palette_shortname %} diff --git a/content/codespaces/developing-in-codespaces/creating-a-codespace.md b/content/codespaces/developing-in-codespaces/creating-a-codespace.md index f626933523..bf1dbeb2b7 100644 --- a/content/codespaces/developing-in-codespaces/creating-a-codespace.md +++ b/content/codespaces/developing-in-codespaces/creating-a-codespace.md @@ -149,3 +149,6 @@ Replace `machine-type` with a valid identifier for an available machine type. Id For full details of the options for this command, see [the {% data variables.product.prodname_cli %} manual](https://cli.github.com/manual/gh_codespace_create). {% endcli %} + +## Further reading +- "[Adding an 'Open in GitHub Codespaces' badge](/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge)" \ No newline at end of file diff --git a/content/codespaces/developing-in-codespaces/deleting-a-codespace.md b/content/codespaces/developing-in-codespaces/deleting-a-codespace.md index 8ca09b2a8b..0772b59ec4 100644 --- a/content/codespaces/developing-in-codespaces/deleting-a-codespace.md +++ b/content/codespaces/developing-in-codespaces/deleting-a-codespace.md @@ -99,4 +99,4 @@ gh cs delete --repo octo-org/octo-repo --days 7 {% endcli %} ## Further reading -- [Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle) +- "[Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle)" diff --git a/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md b/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md new file mode 100644 index 0000000000..b4000e433e --- /dev/null +++ b/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md @@ -0,0 +1,120 @@ +--- +title: Getting started with GitHub Codespaces for machine learning +shortTitle: Machine learning +intro: 'Learn about working on machine learning projects with {% data variables.product.prodname_github_codespaces %} and its out-of-the-box tools.' +product: '{% data reusables.gated-features.codespaces %}' +versions: + fpt: '*' + ghec: '*' +type: tutorial +topics: + - Codespaces + - Developer +--- + +## Introduction + +This guide introduces you to machine learning with {% data variables.product.prodname_github_codespaces %}. You’ll build a simple image classifier, learn about some of the tools that come preinstalled in {% data variables.product.prodname_github_codespaces %}, configure your development environment for NVIDIA CUDA, and use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab. + +## Prerequisite + +You have access to {% data variables.product.prodname_github_codespaces %}. For more information, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)." + +## Build a simple image classifier + +We'll use a Jupyter notebook to build a simple image classifier. + +Jupyter notebooks are sets of cells that you can execute one after another. The notebook we'll use includes a number of cells that build an image classifier using [PyTorch](https://pytorch.org/). Each cell is a different phase of that process: download a dataset, set up a neural network, train a model, and then test that model. + +We'll run all of the cells, in sequence, to perform all phases of building the image classifier. When we do this Jupyter saves the output back into the notebook so that you can examine the results. + +### Creating a repository and a codespace + +1. Go to the [github/codespaces-getting-started-ml](https://github.com/github/codespaces-getting-started-ml) template repository and click **Use this template**. +{% data reusables.codespaces.open-codespace-from-template-repo %} + + By default, a codespace for this repository opens in a web-based version of {% data variables.product.prodname_vscode %}. + +### Open the image classifier notebook + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes a set of machine learning libraries that are preinstalled in your codespace. For example, Numpy, pandas, SciPy, Matplotlib, seaborn, scikit-learn, TensorFlow, Keras, PyTorch, Requests, and Plotly. For more information about the default image, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)" and [the `devcontainers/images` repository](https://github.com/devcontainers/images/tree/main/src/codespaces#github-codespaces-default-linux-universal). + +1. In the {% data variables.product.prodname_vscode_shortname %} editor, close any "Get Started" tabs that are displayed. +1. Open the `image-classifier.ipynb` notebook file. +1. Click the Python kernel link at the top right of the editor. + + ![Screenshot of the Python kernal link](/assets/images/help/codespaces/jupyter-python-kernel-link.png) + +1. In the drop-down menu, choose the kernel in the directory `/opt/python/latest/bin/python`. + + ![Screenshot of the Python kernal drop-down menu](/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png) + +### Build the image classifier + +The image classifier notebook contains all the code you need to download a dataset, train a neural network, and evaluate its performance. + +1. Click **Run All** to execute all of the notebook’s cells. + + ![Screenshot of the Run All button](/assets/images/help/codespaces/jupyter-run-all.png) + +1. Scroll down to view the output of each cell. + + ![Screenshot of Step 3 in the editor](/assets/images/help/codespaces/jupyter-notebook-step3.png) + +## Configure NVIDIA CUDA for your codespace + +Some software, such as TensorFlow, requires you to install NVIDIA CUDA to use your codespace’s GPU. Where this is the case, you can create your own custom configuration, by using a `devcontainer.json` file, and specify that CUDA should be installed. For more information on creating a custom configuration, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#creating-a-custom-dev-container-configuration)." + +{% note %} + +**Note**: For full details of the script that's run when you add the `nvidia-cuda` feature, see [the devcontainers/features repository](https://github.com/devcontainers/features/tree/main/src/nvidia-cuda). + +{% endnote %} + +1. Within a codespace, open the `.devcontainer/devcontainer.json` file in the editor. +1. Add a top-level `features` object with the following contents: + + ```json{:copy} + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + ``` + + For more information about the `features` object, see the [development containers specification](https://containers.dev/implementors/features/#devcontainer-json-properties). + + If you are using the `devcontainer.json` file from the image classifier repository you created for this tutorial, your `devcontainer.json` file will now look like this: + + ``` + { + "customizations": { + "vscode": { + "extensions": [ + "ms-python.python", + "ms-toolsai.jupyter" + ] + } + }, + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + } + ``` + +1. Save the change. +{% data reusables.codespaces.rebuild-command %} + The codespace container will be rebuilt. This will take several minutes. When the rebuild is complete the codespace is automatically reopened. +1. Commit the change to the repository so that CUDA will be installed in any new codespaces you create from this repository in future. + +## Open your codespace in JupyterLab + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes JupyterLab, the web-based Jupyter IDE. You can use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab without having to install anything else on your codespace. + +1. In the terminal, enter the {% data variables.product.prodname_cli %} command `gh cs jupyter`. +1. Choose the codespace you want to open. + + ![Screenshot of opening a codespace from the terminal](/assets/images/help/codespaces/open-codespace-in-jupyter.png) + diff --git a/content/codespaces/developing-in-codespaces/index.md b/content/codespaces/developing-in-codespaces/index.md index e67f1aa1b7..c2468004c7 100644 --- a/content/codespaces/developing-in-codespaces/index.md +++ b/content/codespaces/developing-in-codespaces/index.md @@ -18,6 +18,7 @@ children: - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network + - /getting-started-with-github-codespaces-for-machine-learning - /using-github-codespaces-in-visual-studio-code - /using-github-codespaces-with-github-cli --- diff --git a/content/codespaces/getting-started/deep-dive.md b/content/codespaces/getting-started/deep-dive.md index f22981969a..16f5e6ca74 100644 --- a/content/codespaces/getting-started/deep-dive.md +++ b/content/codespaces/getting-started/deep-dive.md @@ -73,7 +73,7 @@ As you develop in your codespace, it will save any changes to your files every f ### Closing or stopping your codespace -To stop your codespace you can [use the {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)). If you exit your codespace without running the stop command (for example, closing the browser tab), or if you leave the codespace running without interaction, the codespace and its running processes will continue until a window of inactivity occurs, after which the codespace will stop. By default, the window of inactivity is 30 minutes. +To stop your codespace you can [use the {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)). If you exit your codespace without running the stop command (for example, closing the browser tab), or if you leave the codespace running without interaction, the codespace and its running processes will continue until a window of inactivity occurs, after which the codespace will stop. By default, the window of inactivity is 30 minutes. When you close or stop your codespace, all uncommitted changes are preserved until you connect to the codespace again. @@ -114,7 +114,7 @@ If you already use {% data variables.product.prodname_vscode_shortname %}, you c ## Further reading -- [Enabling {% data variables.product.prodname_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization) -- [Managing billing for {% data variables.product.prodname_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization) -- [Setting up your project for Codespaces](/codespaces/setting-up-your-project-for-codespaces) -- [Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle) +- "[Enabling {% data variables.product.prodname_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization)" +- "[Managing billing for {% data variables.product.prodname_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization)" +- "[Setting up your project for Codespaces](/codespaces/setting-up-your-project-for-codespaces)" +- "[Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle)" diff --git a/content/codespaces/getting-started/quickstart.md b/content/codespaces/getting-started/quickstart.md index a98c560b7b..47ed966344 100644 --- a/content/codespaces/getting-started/quickstart.md +++ b/content/codespaces/getting-started/quickstart.md @@ -25,12 +25,7 @@ For more information on exactly how {% data variables.product.prodname_github_co ## Creating your codespace 1. Navigate to the [template repository](https://github.com/github/haikus-for-codespaces) and select **Use this template**. - -1. Choose an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. - -1. Navigate to the main page of the newly created repository. Under the repository name, use the **{% octicon "code" aria-label="The code icon" %} Code** drop-down menu, and in the **Codespaces** tab, click **Create codespace on main**. - - ![New codespace button](/assets/images/help/codespaces/new-codespace-button.png) +{% data reusables.codespaces.open-codespace-from-template-repo %} ## Running the application @@ -115,5 +110,5 @@ You've successfully created, personalized, and run your first application within ## Further reading -- [Enabling {% data variables.product.prodname_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization) -- [Managing billing for {% data variables.product.prodname_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization) +- "[Enabling {% data variables.product.prodname_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization)" +- "[Managing billing for {% data variables.product.prodname_codespaces %} in your organization](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization)" diff --git a/content/codespaces/guides.md b/content/codespaces/guides.md index 2b53d516b3..38e69a0064 100644 --- a/content/codespaces/guides.md +++ b/content/codespaces/guides.md @@ -15,6 +15,7 @@ includeGuides: - /codespaces/setting-up-your-project-for-codespaces/setting-up-your-python-project-for-codespaces - /codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces - /codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces + - /codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge - /codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project - /codespaces/setting-up-your-codespace/personalizing-codespaces-for-your-account - /codespaces/developing-in-codespaces/creating-a-codespace diff --git a/content/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge.md b/content/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge.md new file mode 100644 index 0000000000..b1301c8f7f --- /dev/null +++ b/content/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge.md @@ -0,0 +1,66 @@ +--- +title: Adding an "Open in GitHub Codespaces" badge +shortTitle: Add a Codespaces badge +intro: 'You can add a badge to a Markdown file in your repository which people can click to create a codespace.' +allowTitleToDifferFromFilename: true +versions: + fpt: '*' + ghec: '*' +type: how_to +topics: + - Codespaces + - Set up +product: '{% data reusables.gated-features.codespaces %}' +--- + +## Overview + +Adding an "Open in {% data variables.product.prodname_github_codespaces %}" badge to a Markdown file gives people an easy way to create a codespace for your repository. + +![Screenshot of a Codespaces badge on a README page](/assets/images/help/codespaces/codespaces-badge-on-readme.png) + +When you create a badge you can choose specific configuration options for the codespace that the badge will create. + +When people click the badge they'll be taken to the advanced options page for codespace creation, with the options you chose preselected. For more information about the advanced options page, see "[Creating a codespace](https://docs-internal-30445-bfc9ce.preview.ghdocs.com/en/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." + +From the advanced options page, users can change the preselected settings if required, then click **Create codespace**. + +{% note %} + +**Note**: Be aware that people who don't yet have access to {% data variables.product.prodname_github_codespaces %} will see a 404 message if they click this badge. + +{% endnote %} + +## Creating an "Open in {% data variables.product.prodname_github_codespaces %}" badge + +{% data reusables.repositories.navigate-to-repo %} +1. Under the repository name, use the "Branch" drop-down menu, and select the branch you want to create the badge for. + + ![Screenshot of the Branch drop-down menu](/assets/images/help/codespaces/branch-drop-down.png) + +1. Click the **{% octicon "code" aria-label="The code icon" %} Code** button, then click the **Codespaces** tab. + + ![Screenshot of the New codespace button](/assets/images/help/codespaces/new-codespace-button.png) + +1. Click the down arrow at the side of the **Create codespace on BRANCH** button, click **Configure and create codespace**, then click the **Configure and create codespace** button. + + ![Screenshot of the "Configure and create codespace" option](/assets/images/help/codespaces/configure-and-create-option.png) + +1. On the advanced options page for codespace creation, select the values you want to be preselected in each field. + + ![Screenshot of the advanced options page](/assets/images/help/codespaces/advanced-options.png) + +1. Copy the URL from the browser's address bar. +1. Add the following Markdown to, for example, the `README.md` file of your repository: + + ```Markdown{:copy} + [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](COPIED-URL) + ``` + + For example: + + ```Markdown + [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=0000000&machine=premiumLinux&devcontainer_path=.devcontainer%2Fdevcontainer.json&location=WestUs2) + ``` + + In the above example, `0000000` will be the reference number of your repository. The other details in the URL are determined by the values you selected in the fields on the advanced options page. 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 36bf641151..dd269bee1a 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/index.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/index.md @@ -17,5 +17,6 @@ children: - /setting-up-your-java-project-for-codespaces - /setting-up-your-python-project-for-codespaces - /setting-a-minimum-specification-for-codespace-machines + - /adding-a-codespaces-badge --- diff --git a/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 04b6b16f65..75aed3dcf3 100644 --- a/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -155,9 +155,9 @@ You can add features to your predefined container configuration to customize whi You can add some of the most common features by selecting them when configuring your predefined container. For more information on the available features, see the [script library](https://github.com/microsoft/vscode-dev-containers/tree/main/script-library#scripts) in the `vscode-dev-containers` repository. -1. Access the Command Palette (`Shift + Command + P` / `Ctrl + Shift + P`), then start typing "configure". Select **Codespaces: Configure Devcontainer Features**. +1. Access the Command Palette (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "configure". Select **Codespaces: Configure Devcontainer Features**. - ![The Configure Devcontainer Features command in the command palette](/assets/images/help/codespaces/codespaces-configure-features.png) + ![The Configure Devcontainer Features command in the Command Palette](/assets/images/help/codespaces/codespaces-configure-features.png) 1. Update your feature selections, then click **OK**. @@ -165,7 +165,7 @@ You can add some of the most common features by selecting them when configuring 1. To apply the changes, in the bottom right corner of the screen, click **Rebuild now**. For more information about rebuilding your container, see "[Applying changes to your configuration](#applying-configuration-changes-to-a-codespace)." - !["Codespaces: Rebuild Container" in the command palette](/assets/images/help/codespaces/rebuild-prompt.png) + !["Codespaces: Rebuild Container" in the Command Palette](/assets/images/help/codespaces/rebuild-prompt.png) ## Creating a custom dev container configuration diff --git a/content/codespaces/troubleshooting/github-codespaces-logs.md b/content/codespaces/troubleshooting/github-codespaces-logs.md index 9e69b8ca68..737333eefc 100644 --- a/content/codespaces/troubleshooting/github-codespaces-logs.md +++ b/content/codespaces/troubleshooting/github-codespaces-logs.md @@ -28,7 +28,7 @@ These logs contain detailed information about the codespace, the container, the {% webui %} 1. If you are using {% data variables.product.prodname_codespaces %} in the browser, ensure that you are connected to the codespace you want to debug. -1. Open the {% data variables.product.prodname_vscode %} Command Palette (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. 1. Define where to save the zip archive of logs then click **Save** (desktop) or click **OK** (web). 1. If you are using {% data variables.product.prodname_codespaces %} in the browser, right-click on the zip archive of logs from the Explorer view and select **Download…** to download them to your local machine. @@ -36,7 +36,7 @@ These logs contain detailed information about the codespace, the container, the {% vscode %} -1. Open the {% data variables.product.prodname_vscode %} Command Palette (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. 1. Define where to save the zip archive of logs then click **Save** (desktop) or click **OK** (web). {% endvscode %} @@ -55,7 +55,7 @@ These logs contain information about the container, dev container, and their con {% webui %} 1. Connect to the codespace you want to debug. -2. Open the {% data variables.product.prodname_vscode_command_palette %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. +2. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. If you want to share the log with support, you can copy the text from the creation log into a text editor and save the file locally. @@ -63,7 +63,7 @@ If you want to share the log with support, you can copy the text from the creati {% vscode %} -Open the Command Palette (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. +Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. If you want to share the log with support, you can copy the text from the creation log into a text editor and save the file locally. 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 1b7b2db9d6..8bc14670e8 100644 --- a/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md +++ b/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md @@ -1,5 +1,5 @@ --- -title: Troubleshooting creation and deletion of Codespaces +title: Troubleshooting creation and deletion of codespaces intro: 'This article provides troubleshooting steps for common issues you may experience when creating or deleting a codespace, including storage and configuration issues.' product: '{% data reusables.gated-features.codespaces %}' versions: @@ -16,6 +16,8 @@ shortTitle: Creation and deletion ### 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_github_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)." +You can't create a codespace for a private repository that is owned by an organization, unless you have write access to the repository or the organization has enabled forking for it. + 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)." ### Codespace does not open when created diff --git a/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md b/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md index d5a3127bb4..94ee61efa0 100644 --- a/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md +++ b/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md @@ -18,7 +18,7 @@ redirect_from: Codespaces are set to stop after 30 minutes without any activity. If you try to interact with a codespace after it has stopped, you may see a `503 service unavailable` error. - If a **Start** button is shown in {% data variables.product.prodname_vscode %} or in your browser window, click **Start** to reconnect to the codespace. -- Reset your codespace by reloading the window. From the [command palette](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) in {% data variables.product.prodname_vscode %}, click **Developer: Reload Window**. +- Reset your codespace by reloading the window. From the [Command Palette](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) in {% data variables.product.prodname_vscode %}, click **Developer: Reload Window**. ## Browser cannot connect 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 a31ac9c75d..e25b98006d 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 @@ -149,13 +149,19 @@ To authenticate with an installation access token, include it in the Authorizati ```shell $ curl -i \ --H "Authorization: token YOUR_INSTALLATION_ACCESS_TOKEN" \ +-H "Authorization: Bearer YOUR_INSTALLATION_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ {% data variables.product.api_url_pre %}/installation/repositories ``` `YOUR_INSTALLATION_ACCESS_TOKEN` is the value you must replace. +{% note %} + +**Note:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + ## Accessing API endpoints as an installation For a list of REST API endpoints that are available for use by {% data variables.product.prodname_github_apps %} using an installation access token, see "[Available Endpoints](/rest/overview/endpoints-available-for-github-apps)." 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 389890bfaa..050d5d7a51 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 @@ -107,13 +107,13 @@ By default, the response takes the following form. The response parameters `expi The user's access token allows the GitHub App to make requests to the API on behalf of a user. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user For example, in curl you can set the Authorization header like this: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## Device flow @@ -132,12 +132,12 @@ The device flow allows you to authorize users for a headless app, such as a CLI Once you have an OAuth token for a user, you can check which installations that user can access. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations You can also check which repositories are accessible to a user for an installation. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations/:installation_id/repositories More details can be found in: [List app installations accessible to the user access token](/rest/apps#list-app-installations-accessible-to-the-user-access-token) and [List repositories accessible to the user access token](/rest/apps#list-repositories-accessible-to-the-user-access-token). 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 d0e1dd4592..52e1519479 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 @@ -23,6 +23,8 @@ When an organization has an allow list, third-party applications that connect vi ## Adding an IP address allow list to a {% data variables.product.prodname_github_app %} +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.apps.settings-step %} {% data reusables.user-settings.developer_settings %} {% data reusables.user-settings.github_apps %} 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 ca89fbc56b..151c640b90 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 @@ -47,7 +47,7 @@ Rate limits for {% data variables.product.prodname_github_apps %} and {% data va {% ifversion fpt or ghec %} -{% data variables.product.prodname_github_apps %} that are installed on an organization or a repository within an enterprise on {% data variables.product.product_location %} are subject to a limit of 15,000 requests per hour. +{% data variables.product.prodname_github_apps %} that are installed on an organization within an enterprise on {% data variables.product.product_location %} are subject to a limit of 15,000 requests per hour per organization that has installed the app. {% endif %} 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 134182eb65..16619daebe 100644 --- a/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md +++ b/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md @@ -106,13 +106,13 @@ Accept: application/xml The access token allows you to make requests to the API on a behalf of a user. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user For example, in curl you can set the Authorization header like this: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## Device flow 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 b0be653f27..e1e253fc5f 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 @@ -27,7 +27,7 @@ If your {% data variables.product.prodname_oauth_app %} doesn't have access to a Check headers to see what OAuth scopes you have, and what the API action accepts: ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I HTTP/2 200 X-OAuth-Scopes: repo, user X-Accepted-OAuth-Scopes: user diff --git a/content/developers/overview/github-developer-program.md b/content/developers/overview/github-developer-program.md index bd0fb16722..b6caacc82f 100644 --- a/content/developers/overview/github-developer-program.md +++ b/content/developers/overview/github-developer-program.md @@ -23,9 +23,9 @@ Email partnerships@github.com to re ## Have an integration that works with GitHub? Awesome! We'd love to have you be part of the program. Here’s how you can spread the word:

-* [Let us know about your integration](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration) -* Use the [Octocat or GitHub logo](https://github.com/logos) to identify that your product works with GitHub -* Post a video or a blog on your website about your integration +* [Let us know about your integration](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration). +* Use the [Octocat or GitHub logo](https://github.com/logos) to identify that your product works with GitHub. +* Post a video or a blog on your website about your integration. ## Ready to join the GitHub Developer Program? 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 df2281c42d..4bfb12f6f5 100644 --- a/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md +++ b/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md @@ -37,12 +37,12 @@ $ 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 `X-Hub-Signature-256`. +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 `x-hub-signature-256`. {% ifversion fpt or ghes 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. +**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. {% endnote %} {% endif %} diff --git a/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md b/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md index ca03572759..1b80c3756a 100644 --- a/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md +++ b/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md @@ -24,23 +24,22 @@ To configure an LMS to connect to {% data variables.product.prodname_classroom % ## Supported LMSes -{% data variables.product.prodname_classroom %} supports import of roster data from LMSes that implement Learning Tools Interoperability (LTI) standards. +{% note %} -- LTI version 1.0 and/or 1.1 -- LTI Names and Roles Provisioning 1.X +**Note:** {% data variables.product.prodname_classroom %} previously supported import of roster data from LMSes that implement Learning Tools Interoperability (LTI) versions 1.0 and 1.1. On June 30, 2022, the Instructional Management System (IMS) Global Learning Consortium [ended support for LTI versions 1.0 and 1.1](https://www.imsglobal.org/lti-security-announcement-and-deprecation-schedule). In the interest of keeping sensitive student information safe and secure, {% data variables.product.company_short %} has temporarily disabled importing roster data from LTI-compliant LMSes.

-Using LTI helps keep your information safe and secure. LTI is an industry-standard protocol and GitHub Classroom's use of LTI is certified by the Instructional Management System (IMS) Global Learning Consortium. For more information, see [Learning Tools Interoperability](https://www.imsglobal.org/activity/learning-tools-interoperability) and [About IMS Global Learning Consortium](http://www.imsglobal.org/aboutims.html) on the IMS Global Learning Consortium website. +Support for the latest version of Learning Tools Interoperability, [LTI 1.3](https://www.imsglobal.org/activity/learning-tools-interoperability), is currently being worked on and will be made available in {% data variables.product.prodname_classroom %} very soon. + +{% endnote %} + +LTI is an industry-standard protocol and GitHub Classroom's use of LTI is certified by the Instructional Management System (IMS) Global Learning Consortium. For more information, see [Learning Tools Interoperability](https://www.imsglobal.org/activity/learning-tools-interoperability) and [About IMS Global Learning Consortium](http://www.imsglobal.org/aboutims.html) on the IMS Global Learning Consortium website. {% data variables.product.company_short %} has tested import of roster data from the following LMSes into {% data variables.product.prodname_classroom %}. -- Canvas - Google Classroom -- Moodle -- Sakai -Currently, {% data variables.product.prodname_classroom %} doesn't support import of roster data from Blackboard or Brightspace. -## Generating configuration credentials for your classroom +## Connecting to Google Classroom {% data reusables.classroom.sign-into-github-classroom %} {% data reusables.classroom.click-classroom-in-list %} @@ -48,90 +47,16 @@ Currently, {% data variables.product.prodname_classroom %} doesn't support impor 1. If your classroom already has a roster, you can either update the roster or delete the roster and create a new roster. - For more information about deleting and creating a roster, see "[Deleting a roster for a classroom](/education/manage-coursework-with-github-classroom/manage-classrooms#deleting-a-roster-for-a-classroom)" and "[Creating a roster for your classroom](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." - For more information about updating a roster, see "[Adding students to the roster for your classroom](/education/manage-coursework-with-github-classroom/manage-classrooms#adding-students-to-the-roster-for-your-classroom)." -1. In the list of LMSes, click your LMS. If your LMS is not supported, click **Other LMS**. - ![List of LMSes](/assets/images/help/classroom/classroom-settings-click-lms.png) -1. Read about connecting your LMS, then click **Connect to _LMS_**. -1. Copy the "Consumer Key", "Shared Secret", and "Launch URL" for the connection to the classroom. - ![Copy credentials](/assets/images/help/classroom/classroom-copy-credentials.png) +1. In the list of LMSes, click Google Classroom. + ![Google Classroom](/assets/images/help/classroom/classroom-settings-click-google-classroom.png) +1. Sign in to Google, then select the Classroom to link to. -## Configuring a generic LMS -You must configure the privacy settings for your LMS to allow external tools to receive roster information. +## Connecting to Canvas, Moodle, Sakai, and other LMSes -1. Navigate to your LMS. -1. Configure an external tool. -1. Provide the configuration credentials you generated in {% data variables.product.prodname_classroom %}. - - Consumer key - - Shared secret - - Launch URL (sometimes called "tool URL" or similar) +Connecting to other LMSes is temporarily unavailable as {% data variables.product.company_short %} updates to Learning Tools Interoperability (LTI) version 1.3. For more information, see "[Supported LMSes](#supported-lmses)." -## Configuring Canvas - -You can configure {% data variables.product.prodname_classroom %} as an external app for Canvas to import roster data into your classroom. For more information about Canvas, see the [Canvas website](https://www.instructure.com/canvas/). - -1. Sign into [Canvas](https://www.instructure.com/canvas/#login). -1. Select the Canvas course to integrate with {% data variables.product.prodname_classroom %}. -1. In the left sidebar, click **Settings**. -1. Click the **Apps** tab. -1. Click **View app configurations**. -1. Click **+App**. -1. Select the **Configuration Type** drop-down menu, and click **By URL**. -1. Paste the configuration credentials from {% data variables.product.prodname_classroom %}. For more information, see "[Generating configuration credentials for your classroom](#generating-configuration-credentials-for-your-classroom)." - - | Field in Canvas app configuration | Value or setting | - | :- | :- | - | **Consumer Key** | Consumer key from {% data variables.product.prodname_classroom %} | - | **Shared Secret** | Shared secret from {% data variables.product.prodname_classroom %} | - | **Allow this tool to access the IMS Names and Role Provisioning Service** | Enabled | - | **Configuration URL** | Launch URL from {% data variables.product.prodname_classroom %} | - - {% note %} - - **Note**: If you don't see a checkbox in Canvas labeled "Allow this tool to access the IMS Names and Role Provisioning Service", then your Canvas administrator must contact Canvas support to enable membership service configuration for your Canvas account. Without enabling this feature, you won't be able to sync the roster from Canvas. For more information, see [How do I contact Canvas Support?](https://community.canvaslms.com/t5/Canvas-Basics-Guide/How-do-I-contact-Canvas-Support/ta-p/389767) on the Canvas website. - - {% endnote %} - -1. Click **Submit**. -1. In the left sidebar, click **Home**. -1. To prompt Canvas to send a confirmation email, in the left sidebar, click **GitHub Classroom**. Follow the instructions in the email to finish linking {% data variables.product.prodname_classroom %}. - -## Configuring Moodle - -You can configure {% data variables.product.prodname_classroom %} as an activity for Moodle to import roster data into your classroom. For more information about Moodle, see the [Moodle website](https://moodle.org). - -You must be using Moodle version 3.0 or greater. - -1. Sign into [Moodle](https://moodle.org/login/). -1. Select the Moodle course to integrate with {% data variables.product.prodname_classroom %}. -1. Click **Turn editing on**. -1. Wherever you'd like {% data variables.product.prodname_classroom %} to be available in Moodle, click **Add an activity or resource**. -1. Choose **External tool** and click **Add**. -1. In the "Activity name" field, type "GitHub Classroom". -1. In the **Preconfigured tool** field, to the right of the drop-down menu, click **+**. -1. Under "External tool configuration", paste the configuration credentials from {% data variables.product.prodname_classroom %}. For more information, see "[Generating configuration credentials for your classroom](#generating-configuration-credentials-for-your-classroom)." - - | Field in Moodle app configuration | Value or setting | - | :- | :- | - | **Tool name** | {% data variables.product.prodname_classroom %} - _YOUR CLASSROOM NAME_

**Note**: You can use any name, but we suggest this value for clarity. | - | **Tool URL** | Launch URL from {% data variables.product.prodname_classroom %} | - | **LTI version** | LTI 1.0/1.1 | - | **Default launch container** | New window | - | **Consumer key** | Consumer key from {% data variables.product.prodname_classroom %} | - | **Shared secret** | Shared secret from {% data variables.product.prodname_classroom %} | - -1. Scroll to and click **Services**. -1. To the right of "IMS LTI Names and Role Provisioning", select the drop-down menu and click **Use this service to retrieve members' information as per privacy settings**. -1. Scroll to and click **Privacy**. -1. To the right of **Share launcher's name with tool** and **Share launcher's email with tool**, select the drop-down menus to click **Always**. -1. At the bottom of the page, click **Save changes**. -1. In the **Preconfigure tool** menu, click **GitHub Classroom - _YOUR CLASSROOM NAME_**. -1. Under "Common module settings", to the right of "Availability", select the drop-down menu and click **Hide from students**. -1. At the bottom of the page, click **Save and return to course**. -1. Navigate to anywhere you chose to display {% data variables.product.prodname_classroom %}, and click the {% data variables.product.prodname_classroom %} activity. - -## Importing a roster from your LMS - -For more information about importing the roster from your LMS into {% data variables.product.prodname_classroom %}, see "[Manage classrooms](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." +In the meantime, you may manually input your roster for your class. For more information about manually importing the roster from your LMS into {% data variables.product.prodname_classroom %}, see "[Manage classrooms](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." ## Disconnecting your LMS diff --git a/content/get-started/exploring-projects-on-github/following-organizations.md b/content/get-started/exploring-projects-on-github/following-organizations.md index 64d7144396..b3e02489ca 100644 --- a/content/get-started/exploring-projects-on-github/following-organizations.md +++ b/content/get-started/exploring-projects-on-github/following-organizations.md @@ -7,15 +7,11 @@ topics: - Profile --- -{% note %} - -**Note:** The ability to follow organizations is currently in public beta and subject to change. - -{% endnote %} +{% data reusables.organizations.follow-organizations-beta %} ## About followers on {% data variables.product.product_name %} -When you follow organizations, you'll see their public activity on your personal dashboard. For more information, see "[About your personal dashboard](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)." +{% data reusables.organizations.about-following-organizations %} For more information, see "[About your personal dashboard](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)." You can unfollow an organization if you do not wish to see their {% ifversion fpt or ghec %}public{% endif %} activity on {% data variables.product.product_name %}. diff --git a/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md b/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md index 97b049d2de..eb649b3f6c 100644 --- a/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md +++ b/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md @@ -58,11 +58,21 @@ If you have existing source code or repositories stored locally on your computer ![Create New Repository drop-down](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Change the current working directory to your local project. -4. Initialize the local directory as a Git repository. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git symbolic-ref HEAD refs/heads/main`. + + ``` shell + $ git init && git symbolic-ref HEAD refs/heads/main + ``` 5. Add the files in your new local repository. This stages them for the first commit. + ```shell $ git add . # Adds the files in the local repository and stages them for commit. {% data reusables.git.unstage-codeblock %} @@ -95,10 +105,19 @@ If you have existing source code or repositories stored locally on your computer ![Create New Repository drop-down](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Change the current working directory to your local project. -4. Initialize the local directory as a Git repository. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git symbolic-ref HEAD refs/heads/main`. + + ``` shell + $ git init && git symbolic-ref HEAD refs/heads/main + ``` 5. Add the files in your new local repository. This stages them for the first commit. ```shell $ git add . @@ -132,10 +151,19 @@ If you have existing source code or repositories stored locally on your computer ![Create New Repository drop-down](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Change the current working directory to your local project. -4. Initialize the local directory as a Git repository. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git symbolic-ref HEAD refs/heads/main`. + + ``` shell + $ git init && git symbolic-ref HEAD refs/heads/main + ``` 5. Add the files in your new local repository. This stages them for the first commit. ```shell $ git add . diff --git a/content/get-started/quickstart/be-social.md b/content/get-started/quickstart/be-social.md index 9938fad6cb..27cfae157f 100644 --- a/content/get-started/quickstart/be-social.md +++ b/content/get-started/quickstart/be-social.md @@ -57,7 +57,23 @@ From your dashboard, click the drop down menu of your username on the left side ![Switch account context dropdown](/assets/images/help/overview/dashboard-contextswitcher.png) -### Exploring other projects on {% data variables.product.prodname_dotcom %} +{% ifversion for-you-feed %} + +## Following organizations + +{% data reusables.organizations.follow-organizations-beta %} + +{% data reusables.organizations.about-following-organizations %} + +To follow an organization, in the header of the organization's page, click **Follow**. + +![Screenshot of the organization header, with the follow button highlighted](/assets/images/help/profile/organization-profile-following.png) + +For more information, see "[Following organizations](/get-started/exploring-projects-on-github/following-organizations)." + +{% endif %} + +## Exploring other projects on {% data variables.product.prodname_dotcom %} You can discover new and interesting projects on {% data variables.product.prodname_dotcom %}'s Explore page. You can star interesting projects to make them easy to find again later. Visit your stars page to see all your starred projects. For more information about stars, see "[Saving repositories with stars](/get-started/exploring-projects-on-github/saving-repositories-with-stars)." diff --git a/content/get-started/quickstart/fork-a-repo.md b/content/get-started/quickstart/fork-a-repo.md index 600c30dca4..9d3c9526b6 100644 --- a/content/get-started/quickstart/fork-a-repo.md +++ b/content/get-started/quickstart/fork-a-repo.md @@ -118,7 +118,7 @@ Right now, you have a fork of the Spoon-Knife repository, but you do not have th > Cloning into `Spoon-Knife`... > remote: Counting objects: 10, done. > remote: Compressing objects: 100% (8/8), done. - > remove: Total 10 (delta 1), reused 10 (delta 1) + > remote: Total 10 (delta 1), reused 10 (delta 1) > Unpacking objects: 100% (10/10), done. ``` diff --git a/content/graphql/guides/migrating-graphql-global-node-ids.md b/content/graphql/guides/migrating-graphql-global-node-ids.md index 34d985e126..aa6502c079 100644 --- a/content/graphql/guides/migrating-graphql-global-node-ids.md +++ b/content/graphql/guides/migrating-graphql-global-node-ids.md @@ -32,7 +32,7 @@ Here is an example request using cURL: ``` $ curl \ - -H "Authorization: token $GITHUB_TOKEN" \ + -H "Authorization: Bearer $GITHUB_TOKEN" \ -H "X-Github-Next-Global-ID: 1" \ https://api.github.com/graphql \ -d '{ "query": "{ node(id: \"MDQ6VXNlcjM0MDczMDM=\") { id } }" }' diff --git a/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md b/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md index c54635daf3..3e15a0797b 100644 --- a/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md +++ b/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md @@ -70,7 +70,7 @@ You can find the node ID of an organization project if you know the organization ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{organization(login: \"ORGANIZATION\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -94,7 +94,7 @@ You can also find the node ID of all projects in your organization. The followin ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{organization(login: \"ORGANIZATION\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -125,7 +125,7 @@ You can find the node ID of a user project if you know the project number. Repla ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{user(login: \"USER\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -149,7 +149,7 @@ You can also find the node ID for all of your projects. The following example wi ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{user(login: \"USER\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -180,7 +180,7 @@ The following example will return the ID, name, settings, and configuration for ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2Field { id name } ... on ProjectV2IterationField { id name configuration { iterations { startDate id }}} ... on ProjectV2SingleSelectField { id name options { id name }}}}}}}"}' ``` {% endcurl %} @@ -284,7 +284,7 @@ If you just need the name and ID of a field, and do not need information about i ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2FieldCommon { id name }}}}}}"}' ``` {% endcurl %} @@ -354,7 +354,7 @@ The following example will return the first 20 issues, pull requests, and draft ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { items(first: 20) { nodes{ id fieldValues(first: 8) { nodes{ ... on ProjectV2ItemFieldTextValue { text field { ... on ProjectV2FieldCommon { name }}} ... on ProjectV2ItemFieldDateValue { date field { ... on ProjectV2FieldCommon { name } } } ... on ProjectV2ItemFieldSingleSelectValue { name field { ... on ProjectV2FieldCommon { name }}}}} content{ ... on DraftIssue { title body } ...on Issue { title assignees(first: 10) { nodes{ login }}} ...on PullRequest { title assignees(first: 10) { nodes{ login }}}}}}}}}"}' ``` {% endcurl %} @@ -446,7 +446,7 @@ The following example will add an issue or pull request to your project. Replace ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {addProjectV2ItemById(input: {projectId: \"PROJECT_ID\" contentId: \"CONTENT_ID\"}) {item {id}}}"}' ``` {% endcurl %} @@ -488,8 +488,8 @@ The following example will add a draft issue to your project. Replace `PROJECT_I ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ - --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {item {id}}}"}' + --header 'Authorization: Bearer TOKEN' \ + --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {projectItem {id}}}"}' ``` {% endcurl %} @@ -498,7 +498,7 @@ curl --request POST \ gh api graphql -f query=' mutation { addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) { - item { + projectItem { id } } @@ -512,7 +512,7 @@ The response will contain the node ID of the newly created draft issue. { "data": { "addProjectV2ItemById": { - "item": { + "projectItem": { "id": "PVTI_lADOANN5s84ACbL0zgBbxFc" } } @@ -528,7 +528,7 @@ The following example will update your project's settings. Replace `PROJECT_ID` ```shell curl --request POST \ --url https://api.github.com/graphql \ ---header 'Authorization: token TOKEN' \ +--header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation { updateProjectV2(input: { projectId: \"PROJECT_ID\", title: \"Project title\", public: false, readme: \"# Project README\n\nA long description\", shortDescription: \"A short description\"}) { projectV2 { id, title, readme, shortDescription }}}"}' ``` {% endcurl %} @@ -565,7 +565,7 @@ The following example will update the value of a text field for an item. Replace ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { text: "Updated text" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -619,7 +619,7 @@ The following example will update the value of a single select field for an item ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -659,7 +659,7 @@ The following example will update the value of an iteration field for an item. ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -694,7 +694,7 @@ The following example will delete an item from a project. Replace `PROJECT_ID` w ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {deleteProjectV2Item(input: {projectId: \"PROJECT_ID\" itemId: \"ITEM_ID\"}) {deletedItemId}}"}' ``` {% endcurl %} diff --git a/content/issues/planning-and-tracking-with-projects/managing-your-project/managing-visibility-of-your-projects.md b/content/issues/planning-and-tracking-with-projects/managing-your-project/managing-visibility-of-your-projects.md index 5d8c6bd7ab..d08df1f06c 100644 --- a/content/issues/planning-and-tracking-with-projects/managing-your-project/managing-visibility-of-your-projects.md +++ b/content/issues/planning-and-tracking-with-projects/managing-your-project/managing-visibility-of-your-projects.md @@ -22,7 +22,7 @@ Only the project visibility is affected; to view an item on the project, someone ![Project with hidden item](/assets/images/help/projects/hidden-items.png) -Project admins and organization owners can control project visibility. Organization owners can restrict the ability to change project visibility to just organization owners. +Project admins and organization owners can control project visibility. Organization owners{% ifversion project-visibility-policy %} and enterprise owners{% endif %} can restrict the ability to change project visibility to just organization owners. In public and private projects, insights are only visible to users with write permissions for the project. 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 479c147c68..ff7dea8516 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 @@ -1,6 +1,6 @@ --- title: Linking a pull request to an issue -intro: You can link a pull request to an issue to show that a fix is in progress and to automatically close the issue when the pull request is merged. +intro: You can link a pull request {% ifversion link-existing-branches-to-issue %}or branch {% endif %}to an issue to show that a fix is in progress and to automatically close the issue when the pull request {% ifversion link-existing-branches-to-issue %}or branch {% endif %} is merged. redirect_from: - /github/managing-your-work-on-github/managing-your-work-with-issues-and-pull-requests/linking-a-pull-request-to-an-issue - /articles/closing-issues-via-commit-message @@ -60,9 +60,9 @@ Only manually linked pull requests can be manually unlinked. To unlink an issue 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. -## Manually linking a pull request to an issue +## Manually linking a pull request to an issue using the pull request sidebar -Anyone with write permissions to a repository can manually link a pull request to an issue. +Anyone with write permissions to a repository can manually link a pull request to an issue from the pull request sidebar. You can manually link up to ten issues to each pull request. The issue and pull request must be in the same repository. @@ -78,6 +78,28 @@ You can manually link up to ten issues to each pull request. The issue and pull 5. Click the issue you want to link to the pull request. ![Drop down to link issue](/assets/images/help/pull_requests/link-issue-drop-down.png) +{% ifversion link-existing-branches-to-issue %} + +## Manually linking a pull request or branch to an issue using the issue sidebar + +Anyone with write permissions to a repository can manually link a pull request or branch to an issue from the issue sidebar. + +You can manually link up to ten issues to each pull request. The issue can be in a different repository than the linked pull request or branch. Your last selected repository will be remembered + +{% data reusables.repositories.navigate-to-repo %} +{% data reusables.repositories.sidebar-issues %} +3. In the list of issues, click the issue that you'd like to link a pull request or branch to. +4. In the right sidebar, click **Development**. + ![Development menu in the right sidebar](/assets/images/help/issues/development-menu.png) +5. Click the repository containing the pull request or branch you want to link to the issue. + ![Drop down to select repository](/assets/images/help/issues/development-menu-select-repository.png) +6. Click the pull request or branch you want to link to the issue. + ![Drop down to link pull request or branch](/assets/images/help/issues/development-menu-select-pr-or-branch.png) +7. Click **Apply**. + ![Apply](/assets/images/help/issues/development-menu-apply.png) + +{% endif %} + ## Further reading -- "[Autolinked references and URLs](/articles/autolinked-references-and-urls/#issues-and-pull-requests)" +* "[Autolinked references and URLs](/articles/autolinked-references-and-urls/#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 7e46a5395c..cfd6821b28 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 @@ -23,7 +23,7 @@ To transfer an open issue to another repository, you must have write access to t {% endnote %} -When you transfer an issue, comments, labels and assignees are retained. The issue's 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)." +When you transfer an issue, comments and assignees are retained. Labels and milestones are also retained if they're present in the target repository, with labels matching by name and milestones matching by both name and due date. 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)." People or teams who are mentioned in the issue will receive a notification letting them know that the issue has been transferred to a new repository. The original URL redirects to the new issue's URL. People who don't have read permissions in the new repository will see a banner letting them know that the issue has been transferred to a new repository that they can't access. diff --git a/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md b/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md index 7072ee723b..be572c1816 100644 --- a/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md +++ b/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md @@ -38,6 +38,8 @@ You can also configure allowed IP addresses for the organizations in an enterpri {% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} diff --git a/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md b/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md index abcb34546b..3224a89600 100644 --- a/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md +++ b/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md @@ -11,10 +11,18 @@ allowTitleToDifferFromFilename: true permissions: Organization owners can allow {% data variables.projects.project_v2_and_v1 %} visibility changes for an organization. --- +## About visibility changes for projects + You can restrict who has the ability to change the visibility of {% data variables.projects.projects_v2_and_v1 %} in your organization, such as restricting members from changing {% data variables.projects.projects_v2_and_v1 %} from private to public. You can limit the ability to change {% data variables.projects.project_v2_and_v1 %} visibility to just organization owners, or you can allow anyone granted admin permissions to change the visibility. +{% ifversion project-visibility-policy %} +This option may not be available to you if an enterprise owner restricts visibility changes for {% data variables.projects.projects_v2_and_v1 %} at the enterprise level. For more information, see "[Enforcing policies for projects in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise)." +{% endif %} + +## Allowing members to change project visibilities + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} 1. In the "Code, planning, and automation" section of the sidebar, click **{% octicon "table" aria-label="The table icon" %} Projects**. diff --git a/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md b/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md index 36d4f7a49f..ca48cc9a2a 100644 --- a/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md +++ b/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md @@ -1,6 +1,6 @@ --- title: Enabling or disabling GitHub Discussions for an organization -intro: 'You can use {% data variables.product.prodname_discussions %} in a organization as a place for your organization to have conversations that aren''t specific to a single repository within your organization.' +intro: 'You can use {% data variables.product.prodname_discussions %} in an organization as a place for your organization to have conversations that aren''t specific to a single repository within your organization.' permissions: 'Organization owners can enable {% data variables.product.prodname_discussions %} for their organization.' versions: feature: discussions diff --git a/content/packages/index.md b/content/packages/index.md index 7999a46e7f..135fbcf6bc 100644 --- a/content/packages/index.md +++ b/content/packages/index.md @@ -18,6 +18,7 @@ featuredLinks: guideCards: - '{% ifversion docker-ghcr-enterprise-migration %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' - '{% ifversion fpt or ghec or ghes > 3.4 %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' + - '{% ifversion packages-npm-v2 %}/packages/working-with-a-github-packages-registry/working-with-the-npm-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry changelog: label: 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 7b27d76936..18235d4ef4 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 @@ -18,20 +18,22 @@ The permissions for packages are either repository-scoped or user/organization-s 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: +The {% data variables.product.prodname_registry %} registries below **only** use repository-scoped permissions: {% ifversion not fpt or ghec %}- Docker registry (`docker.pkg.github.com`){% endif %} - - npm registry + {% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - RubyGems registry - Apache Maven registry - NuGet registry +{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %} + {% 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. -Currently, only the {% data variables.product.prodname_container_registry %} offers granular permissions for your container image packages. +Currently, the {% data variables.product.prodname_ghcr_and_npm_registry %} offer granular permissions for your container image packages. ## Visibility and access permissions for container images 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 9105c5e7bc..3c34034960 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 @@ -15,7 +15,7 @@ shortTitle: Access control & visibility Packages with granular permissions are scoped to a personal user or organization account. You can change the access control and visibility of a package separately from the repository that it is connected (or linked) to. -Currently, you can only use granular permissions with the {% data variables.product.prodname_container_registry %}. Granular permissions are not supported in our other package registries, such as the npm registry.{% ifversion docker-ghcr-enterprise-migration %} For more information about migration to the {% data variables.product.prodname_container_registry %}, 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 %} +Currently, you can only use granular permissions with the {% data variables.product.prodname_ghcr_and_npm_registry %}. Granular permissions are not supported in our other package registries, such as the RubyGems registry.{% ifversion docker-ghcr-enterprise-migration %} For more information about migration to the {% data variables.product.prodname_container_registry %}, 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 %} For more information about permissions for repository-scoped packages, packages-related scopes for PATs, or managing permissions for your actions workflows, see "[About permissions for GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages)." @@ -105,7 +105,7 @@ To further customize access to your container image, see "[Configuring access to {% ifversion fpt or ghec %} ## Ensuring {% data variables.product.prodname_codespaces %} access to your package -By default, a codespace can seamlessly access certain packages in the {% data variables.product.prodname_dotcom %} Container Registry, such as those published in the same repository with the **Inherit access** option selected. For more information on which access is automatically configured, see "[Accessing images stored in {% data variables.product.prodname_dotcom %} Container Registry](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-github-container-registry)." +By default, a codespace can seamlessly access certain packages in the {% data variables.product.prodname_ghcr_and_npm_registry %}, such as those published in the same repository with the **Inherit access** option selected. For more information on which access is automatically configured, see "[Allowing your codespace to access a private image registry](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-container-registry-and-npm-registry)." Otherwise, to ensure that a codespace has access to your package, you must grant access to the repository where the codespace is being launched. 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 d4e95b8159..456eca2565 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 @@ -23,12 +23,12 @@ On {% data variables.product.prodname_dotcom %} if you have the required access, - an entire private package - an entire public package, if there's not more than 5000 downloads of any version of the package - a specific version of a private package -- a specific version of a public package, if the package version doesn't have more than 5000 downloads +- a specific version of a public package, if the package version doesn't have more than 5,000 downloads {% note %} **Note:** -- You cannot delete a public package if any version of the package has more than 5000 downloads. In this scenario, contact [GitHub support](https://support.github.com/contact?tags=docs-packages) for further assistance. +- You cannot delete a public package if any version of the package has more than 5,000 downloads. In this scenario, contact [GitHub support](https://support.github.com/contact?tags=docs-packages) for further assistance. - When deleting public packages, be aware that you may break projects that depend on your package. {% endnote %} @@ -46,7 +46,7 @@ You can use the REST API to manage your packages. For more information, see the {% endif %} -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`.{% endif %} 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.{% data reusables.package_registry.no-graphql-to-delete-packages %} 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 %} @@ -54,18 +54,19 @@ For packages that inherit their permissions and access from repositories, you ca For packages that inherit their access permissions from repositories, you can delete a package if you have admin permissions to the repository. -Repository-scoped packages on {% data variables.product.prodname_registry %} include these packages: -- npm -- RubyGems -- maven -- Gradle -- NuGet -{% ifversion not fpt or ghec %}- Docker images at `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} +The {% data variables.product.prodname_registry %} registries below **only** use repository-scoped permissions: + + {% ifversion not fpt or ghec %}- Docker images at `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} + {% ifversion packages-npm-v2 %}{% else %}- npm{% endif %} + - RubyGems registry + - Apache Maven registry + - NuGet registry + +{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %} {% 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. -For more information, see "[About permissions for {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)." +To delete a package that has granular permissions separate from a repository, such as container images stored at `https://ghcr.io/OWNER/PACKAGE-NAME` or `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`, you must have admin access to the package. For more information, see "[About permissions for {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)." {% endif %} @@ -89,9 +90,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 or ghec %} -For containers or Docker images at `ghcr.io`, GraphQL is not supported but you can use the REST API. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." -{% endif %} +{% data reusables.package_registry.no-graphql-to-delete-packages %}{% ifversion fpt or ghec %} You can however use the REST API. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)."{% endif %} Use the `deletePackageVersion` mutation in the GraphQL API. You must use a token with the `read:packages`, `delete:packages`, and `repo` scopes. For more information about tokens, see "[About {% data variables.product.prodname_registry %}](/packages/publishing-and-managing-packages/about-github-packages#authenticating-to-github-packages)." 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 fc5090006e..5450ffcff9 100644 --- a/content/packages/learn-github-packages/introduction-to-github-packages.md +++ b/content/packages/learn-github-packages/introduction-to-github-packages.md @@ -51,7 +51,7 @@ For more information about the configuration of {% data variables.product.prodna | | | |--------------------|--------------------| -| 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 %} | +| 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_ghcr_and_npm_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)." @@ -101,7 +101,9 @@ For more information about Docker and the {% data variables.product.prodname_con ## Managing 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)." +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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." + +{% data reusables.package_registry.no-graphql-to-delete-packages %} {% endif %} {% ifversion ghes %} @@ -112,7 +114,9 @@ You can delete a private or public package in the {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" 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 ghes or ghae %}"[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and {% endif %}"[Forming calls with GraphQL](/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)." diff --git a/content/packages/learn-github-packages/viewing-packages.md b/content/packages/learn-github-packages/viewing-packages.md index 4723416942..4c67fda41e 100644 --- a/content/packages/learn-github-packages/viewing-packages.md +++ b/content/packages/learn-github-packages/viewing-packages.md @@ -21,17 +21,17 @@ versions: ## About package views -Your ability to view a package depends on several factors. By default, you can view all packages you have published. +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 or ghec %} +Repository-scoped packages inherit their permissions and visibility from the repository that owns the package. The registries below **only** use this type of permissions:{% ifversion not fpt or ghec %} - Docker registry (`docker.pkg.github.com`){% endif %} -- npm registry +{% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - RubyGems registry - Apache Maven registry - NuGet registry {% 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)." +The {% data variables.product.prodname_ghcr_and_npm_registry %} offer 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 or ghec %}" and "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility){% endif %}." 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 abf40d8435..6b3f8fc7cd 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 @@ -24,9 +24,9 @@ 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 or ghec %} -### Authenticating to the {% data variables.product.prodname_container_registry %} +### Authenticating to the {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} {% endif %} @@ -40,7 +40,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 or ghec %}and Gradle. {% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`.{% endif %} +**Note:** Some registries, such as RubyGems, {% ifversion packages-npm-v2 %}{% else %}npm, {% endif %}Apache Maven, NuGet, {% ifversion fpt or ghec %}and Gradle{% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`{% endif %}, only allow repository-owned packages. With {% data variables.product.prodname_ghcr_and_npm_registry_full %} you can choose to allow packages to be owned by a user, an organization, or linked to a repository. {% endnote %} @@ -49,11 +49,11 @@ 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 or ghec %} -## About permissions and package access for {% data variables.product.prodname_container_registry %} +## About permissions and package access for {% data variables.product.prodname_ghcr_and_npm_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 account and you can customize access to each of your containers separately from repository permissions. +The {% data variables.product.prodname_ghcr_and_npm_registry_full %} allows users to create and administer packages as free-standing resources at the organization level. Packages can be owned by an organization or personal account and you can customize access to each of your packages separately from repository permissions. -All workflows accessing the {% data variables.product.prodname_container_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)." +All workflows accessing the {% data variables.product.prodname_ghcr_and_npm_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)." ## Default permissions and access settings for containers modified through workflows @@ -484,9 +484,9 @@ Installing packages hosted by {% data variables.product.prodname_registry %} thr {% data reusables.package_registry.actions-configuration %} {% ifversion fpt or ghec %} -## Upgrading a workflow that accesses `ghcr.io` +## Upgrading a workflow that accesses a registry using a PAT -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`. +The {% data variables.product.prodname_ghcr_and_npm_registry %} support the `GITHUB_TOKEN` for easy and secure authentication in your workflows. If your workflow is using a personal access token (PAT) to authenticate to the registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." @@ -504,9 +504,9 @@ Using the `GITHUB_TOKEN` instead of a PAT, which includes the `repo` scope, incr {% endnote %} 1. Optionally, using the "role" drop-down menu, select the default access level that you'd like the repository to have to your container image. ![Permission access levels to give to repositories](/assets/images/help/package-registry/repository-permission-options-for-package-access-through-actions.png) -1. Open your workflow file. On the line where you log in to `ghcr.io`, replace your PAT with {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. +1. Open your workflow file. On the line where you log in to the registry, replace your PAT with {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. -For example, this workflow publishes a Docker image using {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. +For example, this workflow publishes a Docker image to the {% data variables.product.prodname_container_registry %} and uses {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. ```yaml{:copy} name: Demo Push 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 02708a404d..98ac905c0a 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 @@ -42,7 +42,9 @@ When installing or publishing a Docker image, the {% data variables.product.prod ## Authenticating to the {% data variables.product.prodname_container_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% ifversion fpt or ghec or ghes > 3.4 %} +To authenticate to the {% data variables.product.prodname_container_registry %} (`ghcr.io`) within a {% data variables.product.prodname_actions %} workflow, use the `GITHUB_TOKEN` for the best security and experience. {% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} +{% endif %} {% ifversion ghes %}Ensure that you replace `HOSTNAME` with {% data variables.product.product_location_enterprise %} hostname or IP address in the examples below.{% 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 993e933de3..8007cd2b6f 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 @@ -21,6 +21,8 @@ shortTitle: npm registry {% data reusables.package_registry.admins-can-configure-package-types %} +{% ifversion packages-npm-v2 %} +{% else %} ## 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. @@ -28,12 +30,17 @@ If you publish over 1,000 npm package versions to {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" or "[Contacting Support](/packages/learn-github-packages/about-github-packages#contacting-support)." +{% endif %} ## Authenticating to {% data variables.product.prodname_registry %} {% data reusables.package_registry.authenticate-packages %} -{% data reusables.package_registry.authenticate-packages-github-token %} +{% ifversion packages-npm-v2 %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} + +You can also choose to give access permissions to packages independently for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_actions %}. For more information, see "[Ensuring Codespaces access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-codespaces-access-to-your-package) and [Ensuring workflow access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." +{% endif %} ### Authenticating with a personal access token @@ -94,12 +101,24 @@ $ npm login --scope=@OWNER --registry=https://HOSTNAME/_regist {% endnote %} +{% ifversion packages-npm-v2 %} +The {% data variables.product.prodname_registry %} registry stores npm packages within your organization or personal account, and allows you to associate a package with a repository. You can choose whether to inherit permissions from a repository, or set granular permissions independently of a repository. +{% endif %} + By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. If you're running [npm v8.5.3](https://github.com/npm/cli/releases/tag/v8.5.3) or later, you can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. You can publish multiple packages to the same {% data variables.product.prodname_dotcom %} repository by including a `URL` field in the *package.json* file. For more information, see "[Publishing multiple packages to the same repository](#publishing-multiple-packages-to-the-same-repository)." +{% ifversion fpt or ghec %} +When a package is published, it isn't automatically linked to a repository. You can however choose to link your published package to a repository using the user interface or command line. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)." +{% endif %} + You can set up the scope mapping for your project using either a local *.npmrc* file in the project or using the `publishConfig` option in the *package.json*. {% data variables.product.prodname_registry %} only supports scoped npm packages. Scoped packages have names with the format of `@owner/name`. Scoped packages always begin with an `@` symbol. You may need to update the name in your *package.json* to use the scoped name. For example, `"name": "@codertocat/hello-world-npm"`. +{% ifversion packages-npm-v2 %} +When you first publish a package, the default visibility is private. When a package is linked to repository, the package visibility is dependent on the repository's visibility. To change the visibility or set access permissions, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." +{% endif %} + {% data reusables.package_registry.viewing-packages %} ### Publishing a package using a local *.npmrc* file 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 b844e2251b..05e0b384b9 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 @@ -47,7 +47,7 @@ To set up a `www` or custom subdomain, such as `www.example.com` or `blog.exampl {% data reusables.pages.sidebar-pages %} 4. Under "Custom domain", type your custom domain, then click **Save**. If you are publishing your site from a branch, this will create a commit that adds a `CNAME` file to the root of your source branch. If you are publishing your site with a custom {% data variables.product.prodname_actions %} workflow , no `CNAME` file is created. For more information about your publishing source, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." ![Save custom domain button](/assets/images/help/pages/save-custom-subdomain.png) -5. Navigate to your DNS provider and create a `CNAME` record that points your subdomain to the default domain for your site. For example, if you want to use the subdomain `www.example.com` for your user site, create a `CNAME` record that points `www.example.com` to `.github.io`. If you want to use the subdomain `www.anotherexample.com` for your organization site, create a `CNAME` record that points `www.anotherexample.com` to `.github.io`. The `CNAME` record should always point to `.github.io` or `.github.io`, excluding the repository name. {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} +5. Navigate to your DNS provider and create a `CNAME` record that points your subdomain to the default domain for your site. For example, if you want to use the subdomain `www.example.com` for your user site, create a `CNAME` record that points `www.example.com` to `.github.io`. If you want to use the subdomain `another.example.com` for your organization site, create a `CNAME` record that points `another.example.com` to `.github.io`. The `CNAME` record should always point to `.github.io` or `.github.io`, excluding the repository name. {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} {% indented_data_reference reusables.pages.wildcard-dns-warning spaces=3 %} {% data reusables.command_line.open_the_multi_os_terminal %} diff --git a/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md b/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md index 8292f2f1bc..82b840cc6e 100644 --- a/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md +++ b/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md @@ -17,7 +17,7 @@ shortTitle: Merge PR automatically --- ## About auto-merge -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. +If you enable auto-merge for a pull request, the pull request will merge automatically when all required reviews are met and all required 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)." 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 6dcf30403e..3bc2ff7e3d 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 @@ -64,3 +64,6 @@ A README should contain only the necessary information for developers to get sta - "[Adding a file to a repository](/articles/adding-a-file-to-a-repository)" - 18F's "[Making READMEs readable](https://github.com/18F/open-source-guide/blob/18f-pages/pages/making-readmes-readable.md)" +{%- ifversion fpt or ghec %} +- "[Adding an 'Open in GitHub Codespaces' badge](/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge)" +{%- endif %} \ No newline at end of file diff --git a/content/rest/apps/installations.md b/content/rest/apps/installations.md index 52384aab04..3f06ce80d6 100644 --- a/content/rest/apps/installations.md +++ b/content/rest/apps/installations.md @@ -17,4 +17,4 @@ versions: An _installation_ refers to any user or organization account that has installed the app. For information on how to authenticate as an installation and limit access to specific repositories, see "[Authenticating as an installation](/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation)." -To list all GitHub App installations for an organization, see "[List app installations for an organization](/rest/reference/orgs#list-app-installations-for-an-organization)." +To list all GitHub App installations for an organization, see "[List app installations for an organization](/rest/orgs/orgs#list-app-installations-for-an-organization)." 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 2c60bf90f8..7388ae96bb 100644 --- a/content/rest/guides/getting-started-with-the-checks-api.md +++ b/content/rest/guides/getting-started-with-the-checks-api.md @@ -41,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) -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). +If a check run is in an 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). As soon as you receive the [`check_suite`](/webhooks/event-payloads/#check_suite) webhook, you can create the check run, even if the check is not complete. You can update the `status` of the check run as it completes with the values `queued`, `in_progress`, or `completed`, and you can update the `output` as more details become available. A check run can contain timestamps, a link to more details on your external site, detailed annotations for specific lines of code, and information about the analysis performed. 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 dd9545f30b..8c54d89f60 100644 --- a/content/rest/guides/getting-started-with-the-rest-api.md +++ b/content/rest/guides/getting-started-with-the-rest-api.md @@ -166,7 +166,7 @@ curl --request GET \ {% note %} -**Note:** In most cases, you can use `Authorization: Bearer` or `Authorization: token`. JSON web tokens (JWTs) will only work with `Authorization: Bearer`. +**Note:** {% data reusables.getting-started.bearer-vs-token %} {% endnote %} diff --git a/content/rest/overview/other-authentication-methods.md b/content/rest/overview/other-authentication-methods.md index b75ab98525..d8147fdb5d 100644 --- a/content/rest/overview/other-authentication-methods.md +++ b/content/rest/overview/other-authentication-methods.md @@ -86,10 +86,16 @@ If you have two-factor authentication enabled, make sure you understand how to [ {% endnote %} +{% note %} + +**Note:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + If you're using the API to access an organization that enforces [SAML SSO][saml-sso] for authentication, you'll need to create a personal access token (PAT) and [authorize the token][allowlist] for that organization. Visit the URL specified in `X-GitHub-SSO` to authorize the token for the organization. ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test > X-GitHub-SSO: required; url=https://github.com/orgs/octodocs-test/sso?authorization_request=AZSCKtL4U8yX1H3sCQIVnVgmjmon5fWxks5YrqhJgah0b2tlbl9pZM4EuMz4 { @@ -101,7 +107,7 @@ $ curl -v -H "Authorization: token TOKEN" {% data variables.product.api When requesting data that could come from multiple organizations (for example, [requesting a list of issues created by the user][user-issues]), the `X-GitHub-SSO` header indicates which organizations require you to authorize your personal access token: ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/user/issues +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/user/issues > X-GitHub-SSO: partial-results; organizations=21955855,20582480 ``` diff --git a/content/rest/overview/resources-in-the-rest-api.md b/content/rest/overview/resources-in-the-rest-api.md index 19c7f3d34e..033f0ccd78 100644 --- a/content/rest/overview/resources-in-the-rest-api.md +++ b/content/rest/overview/resources-in-the-rest-api.md @@ -91,7 +91,7 @@ $ curl -u "username" {% data variables.product.api_url_pre %} ### OAuth2 token (sent in a header) ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %} +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %} ``` {% note %} @@ -100,6 +100,12 @@ Note: GitHub recommends sending OAuth tokens using the Authorization header. {% endnote %} +{% note %} + +**Note:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + 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 or ghec %} diff --git a/content/rest/overview/troubleshooting.md b/content/rest/overview/troubleshooting.md index e7394d5a9c..72a862387a 100644 --- a/content/rest/overview/troubleshooting.md +++ b/content/rest/overview/troubleshooting.md @@ -55,13 +55,13 @@ curl -u my_user:my_password https://api.github.com/user/repos Instead, use a [personal access token](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line) when testing endpoints or doing local development: ```bash -curl -H 'Authorization: token my_access_token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my_access_token' https://api.github.com/user/repos ``` For OAuth Apps, you should use the [web application flow](/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow) to generate an OAuth token to use in the API call's header: ```bash -curl -H 'Authorization: token my-oauth-token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my-oauth-token' https://api.github.com/user/repos ``` ## Timeouts diff --git a/content/rest/quickstart.md b/content/rest/quickstart.md index b8bf64cd32..7c56fcf402 100644 --- a/content/rest/quickstart.md +++ b/content/rest/quickstart.md @@ -284,7 +284,7 @@ jobs: {% note %} - **Note:** In most cases, you can use `Authorization: Bearer` or `Authorization: token`. JSON web tokens (JWTs) only work with `Authorization: Bearer`. + **Note:** {% data reusables.getting-started.bearer-vs-token %} {% endnote %} diff --git a/content/rest/teams/external-groups.md b/content/rest/teams/external-groups.md index 2ac2295d45..fd5644a84b 100644 --- a/content/rest/teams/external-groups.md +++ b/content/rest/teams/external-groups.md @@ -19,7 +19,7 @@ To use this API, the authenticated user must be a team maintainer or an owner of **Notes:** -- The external groups API is only available for organizations that are part of a enterprise using {% data variables.product.prodname_emus %}. For more information, see "[About Enterprise Managed Users](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." +- The external groups API is only available for organizations that are part of an enterprise using {% data variables.product.prodname_emus %}. For more information, see "[About Enterprise Managed Users](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)." - If your organization uses team synchronization, you can use the Team Synchronization API. For more information, see "[Team synchronization API](#team-synchronization)." {% endnote %} diff --git a/content/rest/users/index.md b/content/rest/users/index.md index 326247f961..9fee33defb 100644 --- a/content/rest/users/index.md +++ b/content/rest/users/index.md @@ -19,5 +19,6 @@ children: - /followers - /gpg-keys - /keys + - /ssh-signing-keys --- diff --git a/content/rest/users/ssh-signing-keys.md b/content/rest/users/ssh-signing-keys.md new file mode 100644 index 0000000000..f3807f7513 --- /dev/null +++ b/content/rest/users/ssh-signing-keys.md @@ -0,0 +1,16 @@ +--- +title: SSH signing keys +intro: '' +versions: + fpt: '*' + ghes: '>=3.7' + ghec: '*' +topics: + - API +miniTocMaxHeadingLevel: 3 +allowTitleToDifferFromFilename: true +--- + +## About the User SSH signing keys API + +{% data reusables.user-settings.user-api %} \ No newline at end of file diff --git a/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md b/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md index c615e7b850..6a879606ec 100644 --- a/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md +++ b/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md @@ -21,9 +21,9 @@ When you use GitHub, you may be given access to lots of additional products and By using the Additional Products and Features, you also agree to the applicable GitHub Terms for Additional Products and Features listed below. A violation of these GitHub Terms for Additional Products and Features is a violation of the Agreement. Capitalized terms not defined here have the meaning given in the Agreement. **For Enterprise users** -- **GitHub Enterprise Cloud** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Codespaces, Dependabot Preview, GitHub Enterprise Importer, Learning Lab, Packages, and Pages. +- **GitHub Enterprise Cloud** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Codespaces, Dependabot Preview, GitHub Enterprise Importer, Packages, and Pages. -- **GitHub Enterprise Server** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Connect, Dependabot Preview, GitHub Enterprise Importer, Learning Lab, Packages, Pages, and SQL Server Images. +- **GitHub Enterprise Server** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Connect, Dependabot Preview, GitHub Enterprise Importer, Packages, Pages, and SQL Server Images. - **GitHub AE** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Connect, Dependabot Preview, GitHub Enterprise Importer, Packages and Pages. @@ -106,19 +106,6 @@ GitHub Copilot (i) may, depending on your preferred telemetry settings, collect ## GitHub Enterprise Importer Importer is a framework for exporting data from other sources to be imported to the GitHub platform. Importer is provided “AS-IS”. -## Learning Lab -GitHub Learning Lab offers free interactive courses that are built into GitHub with instant automated feedback and help. - -*Course Materials.* GitHub owns course materials that it provides and grants you a worldwide, non-exclusive, limited-term, non-transferable, royalty-free license to copy, maintain, use and run such course materials for your internal business purposes associated with Learning Lab use. - -Open source license terms may apply to portions of source code provided in the course materials. - -You own course materials that you create and grant GitHub a worldwide, non-exclusive, perpetual, non-transferable, royalty-free license to copy, maintain, use, host, and run such course materials. - -The use of GitHub course materials and creation and storage of your own course materials do not constitute joint ownership to either party's respective intellectual property. - -Use of Personal Data is governed by the [GitHub Privacy Statement](/github/site-policy/github-privacy-statement). - ## npm npm 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. npm is the registry of record for the JavaScript ecosystem. The npm public registry is free to use but customers are billed if they want to publish private packages or manage private packages using teams. The [npm documentation](https://docs.npmjs.com/) includes details about the limitation of account types and how to manage [private packages](https://docs.npmjs.com/about-private-packages) and [organizations](https://docs.npmjs.com/organizations). Acceptable use of the npm registry is outlined in the [open-source terms](https://www.npmjs.com/policies/open-source-terms). There are supplementary terms for both the npm [solo](https://www.npmjs.com/policies/solo-plan) and [org](https://www.npmjs.com/policies/orgs-plan) plans. The npm [Terms of Use](https://www.npmjs.com/policies/terms) apply to your use of npm. diff --git a/content/site-policy/privacy-policies/github-privacy-statement.md b/content/site-policy/privacy-policies/github-privacy-statement.md index 57bde0b8b5..ab5843b284 100644 --- a/content/site-policy/privacy-policies/github-privacy-statement.md +++ b/content/site-policy/privacy-policies/github-privacy-statement.md @@ -15,7 +15,7 @@ topics: - Legal --- -Effective date: May 31, 2022 +Effective date: September 1, 2022 Thanks for entrusting GitHub Inc. or GitHub B.V. (“GitHub”, “we”, "us" or "our") with your source code, your projects, and your personal data. This Privacy Statement explains our practices regarding the collection, use, and disclosure of your data, including any personal data we collect and process in connection with our website and any applications, software, products, and services provided by GitHub, including any Beta Previews (collectively “Service”). @@ -25,7 +25,7 @@ All capitalized terms have their definition in [GitHub’s Terms of Service](/gi ## The short version -We use your personal information as this Privacy Statement describes. No matter where you are, where you live, or what your citizenship is, we provide the same high standard of privacy protection to all our users around the world, regardless of their country of origin or location. +We use your personal information as this Privacy Statement describes. No matter where you are, where you live, or what your citizenship is, you have the same high standard of privacy protection when using GitHub's products as all our users around the world, regardless of their country of origin or location. To see our Privacy Notice to residents of California, please go to [GitHub's Notice about the California Consumer Privacy Act](#githubs-notice-to-california-residents) or scroll down. @@ -34,12 +34,12 @@ To see our Privacy Notice to residents of California, please go to [GitHub's Not | Section | What can you find there? | |---|---| -| [Who is responsible for the processing of your information](#who-is-responsible-for-the-processing-of-your-information) | Subject to limited exceptions, GitHub is the controller and entity responsible for the processing of your personal data in connection with the Website or Service. | +| [Who is responsible for the processing of your information](#who-is-responsible-for-the-processing-of-your-information) | Subject to limited exceptions, GitHub is the controller and entity responsible for the processing of your personal data in connection with the Website or Service if you are in North America. For individuals outside North America the data controller is GitHub B.V. | | [What information GitHub collects](#what-information-github-collects) | GitHub collects information directly from you for your registration, payment, transactions, and user profile. We also automatically collect from you your usage information, cookies, and device information, subject, where necessary, to your consent. GitHub may also collect personal data from third parties. We only collect the minimum amount of personal data necessary from you, unless you choose to provide more.| | [How GitHub uses your information](#how-github-uses-your-information) | In this section, we describe the ways in which we use your information, including to provide you the Service, to communicate with you, for security and compliance purposes, and to improve our Website or Service or develop new features and functionality of our Website or Service. We also describe the legal basis upon which we process your information, where legally required. | | [How we share the information we collect](#how-we-share-the-information-we-collect) | We may share your information with third parties under one of the following circumstances: with your consent, with our service providers, for security purposes, to comply with our legal obligations, or when there is a change of control or sale of corporate entities or business units. We do not sell your personal information and we do not host advertising on GitHub. | | [Your choices regarding our processing of your personal data](#your-choices-regarding-our-processing-of-your-personal-data) | We provide ways for you to access, alter, or delete your personal information. | -| [Cookies](#cookies) | We only use strictly necessary cookies to provide, secure, and improve our Website or Service or develop new features and functionality of our Website or Service. We offer a page that makes this very transparent. We do not send any information to third-party analytics services. | +| [Cookies](#cookies) | Except for cookies used on our Enterprise Marketing Pages, we only use strictly necessary cookies to provide, secure, and improve our Website or Service or develop new features and functionality of our Website or Service.

As described below, we may use non-essential cookies on certain pages of our website to support our enterprise marketing efforts and market our products and services to enterprise customers, for example on resources.github.com (collectively “Enterprise Marketing Pages”).

We offer a [page](https://github.com/privacy/cookies) that makes all uses of cookies very transparent. | | [How GitHub secures your information](#how-github-secures-your-information) | We take all measures reasonably necessary to protect the confidentiality, integrity, and availability of your personal data on GitHub and to protect the resilience of our servers. | | [Communication preferences](#communication-preferences) | We communicate with you by email. You can control the way we contact you in your account settings, or by contacting us. | | [Resolving complaints](#resolving-complaints) | In the unlikely event that we are unable to resolve a privacy concern quickly and thoroughly, we provide a path of dispute resolution. | @@ -122,13 +122,14 @@ We may use your information to provide, administer, analyze, manage, and operate - Personalization of our Service by understanding you and your preferences to enhance your experience and enjoyment using our Service. - Provide customer support and respond to your questions. - Deliver promotional communications with you about new services, features, offers, promotions, and other information about our Service. +- Personalize and measure the effectiveness of enterprise business ads, promotional communications or marketing you receive related to the Enterprise Marketing Pages. - Send you information, including confirmations, invoices, technical notices, updates, security alerts, support and administrative messages. We combine data we collect from different sources for these purposes and to give you a more seamless, consistent, and personalized experience. ## How we share the information we collect -We share personal data with your consent or as necessary to complete your transactions or provide the services you have requested or authorized. In addition, we may share each of the categories of your personal data described above with the types of third parties described below for the following business purposes: +We share personal data as described below, including with your consent or as necessary to complete your transactions or provide the services you have requested or authorized. In addition, we may share each of the categories of your personal data described above with the types of third parties described below for the following business purposes: ### Public information You may select options available through our Service to publicly display and share your name and/or username and certain other information, such as your profile, demographic data, content and files, or geolocation data. For example, if you would like your email address to remain private, even when you’re commenting on public repositories, [you can adjust your setting for your email address to be private in your user profile](https://github.com/settings/emails). You can also [update your local Git configuration to use your private email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address). Please see more about email addresses in commit messages [here](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address). @@ -144,10 +145,10 @@ You can enable or add third-party applications, known as "Developer Products" to You may indicate, through your actions on GitHub, that you are willing to share your personal data. If you collaborate on or become a member of an organization, then its Account owners may receive your personal data. When you accept an invitation to an organization, you will be notified of the types of information owners may be able to see (for more information, see [About Organization Membership](/github/setting-up-and-managing-your-github-user-account/about-organization-membership)). Please contact the Account owners for more information about how they might process your personal data in their Organization and the ways for you to access, update, alter, or delete your personal data stored in the Account. ### Service providers -We share your personal data with service providers who process the information on our behalf to provide or improve our Service. For example, our service providers may perform payment processing, customer support ticketing, network data transmission, security, and other similar services. While GitHub processes all personal data in the United States, our service providers may process data outside of the United States or the European Union. Such processing by service providers will be in compliance with applicable law including any relevant transfer mechanism. +We share your personal data with service providers who process the information on our behalf to provide or improve our Service. For example, our service providers may perform payment processing, customer support ticketing, network data transmission, web analytics, marketing operations, security, and other similar services. While GitHub processes all personal data in the United States, our service providers may process data outside of the United States or the European Union. Such processing by service providers will be in compliance with applicable law including any relevant transfer mechanism. ### Affiliates - We enable access to personal data across our subsidiaries, affiliates, and related companies, for example, where we share common data systems or where access is needed to operate and provide the Service. + We enable access to personal data across our subsidiaries, affiliates, and related companies, for example, where we share common data systems, when affiliates provide services on our behalf, or where access is needed to operate and provide the Service. ### For security purposes We will disclose personal data if we believe it is necessary to: @@ -173,7 +174,7 @@ You can learn more about the CCPA and how we comply with it [here](#githubs-noti ## Your choices regarding our processing of your personal data We provide choices about the personal data we collect about you. The choices you make will not apply to any personal data associated with an Organization under your Account. -Access, correction, and deletion. If you're a GitHub user, you may access, update, alter, or delete your basic user profile information by [editing your user profile](https://github.com/settings/profile) or contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). You can control the information we collect about you by limiting what information is in your profile, by keeping your information current, or by contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). +Access, correction, and deletion. If you're a GitHub user, you may access, update, alter, or delete your basic user profile information by [editing your user profile](https://github.com/settings/profile) or contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). You can control the information we collect about you by limiting what information is in your profile, by keeping your information current, by changing your cookie preferences, or by contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). We retain and use your information as described in this Privacy Statement, but barring legal requirements, we will delete your full profile within 90 days of your request. After an account has been deleted, certain data, such as contributions to other Users' repositories and comments in others' issues, will remain. However, we will delete or de-identify your personal data, including your username and email address, from the author field of issues, pull requests, and comments by associating them with a ghost user. That said, the email address you have provided via your Git commit settings will always be associated with your commits in the Git system. If you choose to make your email address private, you should also update your Git commit settings. We are unable to change or delete data in the Git commit history — the Git software is designed to maintain a record — but we do enable you to control what information you put in that record. @@ -214,13 +215,65 @@ We rely on different lawful bases for collecting and processing personal data ab ### Cookies and tracking technologies -GitHub uses cookies to provide, secure and improve our Service or to develop new features and functionality of our Service. For example, we use them to keep you logged in, remember your preferences, identify your device for security purposes, compile statistical reports, and provide information for future development of GitHub. We use our own cookies and do not use any third-party service providers in this context. If you disable your browser or device’s ability to accept these cookies, you will not be able to log in or use our Service. We provide more information about [cookies on GitHub](/github/site-policy/github-subprocessors-and-cookies#cookies-on-github) on our [GitHub Subprocessors and Cookies](/github/site-policy/github-subprocessors-and-cookies) page that describes the cookies we set, the needs we have for those cookies, and the expiration of such cookies. +GitHub uses cookies to provide, secure and improve our Service or to develop new features and functionality of our Service. For example, we use them to (i) keep you logged in, (ii) remember your preferences, (iii) identify your device for security and fraud purposes, including as needed to maintain the integrity of our Service, (iv) compile statistical reports, and (v) provide information and insight for future development of GitHub. We provide more information about [cookies on GitHub](https://github.com/privacy/cookies) that describes the cookies we set, the needs we have for those cookies, and the expiration of such cookies. + +For Enterprise Marketing Pages, we may also use non-essential cookies to (i) gather information about enterprise users’ interests and online activities to personalize their experiences, including by making the ads, content, recommendations, and marketing seen or received more relevant and (ii) serve and measure the effectiveness of targeted advertising and other marketing efforts. If you disable the non-essential cookies on the Enterprise Marketing Pages, the ads, content, and marketing you see may be less relevant. Our emails to users may contain a pixel tag, which is a small, clear image that can tell us whether or not you have opened an email and what your IP address is. We use this pixel tag to make our email communications more effective and to make sure we are not sending you unwanted email. -### DNT +The length of time a cookie will stay on your browser or device depends on whether it is a “persistent” or “session” cookie. Session cookies will only stay on your device until you stop browsing. Persistent cookies stay until they expire or are deleted. The expiration time or retention period applicable to persistent cookies depends on the purpose of the cookie collection and tool used. You may be able to delete cookie data as described here. + +#### What are cookies and similar technologies? + +We use cookies and similar technologies, such as web beacons, local storage, and mobile analytics, to operate and provide our Services. When visiting Enterprise Marketing Pages, like resources.github.com, these and additional cookies, like advertising IDs, may be used for sales and marketing purposes. + +Cookies are small text files stored by your browser on your device. A cookie can later be read when your browser connects to a web server in the same domain that placed the cookie. The text in a cookie contains a string of numbers and letters that may uniquely identify your device and can contain other information as well. This allows the web server to recognize your browser over time, each time it connects to that web server. + +Web beacons are electronic images (also called “single-pixel” or “clear GIFs”) that are contained within a website or email. When your browser opens a webpage or email that contains a web beacon, it automatically connects to the web server that hosts the image (typically operated by a third party). This allows that web server to log information about your device and to set and read its own cookies. In the same way, third-party content on our websites (such as embedded videos, plug-ins, or ads) results in your browser connecting to the third-party web server that hosts that content. + +Mobile identifiers for analytics can be accessed and used by apps on mobile devices in much the same way that websites access and use cookies. When visiting Enterprise Marketing pages, like resources.github.com, on a mobile device these may allow us and our third-party analytics and advertising partners to collect data for sales and marketing purposes. + +We may also use so-called “flash cookies” (also known as “Local Shared Objects” or “LSOs”) to collect and store information about your use of our Services. Flash cookies are commonly used for advertisements and videos. + +#### How do we and our partners use cookies and similar technologies? + +The GitHub Services use cookies and similar technologies for a variety of purposes, including to store your preferences and settings, enable you to sign-in, analyze how our Services perform, track your interaction with the Services, develop inferences, combat fraud, and fulfill other legitimate purposes. Some of these cookies and technologies may be provided by third parties, including service providers and advertising partners. For example, our analytics and advertising partners may use these technologies in our Services to collect personal information (such as the pages you visit, the links you click on, and similar usage information, identifiers, and device information) related to your online activities over time and across Services for various purposes, including targeted advertising. GitHub will place non-essential cookies on pages where we market products and services to enterprise customers, for example, on resources.github.com. + +We and/or our partners also share the information we collect or infer with third parties for these purposes. + +The table below provides additional information about how we use different types of cookies: + +| Purpose | Description | +|:---|:---| +| Required Cookies | GitHub uses required cookies to perform essential website functions and to provide the services. For example, cookies are used to log you in, save your language preferences, provide a shopping cart experience, improve performance, route traffic between web servers, detect the size of your screen, determine page load times, improve user experience, and for audience measurement. These cookies are necessary for our websites to work. | +| Analytics | We allow third parties to use analytics cookies to understand how you use our websites so we can make them better. For example, cookies are used to gather information about the pages you visit and how many clicks you need to accomplish a task. We also use some analytics cookies to provide personalized advertising. | +| Social Media | GitHub and third parties use social media cookies to show you ads and content based on your social media profiles and activity on GitHub’s websites. This ensures that the ads and content you see on our websites and on social media will better reflect your interests. This also enables third parties to develop and improve their products, which they may use on websites that are not owned or operated by GitHub. | +| Advertising | In addition, GitHub and third parties use advertising cookies to show you new ads based on ads you've already seen. Cookies also track which ads you click or purchases you make after clicking an ad. This is done both for payment purposes and to show you ads that are more relevant to you. For example, cookies are used to detect when you click an ad and to show you ads based on your social media interests and website browsing history. | + +#### What are your cookie choices and controls? + + You have several options to disable non-essential cookies: + + 1. **Specifically on GitHub Enterprise Marketing Pages** + + Any GitHub page that serves non-essential cookies will have a link in the page’s footer to cookie settings. You can express your preferences at any time by clicking on that linking and updating your settings. + + Some users will also be able to manage non-essential cookies via a cookie consent banner, including the options to accept, manage, and reject all non-essential cookies. + 2. **Generally for all websites** + + You can control the cookies you encounter on the web using a variety of widely-available tools. For example: + - If your browser sends a [Do Not Track](https://en.wikipedia.org/wiki/Do_Not_Track) (DNT) signal, GitHub will not set non-essential cookies and will not load third party resources which set non-essential cookies. + - Many browsers provide cookie controls which may limit the types of cookies you encounter online. Check out the documentation for your browser to learn more. + - If you enable a browser extension designed to block tracking, such as [Privacy Badger](https://en.wikipedia.org/wiki/Privacy_Badger), non-essential cookies set by a website or third parties may be disabled. + - If you enable a browser extension designed to block unwanted content, such as [uBlock Origin](https://en.wikipedia.org/wiki/UBlock_Origin), non-essential cookies will be disabled to the extent that content that sets non-essential cookies will be blocked. + - Advertising controls. Our advertising partners may participate in associations that provide simple ways to opt out of ad targeting, which you can access at: + - United States: [NAI](http://optout.networkadvertising.org) and [DAA](http://optout.aboutads.info/) + - Canada: [Digital Advertising Alliance of Canada](https://youradchoices.ca/) + - Europe: [European Digital Advertising Alliance](http://www.youronlinechoices.com/) + + These choices are specific to the browser you are using. If you access our Services from other devices or browsers, take these actions from those systems to ensure your choices apply to the data collected when you use those systems. + -"[Do Not Track](https://www.eff.org/issues/do-not-track)" (DNT) is a privacy preference you can set in your browser if you do not want online services to collect and share certain kinds of information about your online activity from third party tracking services. GitHub responds to browser DNT signals and follows the [W3C standard for responding to DNT signals](https://www.w3.org/TR/tracking-dnt/). If you would like to set your browser to signal that you would not like to be tracked, please check your browser's documentation for how to enable that signal. There are also good applications that block online tracking, such as [Privacy Badger](https://privacybadger.org/). ## Retention of personal data We retain personal data for as long as necessary to provide the services and fulfill the transactions you have requested, comply with our legal obligations, resolve disputes, enforce our agreements, and other legitimate and lawful business purposes. Because these needs can vary for different data types in the context of different services, actual retention periods can vary significantly based on criteria such as user expectations or consent, the sensitivity of the data, the availability of automated controls that enable users to delete data, and our legal or contractual obligations. For example, we may retain your personal data for longer periods, where necessary, subject to applicable law, for security purposes. @@ -244,15 +297,22 @@ GitHub processes personal data both inside and outside of the United States and ### Resolving complaints If you have concerns about the way GitHub is handling your personal data, please let us know immediately. We want to help. You may contact us by filling out the [Privacy contact form](https://support.github.com/contact/privacy). You may also email us directly at **(privacy [at] github [dot] com)** with the subject line "Privacy Concerns." We will respond promptly — within 45 days at the latest. -You may also contact our Data Protection Officer directly. +You may also contact our Data Protection Officer directly at at **github [at]dp-officer [dot] com** -| Our United States HQ | Our EU Office | -|---|---| -| GitHub Data Protection Officer | GitHub BV | -| 88 Colin P. Kelly Jr. St. | Vijzelstraat 68-72 | -| San Francisco, CA 94107 | 1017 HL Amsterdam | -| United States | The Netherlands | -| **privacy [at] github [dot] com** | **privacy [at] github [dot] com** | +**If you are in North America:**
+GitHub Data Protection Officer
+88 Colin P. Kelly Jr. St.
+San Francisco, CA 94107
+United States
+**privacy [at] github [dot] com**
+ +**If you are outside of North America:**
+Github Data Protection Officer
+c/o DP Dock DPO Services GmbH,
+Attn: GitHub BV, Gut Projensdorf,
+24161 Altenholz, Germany
+github@dp-officer.com cc: **privacy [at] github [dot] com**
+CC: GitHub BV, Vijzelstraat 68-72, 1017 HL Amsterdam, The Netherlands ### Dispute resolution process diff --git a/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md b/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md index 359529b876..fe406b940e 100644 --- a/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md +++ b/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md @@ -14,74 +14,23 @@ topics: - Legal --- -Effective date: **April 2, 2021** +Effective date: **September 1, 2022** -{% note %} - -**Note:** Changes to the list of cookies on this page are currently pending. - -{% endnote %} GitHub provides a great deal of transparency regarding how we use your data, how we collect your data, and with whom we share your data. To that end, we provide this page, which details [our subprocessors](#github-subprocessors), and how we use [cookies](#cookies-on-github). ## GitHub Subprocessors -When we share your information with third party subprocessors, such as our vendors and service providers, we remain responsible for it. We work very hard to maintain your trust when we bring on new vendors, and we require all vendors to enter into data protection agreements with us that restrict their processing of Users' Personal Information (as defined in the [Privacy Statement](/articles/github-privacy-statement/)). You can sign up to receive subprocessor list updates [here](https://www.github.com/privacy/subprocessors). +When we share your information with third party subprocessors, such as our vendors and service providers, we remain responsible for it. We work very hard to maintain your trust when we bring on new vendors, and we require all vendors to enter into data protection agreements with us that restrict their processing of Users' Personal Information (as defined in the [Privacy Statement](/articles/github-privacy-statement/)). -| Name of Subprocessor | Description of Processing | Location of Processing | Corporate Location -|:---|:---|:---|:---| -| Automattic | Blogging service | United States | United States | -| AWS Amazon | Data hosting | United States | United States | -| Braintree (PayPal) | Subscription credit card payment processor | United States | United States | -| Clearbit | Marketing data enrichment service | United States | United States | -| Discourse | Community forum software provider | United States | United States | -| Eloqua | Marketing campaign automation | United States | United States | -| Google Apps | Internal company infrastructure | United States | United States | -| MailChimp | Customer ticketing mail services provider | United States | United States | -| Mailgun | Transactional mail services provider | United States | United States | -| Microsoft | Microsoft Services | United States | United States | -| Nexmo | SMS notification provider | United States | United States | -| Salesforce.com | Customer relations management | United States | United States | -| Sentry.io | Application monitoring provider | United States | United States | -| Stripe | Payment provider | United States | United States | -| Twilio & Twilio Sendgrid | SMS notification provider & transactional mail service provider | United States | United States | -| Zendesk | Customer support ticketing system | United States | United States | -| Zuora | Corporate billing system | United States | United States | +When we bring on a new subprocessor who handles our Users' Personal Information, or remove a subprocessor, or we change how we use a subprocessor, we will update the list of subprocessors. You can view the current list of subprocessors, and sign up to receive subprocessor list updates, at [https://www.github.com/privacy/subprocessors](https://www.github.com/privacy/subprocessors). -When we bring on a new subprocessor who handles our Users' Personal Information, or remove a subprocessor, or we change how we use a subprocessor, we will update this page. If you have questions or concerns about a new subprocessor, we'd be happy to help. Please contact us via {% data variables.contact.contact_privacy %}. +If you have questions or concerns about a new subprocessor, we'd be happy to help. Please contact us via {% data variables.contact.contact_privacy %}. ## Cookies on GitHub GitHub uses cookies to provide and secure our websites, as well as to analyze the usage of our websites, in order to offer you a great user experience. Please take a look at our [Privacy Statement](/github/site-policy/github-privacy-statement#our-use-of-cookies-and-tracking) if you’d like more information about cookies, and on how and why we use them. -Since the number and names of cookies may change, the table below may be updated from time to time. - -| Service Provider | Cookie Name | Description | Expiration* | -|:---|:---|:---|:---| -| GitHub | `app_manifest_token` | This cookie is used during the App Manifest flow to maintain the state of the flow during the redirect to fetch a user session. | five minutes | -| GitHub | `color_mode` | This cookie is used to indicate the user selected theme preference. | session | -| GitHub | `_device_id` | This cookie is used to track recognized devices for security purposes. | one year | -| GitHub | `dotcom_user` | This cookie is used to signal to us that the user is already logged in. | one year | -| GitHub | `_gh_ent` | This cookie is used for temporary application and framework state between pages like what step the customer is on in a multiple step form. | two weeks | -| GitHub | `_gh_sess` | This cookie is used for temporary application and framework state between pages like what step the user is on in a multiple step form. | session | -| GitHub | `gist_oauth_csrf` | This cookie is set by Gist to ensure the user that started the oauth flow is the same user that completes it. | deleted when oauth state is validated | -| GitHub | `gist_user_session` | This cookie is used by Gist when running on a separate host. | two weeks | -| GitHub | `has_recent_activity` | This cookie is used to prevent showing the security interstitial to users that have visited the app recently. | one hour | -| GitHub | `__Host-gist_user_session_same_site` | This cookie is set to ensure that browsers that support SameSite cookies can check to see if a request originates from GitHub. | two weeks | -| GitHub | `__Host-user_session_same_site` | This cookie is set to ensure that browsers that support SameSite cookies can check to see if a request originates from GitHub. | two weeks | -| GitHub | `logged_in` | This cookie is used to signal to us that the user is already logged in. | one year | -| GitHub | `marketplace_repository_ids` | This cookie is used for the marketplace installation flow. | one hour | -| GitHub | `marketplace_suggested_target_id` | This cookie is used for the marketplace installation flow. | one hour | -| GitHub | `_octo` | This cookie is used for session management including caching of dynamic content, conditional feature access, support request metadata, and first party analytics. | one year | -| GitHub | `org_transform_notice` | This cookie is used to provide notice during organization transforms. | one hour | -| GitHub | `private_mode_user_session` | This cookie is used for Enterprise authentication requests. | two weeks | -| GitHub | `saml_csrf_token` | This cookie is set by SAML auth path method to associate a token with the client. | until user closes browser or completes authentication request | -| GitHub | `saml_csrf_token_legacy` | This cookie is set by SAML auth path method to associate a token with the client. | until user closes browser or completes authentication request | -| GitHub | `saml_return_to` | This cookie is set by the SAML auth path method to maintain state during the SAML authentication loop. | until user closes browser or completes authentication request | -| GitHub | `saml_return_to_legacy` | This cookie is set by the SAML auth path method to maintain state during the SAML authentication loop. | until user closes browser or completes authentication request | -| GitHub | `tz` | This cookie allows us to customize timestamps to your time zone. | session | -| GitHub | `user_session` | This cookie is used to log you in. | two weeks | - -_*_ The **expiration** dates for the cookies listed below generally apply on a rolling basis. +You can view the current list of cookies on GitHub, and sign up to receive cookie list updates, at [https://github.com/privacy/cookies](https://github.com/privacy/cookies). (!) Please note while we limit our use of third party cookies to those necessary to provide external functionality when rendering external content, certain pages on our website may set other third party cookies. For example, we may embed content, such as videos, from another site that sets a cookie. While we try to minimize these third party cookies, we can’t always control what cookies this third party content sets. 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 dabf0fcdcb..bb966aba1b 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 @@ -25,7 +25,7 @@ shortTitle: Sponsor a contributor You can sponsor an account on behalf of your personal account to invest in projects that you personally benefit from. You can sponsor an account on behalf of your organization for many reasons. - Sustaining specific libraries that your organization's work depends on -- Investing in the ecosystem you rely on as a organization (such as blockchain) +- Investing in the ecosystem you rely on as an organization (such as blockchain) - Developing brand awareness as an organization that values open source - Thanking open source developers for building libraries that complement the product your organization offers diff --git a/contributing/content-style-guide.md b/contributing/content-style-guide.md index 72c51cb965..c50374f2b8 100644 --- a/contributing/content-style-guide.md +++ b/contributing/content-style-guide.md @@ -93,6 +93,15 @@ schedule: - cron: "40 19 * * *" ``` +### File and directory names + +Use inline codeblocks to refer to file and directory names. If a file type generally follows a specific capitalization convention, such as all caps for README files, use the established convention. + +- **Use:** In your `README.md` file, add info about your repository. +- **Use:** In your `.github/workflows/` directory, create the `example-workflow.yml` file. +- **Avoid:** In your _.github/workflows/_ directory, create the `example-workflow.yml` file. +- **Avoid:** Delete the **example.js** file. + ### Indentation In YAML examples, such as actions and workflow files, use two spaces to indent lines within nested lists and block sequences. @@ -500,29 +509,11 @@ Format checkbox names in bold and omit the word “checkbox.” To describe choo - **Use:** Select **Enable for all new repositories**. - **Avoid:** Check the “Enable for all new repositories” checkbox. -### Directory names - -Use sentence style capitalization. You can use internal capital letters in directory and folder names for readability. Format directory names in bold if you direct someone to select, type, or otherwise interact with the name. - -- **Use:** In your .github/workflows directory, create a new file. -- **Use:** Select your **.github/workflows** directory. -- **Avoid:** In your *.github/workflows* directory, select the workflow you wish to edit. -- **Avoid:** In your `.github/workflows` directory, select the workflow you wish to edit. - ### Dynamic text Use capital letters to indicate text that changes in the user interface or that the user needs to supply in a command or code snippet. - **Use:** Click **Add USERNAME to REPONAME**. -### File names - -Use title style capitalization. If a file type generally follows a different capitalization convention, such as all caps for README files, use the established convention. You can use internal capital letters in file names for readability. Format file names in bold if you direct someone to select, type, or otherwise interact with the name. - -- **Use:** In your README.md file, add info about your repository. -- **Use:** Enter **MyWorkflow.yml**. -- **Avoid:** In your *README.md* file, add info about your repository. -- **Avoid:** In your `README.md` file, add info about your repository. - ### Lists and list items Format lists and clickable list items in bold. To describe interacting with a list, such as a dropdown menu or UI element that expands, regardless of whether the list name is a word or an octicon, write "select." To describe choosing a list item, write "click." diff --git a/data/features/actions-hosted-runners.yml b/data/features/actions-hosted-runners.yml new file mode 100644 index 0000000000..d7b08dee74 --- /dev/null +++ b/data/features/actions-hosted-runners.yml @@ -0,0 +1,5 @@ +# Reference: #6458 +# Larger GitHub-hosted runners +versions: + fpt: '*' + ghec: '*' diff --git a/data/features/audit-log-sso-response-events.yml b/data/features/audit-log-sso-response-events.yml new file mode 100644 index 0000000000..53f67d03b1 --- /dev/null +++ b/data/features/audit-log-sso-response-events.yml @@ -0,0 +1,6 @@ +# Documentation for adding business.sso_response and org.sso_repsonse + +versions: + ghec: '*' + ghes: '>=3.8' + ghae: 'issue-7939' diff --git a/data/features/code-scanning-exclude-queries-from-analysis.yml b/data/features/code-scanning-exclude-queries-from-analysis.yml new file mode 100644 index 0000000000..ee8634cf6b --- /dev/null +++ b/data/features/code-scanning-exclude-queries-from-analysis.yml @@ -0,0 +1,7 @@ +# Issue 7617 +# Users can easily exclude CodeQL queries from code scanning analyses - [GA] +versions: + fpt: '*' + ghec: '*' + ghes: '>3.6' + ghae: 'issue-7617' diff --git a/data/features/dependency-review-action-ghes.yml b/data/features/dependency-review-action-ghes.yml new file mode 100644 index 0000000000..5ce8fa024a --- /dev/null +++ b/data/features/dependency-review-action-ghes.yml @@ -0,0 +1,4 @@ +# Reference: Issue #7753 Dependency review action has shipped with GHES 3.6 and needs admin docs +versions: + ghes: '>3.5' + ghae: 'issue-7753' diff --git a/data/features/link-existing-branches-to-issue.yml b/data/features/link-existing-branches-to-issue.yml new file mode 100644 index 0000000000..de795b6c6f --- /dev/null +++ b/data/features/link-existing-branches-to-issue.yml @@ -0,0 +1,7 @@ +# Reference: #7945 +# Documentation for linking existing branches to issue +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7945' diff --git a/data/features/packages-npm-v2.yml b/data/features/packages-npm-v2.yml new file mode 100644 index 0000000000..aaebb7fbfc --- /dev/null +++ b/data/features/packages-npm-v2.yml @@ -0,0 +1,5 @@ +# Issue 7039 +# npm Package Registry Improvements (v2) GA +versions: + fpt: '*' + ghec: '*' diff --git a/data/features/project-visibility-policy.yml b/data/features/project-visibility-policy.yml new file mode 100644 index 0000000000..53f311f1e1 --- /dev/null +++ b/data/features/project-visibility-policy.yml @@ -0,0 +1,4 @@ +# Issue 7923 +# Project visibility change permission policy +versions: + ghec: '*' diff --git a/data/features/streaming-datadog.yml b/data/features/streaming-datadog.yml new file mode 100644 index 0000000000..9c099525c1 --- /dev/null +++ b/data/features/streaming-datadog.yml @@ -0,0 +1,4 @@ +# Reference #7495 +# Documentation for audit log streaming to a Datadog endpoint +versions: + ghec: '*' diff --git a/data/graphql/ghae/schema.docs-ghae.graphql b/data/graphql/ghae/schema.docs-ghae.graphql index 459ca75db2..21eb506999 100644 --- a/data/graphql/ghae/schema.docs-ghae.graphql +++ b/data/graphql/ghae/schema.docs-ghae.graphql @@ -16035,6 +16035,41 @@ type MergeBranchPayload { mergeCommit: Commit } +""" +The possible default commit messages for merges. +""" +enum MergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the pull request's body. + """ + PR_BODY + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +The possible default commit titles for merges. +""" +enum MergeCommitTitle { + """ + Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). + """ + MERGE_MESSAGE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + """ Autogenerated input type of MergePullRequest """ @@ -16291,20 +16326,10 @@ enum MigrationSourceType { """ BITBUCKET_SERVER - """ - A GitHub migration source. - """ - GITHUB - """ A GitHub Migration API source. """ GITHUB_ARCHIVE - - """ - A GitLab migration source. - """ - GITLAB } """ @@ -32467,6 +32492,16 @@ type Repository implements Node & ProjectOwner & RepositoryInfo & Starrable & Su """ mergeCommitAllowed: Boolean! + """ + How the default commit message will be generated when merging a pull request. + """ + mergeCommitMessage: MergeCommitMessage! + + """ + How the default commit title will be generated when merging a pull request. + """ + mergeCommitTitle: MergeCommitTitle! + """ Returns a single milestone from the current repository by number. """ @@ -32898,6 +32933,16 @@ type Repository implements Node & ProjectOwner & RepositoryInfo & Starrable & Su """ squashMergeAllowed: Boolean! + """ + How the default commit message will be generated when squash merging a pull request. + """ + squashMergeCommitMessage: SquashMergeCommitMessage! + + """ + How the default commit title will be generated when squash merging a pull request. + """ + squashMergeCommitTitle: SquashMergeCommitTitle! + """ Whether a squash merge commit can use the pull request title as default. """ @@ -35838,6 +35883,41 @@ type SmimeSignature implements GitSignature { wasSignedByGitHub: Boolean! } +""" +The possible default commit messages for squash merges. +""" +enum SquashMergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the branch's commit messages. + """ + COMMIT_MESSAGES + + """ + Default to the pull request's body. + """ + PR_BODY +} + +""" +The possible default commit titles for squash merges. +""" +enum SquashMergeCommitTitle { + """ + Default to the commit's title (if only one commit) or the pull request's title (when more than one commit). + """ + COMMIT_OR_PR_TITLE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + """ Ways in which star connections can be ordered. """ diff --git a/data/graphql/ghec/schema.docs.graphql b/data/graphql/ghec/schema.docs.graphql index 6eb65ea54e..240e5bea5b 100644 --- a/data/graphql/ghec/schema.docs.graphql +++ b/data/graphql/ghec/schema.docs.graphql @@ -18295,6 +18295,41 @@ type MergeBranchPayload { mergeCommit: Commit } +""" +The possible default commit messages for merges. +""" +enum MergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the pull request's body. + """ + PR_BODY + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +The possible default commit titles for merges. +""" +enum MergeCommitTitle { + """ + Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). + """ + MERGE_MESSAGE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + """ Autogenerated input type of MergePullRequest """ @@ -18551,20 +18586,10 @@ enum MigrationSourceType { """ BITBUCKET_SERVER - """ - A GitHub migration source. - """ - GITHUB - """ A GitHub Migration API source. """ GITHUB_ARCHIVE - - """ - A GitLab migration source. - """ - GITLAB } """ @@ -39715,6 +39740,16 @@ type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent """ mergeCommitAllowed: Boolean! + """ + How the default commit message will be generated when merging a pull request. + """ + mergeCommitMessage: MergeCommitMessage! + + """ + How the default commit title will be generated when merging a pull request. + """ + mergeCommitTitle: MergeCommitTitle! + """ Returns a single milestone from the current repository by number. """ @@ -40312,6 +40347,16 @@ type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent """ squashMergeAllowed: Boolean! + """ + How the default commit message will be generated when squash merging a pull request. + """ + squashMergeCommitMessage: SquashMergeCommitMessage! + + """ + How the default commit title will be generated when squash merging a pull request. + """ + squashMergeCommitTitle: SquashMergeCommitTitle! + """ Whether a squash merge commit can use the pull request title as default. """ @@ -44802,6 +44847,41 @@ enum SponsorshipPrivacy { PUBLIC } +""" +The possible default commit messages for squash merges. +""" +enum SquashMergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the branch's commit messages. + """ + COMMIT_MESSAGES + + """ + Default to the pull request's body. + """ + PR_BODY +} + +""" +The possible default commit titles for squash merges. +""" +enum SquashMergeCommitTitle { + """ + Default to the commit's title (if only one commit) or the pull request's title (when more than one commit). + """ + COMMIT_OR_PR_TITLE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + """ Ways in which star connections can be ordered. """ diff --git a/data/graphql/schema.docs.graphql b/data/graphql/schema.docs.graphql index 6eb65ea54e..240e5bea5b 100644 --- a/data/graphql/schema.docs.graphql +++ b/data/graphql/schema.docs.graphql @@ -18295,6 +18295,41 @@ type MergeBranchPayload { mergeCommit: Commit } +""" +The possible default commit messages for merges. +""" +enum MergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the pull request's body. + """ + PR_BODY + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +The possible default commit titles for merges. +""" +enum MergeCommitTitle { + """ + Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). + """ + MERGE_MESSAGE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + """ Autogenerated input type of MergePullRequest """ @@ -18551,20 +18586,10 @@ enum MigrationSourceType { """ BITBUCKET_SERVER - """ - A GitHub migration source. - """ - GITHUB - """ A GitHub Migration API source. """ GITHUB_ARCHIVE - - """ - A GitLab migration source. - """ - GITLAB } """ @@ -39715,6 +39740,16 @@ type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent """ mergeCommitAllowed: Boolean! + """ + How the default commit message will be generated when merging a pull request. + """ + mergeCommitMessage: MergeCommitMessage! + + """ + How the default commit title will be generated when merging a pull request. + """ + mergeCommitTitle: MergeCommitTitle! + """ Returns a single milestone from the current repository by number. """ @@ -40312,6 +40347,16 @@ type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent """ squashMergeAllowed: Boolean! + """ + How the default commit message will be generated when squash merging a pull request. + """ + squashMergeCommitMessage: SquashMergeCommitMessage! + + """ + How the default commit title will be generated when squash merging a pull request. + """ + squashMergeCommitTitle: SquashMergeCommitTitle! + """ Whether a squash merge commit can use the pull request title as default. """ @@ -44802,6 +44847,41 @@ enum SponsorshipPrivacy { PUBLIC } +""" +The possible default commit messages for squash merges. +""" +enum SquashMergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the branch's commit messages. + """ + COMMIT_MESSAGES + + """ + Default to the pull request's body. + """ + PR_BODY +} + +""" +The possible default commit titles for squash merges. +""" +enum SquashMergeCommitTitle { + """ + Default to the commit's title (if only one commit) or the pull request's title (when more than one commit). + """ + COMMIT_OR_PR_TITLE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + """ Ways in which star connections can be ordered. """ diff --git a/data/learning-tracks/admin.yml b/data/learning-tracks/admin.yml index a7aa266e92..23816673a1 100644 --- a/data/learning-tracks/admin.yml +++ b/data/learning-tracks/admin.yml @@ -120,6 +120,7 @@ configure_github_advanced_security: - /admin/advanced-security/about-licensing-for-github-advanced-security - /admin/advanced-security/enabling-github-advanced-security-for-your-enterprise - /admin/advanced-security/configuring-code-scanning-for-your-appliance + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance - /admin/advanced-security/configuring-secret-scanning-for-your-appliance - /admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise diff --git a/data/release-notes/enterprise-server/3-2/18.yml b/data/release-notes/enterprise-server/3-2/18.yml new file mode 100644 index 0000000000..818d03df01 --- /dev/null +++ b/data/release-notes/enterprise-server/3-2/18.yml @@ -0,0 +1,16 @@ +date: '2022-08-30' +sections: + bugs: + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + known_issues: + - On a freshly set up {% data variables.product.prodname_ghe_server %} instance without any users, an attacker could create the first admin user. + - Custom firewall rules are removed during the upgrade process. + - Git LFS tracked files [uploaded through the web interface](https://github.com/blog/2105-upload-files-to-your-repositories) are incorrectly added directly to the repository. + - Issues cannot be closed if they contain a permalink to a blob in the same repository, where the blob's file path is longer than 255 characters. + - When "Users can search GitHub.com" is enabled with {% data variables.product.prodname_github_connect %}, issues in private and internal repositories are not included in {% data variables.product.prodname_dotcom_the_website %} search results. + - The {% data variables.product.prodname_registry %} npm registry no longer returns a time value in metadata responses. This was done to allow for substantial performance improvements. We continue to have all the data necessary to return a time value as part of the metadata response and will resume returning this value in the future once we have solved the existing performance issues. + - Resource limits that are specific to processing pre-receive hooks may cause some pre-receive hooks to fail. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/data/release-notes/enterprise-server/3-3/13.yml b/data/release-notes/enterprise-server/3-3/13.yml new file mode 100644 index 0000000000..7072e70f12 --- /dev/null +++ b/data/release-notes/enterprise-server/3-3/13.yml @@ -0,0 +1,23 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)." + known_issues: + - After upgrading to {% data variables.product.prodname_ghe_server %} 3.3, {% data variables.product.prodname_actions %} may fail to start automatically. To resolve this issue, connect to the appliance via SSH and run the `ghe-actions-start` command. + - On a freshly set up {% data variables.product.prodname_ghe_server %} instance without any users, an attacker could create the first admin user. + - Custom firewall rules are removed during the upgrade process. + - Git LFS tracked files [uploaded through the web interface](https://github.com/blog/2105-upload-files-to-your-repositories) are incorrectly added directly to the repository. + - Issues cannot be closed if they contain a permalink to a blob in the same repository, where the blob's file path is longer than 255 characters. + - When "Users can search GitHub.com" is enabled with {% data variables.product.prodname_github_connect %}, issues in private and internal repositories are not included in {% data variables.product.prodname_dotcom_the_website %} search results. + - The {% data variables.product.prodname_registry %} npm registry no longer returns a time value in metadata responses. This was done to allow for substantial performance improvements. We continue to have all the data necessary to return a time value as part of the metadata response and will resume returning this value in the future once we have solved the existing performance issues. + - Resource limits that are specific to processing pre-receive hooks may cause some pre-receive hooks to fail. + - '{% data variables.product.prodname_actions %} storage settings cannot be validated and saved in the {% data variables.enterprise.management_console %} when "Force Path Style" is selected, and must instead be configured with the `ghe-actions-precheck` command line utility.' + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/data/release-notes/enterprise-server/3-4/8.yml b/data/release-notes/enterprise-server/3-4/8.yml new file mode 100644 index 0000000000..6353897f97 --- /dev/null +++ b/data/release-notes/enterprise-server/3-4/8.yml @@ -0,0 +1,26 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)." + known_issues: + - On a freshly set up {% data variables.product.prodname_ghe_server %} instance without any users, an attacker could create the first admin user. + - Custom firewall rules are removed during the upgrade process. + - Git LFS tracked files [uploaded through the web interface](https://github.com/blog/2105-upload-files-to-your-repositories) are incorrectly added directly to the repository. + - Issues cannot be closed if they contain a permalink to a blob in the same repository, where the blob's file path is longer than 255 characters. + - When "Users can search GitHub.com" is enabled with {% data variables.product.prodname_github_connect %}, issues in private and internal repositories are not included in {% data variables.product.prodname_dotcom_the_website %} search results. + - The {% data variables.product.prodname_registry %} npm registry no longer returns a time value in metadata responses. This was done to allow for substantial performance improvements. We continue to have all the data necessary to return a time value as part of the metadata response and will resume returning this value in the future once we have solved the existing performance issues. + - Resource limits that are specific to processing pre-receive hooks may cause some pre-receive hooks to fail. + - | + After registering a self-hosted runner with the `--ephemeral` parameter on more than one level (for example, both enterprise and organization), the runner may get stuck in an idle state and require re-registration. [Updated: 2022-06-17] + - After upgrading to {% data variables.product.prodname_ghe_server %} 3.4, releases may appear to be missing from repositories. This can occur when the required Elasticsearch index migrations have not successfully completed. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/data/release-notes/enterprise-server/3-5/5.yml b/data/release-notes/enterprise-server/3-5/5.yml new file mode 100644 index 0000000000..1864d8e999 --- /dev/null +++ b/data/release-notes/enterprise-server/3-5/5.yml @@ -0,0 +1,27 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - The site admin bar at the top of the web interface contained a broken link to the SHA for the currently running version of the application. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + - Alerts from secret scanning for GitHub Advanced Security customers were missing in the web UI and REST API if a site administrator did not upgrade directly to GitHub Enterprise Server 3.4. The alerts are now visible. + - When a user forked a repository into an organization, a long list of organizations would not render properly. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)." + - In some cases, cache replicas could reject some Git operations on recently updated repositories. For more information about repository caching, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + known_issues: + - On a freshly set up {% data variables.product.prodname_ghe_server %} instance without any users, an attacker could create the first admin user. + - Custom firewall rules are removed during the upgrade process. + - Git LFS tracked files [uploaded through the web interface](https://github.com/blog/2105-upload-files-to-your-repositories) are incorrectly added directly to the repository. + - Issues cannot be closed if they contain a permalink to a blob in the same repository, where the blob's file path is longer than 255 characters. + - When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results. + - The {% data variables.product.prodname_registry %} npm registry no longer returns a time value in metadata responses. This was done to allow for substantial performance improvements. We continue to have all the data necessary to return a time value as part of the metadata response and will resume returning this value in the future once we have solved the existing performance issues. + - Resource limits that are specific to processing pre-receive hooks may cause some pre-receive hooks to fail. + - Actions services need to be restarted after restoring an appliance from a backup taken on a different host. diff --git a/data/release-notes/enterprise-server/3-6/0.yml b/data/release-notes/enterprise-server/3-6/0.yml index 4ca434c041..5b99481bd5 100644 --- a/data/release-notes/enterprise-server/3-6/0.yml +++ b/data/release-notes/enterprise-server/3-6/0.yml @@ -28,7 +28,9 @@ sections: # https://github.com/github/releases/issues/2341 - | - You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications)." + You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications#enforcing-tls-for-smtp-connections)." + + - **Note**: This feature is unavailable in GitHub Enterprise Server 3.6.0. The feature will be available in an upcoming release. [Updated: 2022-08-26] - heading: Audit logs notes: @@ -294,3 +296,4 @@ sections: - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. - In some cases, users cannot convert existing issues to discussions. - Custom patterns for secret scanning have `.*` as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the `.*` delimiter. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/data/release-notes/enterprise-server/3-6/1.yml b/data/release-notes/enterprise-server/3-6/1.yml new file mode 100644 index 0000000000..f31b9cb734 --- /dev/null +++ b/data/release-notes/enterprise-server/3-6/1.yml @@ -0,0 +1,33 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + - The site admin bar at the top of the web interface contained a broken link to the SHA for the currently running version of the application. + - Organization owners were unable to set the level of access required to create discussions. + - Discussions users were incorrectly directed to the community guidelines for GitHub.com. + - In some cases, users were incorrectly instructed to verify their email before creating a discussion. + - Alerts from secret scanning for GitHub Advanced Security customers were missing in the web UI and REST API if a site administrator did not upgrade directly to GitHub Enterprise Server 3.4. The alerts are now visible. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)." + - In some cases, cache replicas could reject some Git operations on recently updated repositories. For more information about repository caching, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + - You can now configure the global announcement banner to be dismissable using the REST API. For more information, see "[Customizing user messages for your enterprise](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)." + known_issues: + - On a freshly set up {% data variables.product.prodname_ghe_server %} instance without any users, an attacker could create the first admin user. + - Custom firewall rules are removed during the upgrade process. + - Git LFS tracked files [uploaded through the web interface](https://github.com/blog/2105-upload-files-to-your-repositories) are incorrectly added directly to the repository. + - Issues cannot be closed if they contain a permalink to a blob in the same repository, where the blob's file path is longer than 255 characters. + - When "Users can search GitHub.com" is enabled with GitHub Connect, issues in private and internal repositories are not included in GitHub.com search results. + - The {% data variables.product.prodname_registry %} npm registry no longer returns a time value in metadata responses. This was done to allow for substantial performance improvements. We continue to have all the data necessary to return a time value as part of the metadata response and will resume returning this value in the future once we have solved the existing performance issues. + - Resource limits that are specific to processing pre-receive hooks may cause some pre-receive hooks to fail. + - Actions services need to be restarted after restoring an instance from a backup taken on a different host. + - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. + - In some cases, users cannot convert existing issues to discussions. + - Custom patterns for secret scanning have `.*` as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the `.*` delimiter. diff --git a/data/reusables/actions/about-runner-groups.md b/data/reusables/actions/about-runner-groups.md new file mode 100644 index 0000000000..a2d79bdc09 --- /dev/null +++ b/data/reusables/actions/about-runner-groups.md @@ -0,0 +1,18 @@ +{% ifversion fpt %} +{% note %} + +**Note:** All organizations have a single default runner group. Only enterprise accounts and organizations owned by enterprise accounts can create and manage additional runner groups. + +{% endnote %} + +Runner groups are used to control access to runners. Organization admins can configure access policies that control which repositories in an organization have access to the runner group. + +If you use {% data variables.product.prodname_ghe_cloud %}, you can create additional runner groups; enterprise admins can configure access policies that control which organizations in an enterprise have access to the runner group; and organization admins can assign additional granular repository access policies to the enterprise runner group. +{% endif -%} +{% ifversion ghec or ghes or ghae %} + +{% data reusables.actions.runner-group-enterprise-overview %} + +When new runners are created, they are automatically assigned to the default group. Runners can only be in one group at a time. You can move runners from the default group to another group. For more information, see "[Moving a runner to a group](#moving-a-runner-to-a-group)." + +{% endif %} \ No newline at end of file diff --git a/data/reusables/actions/actions-billing.md b/data/reusables/actions/actions-billing.md index 249d4b339a..453bd9ef77 100644 --- a/data/reusables/actions/actions-billing.md +++ b/data/reusables/actions/actions-billing.md @@ -1 +1 @@ -{% data variables.product.prodname_actions %} usage is free for both public repositories and self-hosted runners. For private repositories, each {% data variables.product.prodname_dotcom %} account receives a certain amount of free minutes and storage, depending on the product used with the account. Any usage beyond the included amounts is controlled by spending limits. +{% data variables.product.prodname_actions %} usage is free for standard {% data variables.product.prodname_dotcom %}-hosted runners in public repositories, and for self-hosted runners. For private repositories, each {% data variables.product.prodname_dotcom %} account receives a certain amount of free minutes and storage for use with {% data variables.product.prodname_dotcom %}-hosted runners, depending on the product used with the account. Any usage beyond the included amounts is controlled by spending limits. diff --git a/data/reusables/actions/add-hosted-runner-overview.md b/data/reusables/actions/add-hosted-runner-overview.md new file mode 100644 index 0000000000..bdd66230ca --- /dev/null +++ b/data/reusables/actions/add-hosted-runner-overview.md @@ -0,0 +1,3 @@ +You can choose an operating system and a hardware configuration from the list of available options. When new instances of this runner are deployed through autoscaling, they'll use the same operating system and hardware configuration you've defined here. + +You can also define the labels that identify the runner, which is how your workflows will be able to send jobs to the runners for processing (using `runs-on`). New runners are automatically assigned to the default group, or you can choose which group the runners must join during the runner creation process. In addition, you can modify the runner's group membership after you've registered the runner. For more information, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." \ No newline at end of file diff --git a/data/reusables/actions/add-hosted-runner.md b/data/reusables/actions/add-hosted-runner.md new file mode 100644 index 0000000000..d533864a2e --- /dev/null +++ b/data/reusables/actions/add-hosted-runner.md @@ -0,0 +1,11 @@ +1. Click **New runner**, then click **{% octicon "mark-github" aria-label="New hosted runner" %} New Github-hosted runner**. +1. Complete the required details to configure your new runner: + + - **Name**: Enter a name for your new runner. For easier identification, this should indicate its hardware and operating configuration, such as `ubuntu-20.04-16core`. + - **Runner image**: Choose an operating system from the available options. Once you've selected an operating system, you will be able to choose a specific version. + - **Runner size**: Choose a hardware configuration from the drop-down list of available options. + - **Auto-scaling**: Choose the maximum number of runners that can be active at any time. + - **Runner group**: Choose the group that your runner will be a member of. This group will host multiple instances of your runner, as they scale up and down to suit demand. + - **Networking**: Only for {% data variables.product.prodname_ghe_cloud %}: Choose whether a static IP address range will be assigned to instances of the {% data variables.actions.hosted_runner %}. You can use up to 10 static IP addresses in total. + +1. Click **Create runner**. \ No newline at end of file diff --git a/data/reusables/actions/automatically-adding-a-runner-to-a-group.md b/data/reusables/actions/automatically-adding-a-runner-to-a-group.md new file mode 100644 index 0000000000..c76b2a5efc --- /dev/null +++ b/data/reusables/actions/automatically-adding-a-runner-to-a-group.md @@ -0,0 +1,11 @@ +You can use the configuration script to automatically add a new runner to a group. For example, this command registers a new runner and uses the `--runnergroup` parameter to add it to a group named `rg-runnergroup`. + +```sh +./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup +``` + +The command will fail if the runner group doesn't exist: + +``` +Could not find any self-hosted runner group named "rg-runnergroup". +``` \ No newline at end of file diff --git a/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md b/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md new file mode 100644 index 0000000000..f0234d5b88 --- /dev/null +++ b/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md @@ -0,0 +1,38 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +For runner groups in an enterprise, you can change what organizations in the enterprise can access a runner group{% ifversion restrict-groups-to-workflows %} or restrict what workflows a runner group can run{% endif %}. For runner groups in an organization, you can change what repositories in the organization can access a runner group{% ifversion restrict-groups-to-workflows %} or restrict what workflows a runner group can run{% endif %}. + +### Changing what organizations or repositories can access a runner group + +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. For runner groups in an enterprise, under **Organization access**, modify what organizations can access the runner group. For runner groups in an organization, under **Repository access**, modify what repositories can access the runner group. + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group-access %} +{% endif %} + +{% ifversion restrict-groups-to-workflows %} +### Changing what workflows can access a runner group +You can configure a runner group to run either selected workflows or all workflows. For example, you might use this setting to protect secrets that are stored on runners or to standardize deployment workflows by restricting a runner group to run only a specific reusable workflow. This setting cannot be overridden if you are configuring an organization's runner group that was shared by an enterprise. +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Under **Workflow access**, select the dropdown menu and click **Selected workflows**. +1. Click {% octicon "gear" aria-label="the gear icon" %}. +1. Enter a comma separated list of the workflows that can access the runner group. Use the full path, including the repository name and owner. Pin the workflow to a branch, tag, or full SHA. For example: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`. + + Only jobs directly defined within the selected workflows will have access to the runner group. + + Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group. + +1. Click **Save**. + +{% endif %} \ No newline at end of file diff --git a/data/reusables/actions/changing-the-name-of-a-runner-group.md b/data/reusables/actions/changing-the-name-of-a-runner-group.md new file mode 100644 index 0000000000..0c97c37769 --- /dev/null +++ b/data/reusables/actions/changing-the-name-of-a-runner-group.md @@ -0,0 +1,9 @@ +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Change the runner group name. + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group %} +1. Change the runner group name. +{% endif %} \ No newline at end of file diff --git a/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md b/data/reusables/actions/configure-runner-group-access.md similarity index 84% rename from data/reusables/actions/self-hosted-runner-configure-runner-group-access.md rename to data/reusables/actions/configure-runner-group-access.md index 98b6a96c01..42999d8e42 100644 --- a/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md +++ b/data/reusables/actions/configure-runner-group-access.md @@ -1,4 +1,4 @@ -{% data reusables.actions.self-hosted-runner-configure-runner-group %} +{% data reusables.actions.configure-runner-group %} 1. Modify your policy options. {% ifversion not ghae %} diff --git a/data/reusables/actions/self-hosted-runner-configure-runner-group.md b/data/reusables/actions/configure-runner-group.md similarity index 100% rename from data/reusables/actions/self-hosted-runner-configure-runner-group.md rename to data/reusables/actions/configure-runner-group.md diff --git a/data/reusables/actions/self-hosted-runner-create-group.md b/data/reusables/actions/create-runner-group.md similarity index 100% rename from data/reusables/actions/self-hosted-runner-create-group.md rename to data/reusables/actions/create-runner-group.md diff --git a/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md b/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md new file mode 100644 index 0000000000..e1c66d708e --- /dev/null +++ b/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md @@ -0,0 +1,28 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +Enterprises can add their runners to groups for access management. Enterprises can create groups of runners that are accessible to specific organizations in the enterprise account{% ifversion restrict-groups-to-workflows %} or to specific workflows{% endif %}. Organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} or workflow{% endif %} access policies to the enterprise runner groups. For information about how to create a runner group with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runner-groups). + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. You can assign the runner to a specific group during the registration process, or you can later move the runner from the default group to a custom group. + +When creating a group, you must choose a policy that defines which organizations have access to the runner group. + +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} +1. To choose a policy for organization access, select the **Organization access** drop-down, and click a policy. You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise.{% ifversion ghes %} By default, only private repositories can access runners in a runner group, but you can override this.{% endif %} + + {%- ifversion ghec or ghes %} + + ![Add runner group options](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) + {%- elsif ghae %} + + ![Add runner group options](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) + {%- endif %} +{% data reusables.actions.runner-group-assign-policy-workflow %} +1. Click **Save group** to create the group and apply the policy. + diff --git a/data/reusables/actions/creating-a-runner-group-for-an-organization.md b/data/reusables/actions/creating-a-runner-group-for-an-organization.md new file mode 100644 index 0000000000..91fa89d195 --- /dev/null +++ b/data/reusables/actions/creating-a-runner-group-for-an-organization.md @@ -0,0 +1,38 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +All organizations have a single default runner group. Organizations within an enterprise account can create additional groups. Organization admins can allow individual repositories access to a runner group. For information about how to create a runner group with the REST API, see "[Self-hosted runner groups](/rest/reference/actions#self-hosted-runner-groups)." + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. You can move a runner from the default group to any group you create. + +When creating a group, you must choose a policy that defines which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} have access to the runner group. + +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. In the "Runner groups" section, click **New runner group**. +1. Enter a name for your runner group. + {% data reusables.actions.runner-group-assign-policy-repo %} +{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group.{% endif %} +{% data reusables.actions.create-runner-group %} +{% elsif ghae or ghes < 3.4 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. Under {% ifversion ghes or ghae %}"Runners"{% endif %}, click **Add new**, and then **New group**. + + ![Add runner group](/assets/images/help/settings/actions-org-add-runner-group.png) +1. Enter a name for your runner group, and assign a policy for repository access. + + You can configure a runner group to be accessible to a specific list of repositories, or to all repositories in the organization.{% ifversion ghec or ghes %} 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.{% endif %} + + ![Add runner group options](/assets/images/help/settings/actions-org-add-runner-group-options.png) +1. Click **Save group** to create the group and apply the policy. +{% endif %} \ No newline at end of file diff --git a/data/reusables/actions/hosted-runner-security-admonition.md b/data/reusables/actions/hosted-runner-security-admonition.md new file mode 100644 index 0000000000..8c33797d55 --- /dev/null +++ b/data/reusables/actions/hosted-runner-security-admonition.md @@ -0,0 +1,5 @@ +{% warning %} + +**Warning**: {% data reusables.actions.hosted-runner-security %} + +{% endwarning %} \ No newline at end of file diff --git a/data/reusables/actions/hosted-runner-security.md b/data/reusables/actions/hosted-runner-security.md new file mode 100644 index 0000000000..ed12d189db --- /dev/null +++ b/data/reusables/actions/hosted-runner-security.md @@ -0,0 +1,3 @@ +We recommend that you only use {% data variables.actions.hosted_runner %}s with private repositories: +- Forks of your repository can potentially run dangerous code on your {% data variables.actions.hosted_runner %} by creating a pull request that executes the code in a workflow. +- You could incur unexpected costs if you allow forked repositories to run jobs on your {% data variables.actions.hosted_runner %}s. \ No newline at end of file diff --git a/data/reusables/actions/jobs/section-running-jobs-in-a-container.md b/data/reusables/actions/jobs/section-running-jobs-in-a-container.md index 7c9ff2e3fa..fc6f5e5404 100644 --- a/data/reusables/actions/jobs/section-running-jobs-in-a-container.md +++ b/data/reusables/actions/jobs/section-running-jobs-in-a-container.md @@ -2,6 +2,12 @@ Use `jobs..container` to create a container to run any steps in a job th If you do not set a `container`, all steps will run directly on the host specified by `runs-on` unless a step refers to an action configured to run in a container. +{% note %} + +**Note:** The default shell for `run` steps inside a container is `sh` instead of `bash`. This can be overridden with [`jobs..defaults.run`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iddefaultsrun) or [`jobs..steps[*].shell`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell). + +{% endnote %} + ### Example: Running a job within a container ```yaml{:copy} diff --git a/data/reusables/actions/moving-a-runner-to-a-group.md b/data/reusables/actions/moving-a-runner-to-a-group.md new file mode 100644 index 0000000000..9686c85aa3 --- /dev/null +++ b/data/reusables/actions/moving-a-runner-to-a-group.md @@ -0,0 +1,15 @@ +If you don't specify a runner group during the registration process, your new runners are automatically assigned to the default group, and can then be moved to another group. + +{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +1. In the "Runners" list, click the runner that you want to configure. +2. Select the **Runner group** drop-down. +3. In "Move runner to group", choose a destination group for the runner. +{% elsif ghae or ghes < 3.4 %} +1. In the {% ifversion ghes or ghae %}"Runner groups"{% endif %} section of the settings page, locate the current group of the runner you want to move and expand the list of group members. + ![View runner group members](/assets/images/help/settings/actions-org-runner-group-members.png) +2. Select the checkbox next to the self-hosted runner, and then click **Move to group** to see the available destinations. + ![Runner group member move](/assets/images/help/settings/actions-org-runner-group-member-move.png) +3. To move the runner, click on the destination group. + ![Runner group member move](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) +{% endif %} \ No newline at end of file diff --git a/data/reusables/actions/removing-a-runner-group.md b/data/reusables/actions/removing-a-runner-group.md new file mode 100644 index 0000000000..1703d7e044 --- /dev/null +++ b/data/reusables/actions/removing-a-runner-group.md @@ -0,0 +1,9 @@ +Runners are automatically returned to the default group when their group is removed. + +{% ifversion ghes or ghae or ghec %} +{% data reusables.actions.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" %}. +2. To remove the group, click **Remove group**. +3. Review the confirmation prompts, and click **Remove this runner group**. Any runners still in this group will be automatically moved to the default group, where they will inherit the access permissions assigned to that group. + +{% endif %} \ No newline at end of file diff --git a/data/reusables/actions/runner-group-enterprise-overview.md b/data/reusables/actions/runner-group-enterprise-overview.md new file mode 100644 index 0000000000..516bccdefe --- /dev/null +++ b/data/reusables/actions/runner-group-enterprise-overview.md @@ -0,0 +1,3 @@ +Runner groups are used to control access to runners at the organization and enterprise level. Enterprise owners can configure access policies that control which organizations {% ifversion restrict-groups-to-workflows %}and workflows {% endif %}in an enterprise have access to the runner group. Organization owners can configure access policies that control which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} in an organization have access to the runner group. + +When an enterprise owner grants access to a runner group, organization owners can see the runner group listed in the organization's runner settings. The organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} and workflow{% endif %} access policies to the enterprise runner group. \ No newline at end of file diff --git a/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md b/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md similarity index 100% rename from data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md rename to data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md diff --git a/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md b/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md similarity index 89% rename from data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md rename to data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md index 4819bd92eb..b4680b1ee5 100644 --- a/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md +++ b/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md @@ -1,9 +1,9 @@ {% ifversion fpt %} -1. Navigate to the main page of the repository or organization where your self-hosted runner groups are located. +1. Navigate to the main page of the repository or organization where your runner groups are located. 2. Click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. {% data reusables.organizations.settings-sidebar-actions-runner-groups %} {% elsif ghec or ghes or ghae %} -1. Navigate to where your self-hosted runner groups are located: +1. Navigate to where your runner groups are located: * **In an organization**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. * **If using an enterprise-level group**: diff --git a/data/reusables/actions/self-hosted-runner-add-to-enterprise.md b/data/reusables/actions/self-hosted-runner-add-to-enterprise.md index ac0187078c..d328def7f7 100644 --- a/data/reusables/actions/self-hosted-runner-add-to-enterprise.md +++ b/data/reusables/actions/self-hosted-runner-add-to-enterprise.md @@ -3,7 +3,7 @@ {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.actions-tab %} {% data reusables.enterprise-accounts.actions-runners-tab %} -1. Click **New runner**. +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {%- elsif ghae or ghes < 3.4 %} To add a self-hosted runner to an enterprise, you must be an enterprise owner. diff --git a/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md b/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md index 589308b1e4..6c884cdb97 100644 --- a/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md +++ b/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md @@ -3,7 +3,7 @@ 2. Click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. Navigate to where your self-hosted runner is registered: +1. Navigate to where your runner is registered: * **In an organization**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. * **If using an enterprise-level runner**: diff --git a/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md b/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md index 47a1613bb5..b43bfa22c6 100644 --- a/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md +++ b/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md @@ -3,7 +3,7 @@ 2. Click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. Navigate to where your self-hosted runner is registered: +1. Navigate to where your runner is registered: * **In an organization or repository**: navigate to the main page and click {% octicon "gear" aria-label="The Settings gear" %} **Settings**. * **If using an enterprise-level runner**: diff --git a/data/reusables/actions/self-hosted-runner-security-admonition.md b/data/reusables/actions/self-hosted-runner-security-admonition.md new file mode 100644 index 0000000000..3070a6394f --- /dev/null +++ b/data/reusables/actions/self-hosted-runner-security-admonition.md @@ -0,0 +1,7 @@ +{% warning %} + +**Warning**: {% data reusables.actions.self-hosted-runner-security %} + +For more information, see "[About self-hosted runners](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." + +{% endwarning %} \ No newline at end of file diff --git a/data/reusables/actions/self-hosted-runner-security.md b/data/reusables/actions/self-hosted-runner-security.md index 0d4c1556b1..c90b1938d4 100644 --- a/data/reusables/actions/self-hosted-runner-security.md +++ b/data/reusables/actions/self-hosted-runner-security.md @@ -1 +1 @@ -We recommend that you only use self-hosted runners with private repositories. This is because forks of your repository can potentially run dangerous code on your self-hosted runner machine by creating a pull request that executes the code in a workflow. +We recommend that you only use self-hosted runners with private repositories. This is because forks of your public repository can potentially run dangerous code on your self-hosted runner machine by creating a pull request that executes the code in a workflow. \ No newline at end of file diff --git a/data/reusables/billing/billing-hosted-runners.md b/data/reusables/billing/billing-hosted-runners.md new file mode 100644 index 0000000000..6b04d05ac2 --- /dev/null +++ b/data/reusables/billing/billing-hosted-runners.md @@ -0,0 +1,9 @@ +| Linux | 4 | $0.016 | +| Linux | 8 | $0.032 | +| Linux | 16 | $0.064 | +| Linux | 32 | $0.128 | +| Linux | 64 | $0.256 | +| Windows | 8 | $0.064 | +| Windows | 16 | $0.128 | +| Windows | 32 | $0.256 | +| Windows | 64 | $0.512 | \ No newline at end of file diff --git a/data/reusables/billing/billing-standard-runners.md b/data/reusables/billing/billing-standard-runners.md new file mode 100644 index 0000000000..c3dc2b3ec3 --- /dev/null +++ b/data/reusables/billing/billing-standard-runners.md @@ -0,0 +1,5 @@ +| Operating system | Cores | Per-minute rate (USD) | +|------- | --------- | --------- | +| Linux | 2 | $0.008 | +| macOS | 3 | $0.08 | +| Windows | 2 | $0.016 | diff --git a/data/reusables/code-scanning/codeql-query-suites.md b/data/reusables/code-scanning/codeql-query-suites.md index a08b290be9..a6975d04a2 100644 --- a/data/reusables/code-scanning/codeql-query-suites.md +++ b/data/reusables/code-scanning/codeql-query-suites.md @@ -1,4 +1,4 @@ | Query suite | Description | | :- | :- | - | `security-extended` | Queries of lower severity and precision than the default queries | + | `security-extended` | Queries from the default suite, plus lower severity and precision queries | | `security-and-quality` | Queries from `security-extended`, plus maintainability and reliability queries | diff --git a/data/reusables/code-scanning/example-configuration-files.md b/data/reusables/code-scanning/example-configuration-files.md index f429bb12cf..a55b33e606 100644 --- a/data/reusables/code-scanning/example-configuration-files.md +++ b/data/reusables/code-scanning/example-configuration-files.md @@ -30,3 +30,22 @@ paths-ignore: - src/node_modules - '**/*.test.js' ``` + +{% ifversion code-scanning-exclude-queries-from-analysis %} + +The following configuration file only runs queries that generate alerts of severity error. The configuration first selects all the default queries, all queries in `./my-queries`, and the default suite in `codeql/java-queries`, then excludes all the queries that generate warnings or recommendations. + +``` yaml +queries: + - name: Use an in-repository QL pack (run queries in the my-queries directory) + uses: ./my-queries +packs: + - codeql/java-queries +query-filters: +- exclude: + problem.severity: + - warning + - recommendation +``` + +{% endif %} \ No newline at end of file diff --git a/data/reusables/code-scanning/run-additional-queries.md b/data/reusables/code-scanning/run-additional-queries.md index 3f25bd67d1..fddae57c62 100644 --- a/data/reusables/code-scanning/run-additional-queries.md +++ b/data/reusables/code-scanning/run-additional-queries.md @@ -1,5 +1,13 @@ When you use {% data variables.product.prodname_codeql %} to scan code, the {% data variables.product.prodname_codeql %} analysis engine generates a database from the code and runs queries on it. {% data variables.product.prodname_codeql %} analysis uses a default set of queries, but you can specify more queries to run, in addition to the default queries. +{% ifversion code-scanning-exclude-queries-from-analysis %} +{% tip %} + +You can also specify the queries you want to exclude from analysis, or include in the analysis. This requires the use of a custom configuration file. For more information, see "[Using a custom configuration file](#using-a-custom-configuration-file)" and "[Excluding specific queries from analysis](#excluding-specific-queries-from-analysis) " below. + +{% endtip %} +{% endif %} + {% ifversion codeql-packs %} You can run extra queries if they are part of a {% data variables.product.prodname_codeql %} pack (beta) published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} or a {% data variables.product.prodname_ql %} pack stored in a repository. For more 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#about-codeql-queries)." diff --git a/data/reusables/codespaces/codespaces-org-policies-note.md b/data/reusables/codespaces/codespaces-org-policies-note.md index 69e6530791..9060454948 100644 --- a/data/reusables/codespaces/codespaces-org-policies-note.md +++ b/data/reusables/codespaces/codespaces-org-policies-note.md @@ -1,5 +1,5 @@ {% note %} -**Note**: Organization policies you define for {% data variables.product.prodname_codespaces %} only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](https://docs-internal-29134-ad7bd8.preview.ghdocs.com/en/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." +**Note**: Organization policies you define for {% data variables.product.prodname_codespaces %} only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." {% endnote %} \ No newline at end of file diff --git a/data/reusables/codespaces/open-codespace-from-template-repo.md b/data/reusables/codespaces/open-codespace-from-template-repo.md new file mode 100644 index 0000000000..610c2f920d --- /dev/null +++ b/data/reusables/codespaces/open-codespace-from-template-repo.md @@ -0,0 +1,8 @@ +1. Select an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. +1. On the main page of the newly created repository, click the **{% octicon "code" aria-label="The code icon" %} Code** button and select the **Codespaces** tab. + + ![New codespace button](/assets/images/help/codespaces/new-codespace-button.png) + + If you don’t see this tab, {% data variables.product.prodname_github_codespaces %} isn't available for you. For more information about access to {% data variables.product.prodname_github_codespaces %}, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)." + +1. On the **Codespaces** tab, click **Create codespace on main**. diff --git a/data/reusables/codespaces/rebuild-command.md b/data/reusables/codespaces/rebuild-command.md index 09f44e08b1..5247bdfa0f 100644 --- a/data/reusables/codespaces/rebuild-command.md +++ b/data/reusables/codespaces/rebuild-command.md @@ -1,5 +1,3 @@ -1. Access the {% data variables.product.prodname_vscode_command_palette %} (Shift + Command + P / Ctrl + Shift + P), then start typing "rebuild". Select **Codespaces: Rebuild Container**. +1. Access the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "rebuild". Select **Codespaces: Rebuild Container**. ![Rebuild container option](/assets/images/help/codespaces/codespaces-rebuild.png) - - diff --git a/data/reusables/codespaces/remote-explorer.md b/data/reusables/codespaces/remote-explorer.md index c46ed9b539..545bdcf0c9 100644 --- a/data/reusables/codespaces/remote-explorer.md +++ b/data/reusables/codespaces/remote-explorer.md @@ -2,7 +2,7 @@ **Note**: If the Remote Explorer is not displayed in the Activity Bar: -1. Access the command palette. For example, by pressing Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux). +1. Access the Command Palette. For example, by pressing Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux). 1. Type: `codespaces`. 1. Click **Codespaces: Details**. diff --git a/data/reusables/dependabot/dependabot-alerts-filters.md b/data/reusables/dependabot/dependabot-alerts-filters.md index 31056c274f..016833a8bd 100644 --- a/data/reusables/dependabot/dependabot-alerts-filters.md +++ b/data/reusables/dependabot/dependabot-alerts-filters.md @@ -2,7 +2,7 @@ You can sort and filter {% data variables.product.prodname_dependabot_alerts %} | Option | Description | Example | |:---|:---|:---| -| `ecosystem` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 %} +| `ecosystem` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-7891 %} | `has` | Displays alerts meeting the selected filter criteria | Use `has:patch` to show alerts related to advisories that have a patch{% ifversion dependabot-alerts-vulnerable-calls %}
Use `has:vulnerable-calls` to show alerts relating to calls to vulnerable functions{% endif %} |{% endif %} | `is` | Displays alerts based on their state | Use `is:open` to show open alerts | | `manifest` | Displays alerts for the selected manifest | Use `manifest:webwolf/pom.xml` to show alerts on the pom.xml file of the webwolf application | diff --git a/data/reusables/dependency-review/dependency-review-action-beta-note.md b/data/reusables/dependency-review/dependency-review-action-beta-note.md index 01b1e2f260..23aaae3ec2 100644 --- a/data/reusables/dependency-review/dependency-review-action-beta-note.md +++ b/data/reusables/dependency-review/dependency-review-action-beta-note.md @@ -2,4 +2,4 @@ **Note**: The {% data variables.product.prodname_dependency_review_action %} is currently in public beta and subject to change. -{% endnote %} +{% endnote %} \ No newline at end of file diff --git a/data/reusables/dependency-review/dependency-review-action-overview.md b/data/reusables/dependency-review/dependency-review-action-overview.md index fdfb2f6f8c..d3b89434d2 100644 --- a/data/reusables/dependency-review/dependency-review-action-overview.md +++ b/data/reusables/dependency-review/dependency-review-action-overview.md @@ -1,3 +1,3 @@ The {% data variables.product.prodname_dependency_review_action %} scans your pull requests for dependency changes and raises an error if any new dependencies have known vulnerabilities. The action is supported by an API endpoint that compares the dependencies between two revisions and reports any differences. -For more information about the action and the API endpoint, see "[About dependency review](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-reinforcement)," and "[Dependency review](/rest/dependency-graph/dependency-review)" in the API documentation, respectively. +For more information about the action and the API endpoint, see the [`dependency-review-action`](https://github.com/actions/dependency-review-action) documentation, and "[Dependency review](/rest/dependency-graph/dependency-review)" in the API documentation. diff --git a/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md b/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md index c5d6100063..d9e308eee9 100644 --- a/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md +++ b/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md @@ -1,4 +1,4 @@ -1. Define the key as a environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. +1. Define the key as an environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. ```bash{:copy} ghe-config "secrets.gpgverify.web-signing-key" "$(gpg --export-secret-keys -a | awk '{printf "%s\\n", $0}')" diff --git a/data/reusables/gated-features/hosted-runners.md b/data/reusables/gated-features/hosted-runners.md new file mode 100644 index 0000000000..c840cfca8b --- /dev/null +++ b/data/reusables/gated-features/hosted-runners.md @@ -0,0 +1 @@ +The {% data variables.actions.hosted_runner %}s feature is currently in beta for organizations and enterprises using the {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %} plans, and is subject to change. To request access to the beta, visit the [sign up page](https://github.com/features/github-hosted-runners/signup). \ No newline at end of file diff --git a/data/reusables/getting-started/bearer-vs-token.md b/data/reusables/getting-started/bearer-vs-token.md new file mode 100644 index 0000000000..9dd0b62ada --- /dev/null +++ b/data/reusables/getting-started/bearer-vs-token.md @@ -0,0 +1 @@ +In most cases, you can use `Authorization: Bearer` or `Authorization: token` to pass a token. However, if you are passing a JSON web token (JWT), you must use `Authorization: Bearer`. \ No newline at end of file diff --git a/data/reusables/gpg/copy-gpg-key-id.md b/data/reusables/gpg/copy-gpg-key-id.md index 944dd0f138..327fc59509 100644 --- a/data/reusables/gpg/copy-gpg-key-id.md +++ b/data/reusables/gpg/copy-gpg-key-id.md @@ -1,9 +1,9 @@ 1. From the list of GPG keys, copy the long form of the GPG key ID you'd like to use. In this example, the GPG key ID is `3AA5C34371567BD2`: - ```shell + ```shell{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/42B317FD4BA89E7A 2016-03-10 - ``` + ``` diff --git a/data/reusables/gpg/list-keys-with-note.md b/data/reusables/gpg/list-keys-with-note.md index 3dfe6910ca..ed154975cb 100644 --- a/data/reusables/gpg/list-keys-with-note.md +++ b/data/reusables/gpg/list-keys-with-note.md @@ -1,10 +1,11 @@ - 1. Use the `gpg --list-secret-keys --keyid-format=long` command to list the long form of the GPG keys for which you have both a public and private key. A private key is required for signing commits or tags. - ```shell - $ gpg --list-secret-keys --keyid-format=long -``` - {% note %} - **Note:** Some GPG installations on Linux may require you to use `gpg2 --list-keys --keyid-format LONG` to view a list of your existing keys instead. In this case you will also need to configure Git to use `gpg2` by running `git config --global gpg.program gpg2`. + ```shell{:copy} + $ gpg --list-secret-keys --keyid-format=long + ``` + + {% note %} - {% endnote %} + **Note:** Some GPG installations on Linux may require you to use `gpg2 --list-keys --keyid-format LONG` to view a list of your existing keys instead. In this case you will also need to configure Git to use `gpg2` by running `git config --global gpg.program gpg2`. + + {% endnote %} diff --git a/data/reusables/gpg/x-509-key.md b/data/reusables/gpg/x-509-key.md index 6848f78d42..a303466a11 100644 --- a/data/reusables/gpg/x-509-key.md +++ b/data/reusables/gpg/x-509-key.md @@ -1,7 +1,7 @@ ## Telling Git about your X.509 key -You can use [smimesign](https://github.com/github/smimesign) to sign commits and tags using S/MIME instead of GPG. +You can use [smimesign](https://github.com/github/smimesign) to sign commits and tags using S/MIME. {% data reusables.gpg.smime-git-version %} diff --git a/data/reusables/identity-and-permissions/ipv6-allow-lists.md b/data/reusables/identity-and-permissions/ipv6-allow-lists.md new file mode 100644 index 0000000000..3c26491fe2 --- /dev/null +++ b/data/reusables/identity-and-permissions/ipv6-allow-lists.md @@ -0,0 +1,7 @@ +{% ifversion fpt or ghec %} +{% note %} + +**Note:** {% data variables.product.company_short %} is gradually rolling out support for IPv6. As {% data variables.product.prodname_dotcom %} services continue to add IPv6 support, we will start recognizing IPv6 addresses of {% data variables.product.prodname_dotcom %} users. To prevent possible access interruptions, please ensure you have added any necessary IPv6 addresses to your IP allow list. + +{% endnote %} +{% endif %} \ No newline at end of file diff --git a/data/reusables/organizations/about-following-organizations.md b/data/reusables/organizations/about-following-organizations.md new file mode 100644 index 0000000000..52e52467fb --- /dev/null +++ b/data/reusables/organizations/about-following-organizations.md @@ -0,0 +1 @@ +When you follow organizations on {% data variables.product.product_name %}, you'll see their {% ifversion fpt or ghec %}public{% endif %} activity on your personal dashboard. This activity includes new discussions, sponsorships, and repositories. \ No newline at end of file diff --git a/data/reusables/organizations/follow-organizations-beta.md b/data/reusables/organizations/follow-organizations-beta.md new file mode 100644 index 0000000000..1730f73ccd --- /dev/null +++ b/data/reusables/organizations/follow-organizations-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**Note:** The ability to follow organizations is currently in public beta and subject to change. + +{% endnote %} \ No newline at end of file diff --git a/data/reusables/package_registry/authenticate-packages.md b/data/reusables/package_registry/authenticate-packages.md index a766f6e96d..5ca4e91584 100644 --- a/data/reusables/package_registry/authenticate-packages.md +++ b/data/reusables/package_registry/authenticate-packages.md @@ -4,4 +4,4 @@ You can use a personal access token (PAT) to authenticate to {% data variables.p 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. -- a PAT to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). +- a PAT with at least `packages:read` scope to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). 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 deleted file mode 100644 index a54f9a0844..0000000000 --- a/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md +++ /dev/null @@ -1,11 +0,0 @@ -{% ifversion fpt or ghec or ghes > 3.4 %} - -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 `{% data reusables.package_registry.container-registry-hostname %}`, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. - -{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to `{% data reusables.package_registry.container-registry-hostname %}` with a personal access token, see "[Upgrading a workflow that accesses `ghcr.io`](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-ghcrio)."{% endif %} - -For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." - -If you're using the {% data variables.product.prodname_container_registry %} in actions, follow our security best practices at "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." - -{% endif %} diff --git a/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md b/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md new file mode 100644 index 0000000000..023e44c78c --- /dev/null +++ b/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md @@ -0,0 +1,7 @@ +If your workflow is using a personal access token (PAT) to authenticate to a registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. + +{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to a registry with a personal access token, see "[Upgrading a workflow that accesses a registry using a PAT](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-a-registry-using-a-pat)."{% endif %} + +For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." + +For more information about the best practises when using a registry in actions, see "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." diff --git a/data/reusables/package_registry/no-graphql-to-delete-packages.md b/data/reusables/package_registry/no-graphql-to-delete-packages.md new file mode 100644 index 0000000000..cbab609f2b --- /dev/null +++ b/data/reusables/package_registry/no-graphql-to-delete-packages.md @@ -0,0 +1 @@ +{% 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`, or npm images that use the package namespace `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`.{% endif %} \ No newline at end of file diff --git a/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md b/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md index 67593664e7..04d9906902 100644 --- a/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md +++ b/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md @@ -1,16 +1,16 @@ -{% ifversion ghes > 3.1 or ghes < 3.5 %} +{% ifversion ghes < 3.5 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix for 3.5 and later will be available in an upcoming patch release. +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix is available in the [3.5.5](/enterprise-server@3.5/admin/release-notes#3.5.5) and [3.6.1](/enterprise-server@3.6/admin/release-notes#3.6.1) patch releases. -To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-08-16] +To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-09-01] -{% elsif ghes > 3.4 or ghes < 3.7 %} +{% elsif ghes = 3.5 or ghes = 3.6 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ currentVersion }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ allVersions[currentVersion].currentRelease }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). - To display the missing alerts for all repositories owned by an organization, organization owners can navigate to the organization's **Code security and analysis** settings, then click **Enable all** for secret scanning. For more information, see "[Managing security and analysis settings for your organization](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-existing-repositories)." - To display the missing alerts for an individual repository, people with admin access to the repository can disable then enable secret scanning for the repository. For more information, see "[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)." -A fix will be available in an upcoming patch release. [Updated: 2022-08-16] +A fix is available in the {% ifversion ghes = 3.5 %}[3.5.5](/admin/release-notes#3.5.5){% elsif ghes = 3.6 %}[3.6.1](/admin/release-notes#3.6.1){% endif %} patch release. [Updated: 2022-09-01] {% endif %} diff --git a/data/variables/actions.yml b/data/variables/actions.yml index a7720841ca..5191ec655d 100644 --- a/data/variables/actions.yml +++ b/data/variables/actions.yml @@ -1 +1,2 @@ azure_portal: 'Azure Portal' +hosted_runner: 'larger runner' diff --git a/data/variables/product.yml b/data/variables/product.yml index b7beb0e583..90baf84430 100644 --- a/data/variables/product.yml +++ b/data/variables/product.yml @@ -139,6 +139,10 @@ prodname_registry: 'GitHub Packages' prodname_container_registry: 'Container registry' prodname_docker_registry_namespace: '{% ifversion fpt or ghec %}`docker.pkg.github.com`{% elsif ghes or ghae %}docker.HOSTNAME{% endif %}' prodname_container_registry_namespace: '{% ifversion fpt or ghec %}`ghcr.io`{% elsif ghes or ghae %}containers.HOSTNAME{% endif %}' +prodname_npm_registry: 'npm registry' +prodname_ghcr_and_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_or_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} or {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_and_npm_registry_full: '{% data variables.product.prodname_container_registry %} (`ghcr.io`){% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %} (`npm.pkg.github.com`){% endif %}' # GitHub Insights prodname_insights: 'GitHub Insights' diff --git a/jest.config.js b/jest.config.js index 7539481b98..404781c322 100644 --- a/jest.config.js +++ b/jest.config.js @@ -8,6 +8,7 @@ let reporters = ['default'] if (testTranslation) { // only use custom reporter if we are linting translations + // Remove this when removing translations directory B504EDD0 reporters = ['/tests/helpers/lint-translation-reporter.js'] } else if (isActions) { reporters.push('jest-github-actions-reporter') diff --git a/lib/enterprise-dates.json b/lib/enterprise-dates.json index 2b7116b577..a76b2e4a17 100644 --- a/lib/enterprise-dates.json +++ b/lib/enterprise-dates.json @@ -120,7 +120,7 @@ "deprecationDate": "2023-08-16" }, "3.7": { - "releaseDate": "2022-10-04", + "releaseDate": "2022-10-18", "deprecationDate": "2023-11-08" }, "3.8": { diff --git a/lib/graphql/static/changelog.json b/lib/graphql/static/changelog.json index d811cac959..c29ced1086 100644 --- a/lib/graphql/static/changelog.json +++ b/lib/graphql/static/changelog.json @@ -1,4 +1,38 @@ [ + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "

Type MergeCommitMessage was added

", + "

Type MergeCommitTitle was added

", + "

Type SquashMergeCommitMessage was added

", + "

Type SquashMergeCommitTitle was added

", + "

Field mergeCommitMessage was added to object type Repository

", + "

Field mergeCommitTitle was added to object type Repository

", + "

Field squashMergeCommitMessage was added to object type Repository

", + "

Field squashMergeCommitTitle was added to object type Repository

" + ] + } + ], + "previewChanges": [], + "upcomingChanges": [], + "date": "2022-09-01" + }, + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "

Enum value GITHUB was removed from enum MigrationSourceType

", + "

Enum value GITLAB was removed from enum MigrationSourceType

" + ] + } + ], + "previewChanges": [], + "upcomingChanges": [], + "date": "2022-08-26" + }, { "schemaChanges": [ { diff --git a/lib/graphql/static/schema-dotcom.json b/lib/graphql/static/schema-dotcom.json index ec6f4e93cb..5b78ba5963 100644 --- a/lib/graphql/static/schema-dotcom.json +++ b/lib/graphql/static/schema-dotcom.json @@ -55802,6 +55802,22 @@ "kind": "scalars", "href": "/graphql/reference/scalars#boolean" }, + { + "name": "mergeCommitMessage", + "description": "

How the default commit message will be generated when merging a pull request.

", + "type": "MergeCommitMessage!", + "id": "mergecommitmessage", + "kind": "enums", + "href": "/graphql/reference/enums#mergecommitmessage" + }, + { + "name": "mergeCommitTitle", + "description": "

How the default commit title will be generated when merging a pull request.

", + "type": "MergeCommitTitle!", + "id": "mergecommittitle", + "kind": "enums", + "href": "/graphql/reference/enums#mergecommittitle" + }, { "name": "milestone", "description": "

Returns a single milestone from the current repository by number.

", @@ -56958,6 +56974,22 @@ "kind": "scalars", "href": "/graphql/reference/scalars#boolean" }, + { + "name": "squashMergeCommitMessage", + "description": "

How the default commit message will be generated when squash merging a pull request.

", + "type": "SquashMergeCommitMessage!", + "id": "squashmergecommitmessage", + "kind": "enums", + "href": "/graphql/reference/enums#squashmergecommitmessage" + }, + { + "name": "squashMergeCommitTitle", + "description": "

How the default commit title will be generated when squash merging a pull request.

", + "type": "SquashMergeCommitTitle!", + "id": "squashmergecommittitle", + "kind": "enums", + "href": "/graphql/reference/enums#squashmergecommittitle" + }, { "name": "squashPrTitleUsedAsDefault", "description": "

Whether a squash merge commit can use the pull request title as default.

", @@ -74787,6 +74819,44 @@ } ] }, + { + "name": "MergeCommitMessage", + "kind": "enums", + "id": "mergecommitmessage", + "href": "/graphql/reference/enums#mergecommitmessage", + "description": "

The possible default commit messages for merges.

", + "values": [ + { + "name": "BLANK", + "description": "

Default to a blank commit message.

" + }, + { + "name": "PR_BODY", + "description": "

Default to the pull request's body.

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, + { + "name": "MergeCommitTitle", + "kind": "enums", + "id": "mergecommittitle", + "href": "/graphql/reference/enums#mergecommittitle", + "description": "

The possible default commit titles for merges.

", + "values": [ + { + "name": "MERGE_MESSAGE", + "description": "

Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, { "name": "MergeStateStatus", "kind": "enums", @@ -74864,17 +74934,9 @@ "name": "BITBUCKET_SERVER", "description": "

A Bitbucket Server migration source.

" }, - { - "name": "GITHUB", - "description": "

A GitHub migration source.

" - }, { "name": "GITHUB_ARCHIVE", "description": "

A GitHub Migration API source.

" - }, - { - "name": "GITLAB", - "description": "

A GitLab migration source.

" } ] }, @@ -77542,6 +77604,44 @@ } ] }, + { + "name": "SquashMergeCommitMessage", + "kind": "enums", + "id": "squashmergecommitmessage", + "href": "/graphql/reference/enums#squashmergecommitmessage", + "description": "

The possible default commit messages for squash merges.

", + "values": [ + { + "name": "BLANK", + "description": "

Default to a blank commit message.

" + }, + { + "name": "COMMIT_MESSAGES", + "description": "

Default to the branch's commit messages.

" + }, + { + "name": "PR_BODY", + "description": "

Default to the pull request's body.

" + } + ] + }, + { + "name": "SquashMergeCommitTitle", + "kind": "enums", + "id": "squashmergecommittitle", + "href": "/graphql/reference/enums#squashmergecommittitle", + "description": "

The possible default commit titles for squash merges.

", + "values": [ + { + "name": "COMMIT_OR_PR_TITLE", + "description": "

Default to the commit's title (if only one commit) or the pull request's title (when more than one commit).

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, { "name": "StarOrderField", "kind": "enums", diff --git a/lib/graphql/static/schema-ghae.json b/lib/graphql/static/schema-ghae.json index 529c868fe0..cf48193505 100644 --- a/lib/graphql/static/schema-ghae.json +++ b/lib/graphql/static/schema-ghae.json @@ -46043,6 +46043,22 @@ "kind": "scalars", "href": "/graphql/reference/scalars#boolean" }, + { + "name": "mergeCommitMessage", + "description": "

How the default commit message will be generated when merging a pull request.

", + "type": "MergeCommitMessage!", + "id": "mergecommitmessage", + "kind": "enums", + "href": "/graphql/reference/enums#mergecommitmessage" + }, + { + "name": "mergeCommitTitle", + "description": "

How the default commit title will be generated when merging a pull request.

", + "type": "MergeCommitTitle!", + "id": "mergecommittitle", + "kind": "enums", + "href": "/graphql/reference/enums#mergecommittitle" + }, { "name": "milestone", "description": "

Returns a single milestone from the current repository by number.

", @@ -46874,6 +46890,22 @@ "kind": "scalars", "href": "/graphql/reference/scalars#boolean" }, + { + "name": "squashMergeCommitMessage", + "description": "

How the default commit message will be generated when squash merging a pull request.

", + "type": "SquashMergeCommitMessage!", + "id": "squashmergecommitmessage", + "kind": "enums", + "href": "/graphql/reference/enums#squashmergecommitmessage" + }, + { + "name": "squashMergeCommitTitle", + "description": "

How the default commit title will be generated when squash merging a pull request.

", + "type": "SquashMergeCommitTitle!", + "id": "squashmergecommittitle", + "kind": "enums", + "href": "/graphql/reference/enums#squashmergecommittitle" + }, { "name": "squashPrTitleUsedAsDefault", "description": "

Whether a squash merge commit can use the pull request title as default.

", @@ -61294,6 +61326,44 @@ } ] }, + { + "name": "MergeCommitMessage", + "kind": "enums", + "id": "mergecommitmessage", + "href": "/graphql/reference/enums#mergecommitmessage", + "description": "

The possible default commit messages for merges.

", + "values": [ + { + "name": "BLANK", + "description": "

Default to a blank commit message.

" + }, + { + "name": "PR_BODY", + "description": "

Default to the pull request's body.

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, + { + "name": "MergeCommitTitle", + "kind": "enums", + "id": "mergecommittitle", + "href": "/graphql/reference/enums#mergecommittitle", + "description": "

The possible default commit titles for merges.

", + "values": [ + { + "name": "MERGE_MESSAGE", + "description": "

Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, { "name": "MergeStateStatus", "kind": "enums", @@ -61371,17 +61441,9 @@ "name": "BITBUCKET_SERVER", "description": "

A Bitbucket Server migration source.

" }, - { - "name": "GITHUB", - "description": "

A GitHub migration source.

" - }, { "name": "GITHUB_ARCHIVE", "description": "

A GitHub Migration API source.

" - }, - { - "name": "GITLAB", - "description": "

A GitLab migration source.

" } ] }, @@ -63311,6 +63373,44 @@ } ] }, + { + "name": "SquashMergeCommitMessage", + "kind": "enums", + "id": "squashmergecommitmessage", + "href": "/graphql/reference/enums#squashmergecommitmessage", + "description": "

The possible default commit messages for squash merges.

", + "values": [ + { + "name": "BLANK", + "description": "

Default to a blank commit message.

" + }, + { + "name": "COMMIT_MESSAGES", + "description": "

Default to the branch's commit messages.

" + }, + { + "name": "PR_BODY", + "description": "

Default to the pull request's body.

" + } + ] + }, + { + "name": "SquashMergeCommitTitle", + "kind": "enums", + "id": "squashmergecommittitle", + "href": "/graphql/reference/enums#squashmergecommittitle", + "description": "

The possible default commit titles for squash merges.

", + "values": [ + { + "name": "COMMIT_OR_PR_TITLE", + "description": "

Default to the commit's title (if only one commit) or the pull request's title (when more than one commit).

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, { "name": "StarOrderField", "kind": "enums", diff --git a/lib/graphql/static/schema-ghec.json b/lib/graphql/static/schema-ghec.json index ec6f4e93cb..5b78ba5963 100644 --- a/lib/graphql/static/schema-ghec.json +++ b/lib/graphql/static/schema-ghec.json @@ -55802,6 +55802,22 @@ "kind": "scalars", "href": "/graphql/reference/scalars#boolean" }, + { + "name": "mergeCommitMessage", + "description": "

How the default commit message will be generated when merging a pull request.

", + "type": "MergeCommitMessage!", + "id": "mergecommitmessage", + "kind": "enums", + "href": "/graphql/reference/enums#mergecommitmessage" + }, + { + "name": "mergeCommitTitle", + "description": "

How the default commit title will be generated when merging a pull request.

", + "type": "MergeCommitTitle!", + "id": "mergecommittitle", + "kind": "enums", + "href": "/graphql/reference/enums#mergecommittitle" + }, { "name": "milestone", "description": "

Returns a single milestone from the current repository by number.

", @@ -56958,6 +56974,22 @@ "kind": "scalars", "href": "/graphql/reference/scalars#boolean" }, + { + "name": "squashMergeCommitMessage", + "description": "

How the default commit message will be generated when squash merging a pull request.

", + "type": "SquashMergeCommitMessage!", + "id": "squashmergecommitmessage", + "kind": "enums", + "href": "/graphql/reference/enums#squashmergecommitmessage" + }, + { + "name": "squashMergeCommitTitle", + "description": "

How the default commit title will be generated when squash merging a pull request.

", + "type": "SquashMergeCommitTitle!", + "id": "squashmergecommittitle", + "kind": "enums", + "href": "/graphql/reference/enums#squashmergecommittitle" + }, { "name": "squashPrTitleUsedAsDefault", "description": "

Whether a squash merge commit can use the pull request title as default.

", @@ -74787,6 +74819,44 @@ } ] }, + { + "name": "MergeCommitMessage", + "kind": "enums", + "id": "mergecommitmessage", + "href": "/graphql/reference/enums#mergecommitmessage", + "description": "

The possible default commit messages for merges.

", + "values": [ + { + "name": "BLANK", + "description": "

Default to a blank commit message.

" + }, + { + "name": "PR_BODY", + "description": "

Default to the pull request's body.

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, + { + "name": "MergeCommitTitle", + "kind": "enums", + "id": "mergecommittitle", + "href": "/graphql/reference/enums#mergecommittitle", + "description": "

The possible default commit titles for merges.

", + "values": [ + { + "name": "MERGE_MESSAGE", + "description": "

Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, { "name": "MergeStateStatus", "kind": "enums", @@ -74864,17 +74934,9 @@ "name": "BITBUCKET_SERVER", "description": "

A Bitbucket Server migration source.

" }, - { - "name": "GITHUB", - "description": "

A GitHub migration source.

" - }, { "name": "GITHUB_ARCHIVE", "description": "

A GitHub Migration API source.

" - }, - { - "name": "GITLAB", - "description": "

A GitLab migration source.

" } ] }, @@ -77542,6 +77604,44 @@ } ] }, + { + "name": "SquashMergeCommitMessage", + "kind": "enums", + "id": "squashmergecommitmessage", + "href": "/graphql/reference/enums#squashmergecommitmessage", + "description": "

The possible default commit messages for squash merges.

", + "values": [ + { + "name": "BLANK", + "description": "

Default to a blank commit message.

" + }, + { + "name": "COMMIT_MESSAGES", + "description": "

Default to the branch's commit messages.

" + }, + { + "name": "PR_BODY", + "description": "

Default to the pull request's body.

" + } + ] + }, + { + "name": "SquashMergeCommitTitle", + "kind": "enums", + "id": "squashmergecommittitle", + "href": "/graphql/reference/enums#squashmergecommittitle", + "description": "

The possible default commit titles for squash merges.

", + "values": [ + { + "name": "COMMIT_OR_PR_TITLE", + "description": "

Default to the commit's title (if only one commit) or the pull request's title (when more than one commit).

" + }, + { + "name": "PR_TITLE", + "description": "

Default to the pull request's title.

" + } + ] + }, { "name": "StarOrderField", "kind": "enums", diff --git a/lib/redirects/static/client-side-rest-api-redirects.json b/lib/redirects/static/client-side-rest-api-redirects.json index 025fa5f461..ba11e20198 100644 --- a/lib/redirects/static/client-side-rest-api-redirects.json +++ b/lib/redirects/static/client-side-rest-api-redirects.json @@ -337,6 +337,9 @@ "/rest/codespaces#organizations": "/rest/codespaces/organizations", "/rest/orgs#list-saml-sso-authorizations-for-an-organization": "/rest/orgs/orgs#list-saml-sso-authorizations-for-an-organization", "/rest/orgs#remove-a-saml-sso-authorization-for-an-organization": "/rest/orgs/orgs#remove-a-saml-sso-authorization-for-an-organization", + "/rest/orgs#create-a-custom-role": "/rest/orgs/custom-roles#create-a-custom-role", + "/rest/orgs#update-a-custom-role": "/rest/orgs/custom-roles#update-a-custom-role", + "/rest/orgs#delete-a-custom-role": "/rest/orgs/custom-roles#delete-a-custom-role", "/rest/dependabot#list-organization-secrets": "/rest/dependabot/secrets#list-organization-secrets", "/rest/dependabot#secrets": "/rest/dependabot/secrets", "/rest/dependabot#get-an-organization-public-key": "/rest/dependabot/secrets#get-an-organization-public-key", @@ -353,6 +356,7 @@ "/rest/teams#list-external-idp-groups-for-an-organization": "/rest/teams/external-groups#list-external-idp-groups-for-an-organization", "/rest/orgs#list-failed-organization-invitations": "/rest/orgs/members#list-failed-organization-invitations", "/rest/orgs#members": "/rest/orgs/members", + "/rest/orgs#list-fine-grained-permissions-for-an-organization": "/rest/orgs/custom-roles#list-fine-grained-permissions-for-an-organization", "/rest/orgs#list-organization-webhooks": "/rest/orgs/webhooks#list-organization-webhooks", "/rest/orgs#webhooks": "/rest/orgs/webhooks", "/rest/orgs#create-an-organization-webhook": "/rest/orgs/webhooks#create-an-organization-webhook", @@ -446,6 +450,8 @@ "/rest/teams#list-idp-groups-for-a-team": "/rest/teams/team-sync#list-idp-groups-for-a-team", "/rest/teams#create-or-update-idp-group-connections": "/rest/teams/team-sync#create-or-update-idp-group-connections", "/rest/teams#list-child-teams": "/rest/teams/teams#list-child-teams", + "/rest/orgs#enable-or-disable-security-product-on-all-org-repos": "/rest/orgs/orgs#enable-or-disable-security-product-on-all-org-repos", + "/rest/orgs#orgs": "/rest/orgs/orgs", "/rest/projects#get-a-project-card": "/rest/projects/cards#get-a-project-card", "/rest/projects#cards": "/rest/projects/cards", "/rest/projects#update-a-project-card": "/rest/projects/cards#update-a-project-card", @@ -919,6 +925,11 @@ "/rest/collaborators/invitations#list-repository-invitations-for-the-authenticated-user": "/rest/collaborators/invitations#list-repository-invitations-for-the-authenticated-user", "/rest/collaborators/invitations#accept-a-repository-invitation": "/rest/collaborators/invitations#accept-a-repository-invitation", "/rest/collaborators/invitations#decline-a-repository-invitation": "/rest/collaborators/invitations#decline-a-repository-invitation", + "/rest/users#list-public-ssh-signing-keys-for-the-authenticated-user": "/rest/users/ssh-signing-keys#list-public-ssh-signing-keys-for-the-authenticated-user", + "/rest/users#ssh-signing-keys": "/rest/users/ssh-signing-keys", + "/rest/users#create-an-ssh-signing-key-for-the-authenticated-user": "/rest/users/ssh-signing-keys#create-an-ssh-signing-key-for-the-authenticated-user", + "/rest/users#get-a-ssh-signing-key-for-the-authenticated-user": "/rest/users/ssh-signing-keys#get-a-ssh-signing-key-for-the-authenticated-user", + "/rest/users#delete-a-ssh-signing-key-for-the-authenticated-user": "/rest/users/ssh-signing-keys#delete-a-ssh-signing-key-for-the-authenticated-user", "/rest/activity#list-repositories-starred-by-the-authenticated-user": "/rest/activity/starring#list-repositories-starred-by-the-authenticated-user", "/rest/activity#check-if-a-repository-is-starred-by-the-authenticated-user": "/rest/activity/starring#check-if-a-repository-is-starred-by-the-authenticated-user", "/rest/activity#star-a-repository-for-the-authenticated-user": "/rest/activity/starring#star-a-repository-for-the-authenticated-user", @@ -943,6 +954,7 @@ "/rest/activity#list-events-received-by-the-authenticated-user": "/rest/activity/events#list-events-received-by-the-authenticated-user", "/rest/activity#list-public-events-received-by-a-user": "/rest/activity/events#list-public-events-received-by-a-user", "/rest/repos#list-repositories-for-a-user": "/rest/repos/repos#list-repositories-for-a-user", + "/rest/users#list-ssh-signing-keys-for-a-user": "/rest/users/ssh-signing-keys#list-ssh-signing-keys-for-a-user", "/rest/activity#list-repositories-starred-by-a-user": "/rest/activity/starring#list-repositories-starred-by-a-user", "/rest/activity#list-repositories-watched-by-a-user": "/rest/activity/watching#list-repositories-watched-by-a-user", "/rest/enterprise-admin#list-global-webhooks": "/rest/enterprise-admin/global-webhooks#list-global-webhooks", diff --git a/lib/redis/create-client.js b/lib/redis/create-client.js deleted file mode 100644 index 5783661262..0000000000 --- a/lib/redis/create-client.js +++ /dev/null @@ -1,171 +0,0 @@ -import Redis from 'redis' - -const { REDIS_MIN_DB, REDIS_MAX_DB } = process.env - -// By default, every Redis instance supports database numbers 0 - 15 -const redisMinDb = REDIS_MIN_DB || 0 -const redisMaxDb = REDIS_MAX_DB || 15 - -// Maximum delay between reconnection attempts after backoff -const maxReconnectDelay = 5000 - -function formatRedisError(error) { - const errorCode = error ? error.code : null - const errorName = error ? error.constructor.name : 'Server disconnection' - const errorMsg = error ? error.toString() : 'unknown (commonly a server idle timeout)' - const preamble = errorName + (errorCode ? ` with code "${errorCode}"` : '') - return preamble + ': ' + errorMsg -} - -export default function createClient(options = {}) { - const { db, name, url } = options - - // If no Redis URL is provided, bail out - // NOTE: Could support other options like `host`, `port`, and `path` but - // choosing not to for the time being! - if (!url) return null - - // Verify database number is within range - if (db != null) { - if (!Number.isInteger(db) || db < redisMinDb || db > redisMaxDb) { - throw new TypeError( - `Redis database number must be an integer between ${redisMinDb} and ${redisMaxDb} but was: ${JSON.stringify( - db - )}` - ) - } - } - - let pingInterval = null - function stopPinging() { - if (pingInterval) { - clearInterval(pingInterval) - pingInterval = null - } - } - - // Create the client - const client = Redis.createClient(url, { - // Only add this configuration for TLS-enabled Redis URL values. - // Otherwise, it breaks for local Redis instances without TLS enabled. - ...(url.startsWith('rediss://') && { - tls: { - // Required for production Heroku Redis - rejectUnauthorized: false, - }, - }), - - // Any running command that is unfulfilled when a connection is lost should - // NOT be retried after the connection has been reestablished. - retry_unfulfilled_commands: false, - - // If we failed to send a new command during a disconnection, do NOT - // enqueue it to send later after the connection has been [re-]established. - // This is also critical to preventing a backend pile-up! - enable_offline_queue: false, - - // This timeout value will be applied to both the initial connection - // and any auto-reconnect attempts (if the `retry_strategy` option is - // provided). If not using the `retry_strategy` option, this value can be - // set to a very low number. If using the `retry_strategy` option to allow - // more than one reconnection attempt, this value must be set to a higher - // number. Defaults to 1 hour if not configured! - connect_timeout: 60 * 60 * 1000, // 60 minutes - - // Be aware that this retry (NOT just reconnection) strategy appears to - // be a major point of confusion (and possibly legitimate issues) between - // reconnecting and retrying failed commands. - retry_strategy: function ({ - attempt, - error, - total_retry_time: totalRetryTime, - times_connected: timesConnected, - }) { - let delayPerAttempt = 100 - - // If the server appears to be unavailable, slow down faster - if (error && error.code === 'ECONNREFUSED') { - delayPerAttempt *= 5 - } - - // Reconnect after delay - return Math.min(attempt * delayPerAttempt, maxReconnectDelay) - }, - - // Expand whatever other options and overrides were provided - ...options, - }) - - // Handle connection errors to prevent killing the Node.js process - client.on('error', (connectError) => { - try { - // Forcibly close the connection to the Redis server. - // Allow all still running commands to silently fail immediately. - client.end(false) - } catch (disconnectError) { - // Swallow any failure - } - - // Also, stop pinging the Redis server - stopPinging() - }) - - client.on('connect', () => { - // Stop pinging the Redis server, if any such timer already exists - stopPinging() - - // Start pinging the server once per minute to prevent Redis connection - // from closing when its idle `timeout` configuration value expires - pingInterval = setInterval(() => { - client.ping(() => {}) - }, 60 * 1000) - }) - - client.on('end', () => { - // Stop pinging the Redis server - stopPinging() - }) - - // If a `name` was provided, use it in the prefix for logging event messages - const logPrefix = '[redis' + (name ? ` (${name})` : '') + ']' - - // Add event listeners for basic logging - client.on('connect', () => { - console.log(logPrefix, 'Connection opened') - }) - client.on('ready', () => { - console.log(logPrefix, 'Ready to receive commands') - }) - client.on('end', () => { - console.log(logPrefix, 'Connection closed') - }) - client.on( - 'reconnecting', - ({ - attempt, - delay, - // The rest are unofficial properties but currently supported - error, - total_retry_time: totalRetryTime, - times_connected: timesConnected, - }) => { - console.log( - logPrefix, - 'Reconnecting,', - `attempt ${attempt}`, - `with ${delay} delay`, - `due to ${formatRedisError(error)}.`, - `Elapsed time: ${totalRetryTime}.`, - `Successful connections: ${timesConnected}.` - ) - } - ) - client.on('warning', (msg) => { - console.warn(logPrefix, 'Warning:', msg) - }) - client.on('error', (error) => { - console.error(logPrefix, formatRedisError(error)) - }) - - return client -} diff --git a/lib/render-content/README.md b/lib/render-content/README.md index 8be088bdc6..cc50693938 100644 --- a/lib/render-content/README.md +++ b/lib/render-content/README.md @@ -36,7 +36,7 @@ Options: ### .liquid -The [Liquid](https://ghub.io/liquid) instance used internally. +The [Liquid](https://ghub.io/liquidjs) instance used internally. ### Code block headers diff --git a/lib/rest/static/apps/enabled-for-apps.json b/lib/rest/static/apps/enabled-for-apps.json index 9929f2596f..220339c61f 100644 --- a/lib/rest/static/apps/enabled-for-apps.json +++ b/lib/rest/static/apps/enabled-for-apps.json @@ -650,7 +650,7 @@ "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" }, { - "slug": "list-workflow-runs", + "slug": "list-workflow-runs-for-a-workflow", "subcategory": "workflow-runs", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" @@ -2268,12 +2268,36 @@ "verb": "delete", "requestPath": "/orgs/{org}/credential-authorizations/{credential_id}" }, + { + "slug": "create-a-custom-role", + "subcategory": "custom-roles", + "verb": "post", + "requestPath": "/orgs/{org}/custom_roles" + }, + { + "slug": "update-a-custom-role", + "subcategory": "custom-roles", + "verb": "patch", + "requestPath": "/orgs/{org}/custom_roles/{role_id}" + }, + { + "slug": "delete-a-custom-role", + "subcategory": "custom-roles", + "verb": "delete", + "requestPath": "/orgs/{org}/custom_roles/{role_id}" + }, { "slug": "list-failed-organization-invitations", "subcategory": "members", "verb": "get", "requestPath": "/orgs/{org}/failed_invitations" }, + { + "slug": "list-fine-grained-permissions-for-an-organization", + "subcategory": "custom-roles", + "verb": "get", + "requestPath": "/orgs/{org}/fine_grained_permissions" + }, { "slug": "list-organization-webhooks", "subcategory": "webhooks", @@ -2454,6 +2478,12 @@ "verb": "delete", "requestPath": "/orgs/{org}/security-managers/teams/{team_slug}" }, + { + "slug": "enable-or-disable-a-security-feature-for-an-organization", + "subcategory": "orgs", + "verb": "post", + "requestPath": "/orgs/{org}/{security_product}/{enablement}" + }, { "slug": "list-organizations-for-a-user", "subcategory": "orgs", @@ -3798,6 +3828,12 @@ "subcategory": "keys", "verb": "get", "requestPath": "/users/{username}/keys" + }, + { + "slug": "list-ssh-signing-keys-for-a-user", + "subcategory": "ssh-signing-keys", + "verb": "get", + "requestPath": "/users/{username}/ssh_signing_keys" } ], "webhooks": [ @@ -4310,7 +4346,7 @@ "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" }, { - "slug": "list-workflow-runs", + "slug": "list-workflow-runs-for-a-workflow", "subcategory": "workflow-runs", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" @@ -7404,7 +7440,7 @@ "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" }, { - "slug": "list-workflow-runs", + "slug": "list-workflow-runs-for-a-workflow", "subcategory": "workflow-runs", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" @@ -10618,7 +10654,7 @@ "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" }, { - "slug": "list-workflow-runs", + "slug": "list-workflow-runs-for-a-workflow", "subcategory": "workflow-runs", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" @@ -14035,7 +14071,7 @@ "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" }, { - "slug": "list-workflow-runs", + "slug": "list-workflow-runs-for-a-workflow", "subcategory": "workflow-runs", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" @@ -17500,7 +17536,7 @@ "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" }, { - "slug": "list-workflow-runs", + "slug": "list-workflow-runs-for-a-workflow", "subcategory": "workflow-runs", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" @@ -20744,7 +20780,7 @@ "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable" }, { - "slug": "list-workflow-runs", + "slug": "list-workflow-runs-for-a-workflow", "subcategory": "workflow-runs", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs" diff --git a/lib/rest/static/decorated/api.github.com.json b/lib/rest/static/decorated/api.github.com.json index 33336ab930..37ba944996 100644 --- a/lib/rest/static/decorated/api.github.com.json +++ b/lib/rest/static/decorated/api.github.com.json @@ -4482,8 +4482,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -4556,6 +4557,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -8335,8 +8340,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -8409,6 +8415,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14411,8 +14421,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -14485,6 +14496,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -17055,8 +17070,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -17129,6 +17145,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -18616,8 +18636,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -18690,6 +18711,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -21398,8 +21423,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -21472,6 +21498,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -22959,8 +22989,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -23033,6 +23064,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -25767,8 +25802,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -25841,6 +25877,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -27338,8 +27378,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -27412,6 +27453,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -30166,6 +30211,15 @@ "schema": { "type": "integer" } + }, + { + "name": "head_sha", + "description": "

Only returns workflow runs that are associated with the specified head_sha.

", + "in": "query", + "required": false, + "schema": { + "type": "string" + } } ], "bodyParameters": [], @@ -33025,8 +33079,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -33099,6 +33154,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -35229,8 +35288,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -35303,6 +35363,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -38495,8 +38559,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -38569,6 +38634,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -40699,8 +40768,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -40773,6 +40843,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -44474,8 +44548,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -44548,6 +44623,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -46678,8 +46757,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -46752,6 +46832,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -49098,7 +49182,7 @@ "serverUrl": "https://api.github.com", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "title": "List workflow runs", + "title": "List workflow runs for a workflow", "category": "actions", "subcategory": "workflow-runs", "parameters": [ @@ -49232,6 +49316,15 @@ "schema": { "type": "integer" } + }, + { + "name": "head_sha", + "description": "

Only returns workflow runs that are associated with the specified head_sha.

", + "in": "query", + "required": false, + "schema": { + "type": "string" + } } ], "bodyParameters": [], @@ -52092,8 +52185,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -52166,6 +52260,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54296,8 +54394,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -54370,6 +54469,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -55696,6 +55799,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -58140,8 +58249,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -58214,6 +58324,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -59730,6 +59844,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -62174,8 +62294,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -62248,6 +62369,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -63758,6 +63883,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -66202,8 +66333,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -66276,6 +66408,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -67780,6 +67916,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -70224,8 +70366,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -70298,6 +70441,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -71792,6 +71939,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -74236,8 +74389,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -74310,6 +74464,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -75825,6 +75983,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -78269,8 +78433,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -78343,6 +78508,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -79837,6 +80006,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -82281,8 +82456,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -82355,6 +82531,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -83860,6 +84040,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -86304,8 +86490,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -86378,6 +86565,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -87883,6 +88074,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -90327,8 +90524,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -90401,6 +90599,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -93972,8 +94174,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -94046,6 +94249,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -96469,8 +96676,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -96543,6 +96751,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -99328,8 +99540,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -99402,6 +99615,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -102144,8 +102361,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -102218,6 +102436,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -103751,8 +103973,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -103825,6 +104048,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -105668,8 +105895,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -105742,6 +105970,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -107132,8 +107364,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -107206,6 +107439,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -109913,8 +110150,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -109987,6 +110225,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -112302,8 +112544,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -112376,6 +112619,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -113949,14 +114196,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -114101,6 +114340,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -114878,14 +115125,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -115030,6 +115269,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -115500,15 +115747,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -115671,6 +115909,15 @@ "write" ] }, + { + "type": "string", + "name": "organization_custom_roles", + "description": "

The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.

", + "enum": [ + "read", + "write" + ] + }, { "type": "string", "name": "organization_hooks", @@ -115951,14 +116198,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -116103,6 +116342,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -117487,8 +117734,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -117561,6 +117809,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -118661,14 +118913,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -118813,6 +119057,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -119594,14 +119846,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -119746,6 +119990,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -120525,14 +120777,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -120677,6 +120921,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -122492,8 +122744,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -122566,6 +122819,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -123219,14 +123476,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -123371,6 +123620,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -125223,8 +125480,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -125297,6 +125555,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -128773,14 +129035,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -128925,6 +129179,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -129644,14 +129906,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -129796,6 +130050,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -130283,15 +130545,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -130454,6 +130707,15 @@ "write" ] }, + { + "type": "string", + "name": "organization_custom_roles", + "description": "

The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.

", + "enum": [ + "read", + "write" + ] + }, { "type": "string", "name": "organization_hooks", @@ -130923,14 +131185,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -131075,6 +131329,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -135001,7 +135263,2775 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [], + "checks": [] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + }, + "schema": { + "title": "Branch With Protection", + "description": "Branch With Protection", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "commit": { + "title": "Commit", + "description": "Commit", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "sha": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" + ] + }, + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "string" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "html", + "self" + ] + }, + "protected": { + "type": "boolean" + }, + "protection": { + "title": "Branch Protection", + "description": "Branch Protection", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "required_status_checks": { + "title": "Protected Branch Required Status Check", + "description": "Protected Branch Required Status Check", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enforcement_level": { + "type": "string" + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + } + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string" + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string" + }, + "strict": { + "type": "boolean" + } + }, + "required": [ + "contexts", + "checks" + ] + }, + "enforce_admins": { + "title": "Protected Branch Admin Enforced", + "description": "Protected Branch Admin Enforced", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "required_pull_request_reviews": { + "title": "Protected Branch Pull Request Review", + "description": "Protected Branch Pull Request Review", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions" + ] + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "users": { + "description": "The list of users with review dismissal access.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams with review dismissal access.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps with review dismissal access.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + }, + "url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions\"" + ] + }, + "users_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users\"" + ] + }, + "teams_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams\"" + ] + } + } + }, + "bypass_pull_request_allowances": { + "type": "object", + "description": "Allow specific users, teams, or apps to bypass pull request requirements.", + "properties": { + "users": { + "description": "The list of users allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + } + }, + "dismiss_stale_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "require_code_owner_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "required_approving_review_count": { + "type": "integer", + "minimum": 0, + "maximum": 6, + "examples": [ + 2 + ] + } + }, + "required": [ + "dismiss_stale_reviews", + "require_code_owner_reviews" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "name": { + "type": "string", + "examples": [ + "\"branch/with/protection\"" + ] + }, + "protection_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection\"" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + } + } + }, + "protection_url": { + "type": "string", + "format": "uri" + }, + "pattern": { + "type": "string", + "examples": [ + "\"mas*\"" + ] + }, + "required_approving_review_count": { + "type": "integer", + "examples": [ + 1 + ] + } + }, + "required": [ + "name", + "commit", + "_links", + "protection", + "protected", + "protection_url" + ] + } } } ], @@ -141330,7 +144360,2001 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [], + "teams": [], + "apps": [] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [], + "teams": [], + "apps": [] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + }, + "schema": { + "title": "Protected Branch", + "description": "Branch protections protect branches", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "required_status_checks": { + "title": "Status Check Policy", + "description": "Status Check Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks" + ] + }, + "strict": { + "type": "boolean", + "examples": [ + true + ] + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string", + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks/contexts" + ] + } + }, + "required": [ + "url", + "contexts_url", + "strict", + "contexts", + "checks" + ] + }, + "required_pull_request_reviews": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "dismiss_stale_reviews": { + "type": "boolean" + }, + "require_code_owner_reviews": { + "type": "boolean" + }, + "required_approving_review_count": { + "type": "integer" + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "users", + "teams" + ] + }, + "bypass_pull_request_allowances": { + "type": "object", + "properties": { + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "users", + "teams" + ] + } + }, + "required": [ + "url" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "enforce_admins": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "url", + "enabled" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + } + }, + "required": [ + "url" + ] + } } } ], @@ -145875,7 +150899,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -145885,8 +150909,14 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding status checks to a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -145973,7 +151003,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -145983,8 +151013,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example updating status checks for a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -146066,7 +151101,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -146076,8 +151111,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing status checks from a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -148771,7 +153811,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -148781,8 +153821,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -149070,7 +154115,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -149080,8 +154125,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -149369,7 +154419,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -149379,8 +154429,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -149925,7 +154980,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -149935,8 +154990,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -150191,7 +155251,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -150201,8 +155261,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -150457,7 +155522,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -150467,8 +155532,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -161601,8 +166671,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -161675,6 +166746,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -164760,8 +169835,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -164834,6 +169910,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -167437,8 +172517,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -167511,6 +172592,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -170533,8 +175618,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -170607,6 +175693,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -173736,8 +178826,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -173810,6 +178901,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -174883,6 +179978,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -176285,6 +181387,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -177784,7 +182893,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -178134,6 +183244,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -178421,7 +183538,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -178771,6 +183889,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -179010,6 +184135,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -179250,6 +184376,33 @@ "6c81cd8e-b078-4ac3-a3be-1dad7dbd0b53" ] } + }, + { + "name": "direction", + "description": "

The direction to sort the results by.

", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "sort", + "description": "

The property by which to sort the results.

", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created" + ], + "default": "created" + } } ], "bodyParameters": [], @@ -179861,7 +185014,7 @@ "description": "

Service unavailable

" } ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • analysis_key
  • \n
  • environment
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • category
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "subcategory": "code-scanning" }, { @@ -182954,8 +188107,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -183028,6 +188182,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -183567,6 +188725,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -183872,14 +189040,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -186134,8 +191303,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -186208,6 +191378,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -186747,6 +191921,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -186932,14 +192116,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -189194,8 +194379,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -189268,6 +194454,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -189807,6 +194997,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -190546,14 +195746,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -192808,8 +198009,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -192882,6 +198084,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -193421,6 +198627,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -193607,14 +198823,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -195869,8 +201086,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -195943,6 +201161,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -196482,6 +201704,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -199284,8 +204516,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -199358,6 +204591,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -199897,6 +205134,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -200212,14 +205459,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -202474,8 +207722,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -202548,6 +207797,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -203087,6 +208340,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -203269,14 +208532,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -205531,8 +210795,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -205605,6 +210870,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -206144,6 +211413,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -206370,14 +211649,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -208632,8 +213912,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -208706,6 +213987,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -209245,6 +214530,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -209498,14 +214793,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -211760,8 +217056,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -211834,6 +217131,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -212373,6 +217674,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -212946,14 +218257,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -215208,8 +220520,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -215282,6 +220595,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -215821,6 +221138,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -216063,14 +221390,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -218325,8 +223653,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -218399,6 +223728,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -218938,6 +224271,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -222130,8 +227473,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -222204,6 +227548,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -222743,6 +228091,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -223081,14 +228439,15 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [] + "recent_folders": [], + "template": null }, "schema": { "type": "object", @@ -225343,8 +230702,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -225417,6 +230777,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -225956,6 +231320,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -229167,8 +234541,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -229241,6 +234616,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -232201,8 +237580,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -232275,6 +237655,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -235390,8 +240774,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -235464,6 +240849,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -236161,8 +241550,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permissions": "write" + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -238196,8 +243588,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -238270,6 +243663,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -241040,8 +246437,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -241114,6 +246512,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -246220,8 +251622,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -246294,6 +251697,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -247864,8 +253271,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -247938,6 +253346,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -249451,6 +254863,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] }, @@ -252032,6 +257448,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] } @@ -256375,8 +261795,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -256449,6 +261870,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -260003,8 +265428,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -260077,6 +265503,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -289702,8 +295132,12 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "limit": "collaborators_only", + "expiry": "one_day" + }, "parameters": { "owner": "OWNER", "repo": "REPO" @@ -290540,6 +295974,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -292984,8 +298424,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -293058,6 +298499,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -294040,6 +299485,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -296484,8 +301935,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -296558,6 +302010,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -297394,7 +302850,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ], "schema": { @@ -297457,6 +302914,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -299901,8 +305364,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -299975,6 +305439,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -300751,7 +306219,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -300811,6 +306280,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -303255,8 +308730,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -303329,6 +308805,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -304072,7 +309552,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -304132,6 +309613,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -306576,8 +312063,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -306650,6 +312138,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -307245,6 +312737,18 @@ "closed" ] }, + { + "type": "string or null", + "name": "state_reason", + "in": "body", + "description": "

The reason for the current state

", + "enum": [ + "completed", + "not_planned", + "reopened", + null + ] + }, { "type": "null or string or integer or string or integer", "name": "milestone", @@ -307449,7 +312953,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -307509,6 +313014,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -309953,8 +315464,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -310027,6 +315539,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -311179,6 +316695,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -313623,8 +319145,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -313697,6 +319220,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -314779,7 +320306,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -314839,6 +320367,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -317283,8 +322817,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -317357,6 +322892,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -318094,7 +323633,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -318154,6 +323694,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -320598,8 +326144,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -320672,6 +326219,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -325303,7 +330854,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ], @@ -325595,6 +331147,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -328039,8 +333597,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -328113,6 +333672,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -330247,7 +335810,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } }, "schema": { @@ -330536,6 +336100,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -332980,8 +338550,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -333054,6 +338625,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -358106,6 +363681,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -360550,8 +366131,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -360624,6 +366206,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -369318,8 +374904,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -369392,6 +374979,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -371311,8 +376902,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -371385,6 +376977,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -373276,8 +378872,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -373350,6 +378947,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -375747,8 +381348,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -375821,6 +381423,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -379581,8 +385187,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -379655,6 +385262,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -381573,8 +387184,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -381647,6 +387259,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -383531,8 +389147,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -383605,6 +389222,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -385991,8 +391612,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -386065,6 +391687,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -386927,6 +392553,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -387130,6 +392798,42 @@ "name": "blog", "in": "body", "description": "" + }, + { + "type": "boolean", + "name": "advanced_security_enabled_for_new_repositories", + "in": "body", + "description": "

Whether GitHub Advanced Security is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "dependabot_alerts_enabled_for_new_repositories", + "in": "body", + "description": "

Whether Dependabot alerts is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "dependabot_security_updates_enabled_for_new_repositories", + "in": "body", + "description": "

Whether Dependabot security updates is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "dependency_graph_enabled_for_new_repositories", + "in": "body", + "description": "

Whether dependency graph is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "secret_scanning_enabled_for_new_repositories", + "in": "body", + "description": "

Whether secret scanning is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "secret_scanning_push_protection_enabled_for_new_repositories", + "in": "body", + "description": "

Whether secret scanning push protection is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" } ], "enabledForGitHubApps": true, @@ -387558,6 +393262,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -388651,14 +394397,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -388803,6 +394541,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -389141,6 +394887,87 @@ ], "subcategory": "orgs" }, + { + "serverUrl": "https://api.github.com", + "verb": "post", + "requestPath": "/orgs/{org}/{security_product}/{enablement}", + "title": "Enable or disable a security feature for an organization", + "category": "orgs", + "subcategory": "orgs", + "parameters": [ + { + "name": "org", + "description": "

The organization name. The name is not case sensitive.

", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "security_product", + "in": "path", + "description": "

The security feature to enable or disable.

", + "required": true, + "schema": { + "type": "string", + "enum": [ + "dependency_graph", + "dependabot_alerts", + "dependabot_security_updates", + "advanced_security", + "secret_scanning", + "secret_scanning_push_protection" + ] + } + }, + { + "name": "enablement", + "in": "path", + "description": "

The action to take.

\n

enable_all means to enable the specified security feature for all repositories in the organization.\ndisable_all means to disable the specified security feature for all repositories in the organization.

", + "required": true, + "schema": { + "type": "string", + "enum": [ + "enable_all", + "disable_all" + ] + } + } + ], + "bodyParameters": [], + "enabledForGitHubApps": true, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG", + "security_product": "SECURITY_PRODUCT", + "enablement": "ENABLEMENT" + } + }, + "response": { + "statusCode": "204", + "description": "

Action started

" + } + } + ], + "previews": [], + "descriptionHTML": "

Enables or disables the specified security feature for all repositories in an organization.

\n

To use this endpoint, you must be an organization owner or be member of a team with the security manager role.\nA token with the 'write:org' scope is also required.

\n

GitHub Apps must have the organization_administration:write permission to use this endpoint.

\n

For more information, see \"Managing security managers in your organization.\"

", + "statusCodes": [ + { + "httpStatusCode": "204", + "description": "

Action started

" + }, + { + "httpStatusCode": "422", + "description": "

The action could not be taken due to an in progress enablement, or a policy is preventing enablement

" + } + ] + }, { "serverUrl": "https://api.github.com", "verb": "get", @@ -389953,11 +395780,70 @@ "custom_roles": [ { "id": 8030, - "name": "Developer" + "name": "Security Engineer", + "description": "Able to contribute code and maintain the security pipeline", + "base_role": "maintain", + "permissions": [ + "delete_alerts_code_scanning" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-04T22:19:11Z", + "updated_at": "2022-07-04T22:20:11Z" }, { "id": 8031, - "name": "Designer" + "name": "Community manager", + "description": "Able to handle all the community interactions without being able to contribute code", + "base_role": "read", + "permissions": [ + "mark_as_duplicate", + "manage_settings_pages", + "manage_settings_wiki", + "set_social_preview", + "edit_repo_metadata", + "toggle_discussion_comment_minimize" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-05T12:01:11Z", + "updated_at": "2022-07-05T12:20:11Z" } ] }, @@ -389985,6 +395871,199 @@ "name": { "description": "The name of the custom role.", "type": "string" + }, + "description": { + "description": "A short description about who this role is for or what permissions it grants.", + "type": [ + "string", + "null" + ] + }, + "base_role": { + "type": "string", + "description": "The system role from which this role inherits permissions.", + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + "permissions": { + "description": "A list of additional permissions included in this role.", + "type": "array", + "items": { + "type": "string" + } + }, + "organization": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" } }, "required": [ @@ -389999,13 +396078,837 @@ } ], "previews": [], - "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", + "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

To use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with admin:org repo scope.\nGitHub Apps must have the organization_custom_roles:read organization permission to use this endpoint.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", "statusCodes": [ { "httpStatusCode": "200", "description": "

Response - list of custom role names

" } ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "post", + "requestPath": "/orgs/{org}/custom_roles", + "title": "Create a custom role", + "category": "orgs", + "subcategory": "custom-roles", + "parameters": [ + { + "name": "org", + "description": "

The organization name. The name is not case sensitive.

", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [ + { + "type": "string", + "name": "name", + "in": "body", + "description": "

The name of the custom role.

", + "isRequired": true + }, + { + "type": "string", + "name": "description", + "in": "body", + "description": "

A short description about the intended usage of this role or what permissions it grants.

" + }, + { + "type": "string", + "name": "base_role", + "in": "body", + "description": "

The system role from which this role inherits permissions.

", + "isRequired": true, + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + { + "type": "array of strings", + "name": "permissions", + "in": "body", + "description": "

A list of additional permissions included in this role.

", + "isRequired": true + } + ], + "enabledForGitHubApps": true, + "codeExamples": [ + { + "key": "default", + "request": { + "contentType": "application/json", + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label" + ] + }, + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "201", + "contentType": "application/json", + "description": "

Response

", + "example": { + "id": 8030, + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-04T22:19:11Z", + "updated_at": "2022-07-04T22:19:11Z" + }, + "schema": { + "title": "Organization Custom Repository Role", + "description": "Custom repository roles created by organization administrators", + "type": "object", + "properties": { + "id": { + "description": "The unique identifier of the custom role.", + "type": "integer" + }, + "name": { + "description": "The name of the custom role.", + "type": "string" + }, + "description": { + "description": "A short description about who this role is for or what permissions it grants.", + "type": [ + "string", + "null" + ] + }, + "base_role": { + "type": "string", + "description": "The system role from which this role inherits permissions.", + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + "permissions": { + "description": "A list of additional permissions included in this role.", + "type": "array", + "items": { + "type": "string" + } + }, + "organization": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "id", + "name" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

Note: This operation is in beta and is subject to change.

\n

Creates a custom repository role that can be used by all repositories owned by the organization.

\n

To use this endpoint the authenticated user must be an administrator for the organization and must use an access token with admin:org scope.\nGitHub Apps must have the organization_custom_roles:write organization permission to use this endpoint.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization.\"

", + "statusCodes": [ + { + "httpStatusCode": "201", + "description": "

Created

" + }, + { + "httpStatusCode": "404", + "description": "

Resource not found

" + }, + { + "httpStatusCode": "422", + "description": "

Validation failed

" + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "patch", + "requestPath": "/orgs/{org}/custom_roles/{role_id}", + "title": "Update a custom role", + "category": "orgs", + "subcategory": "custom-roles", + "parameters": [ + { + "name": "org", + "description": "

The organization name. The name is not case sensitive.

", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "role_id", + "description": "

The unique identifier of the role.

", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "bodyParameters": [ + { + "type": "string", + "name": "name", + "in": "body", + "description": "

The name of the custom role.

" + }, + { + "type": "string", + "name": "description", + "in": "body", + "description": "

A short description about who this role is for or what permissions it grants.

" + }, + { + "type": "string", + "name": "base_role", + "in": "body", + "description": "

The system role from which this role inherits permissions.

", + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + { + "type": "array of strings", + "name": "permissions", + "in": "body", + "description": "

A list of additional permissions included in this role. If specified, these permissions will replace any currently set on the role.

" + } + ], + "enabledForGitHubApps": true, + "codeExamples": [ + { + "key": "default", + "request": { + "contentType": "application/json", + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label", + "remove_label" + ] + }, + "parameters": { + "org": "ORG", + "role_id": "ROLE_ID" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

Response

", + "example": { + "id": 8030, + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label", + "remove_label" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-04T22:19:11Z", + "updated_at": "2022-07-04T22:19:11Z" + }, + "schema": { + "title": "Organization Custom Repository Role", + "description": "Custom repository roles created by organization administrators", + "type": "object", + "properties": { + "id": { + "description": "The unique identifier of the custom role.", + "type": "integer" + }, + "name": { + "description": "The name of the custom role.", + "type": "string" + }, + "description": { + "description": "A short description about who this role is for or what permissions it grants.", + "type": [ + "string", + "null" + ] + }, + "base_role": { + "type": "string", + "description": "The system role from which this role inherits permissions.", + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + "permissions": { + "description": "A list of additional permissions included in this role.", + "type": "array", + "items": { + "type": "string" + } + }, + "organization": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "id", + "name" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

Note: This operation is in beta and subject to change.

\n

Updates a custom repository role that can be used by all repositories owned by the organization.

\n

To use this endpoint the authenticated user must be an administrator for the organization and must use an access token with admin:org scope.\nGitHub Apps must have the organization_custom_roles:write organization permission to use this endpoint.

\n

For more information about custom repository roles, see \"Managing custom repository roles for an organization.\"

", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

OK

" + }, + { + "httpStatusCode": "404", + "description": "

Resource not found

" + }, + { + "httpStatusCode": "422", + "description": "

Validation failed

" + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "delete", + "requestPath": "/orgs/{org}/custom_roles/{role_id}", + "title": "Delete a custom role", + "category": "orgs", + "subcategory": "custom-roles", + "parameters": [ + { + "name": "org", + "description": "

The organization name. The name is not case sensitive.

", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "role_id", + "description": "

The unique identifier of the role.

", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "bodyParameters": [], + "enabledForGitHubApps": true, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG", + "role_id": "ROLE_ID" + } + }, + "response": { + "statusCode": "204", + "description": "

Response

" + } + } + ], + "previews": [], + "descriptionHTML": "

Note: This operation is in beta and is subject to change.

\n

Deletes a custom role from an organization. Once the custom role has been deleted, any\nuser, team, or invitation with the deleted custom role will be reassigned the inherited role.

\n

To use this endpoint the authenticated user must be an administrator for the organization and must use an access token with admin:org scope.\nGitHub Apps must have the organization_custom_roles:write organization permission to use this endpoint.

\n

For more information about custom repository roles, see \"Managing custom repository roles for an organization.\"

", + "statusCodes": [ + { + "httpStatusCode": "204", + "description": "

No Content

" + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/orgs/{org}/fine_grained_permissions", + "title": "List fine-grained permissions for an organization", + "category": "orgs", + "subcategory": "custom-roles", + "parameters": [ + { + "name": "org", + "description": "

The organization name. The name is not case sensitive.

", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "bodyParameters": [], + "enabledForGitHubApps": true, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "org": "ORG" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

Response

", + "example": [ + { + "name": "add_assignee", + "description": "Assign or remove a user" + }, + { + "name": "remove_assignee", + "description": "Remove an assigned user" + }, + { + "name": "add_label", + "description": "Add or remove a label" + } + ], + "schema": { + "type": "array", + "items": { + "title": "Organization Fine-Grained Permission", + "description": "Fine-grained permissions available for the organization", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "name", + "description" + ] + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

Note: This operation is in beta and subject to change.

\n

Lists the fine-grained permissions available for an organization.

\n

To use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with admin:org repo scope.\nGitHub Apps must have the organization_custom_roles:read organization permission to use this endpoint.

", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

OK

" + } + ] } ], "members": [ @@ -391661,10 +398564,6 @@ "httpStatusCode": "200", "description": "

OK

" }, - { - "httpStatusCode": "302", - "description": "

Response if requester is not an organization member

" - }, { "httpStatusCode": "422", "description": "

Validation failed

" @@ -399356,8 +406255,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -399430,6 +406330,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -401932,8 +408836,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -402006,6 +408911,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -405402,8 +412311,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -405476,6 +412386,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -408027,8 +414941,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -408101,6 +415016,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -411457,8 +418376,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -411531,6 +418451,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -414100,8 +421024,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -414174,6 +421099,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -427541,8 +434470,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -427615,6 +434545,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -429185,8 +436119,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -429259,6 +436194,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -437588,6 +444527,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -442499,6 +449442,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -450660,8 +457607,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -450734,6 +457682,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -452304,8 +459256,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -452378,6 +459331,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -456338,8 +463295,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -456412,6 +463370,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -457982,8 +464944,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -458056,6 +465019,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479609,8 +486576,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -479683,6 +486651,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -480076,7 +487048,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -481573,8 +488545,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -481647,6 +488620,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -484250,8 +491227,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -484324,6 +491302,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -486049,8 +493031,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -486123,6 +493106,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -487504,8 +494491,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -487578,6 +494566,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -488045,7 +495037,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -490598,8 +497590,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -490672,6 +497665,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -492397,8 +499394,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -492471,6 +499469,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -493852,8 +500854,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -493926,6 +500929,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -497741,8 +504748,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -497815,6 +504823,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -499736,8 +506748,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -499810,6 +506823,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -499892,7 +506909,7 @@ } ], "previews": [], - "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", + "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", "statusCodes": [ { "httpStatusCode": "201", @@ -501897,8 +508914,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -501971,6 +508989,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -503790,8 +510812,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -503864,6 +510887,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -505579,8 +512606,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -505653,6 +512681,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -507864,8 +514896,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -507938,6 +514971,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -508280,14 +515317,18 @@ ] }, "is_alphanumeric": { - "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference is a legacy autolink that only matches numeric characters.", - "type": "boolean" + "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference only matches numeric characters.", + "type": "boolean", + "examples": [ + true + ] } }, "required": [ "id", "key_prefix", - "url_template" + "url_template", + "is_alphanumeric" ] } } @@ -508335,15 +515376,22 @@ "type": "string", "name": "key_prefix", "in": "body", - "description": "

The prefix appended by alphanumeric characters will generate a link any time it is found in an issue, pull request, or commit.

", + "description": "

This prefix appended by certain characters will generate a link any time it is found in an issue, pull request, or commit.

", "isRequired": true }, { "type": "string", "name": "url_template", "in": "body", - "description": "

The URL must contain <num> for the reference number. <num> matches alphanumeric characters A-Z (case insensitive), 0-9, and -.

", + "description": "

The URL must contain <num> for the reference number. <num> matches different characters depending on the value of is_alphanumeric.

", "isRequired": true + }, + { + "type": "boolean", + "name": "is_alphanumeric", + "in": "body", + "description": "

Whether this autolink reference matches alphanumeric characters. If true, the <num> parameter of the url_template matches alphanumeric characters A-Z (case insensitive), 0-9, and -. If false, this autolink reference only matches numeric characters.

", + "default": "true" } ], "enabledForGitHubApps": true, @@ -508356,7 +515404,8 @@ "acceptHeader": "application/vnd.github.v3+json", "bodyParameters": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true }, "parameters": { "owner": "OWNER", @@ -508399,14 +515448,18 @@ ] }, "is_alphanumeric": { - "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference is a legacy autolink that only matches numeric characters.", - "type": "boolean" + "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference only matches numeric characters.", + "type": "boolean", + "examples": [ + true + ] } }, "required": [ "id", "key_prefix", - "url_template" + "url_template", + "is_alphanumeric" ] } } @@ -508511,14 +515564,18 @@ ] }, "is_alphanumeric": { - "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference is a legacy autolink that only matches numeric characters.", - "type": "boolean" + "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference only matches numeric characters.", + "type": "boolean", + "examples": [ + true + ] } }, "required": [ "id", "key_prefix", - "url_template" + "url_template", + "is_alphanumeric" ] } } @@ -511108,7 +518165,7 @@ "type": "string", "name": "sha", "in": "body", - "description": "

The blob SHA of the file being replaced.

", + "description": "

The blob SHA of the file being deleted.

", "isRequired": true }, { @@ -514038,8 +521095,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -514112,6 +521170,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -514405,6 +521467,12 @@ "name": "name", "in": "body", "description": "

When forking from an existing repository, a new name for the fork.

" + }, + { + "type": "boolean", + "name": "default_branch_only", + "in": "body", + "description": "

When forking from an existing repository, fork with only the default branch.

" } ], "enabledForGitHubApps": true, @@ -516888,8 +523956,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -516962,6 +524031,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -518687,8 +525760,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -518761,6 +525835,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -520142,8 +527220,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -520216,6 +527295,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -525382,8 +532465,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -525456,6 +532540,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -528274,8 +535362,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -528348,6 +535437,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -528847,7 +535940,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] }, @@ -531210,8 +538304,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -531284,6 +538379,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -543911,8 +551010,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -543985,6 +551085,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -546600,8 +553704,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -546674,6 +553779,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -552533,8 +559642,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -552607,6 +559717,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -555216,8 +562330,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -555290,6 +562405,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -575352,6 +582471,487 @@ } ] } + ], + "ssh-signing-keys": [ + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/user/ssh_signing_keys", + "title": "List SSH signing keys for the authenticated user", + "category": "users", + "subcategory": "ssh-signing-keys", + "parameters": [ + { + "name": "per_page", + "description": "

The number of results per page (max 100).

", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "

Page number of the results to fetch.

", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "bodyParameters": [], + "enabledForGitHubApps": false, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json" + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

Response

", + "example": [ + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + }, + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJy931234", + "id": 3, + "url": "https://api.github.com/user/keys/3", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAB", + "created_at": "2020-07-11T21:31:57Z" + } + ], + "schema": { + "type": "array", + "items": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

Lists the SSH signing keys for the authenticated user's GitHub account. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least read:ssh_signing_key scope. For more information, see \"Understanding scopes for OAuth apps.\"

", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

OK

" + }, + { + "httpStatusCode": "304", + "description": "

Not modified

" + }, + { + "httpStatusCode": "401", + "description": "

Requires authentication

" + }, + { + "httpStatusCode": "403", + "description": "

Forbidden

" + }, + { + "httpStatusCode": "404", + "description": "

Resource not found

" + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "post", + "requestPath": "/user/ssh_signing_keys", + "title": "Create a SSH signing key for the authenticated user", + "category": "users", + "subcategory": "ssh-signing-keys", + "parameters": [], + "bodyParameters": [ + { + "type": "string", + "name": "title", + "in": "body", + "description": "

A descriptive name for the new key.

" + }, + { + "type": "string", + "name": "key", + "in": "body", + "description": "

The public SSH key to add to your GitHub account. For more information, see \"Checking for existing SSH keys.\"

", + "isRequired": true + } + ], + "enabledForGitHubApps": false, + "codeExamples": [ + { + "key": "default", + "request": { + "contentType": "application/json", + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json" + }, + "response": { + "statusCode": "201", + "contentType": "application/json", + "description": "

Response

", + "example": { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + }, + "schema": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

Creates an SSH signing key for the authenticated user's GitHub account. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least write:ssh_signing_key scope. For more information, see \"Understanding scopes for OAuth apps.\"

", + "statusCodes": [ + { + "httpStatusCode": "201", + "description": "

Created

" + }, + { + "httpStatusCode": "304", + "description": "

Not modified

" + }, + { + "httpStatusCode": "401", + "description": "

Requires authentication

" + }, + { + "httpStatusCode": "403", + "description": "

Forbidden

" + }, + { + "httpStatusCode": "404", + "description": "

Resource not found

" + }, + { + "httpStatusCode": "422", + "description": "

Validation failed

" + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/user/ssh_signing_keys/{ssh_signing_key_id}", + "title": "Get an SSH signing key for the authenticated user", + "category": "users", + "subcategory": "ssh-signing-keys", + "parameters": [ + { + "name": "ssh_signing_key_id", + "description": "

The unique identifier of the SSH signing key.

", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "bodyParameters": [], + "enabledForGitHubApps": false, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "ssh_signing_key_id": "SSH_SIGNING_KEY_ID" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

Response

", + "example": { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + }, + "schema": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + } + } + } + ], + "previews": [], + "descriptionHTML": "

Gets extended details for an SSH signing key. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least read:ssh_signing_key scope. For more information, see \"Understanding scopes for OAuth apps.\"

", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

OK

" + }, + { + "httpStatusCode": "304", + "description": "

Not modified

" + }, + { + "httpStatusCode": "401", + "description": "

Requires authentication

" + }, + { + "httpStatusCode": "403", + "description": "

Forbidden

" + }, + { + "httpStatusCode": "404", + "description": "

Resource not found

" + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "delete", + "requestPath": "/user/ssh_signing_keys/{ssh_signing_key_id}", + "title": "Delete an SSH signing key for the authenticated user", + "category": "users", + "subcategory": "ssh-signing-keys", + "parameters": [ + { + "name": "ssh_signing_key_id", + "description": "

The unique identifier of the SSH signing key.

", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "bodyParameters": [], + "enabledForGitHubApps": false, + "codeExamples": [ + { + "key": "204", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "ssh_signing_key_id": "SSH_SIGNING_KEY_ID" + } + }, + "response": { + "statusCode": "204", + "description": "

Response

" + } + } + ], + "previews": [], + "descriptionHTML": "

Deletes an SSH signing key from the authenticated user's GitHub account. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least admin:ssh_signing_key scope. For more information, see \"Understanding scopes for OAuth apps.\"

", + "statusCodes": [ + { + "httpStatusCode": "204", + "description": "

No Content

" + }, + { + "httpStatusCode": "304", + "description": "

Not modified

" + }, + { + "httpStatusCode": "401", + "description": "

Requires authentication

" + }, + { + "httpStatusCode": "403", + "description": "

Forbidden

" + }, + { + "httpStatusCode": "404", + "description": "

Resource not found

" + } + ] + }, + { + "serverUrl": "https://api.github.com", + "verb": "get", + "requestPath": "/users/{username}/ssh_signing_keys", + "title": "List SSH signing keys for a user", + "category": "users", + "subcategory": "ssh-signing-keys", + "parameters": [ + { + "name": "username", + "description": "

The handle for the GitHub user account.

", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "per_page", + "description": "

The number of results per page (max 100).

", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "

Page number of the results to fetch.

", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "bodyParameters": [], + "enabledForGitHubApps": true, + "codeExamples": [ + { + "key": "default", + "request": { + "description": "Example", + "acceptHeader": "application/vnd.github.v3+json", + "parameters": { + "username": "USERNAME" + } + }, + "response": { + "statusCode": "200", + "contentType": "application/json", + "description": "

Response

", + "example": [ + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + }, + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJy931234", + "id": 3, + "url": "https://api.github.com/user/keys/3", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAB", + "created_at": "2020-07-11T21:31:57Z" + } + ], + "schema": { + "type": "array", + "items": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + } + } + } + } + ], + "previews": [], + "descriptionHTML": "

Lists the SSH signing keys for a user. This operation is accessible by anyone.

", + "statusCodes": [ + { + "httpStatusCode": "200", + "description": "

OK

" + } + ] + } ] }, "webhooks": { diff --git a/lib/rest/static/decorated/ghes-3.2.json b/lib/rest/static/decorated/ghes-3.2.json index 6b31a9783b..ee7cb22c2e 100644 --- a/lib/rest/static/decorated/ghes-3.2.json +++ b/lib/rest/static/decorated/ghes-3.2.json @@ -3136,6 +3136,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -6431,6 +6435,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -12113,6 +12121,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14669,6 +14681,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -16138,6 +16154,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -18157,6 +18177,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -19626,6 +19650,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -21675,6 +21703,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -23154,6 +23186,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -26881,6 +26917,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -28981,6 +29021,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -31706,6 +31750,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -33806,6 +33854,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -36167,7 +36219,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "title": "List workflow runs", + "title": "List workflow runs for a workflow", "category": "actions", "subcategory": "workflow-runs", "parameters": [ @@ -38710,6 +38762,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -40810,6 +40866,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -42005,6 +42065,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -44431,6 +44497,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -45947,6 +46017,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -48373,6 +48449,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -49883,6 +49963,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -52309,6 +52395,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -53813,6 +53903,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -56239,6 +56335,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -57733,6 +57833,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -60159,6 +60265,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -61674,6 +61784,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -64100,6 +64216,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -65594,6 +65714,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -68020,6 +68146,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -69525,6 +69655,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -71951,6 +72087,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -73456,6 +73596,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -75882,6 +76028,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -79425,6 +79575,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -81818,6 +81972,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -84573,6 +84731,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -87290,6 +87452,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -88805,6 +88971,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -90629,6 +90799,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -92001,6 +92175,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -94684,6 +94862,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -96969,6 +97151,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -98536,14 +98722,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -99473,14 +99651,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -100103,15 +100273,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -100563,14 +100724,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -102089,6 +102242,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -103189,14 +103346,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -104130,14 +104279,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -105069,14 +105210,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -107026,6 +107159,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -107836,14 +107973,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -109830,6 +109959,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -110600,14 +110733,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -111479,14 +111604,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -112126,15 +112243,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -112775,14 +112883,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -113665,14 +113765,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -114540,14 +114632,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -117204,7 +117288,2049 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [], + "checks": [] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + }, + "schema": { + "title": "Branch With Protection", + "description": "Branch With Protection", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "commit": { + "title": "Commit", + "description": "Commit", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "sha": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" + ] + }, + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "string" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "html", + "self" + ] + }, + "protected": { + "type": "boolean" + }, + "protection": { + "title": "Branch Protection", + "description": "Branch Protection", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "required_status_checks": { + "title": "Protected Branch Required Status Check", + "description": "Protected Branch Required Status Check", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enforcement_level": { + "type": "string" + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + } + }, + "contexts_url": { + "type": "string" + }, + "strict": { + "type": "boolean" + } + }, + "required": [ + "contexts" + ] + }, + "enforce_admins": { + "title": "Protected Branch Admin Enforced", + "description": "Protected Branch Admin Enforced", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "required_pull_request_reviews": { + "title": "Protected Branch Pull Request Review", + "description": "Protected Branch Pull Request Review", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions" + ] + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "users": { + "description": "The list of users with review dismissal access.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams with review dismissal access.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps with review dismissal access.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + }, + "url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions\"" + ] + }, + "users_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users\"" + ] + }, + "teams_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams\"" + ] + } + } + }, + "dismiss_stale_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "require_code_owner_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "required_approving_review_count": { + "type": "integer", + "minimum": 1, + "maximum": 6, + "examples": [ + 2 + ] + } + }, + "required": [ + "dismiss_stale_reviews", + "require_code_owner_reviews" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "name": { + "type": "string", + "examples": [ + "\"branch/with/protection\"" + ] + }, + "protection_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection\"" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + } + } + }, + "protection_url": { + "type": "string", + "format": "uri" + }, + "pattern": { + "type": "string", + "examples": [ + "\"mas*\"" + ] + }, + "required_approving_review_count": { + "type": "integer", + "examples": [ + 1 + ] + } + }, + "required": [ + "name", + "commit", + "_links", + "protection", + "protected", + "protection_url" + ] + } } } ], @@ -121965,7 +124091,1272 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [], + "teams": [], + "apps": [] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [], + "teams": [], + "apps": [] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + }, + "schema": { + "title": "Protected Branch", + "description": "Branch protections protect branches", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "required_status_checks": { + "title": "Status Check Policy", + "description": "Status Check Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks" + ] + }, + "strict": { + "type": "boolean", + "examples": [ + true + ] + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "contexts_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks/contexts" + ] + } + }, + "required": [ + "url", + "contexts_url", + "strict", + "contexts" + ] + }, + "required_pull_request_reviews": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "dismiss_stale_reviews": { + "type": "boolean" + }, + "require_code_owner_reviews": { + "type": "boolean" + }, + "required_approving_review_count": { + "type": "integer" + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "users", + "teams" + ] + } + }, + "required": [ + "url" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "enforce_admins": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "url", + "enabled" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + } + }, + "required": [ + "url" + ] + } } } ], @@ -125022,7 +128413,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -125032,8 +128423,14 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding status checks to a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -125120,7 +128517,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -125130,8 +128527,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example updating status checks for a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -125213,7 +128615,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -125223,8 +128625,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing status checks from a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -127918,7 +131325,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -127928,8 +131335,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -128217,7 +131629,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -128227,8 +131639,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -128516,7 +131933,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -128526,8 +131943,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129072,7 +132494,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -129082,8 +132504,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129338,7 +132765,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -129348,8 +132775,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129604,7 +133036,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -129614,8 +133046,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -140647,6 +144084,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -143702,6 +147143,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -146275,6 +149720,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -149267,6 +152716,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -152366,6 +155819,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -153450,7 +156907,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -153777,6 +157235,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -154054,7 +157519,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -154381,6 +157847,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -158378,6 +161851,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -161448,6 +164925,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -162139,8 +165620,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permissions": "write" + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -164150,6 +167634,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -166890,6 +170378,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -171974,6 +175466,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -173526,6 +177022,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -175041,6 +178541,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] }, @@ -177622,6 +181126,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] } @@ -181947,6 +185455,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -199790,14 +203302,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -201028,14 +204532,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -201831,14 +205327,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -217032,6 +220520,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -219458,6 +222952,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -220443,6 +223941,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -222869,6 +226373,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -223708,7 +227216,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ], "schema": { @@ -223771,6 +227280,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -226197,6 +229712,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -226976,7 +230495,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -227036,6 +230556,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -229462,6 +232988,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -230205,7 +233735,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -230265,6 +233796,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -232691,6 +236228,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -233288,6 +236829,18 @@ "closed" ] }, + { + "type": "string or null", + "name": "state_reason", + "in": "body", + "description": "

The reason for the current state

", + "enum": [ + "completed", + "not_planned", + "reopened", + null + ] + }, { "type": "null or string or integer or string or integer", "name": "milestone", @@ -233492,7 +237045,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -233552,6 +237106,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -235978,6 +239538,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -237130,6 +240694,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -239556,6 +243126,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -240641,7 +244215,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -240701,6 +244276,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -243127,6 +246708,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -243864,7 +247449,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -243924,6 +247510,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -246350,6 +249942,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -250988,7 +254584,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ], @@ -251280,6 +254877,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -253706,6 +257309,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -255842,7 +259449,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } }, "schema": { @@ -256131,6 +259739,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -258557,6 +262171,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -283613,6 +287231,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -286039,6 +289663,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -292855,14 +296483,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -293739,14 +297359,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -294638,14 +298250,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -295449,14 +299053,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -296352,14 +299948,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -297164,14 +300752,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -298005,14 +301585,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -298888,14 +302460,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -301134,14 +304698,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -302275,10 +305831,6 @@ "httpStatusCode": "200", "description": "

OK

" }, - { - "httpStatusCode": "302", - "description": "

Response if requester is not an organization member

" - }, { "httpStatusCode": "422", "description": "

Validation failed

" @@ -319123,6 +322675,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -320675,6 +324231,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -328992,6 +332552,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -333897,6 +337461,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -342055,6 +345623,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -343607,6 +347179,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -347549,6 +351125,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -349101,6 +352681,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -370551,6 +374135,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -370935,7 +374523,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -372410,6 +375998,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -374990,6 +378582,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -376633,6 +380229,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -377996,6 +381596,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -380713,6 +384317,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -382356,6 +385964,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -383719,6 +387331,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -384183,7 +387799,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -386703,6 +390319,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -388346,6 +391966,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -389709,6 +393333,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -393234,6 +396862,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -394961,6 +398593,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -395042,7 +398678,7 @@ } } ], - "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", + "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", "statusCodes": [ { "httpStatusCode": "201", @@ -397043,6 +400679,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -398837,6 +402477,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -400524,6 +404168,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -402711,6 +406359,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -405460,7 +409112,7 @@ "type": "string", "name": "sha", "in": "body", - "description": "

The blob SHA of the file being replaced.

", + "description": "

The blob SHA of the file being deleted.

", "isRequired": true }, { @@ -408366,6 +412018,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -411103,6 +414759,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -412746,6 +416406,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -414109,6 +417773,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -416468,6 +420136,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -419256,6 +422928,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -419751,7 +423427,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] }, @@ -422096,6 +425773,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -431120,6 +434801,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -433703,6 +437388,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -439488,6 +443177,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -442065,6 +445758,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/decorated/ghes-3.3.json b/lib/rest/static/decorated/ghes-3.3.json index 578de7a109..fd5cc64a3d 100644 --- a/lib/rest/static/decorated/ghes-3.3.json +++ b/lib/rest/static/decorated/ghes-3.3.json @@ -3147,6 +3147,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -6453,6 +6457,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -12146,6 +12154,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14713,6 +14725,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -16193,6 +16209,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -18223,6 +18243,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -19703,6 +19727,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -21763,6 +21791,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -23253,6 +23285,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -27128,6 +27164,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -29239,6 +29279,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -31975,6 +32019,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -34086,6 +34134,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -36447,7 +36499,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "title": "List workflow runs", + "title": "List workflow runs for a workflow", "category": "actions", "subcategory": "workflow-runs", "parameters": [ @@ -39001,6 +39053,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -41112,6 +41168,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -42307,6 +42367,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -44744,6 +44810,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -46260,6 +46330,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -48697,6 +48773,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -50207,6 +50287,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -52644,6 +52730,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54148,6 +54238,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -56585,6 +56681,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -58079,6 +58179,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -60516,6 +60622,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -62031,6 +62141,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -64468,6 +64584,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -65962,6 +66082,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -68399,6 +68525,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -69904,6 +70034,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -72341,6 +72477,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -73846,6 +73986,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -76283,6 +76429,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -79837,6 +79987,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -82241,6 +82395,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -85007,6 +85165,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -87736,6 +87898,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -89262,6 +89428,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -91098,6 +91268,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -92481,6 +92655,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -95175,6 +95353,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -97471,6 +97653,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -99038,14 +99224,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -99975,14 +100153,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -100605,15 +100775,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -101065,14 +101226,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -102602,6 +102755,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -103702,14 +103859,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -104643,14 +104792,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -105582,14 +105723,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -107550,6 +107683,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -108358,14 +108495,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -110363,6 +110492,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -111131,14 +111264,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -112010,14 +112135,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -112657,15 +112774,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -113306,14 +113414,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -114196,14 +114296,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -115071,14 +115163,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -117735,7 +117819,2049 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [], + "checks": [] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + }, + "schema": { + "title": "Branch With Protection", + "description": "Branch With Protection", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "commit": { + "title": "Commit", + "description": "Commit", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "sha": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" + ] + }, + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "string" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "html", + "self" + ] + }, + "protected": { + "type": "boolean" + }, + "protection": { + "title": "Branch Protection", + "description": "Branch Protection", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "required_status_checks": { + "title": "Protected Branch Required Status Check", + "description": "Protected Branch Required Status Check", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enforcement_level": { + "type": "string" + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + } + }, + "contexts_url": { + "type": "string" + }, + "strict": { + "type": "boolean" + } + }, + "required": [ + "contexts" + ] + }, + "enforce_admins": { + "title": "Protected Branch Admin Enforced", + "description": "Protected Branch Admin Enforced", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "required_pull_request_reviews": { + "title": "Protected Branch Pull Request Review", + "description": "Protected Branch Pull Request Review", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions" + ] + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "users": { + "description": "The list of users with review dismissal access.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams with review dismissal access.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps with review dismissal access.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + }, + "url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions\"" + ] + }, + "users_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users\"" + ] + }, + "teams_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams\"" + ] + } + } + }, + "dismiss_stale_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "require_code_owner_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "required_approving_review_count": { + "type": "integer", + "minimum": 1, + "maximum": 6, + "examples": [ + 2 + ] + } + }, + "required": [ + "dismiss_stale_reviews", + "require_code_owner_reviews" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "name": { + "type": "string", + "examples": [ + "\"branch/with/protection\"" + ] + }, + "protection_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection\"" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + } + } + }, + "protection_url": { + "type": "string", + "format": "uri" + }, + "pattern": { + "type": "string", + "examples": [ + "\"mas*\"" + ] + }, + "required_approving_review_count": { + "type": "integer", + "examples": [ + 1 + ] + } + }, + "required": [ + "name", + "commit", + "_links", + "protection", + "protected", + "protection_url" + ] + } } } ], @@ -122596,7 +124722,1272 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [], + "teams": [], + "apps": [] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [], + "teams": [], + "apps": [] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + }, + "schema": { + "title": "Protected Branch", + "description": "Branch protections protect branches", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "required_status_checks": { + "title": "Status Check Policy", + "description": "Status Check Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks" + ] + }, + "strict": { + "type": "boolean", + "examples": [ + true + ] + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "contexts_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks/contexts" + ] + } + }, + "required": [ + "url", + "contexts_url", + "strict", + "contexts" + ] + }, + "required_pull_request_reviews": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "dismiss_stale_reviews": { + "type": "boolean" + }, + "require_code_owner_reviews": { + "type": "boolean" + }, + "required_approving_review_count": { + "type": "integer" + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "users", + "teams" + ] + } + }, + "required": [ + "url" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "enforce_admins": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "url", + "enabled" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + } + }, + "required": [ + "url" + ] + } } } ], @@ -125641,7 +129032,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -125651,8 +129042,14 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding status checks to a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -125739,7 +129136,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -125749,8 +129146,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example updating status checks for a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -125832,7 +129234,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -125842,8 +129244,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing status checks from a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -128537,7 +131944,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -128547,8 +131954,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -128836,7 +132248,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -128846,8 +132258,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129135,7 +132552,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -129145,8 +132562,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129691,7 +133113,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -129701,8 +133123,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129957,7 +133384,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -129967,8 +133394,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -130223,7 +133655,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -130233,8 +133665,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -141356,6 +144793,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -144422,6 +147863,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -147006,6 +150451,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -150009,6 +153458,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -153119,6 +156572,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -154204,7 +157661,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -154531,6 +157989,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -154806,7 +158271,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -155133,6 +158599,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -159132,6 +162605,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -162213,6 +165690,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -162904,8 +166385,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permissions": "write" + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -164926,6 +168410,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -167677,6 +171165,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -172770,6 +176262,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -174333,6 +177829,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -175846,6 +179346,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] }, @@ -178427,6 +181931,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] } @@ -182757,6 +186265,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -200899,14 +204411,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -202137,14 +205641,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -202940,14 +206436,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -218141,6 +221629,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -220578,6 +224072,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -221560,6 +225058,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -223997,6 +227501,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -224833,7 +228341,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ], "schema": { @@ -224896,6 +228405,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -227333,6 +230848,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -228109,7 +231628,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -228169,6 +231689,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -230606,6 +234132,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -231349,7 +234879,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -231409,6 +234940,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -233846,6 +237383,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -234441,6 +237982,18 @@ "closed" ] }, + { + "type": "string or null", + "name": "state_reason", + "in": "body", + "description": "

The reason for the current state

", + "enum": [ + "completed", + "not_planned", + "reopened", + null + ] + }, { "type": "null or string or integer or string or integer", "name": "milestone", @@ -234645,7 +238198,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -234705,6 +238259,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -237142,6 +240702,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -238294,6 +241858,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -240731,6 +244301,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -241813,7 +245387,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -241873,6 +245448,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -244310,6 +247891,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -245047,7 +248632,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -245107,6 +248693,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -247544,6 +251136,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -252175,7 +255771,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ], @@ -252467,6 +256064,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -254904,6 +258507,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -257038,7 +260645,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } }, "schema": { @@ -257327,6 +260935,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -259764,6 +263378,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -284816,6 +288434,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -287253,6 +290877,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -294066,14 +297694,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -294950,14 +298570,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -295849,14 +299461,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -296660,14 +300264,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -297563,14 +301159,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -298375,14 +301963,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -299216,14 +302796,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -300099,14 +303671,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -302739,14 +306303,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -303880,10 +307436,6 @@ "httpStatusCode": "200", "description": "

OK

" }, - { - "httpStatusCode": "302", - "description": "

Response if requester is not an organization member

" - }, { "httpStatusCode": "422", "description": "

Validation failed

" @@ -320681,6 +324233,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -322244,6 +325800,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -330561,6 +334121,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -335466,6 +339030,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -343620,6 +347188,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -345183,6 +348755,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -349136,6 +352712,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -350699,6 +354279,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -372226,6 +375810,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -372613,7 +376201,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -374103,6 +377691,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -376699,6 +380291,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -378359,6 +381955,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -379733,6 +383333,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -380200,7 +383804,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -382738,6 +386342,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -384398,6 +388006,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -385772,6 +389384,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -389296,6 +392912,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -391035,6 +394655,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -391116,7 +394740,7 @@ } } ], - "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", + "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", "statusCodes": [ { "httpStatusCode": "201", @@ -393128,6 +396752,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -394934,6 +398562,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -396642,6 +400274,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -398840,6 +402476,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -399235,6 +402875,13 @@ "in": "body", "description": "

The URL must contain <num> for the reference number.

", "isRequired": true + }, + { + "type": "boolean", + "name": "is_alphanumeric", + "in": "body", + "description": "

Whether this autolink reference matches alphanumeric characters. If true, the <num> parameter of the url_template matches alphanumeric characters A-Z (case insensitive), 0-9, and -. If false, this autolink reference only matches numeric characters.

", + "default": "true" } ], "enabledForGitHubApps": true, @@ -399247,7 +402894,8 @@ "acceptHeader": "application/vnd.github.v3+json", "bodyParameters": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true }, "parameters": { "owner": "OWNER", @@ -401989,7 +405637,7 @@ "type": "string", "name": "sha", "in": "body", - "description": "

The blob SHA of the file being replaced.

", + "description": "

The blob SHA of the file being deleted.

", "isRequired": true }, { @@ -404906,6 +408554,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -407661,6 +411313,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -409321,6 +412977,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -410695,6 +414355,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -413181,6 +416845,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -415980,6 +419648,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -416473,7 +420145,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] }, @@ -418829,6 +422502,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -429161,6 +432838,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -431755,6 +435436,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -437545,6 +441230,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -440133,6 +443822,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/decorated/ghes-3.4.json b/lib/rest/static/decorated/ghes-3.4.json index 19da14652d..5bd77a25d3 100644 --- a/lib/rest/static/decorated/ghes-3.4.json +++ b/lib/rest/static/decorated/ghes-3.4.json @@ -3147,6 +3147,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -6453,6 +6457,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -12146,6 +12154,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14713,6 +14725,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -16193,6 +16209,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -18904,6 +18924,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -20384,6 +20408,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -23121,6 +23149,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -24611,6 +24643,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -29213,6 +29249,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -31324,6 +31364,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -34060,6 +34104,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -36171,6 +36219,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -38532,7 +38584,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "title": "List workflow runs", + "title": "List workflow runs for a workflow", "category": "actions", "subcategory": "workflow-runs", "parameters": [ @@ -41086,6 +41138,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -43197,6 +43253,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -44392,6 +44452,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -46829,6 +46895,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -48345,6 +48415,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -50782,6 +50858,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -52292,6 +52372,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -54729,6 +54815,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -56233,6 +56323,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -58670,6 +58766,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -60164,6 +60264,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -62601,6 +62707,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -64116,6 +64226,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -66553,6 +66669,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -68047,6 +68167,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -70484,6 +70610,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -71989,6 +72119,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -74426,6 +74562,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -75931,6 +76071,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -78368,6 +78514,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -81922,6 +82072,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -84326,6 +84480,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -87092,6 +87250,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -89821,6 +89983,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -91347,6 +91513,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -93183,6 +93353,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -94566,6 +94740,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -97260,6 +97438,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -99556,6 +99738,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -101123,14 +101309,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -102052,14 +102230,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -102674,15 +102844,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -103125,14 +103286,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -104654,6 +104807,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -105754,14 +105911,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -106687,14 +106836,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -107618,14 +107759,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -109578,6 +109711,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -110231,14 +110368,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -112228,6 +112357,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -112936,14 +113069,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -113807,14 +113932,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -114446,15 +114563,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -115086,14 +115194,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -118592,7 +118692,2775 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [], + "checks": [] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + }, + "schema": { + "title": "Branch With Protection", + "description": "Branch With Protection", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "commit": { + "title": "Commit", + "description": "Commit", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "sha": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" + ] + }, + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "string" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "html", + "self" + ] + }, + "protected": { + "type": "boolean" + }, + "protection": { + "title": "Branch Protection", + "description": "Branch Protection", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "required_status_checks": { + "title": "Protected Branch Required Status Check", + "description": "Protected Branch Required Status Check", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enforcement_level": { + "type": "string" + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + } + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string" + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string" + }, + "strict": { + "type": "boolean" + } + }, + "required": [ + "contexts", + "checks" + ] + }, + "enforce_admins": { + "title": "Protected Branch Admin Enforced", + "description": "Protected Branch Admin Enforced", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "required_pull_request_reviews": { + "title": "Protected Branch Pull Request Review", + "description": "Protected Branch Pull Request Review", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions" + ] + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "users": { + "description": "The list of users with review dismissal access.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams with review dismissal access.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps with review dismissal access.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + }, + "url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions\"" + ] + }, + "users_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users\"" + ] + }, + "teams_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams\"" + ] + } + } + }, + "bypass_pull_request_allowances": { + "type": "object", + "description": "Allow specific users, teams, or apps to bypass pull request requirements.", + "properties": { + "users": { + "description": "The list of users allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + } + }, + "dismiss_stale_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "require_code_owner_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "required_approving_review_count": { + "type": "integer", + "minimum": 0, + "maximum": 6, + "examples": [ + 2 + ] + } + }, + "required": [ + "dismiss_stale_reviews", + "require_code_owner_reviews" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "name": { + "type": "string", + "examples": [ + "\"branch/with/protection\"" + ] + }, + "protection_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection\"" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + } + } + }, + "protection_url": { + "type": "string", + "format": "uri" + }, + "pattern": { + "type": "string", + "examples": [ + "\"mas*\"" + ] + }, + "required_approving_review_count": { + "type": "integer", + "examples": [ + 1 + ] + } + }, + "required": [ + "name", + "commit", + "_links", + "protection", + "protected", + "protection_url" + ] + } } } ], @@ -124921,7 +127789,2001 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [], + "teams": [], + "apps": [] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [], + "teams": [], + "apps": [] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + }, + "schema": { + "title": "Protected Branch", + "description": "Branch protections protect branches", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "required_status_checks": { + "title": "Status Check Policy", + "description": "Status Check Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks" + ] + }, + "strict": { + "type": "boolean", + "examples": [ + true + ] + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string", + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks/contexts" + ] + } + }, + "required": [ + "url", + "contexts_url", + "strict", + "contexts", + "checks" + ] + }, + "required_pull_request_reviews": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "dismiss_stale_reviews": { + "type": "boolean" + }, + "require_code_owner_reviews": { + "type": "boolean" + }, + "required_approving_review_count": { + "type": "integer" + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "users", + "teams" + ] + }, + "bypass_pull_request_allowances": { + "type": "object", + "properties": { + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "users", + "teams" + ] + } + }, + "required": [ + "url" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "enforce_admins": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "url", + "enabled" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + } + }, + "required": [ + "url" + ] + } } } ], @@ -129466,7 +134328,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -129476,8 +134338,14 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding status checks to a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129564,7 +134432,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -129574,8 +134442,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example updating status checks for a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -129657,7 +134530,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -129667,8 +134540,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing status checks from a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -132362,7 +137240,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -132372,8 +137250,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -132661,7 +137544,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -132671,8 +137554,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -132960,7 +137848,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -132970,8 +137858,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -133516,7 +138409,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -133526,8 +138419,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -133782,7 +138680,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -133792,8 +138690,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -134048,7 +138951,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -134058,8 +138961,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -145179,6 +150087,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -148245,6 +153157,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -150829,6 +155745,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -153832,6 +158752,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -156942,6 +161866,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -158094,7 +163022,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -158436,6 +163365,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -158715,7 +163651,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -159057,6 +163994,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -159296,6 +164240,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -160147,7 +165092,7 @@ "description": "

Service unavailable

" } ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • analysis_key
  • \n
  • environment
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • category
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "subcategory": "code-scanning" }, { @@ -163070,6 +168015,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -166151,6 +171100,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -166842,8 +171795,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permissions": "write" + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -168864,6 +173820,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -171615,6 +176575,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -176708,6 +181672,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -178271,6 +183239,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -179784,6 +184756,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] }, @@ -182365,6 +187341,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] } @@ -186695,6 +191675,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -190230,6 +195214,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -208516,14 +213504,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -209746,14 +214726,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -210541,14 +215513,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -225734,6 +230698,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -228171,6 +233141,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -229153,6 +234127,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -231590,6 +236570,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -232426,7 +237410,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ], "schema": { @@ -232489,6 +237474,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -234926,6 +239917,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -235702,7 +240697,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -235762,6 +240758,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -238199,6 +243201,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -238942,7 +243948,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -239002,6 +244009,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -241439,6 +246452,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -242034,6 +247051,18 @@ "closed" ] }, + { + "type": "string or null", + "name": "state_reason", + "in": "body", + "description": "

The reason for the current state

", + "enum": [ + "completed", + "not_planned", + "reopened", + null + ] + }, { "type": "null or string or integer or string or integer", "name": "milestone", @@ -242238,7 +247267,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -242298,6 +247328,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -244735,6 +249771,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -245887,6 +250927,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -248324,6 +253370,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -249406,7 +254456,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -249466,6 +254517,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -251903,6 +256960,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -252640,7 +257701,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -252700,6 +257762,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -255137,6 +260205,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -259768,7 +264840,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ], @@ -260060,6 +265133,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -262497,6 +267576,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -264631,7 +269714,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } }, "schema": { @@ -264920,6 +270004,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -267357,6 +272447,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -292409,6 +297503,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -294846,6 +299946,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -302319,6 +307423,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -304231,6 +309339,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -306115,6 +311227,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -307979,6 +313095,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -309890,6 +315010,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -312131,6 +317255,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -313468,14 +318596,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -314344,14 +319464,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -315235,14 +320347,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -316038,14 +321142,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -316933,14 +322029,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -317737,14 +322825,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -318570,14 +323650,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -319445,14 +324517,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -322117,14 +327181,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -323058,7 +328114,7 @@ } ], "previews": [], - "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", + "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

To use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with admin:org repo scope.\nGitHub Apps must have the organization_custom_roles:read organization permission to use this endpoint.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", "statusCodes": [ { "httpStatusCode": "200", @@ -323345,10 +328401,6 @@ "httpStatusCode": "200", "description": "

OK

" }, - { - "httpStatusCode": "302", - "description": "

Response if requester is not an organization member

" - }, { "httpStatusCode": "422", "description": "

Validation failed

" @@ -340146,6 +345198,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -341709,6 +346765,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -350026,6 +355086,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -354931,6 +359995,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -363085,6 +368153,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -364648,6 +369720,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -368601,6 +373677,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -370164,6 +375244,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -391691,6 +396775,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -392078,7 +397166,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -393568,6 +398656,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -396164,6 +401256,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -397824,6 +402920,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -399198,6 +404298,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -399665,7 +404769,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -402203,6 +407307,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -403863,6 +408971,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -405237,6 +410349,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -408911,6 +414027,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -410650,6 +415770,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -410731,7 +415855,7 @@ } } ], - "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", + "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", "statusCodes": [ { "httpStatusCode": "201", @@ -412743,6 +417867,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -414549,6 +419677,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -416257,6 +421389,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -418455,6 +423591,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -418850,6 +423990,13 @@ "in": "body", "description": "

The URL must contain <num> for the reference number.

", "isRequired": true + }, + { + "type": "boolean", + "name": "is_alphanumeric", + "in": "body", + "description": "

Whether this autolink reference matches alphanumeric characters. If true, the <num> parameter of the url_template matches alphanumeric characters A-Z (case insensitive), 0-9, and -. If false, this autolink reference only matches numeric characters.

", + "default": "true" } ], "enabledForGitHubApps": true, @@ -418862,7 +424009,8 @@ "acceptHeader": "application/vnd.github.v3+json", "bodyParameters": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true }, "parameters": { "owner": "OWNER", @@ -421604,7 +426752,7 @@ "type": "string", "name": "sha", "in": "body", - "description": "

The blob SHA of the file being replaced.

", + "description": "

The blob SHA of the file being deleted.

", "isRequired": true }, { @@ -424521,6 +429669,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -427276,6 +432428,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428936,6 +434092,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -430310,6 +435470,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -432796,6 +437960,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -435595,6 +440763,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -436088,7 +441260,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] }, @@ -438444,6 +443617,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -449896,6 +455073,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -452490,6 +457671,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -458307,6 +463492,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -460895,6 +466084,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/decorated/ghes-3.5.json b/lib/rest/static/decorated/ghes-3.5.json index 7cefd84492..d46553fe83 100644 --- a/lib/rest/static/decorated/ghes-3.5.json +++ b/lib/rest/static/decorated/ghes-3.5.json @@ -3781,6 +3781,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -7383,6 +7387,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -13354,6 +13362,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -15921,6 +15933,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -17401,6 +17417,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -20112,6 +20132,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -21592,6 +21616,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -24329,6 +24357,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -25819,6 +25851,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -31385,6 +31421,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -33502,6 +33542,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -36631,6 +36675,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -38748,6 +38796,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -42304,6 +42356,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -44421,6 +44477,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -46513,7 +46573,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "title": "List workflow runs", + "title": "List workflow runs for a workflow", "category": "actions", "subcategory": "workflow-runs", "parameters": [ @@ -49467,6 +49527,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -51584,6 +51648,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -52779,6 +52847,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -55216,6 +55290,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -56732,6 +56810,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -59169,6 +59253,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -60679,6 +60767,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -63116,6 +63210,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -64620,6 +64718,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -67057,6 +67161,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -68551,6 +68659,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -70988,6 +71102,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -72503,6 +72621,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -74940,6 +75064,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -76434,6 +76562,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -78871,6 +79005,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -80376,6 +80514,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -82813,6 +82957,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -84318,6 +84466,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -86755,6 +86909,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -90315,6 +90473,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -92725,6 +92887,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -95497,6 +95663,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -98226,6 +98396,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -99752,6 +99926,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -101588,6 +101766,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -102971,6 +103153,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -105671,6 +105857,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -107973,6 +108163,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -109540,14 +109734,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -110469,14 +110655,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -111091,15 +111269,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -111542,14 +111711,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -113071,6 +113232,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -114171,14 +114336,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -115104,14 +115261,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -116035,14 +116184,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -117995,6 +118136,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -118648,14 +118793,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -120645,6 +120782,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -121353,14 +121494,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -122224,14 +122357,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -122863,15 +122988,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -123503,14 +123619,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -127009,7 +127117,2775 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [], + "checks": [] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + }, + "schema": { + "title": "Branch With Protection", + "description": "Branch With Protection", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "commit": { + "title": "Commit", + "description": "Commit", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "sha": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" + ] + }, + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "string" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "html", + "self" + ] + }, + "protected": { + "type": "boolean" + }, + "protection": { + "title": "Branch Protection", + "description": "Branch Protection", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "required_status_checks": { + "title": "Protected Branch Required Status Check", + "description": "Protected Branch Required Status Check", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enforcement_level": { + "type": "string" + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + } + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string" + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string" + }, + "strict": { + "type": "boolean" + } + }, + "required": [ + "contexts", + "checks" + ] + }, + "enforce_admins": { + "title": "Protected Branch Admin Enforced", + "description": "Protected Branch Admin Enforced", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "required_pull_request_reviews": { + "title": "Protected Branch Pull Request Review", + "description": "Protected Branch Pull Request Review", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions" + ] + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "users": { + "description": "The list of users with review dismissal access.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams with review dismissal access.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps with review dismissal access.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + }, + "url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions\"" + ] + }, + "users_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users\"" + ] + }, + "teams_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams\"" + ] + } + } + }, + "bypass_pull_request_allowances": { + "type": "object", + "description": "Allow specific users, teams, or apps to bypass pull request requirements.", + "properties": { + "users": { + "description": "The list of users allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + } + }, + "dismiss_stale_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "require_code_owner_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "required_approving_review_count": { + "type": "integer", + "minimum": 0, + "maximum": 6, + "examples": [ + 2 + ] + } + }, + "required": [ + "dismiss_stale_reviews", + "require_code_owner_reviews" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "name": { + "type": "string", + "examples": [ + "\"branch/with/protection\"" + ] + }, + "protection_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection\"" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + } + } + }, + "protection_url": { + "type": "string", + "format": "uri" + }, + "pattern": { + "type": "string", + "examples": [ + "\"mas*\"" + ] + }, + "required_approving_review_count": { + "type": "integer", + "examples": [ + 1 + ] + } + }, + "required": [ + "name", + "commit", + "_links", + "protection", + "protected", + "protection_url" + ] + } } } ], @@ -133338,7 +136214,2001 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [], + "teams": [], + "apps": [] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [], + "teams": [], + "apps": [] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + }, + "schema": { + "title": "Protected Branch", + "description": "Branch protections protect branches", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "required_status_checks": { + "title": "Status Check Policy", + "description": "Status Check Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks" + ] + }, + "strict": { + "type": "boolean", + "examples": [ + true + ] + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string", + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks/contexts" + ] + } + }, + "required": [ + "url", + "contexts_url", + "strict", + "contexts", + "checks" + ] + }, + "required_pull_request_reviews": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "dismiss_stale_reviews": { + "type": "boolean" + }, + "require_code_owner_reviews": { + "type": "boolean" + }, + "required_approving_review_count": { + "type": "integer" + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "users", + "teams" + ] + }, + "bypass_pull_request_allowances": { + "type": "object", + "properties": { + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "users", + "teams" + ] + } + }, + "required": [ + "url" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "enforce_admins": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "url", + "enabled" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + } + }, + "required": [ + "url" + ] + } } } ], @@ -137883,7 +142753,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -137893,8 +142763,14 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding status checks to a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -137981,7 +142857,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -137991,8 +142867,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example updating status checks for a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -138074,7 +142955,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -138084,8 +142965,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing status checks from a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -140779,7 +145665,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -140789,8 +145675,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -141078,7 +145969,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -141088,8 +145979,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -141377,7 +146273,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -141387,8 +146283,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -141933,7 +146834,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -141943,8 +146844,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -142199,7 +147105,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -142209,8 +147115,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -142465,7 +147376,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -142475,8 +147386,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -153602,6 +158518,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -156674,6 +161594,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -159264,6 +164188,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -162273,6 +167201,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -165389,6 +170321,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -166446,6 +171382,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -167933,7 +172876,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -168275,6 +173219,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -168554,7 +173505,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -168896,6 +173848,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -169135,6 +174094,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -169986,7 +174946,7 @@ "description": "

Service unavailable

" } ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • analysis_key
  • \n
  • environment
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • category
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "subcategory": "code-scanning" }, { @@ -172924,6 +177884,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -176025,6 +180989,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -176716,8 +181684,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permissions": "write" + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -178744,6 +183715,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -181501,6 +186476,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -186594,6 +191573,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -188157,6 +193140,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -189670,6 +194657,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] }, @@ -192251,6 +197242,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] } @@ -196587,6 +201582,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -200128,6 +205127,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -218414,14 +223417,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -219644,14 +224639,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -220439,14 +225426,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -235632,6 +240611,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -238069,6 +243054,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -239051,6 +244040,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -241488,6 +246483,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -242324,7 +247323,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ], "schema": { @@ -242387,6 +247387,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -244824,6 +249830,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -245600,7 +250610,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -245660,6 +250671,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -248097,6 +253114,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -248840,7 +253861,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -248900,6 +253922,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -251337,6 +256365,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -251932,6 +256964,18 @@ "closed" ] }, + { + "type": "string or null", + "name": "state_reason", + "in": "body", + "description": "

The reason for the current state

", + "enum": [ + "completed", + "not_planned", + "reopened", + null + ] + }, { "type": "null or string or integer or string or integer", "name": "milestone", @@ -252136,7 +257180,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -252196,6 +257241,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -254633,6 +259684,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -255785,6 +260840,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -258222,6 +263283,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -259304,7 +264369,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -259364,6 +264430,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -261801,6 +266873,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -262538,7 +267614,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -262598,6 +267675,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -265035,6 +270118,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -269666,7 +274753,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ], @@ -269958,6 +275046,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -272395,6 +277489,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -274529,7 +279627,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } }, "schema": { @@ -274818,6 +279917,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -277255,6 +282360,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -302307,6 +307416,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -304744,6 +309859,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -312217,6 +317336,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -314129,6 +319252,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -316013,6 +321140,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -317877,6 +323008,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -319788,6 +324923,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -322035,6 +327174,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -323372,14 +328515,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -324248,14 +329383,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -325139,14 +330266,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -325942,14 +331061,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -326837,14 +331948,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -327641,14 +332744,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -328474,14 +333569,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -329349,14 +334436,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -332021,14 +337100,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -332962,7 +338033,7 @@ } ], "previews": [], - "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", + "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

To use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with admin:org repo scope.\nGitHub Apps must have the organization_custom_roles:read organization permission to use this endpoint.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", "statusCodes": [ { "httpStatusCode": "200", @@ -333249,10 +338320,6 @@ "httpStatusCode": "200", "description": "

OK

" }, - { - "httpStatusCode": "302", - "description": "

Response if requester is not an organization member

" - }, { "httpStatusCode": "422", "description": "

Validation failed

" @@ -350050,6 +355117,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -351613,6 +356684,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -359930,6 +365005,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -364835,6 +369914,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -372989,6 +378072,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -374552,6 +379639,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -378505,6 +383596,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -380068,6 +385163,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -401540,6 +406639,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -401927,7 +407030,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -403417,6 +408520,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -406013,6 +411120,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -407673,6 +412784,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -409047,6 +414162,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -409514,7 +414633,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -412052,6 +417171,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -413712,6 +418835,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -415086,6 +420213,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -418934,6 +424065,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -420673,6 +425808,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -420754,7 +425893,7 @@ } } ], - "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", + "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", "statusCodes": [ { "httpStatusCode": "201", @@ -422772,6 +427911,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -424578,6 +429721,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -426286,6 +431433,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428490,6 +433641,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428885,6 +434040,13 @@ "in": "body", "description": "

The URL must contain <num> for the reference number.

", "isRequired": true + }, + { + "type": "boolean", + "name": "is_alphanumeric", + "in": "body", + "description": "

Whether this autolink reference matches alphanumeric characters. If true, the <num> parameter of the url_template matches alphanumeric characters A-Z (case insensitive), 0-9, and -. If false, this autolink reference only matches numeric characters.

", + "default": "true" } ], "enabledForGitHubApps": true, @@ -428897,7 +434059,8 @@ "acceptHeader": "application/vnd.github.v3+json", "bodyParameters": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true }, "parameters": { "owner": "OWNER", @@ -431639,7 +436802,7 @@ "type": "string", "name": "sha", "in": "body", - "description": "

The blob SHA of the file being replaced.

", + "description": "

The blob SHA of the file being deleted.

", "isRequired": true }, { @@ -434562,6 +439725,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -437317,6 +442484,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -438977,6 +444148,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -440351,6 +445526,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -443150,6 +448329,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -445955,6 +451138,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -446448,7 +451635,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] }, @@ -448804,6 +453992,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -460284,6 +465476,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -462886,6 +468082,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -468709,6 +473909,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -471305,6 +476509,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/decorated/ghes-3.6.json b/lib/rest/static/decorated/ghes-3.6.json index 6c3384f9c5..39ab213a2d 100644 --- a/lib/rest/static/decorated/ghes-3.6.json +++ b/lib/rest/static/decorated/ghes-3.6.json @@ -3961,8 +3961,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -4035,6 +4036,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -7806,8 +7811,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -7880,6 +7886,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -13882,8 +13892,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -13956,6 +13967,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -16536,8 +16551,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -16610,6 +16626,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -18097,8 +18117,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -18171,6 +18192,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -20889,8 +20914,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -20963,6 +20989,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -22450,8 +22480,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -22524,6 +22555,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -25268,8 +25303,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -25342,6 +25378,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -26839,8 +26879,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -26913,6 +26954,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -32526,8 +32571,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -32600,6 +32646,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -34730,8 +34780,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -34804,6 +34855,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37996,8 +38051,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -38070,6 +38126,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -40200,8 +40260,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -40274,6 +40335,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -43893,8 +43958,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -43967,6 +44033,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -46097,8 +46167,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -46171,6 +46242,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -48283,7 +48358,7 @@ "serverUrl": "http(s)://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "title": "List workflow runs", + "title": "List workflow runs for a workflow", "category": "actions", "subcategory": "workflow-runs", "parameters": [ @@ -51277,8 +51352,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -51351,6 +51427,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -53481,8 +53561,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -53555,6 +53636,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54756,6 +54841,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -57200,8 +57291,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -57274,6 +57366,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -58790,6 +58886,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -61234,8 +61336,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -61308,6 +61411,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -62818,6 +62925,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -65262,8 +65375,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -65336,6 +65450,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -66840,6 +66958,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -69284,8 +69408,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -69358,6 +69483,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -70852,6 +70981,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -73296,8 +73431,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -73370,6 +73506,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -74885,6 +75025,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -77329,8 +77475,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -77403,6 +77550,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -78897,6 +79048,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -81341,8 +81498,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -81415,6 +81573,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -82920,6 +83082,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -85364,8 +85532,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -85438,6 +85607,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -86943,6 +87116,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -89387,8 +89566,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -89461,6 +89641,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -93028,8 +93212,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -93102,6 +93287,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -95525,8 +95714,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -95599,6 +95789,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -98384,8 +98578,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -98458,6 +98653,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -101200,8 +101399,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -101274,6 +101474,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -102807,8 +103011,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -102881,6 +103086,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -104724,8 +104933,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -104798,6 +105008,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -106188,8 +106402,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -106262,6 +106477,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -108969,8 +109188,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -109043,6 +109263,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -111358,8 +111582,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -111432,6 +111657,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -113005,14 +113234,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -113934,14 +114155,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -114556,15 +114769,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -115007,14 +115211,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -116543,8 +116739,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -116617,6 +116814,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -117717,14 +117918,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -118650,14 +118843,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -119581,14 +119766,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -121548,8 +121725,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -121622,6 +121800,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -122275,14 +122457,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -124279,8 +124453,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -124353,6 +124528,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -125061,14 +125240,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -125932,14 +126103,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -126571,15 +126734,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -127211,14 +127365,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -130717,7 +130863,2775 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [], + "checks": [] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + }, + "schema": { + "title": "Branch With Protection", + "description": "Branch With Protection", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "commit": { + "title": "Commit", + "description": "Commit", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "sha": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" + ] + }, + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "string" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "html", + "self" + ] + }, + "protected": { + "type": "boolean" + }, + "protection": { + "title": "Branch Protection", + "description": "Branch Protection", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "required_status_checks": { + "title": "Protected Branch Required Status Check", + "description": "Protected Branch Required Status Check", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enforcement_level": { + "type": "string" + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + } + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string" + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string" + }, + "strict": { + "type": "boolean" + } + }, + "required": [ + "contexts", + "checks" + ] + }, + "enforce_admins": { + "title": "Protected Branch Admin Enforced", + "description": "Protected Branch Admin Enforced", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "required_pull_request_reviews": { + "title": "Protected Branch Pull Request Review", + "description": "Protected Branch Pull Request Review", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions" + ] + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "users": { + "description": "The list of users with review dismissal access.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams with review dismissal access.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps with review dismissal access.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + }, + "url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions\"" + ] + }, + "users_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users\"" + ] + }, + "teams_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams\"" + ] + } + } + }, + "bypass_pull_request_allowances": { + "type": "object", + "description": "Allow specific users, teams, or apps to bypass pull request requirements.", + "properties": { + "users": { + "description": "The list of users allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + } + }, + "dismiss_stale_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "require_code_owner_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "required_approving_review_count": { + "type": "integer", + "minimum": 0, + "maximum": 6, + "examples": [ + 2 + ] + } + }, + "required": [ + "dismiss_stale_reviews", + "require_code_owner_reviews" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "name": { + "type": "string", + "examples": [ + "\"branch/with/protection\"" + ] + }, + "protection_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection\"" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + } + } + }, + "protection_url": { + "type": "string", + "format": "uri" + }, + "pattern": { + "type": "string", + "examples": [ + "\"mas*\"" + ] + }, + "required_approving_review_count": { + "type": "integer", + "examples": [ + 1 + ] + } + }, + "required": [ + "name", + "commit", + "_links", + "protection", + "protected", + "protection_url" + ] + } } } ], @@ -137046,7 +139960,2001 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [], + "teams": [], + "apps": [] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [], + "teams": [], + "apps": [] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + }, + "schema": { + "title": "Protected Branch", + "description": "Branch protections protect branches", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "required_status_checks": { + "title": "Status Check Policy", + "description": "Status Check Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks" + ] + }, + "strict": { + "type": "boolean", + "examples": [ + true + ] + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string", + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks/contexts" + ] + } + }, + "required": [ + "url", + "contexts_url", + "strict", + "contexts", + "checks" + ] + }, + "required_pull_request_reviews": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "dismiss_stale_reviews": { + "type": "boolean" + }, + "require_code_owner_reviews": { + "type": "boolean" + }, + "required_approving_review_count": { + "type": "integer" + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "users", + "teams" + ] + }, + "bypass_pull_request_allowances": { + "type": "object", + "properties": { + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "users", + "teams" + ] + } + }, + "required": [ + "url" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "enforce_admins": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "url", + "enabled" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + } + }, + "required": [ + "url" + ] + } } } ], @@ -141591,7 +146499,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -141601,8 +146509,14 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding status checks to a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -141689,7 +146603,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -141699,8 +146613,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example updating status checks for a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -141782,7 +146701,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -141792,8 +146711,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing status checks from a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -144487,7 +149411,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -144497,8 +149421,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -144786,7 +149715,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -144796,8 +149725,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -145085,7 +150019,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -145095,8 +150029,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -145641,7 +150580,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -145651,8 +150590,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -145907,7 +150851,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -145917,8 +150861,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -146173,7 +151122,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -146183,8 +151132,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -157317,8 +162271,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -157391,6 +162346,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -160476,8 +165435,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -160550,6 +165510,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -163153,8 +168117,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -163227,6 +168192,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -166249,8 +171218,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -166323,6 +171293,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -169452,8 +174426,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -169526,6 +174501,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -170599,6 +175578,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -172098,7 +177084,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -172448,6 +177435,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -172735,7 +177729,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -173085,6 +178080,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -173324,6 +178326,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -174175,7 +179178,7 @@ "description": "

Service unavailable

" } ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • analysis_key
  • \n
  • environment
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n
    \n
  • ref
  • \n
  • tool
  • \n
  • category
  • \n
\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n
    \n
  • \n

    List the analyses for the repository, filtered by tool.

    \n
  • \n
  • \n

    Parse this list to find a deletable analysis. If found:

    \n

    Inner loop:

    \n
      \n
    • Delete the identified analysis.
    • \n
    • Parse the response for the value of confirm_delete_url and, if found, use this in the next iteration.
    • \n
    \n
  • \n
\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "subcategory": "code-scanning" }, { @@ -177120,8 +182123,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -177194,6 +182198,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -180308,8 +185316,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -180382,6 +185391,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -181079,8 +186092,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permissions": "write" + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -183114,8 +188130,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -183188,6 +188205,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -185958,8 +190979,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -186032,6 +191054,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -191138,8 +196164,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -191212,6 +196239,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -192782,8 +197813,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -192856,6 +197888,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -194369,6 +199405,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] }, @@ -196950,6 +201990,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] } @@ -201293,8 +206337,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -201367,6 +206412,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -204921,8 +209970,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -204995,6 +210045,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -223532,14 +228586,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -224762,14 +229808,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -225557,14 +230595,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -240750,6 +245780,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -243194,8 +248230,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -243268,6 +248305,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -244250,6 +249291,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -246694,8 +251741,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -246768,6 +251816,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -247604,7 +252656,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ], "schema": { @@ -247667,6 +252720,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -250111,8 +255170,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -250185,6 +255245,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -250961,7 +256025,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -251021,6 +256086,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -253465,8 +258536,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -253539,6 +258611,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -254282,7 +259358,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -254342,6 +259419,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -256786,8 +261869,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -256860,6 +261944,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -257455,6 +262543,18 @@ "closed" ] }, + { + "type": "string or null", + "name": "state_reason", + "in": "body", + "description": "

The reason for the current state

", + "enum": [ + "completed", + "not_planned", + "reopened", + null + ] + }, { "type": "null or string or integer or string or integer", "name": "milestone", @@ -257659,7 +262759,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -257719,6 +262820,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -260163,8 +265270,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -260237,6 +265345,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -261389,6 +266501,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -263833,8 +268951,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -263907,6 +269026,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -264989,7 +270112,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -265049,6 +270173,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -267493,8 +272623,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -267567,6 +272698,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -268304,7 +273439,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -268364,6 +273500,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -270808,8 +275950,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -270882,6 +276025,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -275513,7 +280660,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ], @@ -275805,6 +280953,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -278249,8 +283403,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -278323,6 +283478,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -280457,7 +285616,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } }, "schema": { @@ -280746,6 +285906,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -283190,8 +288356,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -283264,6 +288431,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -308316,6 +313487,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -310760,8 +315937,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -310834,6 +316012,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -318314,8 +323496,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -318388,6 +323571,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -320307,8 +325494,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -320381,6 +325569,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -322272,8 +327464,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -322346,6 +327539,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -324217,8 +329414,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -324291,6 +329489,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -326209,8 +331411,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -326283,6 +331486,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -328537,8 +333744,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -328611,6 +333819,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -329954,14 +335166,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -330830,14 +336034,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -331721,14 +336917,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -332524,14 +337712,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -333419,14 +338599,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -334223,14 +339395,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -335056,14 +340220,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -335931,14 +341087,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -338622,14 +343770,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -339563,7 +344703,7 @@ } ], "previews": [], - "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", + "descriptionHTML": "

List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.

\n

To use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with admin:org repo scope.\nGitHub Apps must have the organization_custom_roles:read organization permission to use this endpoint.

\n

For more information on custom repository roles, see \"Managing custom repository roles for an organization\".

", "statusCodes": [ { "httpStatusCode": "200", @@ -339850,10 +344990,6 @@ "httpStatusCode": "200", "description": "

OK

" }, - { - "httpStatusCode": "302", - "description": "

Response if requester is not an organization member

" - }, { "httpStatusCode": "422", "description": "

Validation failed

" @@ -356658,8 +361794,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -356732,6 +361869,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -358302,8 +363443,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -358376,6 +363518,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -366705,6 +371851,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -371616,6 +376766,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -379777,8 +384931,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -379851,6 +385006,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -381421,8 +386580,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -381495,6 +386655,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -385455,8 +390619,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -385529,6 +390694,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -387099,8 +392268,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -387173,6 +392343,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -408652,8 +413826,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -408726,6 +413901,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -409119,7 +414298,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -410616,8 +415795,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -410690,6 +415870,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -413293,8 +418477,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -413367,6 +418552,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -415092,8 +420281,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -415166,6 +420356,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -416547,8 +421741,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -416621,6 +421816,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -417088,7 +422287,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -419641,8 +424840,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -419715,6 +424915,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -421440,8 +426644,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -421514,6 +426719,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -422895,8 +428104,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -422969,6 +428179,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -426824,8 +432038,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -426898,6 +432113,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428650,8 +433869,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -428724,6 +433944,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428805,7 +434029,7 @@ } } ], - "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", + "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", "statusCodes": [ { "httpStatusCode": "201", @@ -430830,8 +436054,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -430904,6 +436129,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -432723,8 +437952,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -432797,6 +438027,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -434512,8 +439746,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -434586,6 +439821,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -436797,8 +442036,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -436871,6 +442111,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -437272,6 +442516,13 @@ "in": "body", "description": "

The URL must contain <num> for the reference number.

", "isRequired": true + }, + { + "type": "boolean", + "name": "is_alphanumeric", + "in": "body", + "description": "

Whether this autolink reference matches alphanumeric characters. If true, the <num> parameter of the url_template matches alphanumeric characters A-Z (case insensitive), 0-9, and -. If false, this autolink reference only matches numeric characters.

", + "default": "true" } ], "enabledForGitHubApps": true, @@ -437284,7 +442535,8 @@ "acceptHeader": "application/vnd.github.v3+json", "bodyParameters": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true }, "parameters": { "owner": "OWNER", @@ -440026,7 +445278,7 @@ "type": "string", "name": "sha", "in": "body", - "description": "

The blob SHA of the file being replaced.

", + "description": "

The blob SHA of the file being deleted.

", "isRequired": true }, { @@ -442956,8 +448208,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -443030,6 +448283,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -445800,8 +451057,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -445874,6 +451132,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -447599,8 +452861,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -447673,6 +452936,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -449054,8 +454321,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -449128,6 +454396,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -451934,8 +457206,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -452008,6 +457281,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -454826,8 +460103,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -454900,6 +460178,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -455399,7 +460681,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] }, @@ -457762,8 +463045,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -457836,6 +463120,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -470430,8 +475718,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -470504,6 +475793,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -473119,8 +478412,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -473193,6 +478487,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479049,8 +484347,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -479123,6 +484422,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -481732,8 +487035,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -481806,6 +487110,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/decorated/github.ae.json b/lib/rest/static/decorated/github.ae.json index 114449dd88..b7e3f28418 100644 --- a/lib/rest/static/decorated/github.ae.json +++ b/lib/rest/static/decorated/github.ae.json @@ -3191,6 +3191,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -6516,6 +6520,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -10845,6 +10853,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -12330,6 +12342,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14355,6 +14371,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -15840,6 +15860,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -17895,6 +17919,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -19390,6 +19418,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -24179,6 +24211,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -26307,6 +26343,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -29497,6 +29537,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -31625,6 +31669,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -34887,6 +34935,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37015,6 +37067,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37904,7 +37960,7 @@ "serverUrl": "https://HOSTNAME/api/v3", "verb": "get", "requestPath": "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs", - "title": "List workflow runs", + "title": "List workflow runs for a workflow", "category": "actions", "subcategory": "workflow-runs", "parameters": [ @@ -40888,6 +40944,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -43016,6 +43076,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -44364,6 +44428,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -46806,6 +46876,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -48300,6 +48374,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -50742,6 +50822,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -52257,6 +52341,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -54699,6 +54789,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -58268,6 +58362,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -60689,6 +60787,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -63472,6 +63574,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -66212,6 +66318,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -67743,6 +67853,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -69584,6 +69698,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -70972,6 +71090,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -73677,6 +73799,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -75990,6 +76116,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -77563,14 +77693,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -78492,14 +78614,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -79114,15 +79228,6 @@ "write" ] }, - { - "type": "string", - "name": "organization_custom_roles", - "description": "

The level of permission to grant the access token for custom roles management.

", - "enum": [ - "read", - "write" - ] - }, { "type": "string", "name": "deployments", @@ -79565,14 +79670,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -81099,6 +81196,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -82199,14 +82300,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -83132,14 +83225,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -84063,14 +84148,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -86028,6 +86105,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -86681,14 +86762,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -88683,6 +88756,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -89391,14 +89468,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -90262,14 +90331,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -91193,14 +91254,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -94514,7 +94567,2775 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [], + "checks": [] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + }, + "schema": { + "title": "Branch With Protection", + "description": "Branch With Protection", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "commit": { + "title": "Commit", + "description": "Commit", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "sha": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" + ] + }, + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "string" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "html", + "self" + ] + }, + "protected": { + "type": "boolean" + }, + "protection": { + "title": "Branch Protection", + "description": "Branch Protection", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "required_status_checks": { + "title": "Protected Branch Required Status Check", + "description": "Protected Branch Required Status Check", + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "enforcement_level": { + "type": "string" + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + } + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string" + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string" + }, + "strict": { + "type": "boolean" + } + }, + "required": [ + "contexts", + "checks" + ] + }, + "enforce_admins": { + "title": "Protected Branch Admin Enforced", + "description": "Protected Branch Admin Enforced", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "required_pull_request_reviews": { + "title": "Protected Branch Pull Request Review", + "description": "Protected Branch Pull Request Review", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions" + ] + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "users": { + "description": "The list of users with review dismissal access.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams with review dismissal access.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps with review dismissal access.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + }, + "url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions\"" + ] + }, + "users_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users\"" + ] + }, + "teams_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams\"" + ] + } + } + }, + "bypass_pull_request_allowances": { + "type": "object", + "description": "Allow specific users, teams, or apps to bypass pull request requirements.", + "properties": { + "users": { + "description": "The list of users allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "description": "The list of teams allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "description": "The list of apps allowed to bypass pull request requirements.", + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + } + }, + "dismiss_stale_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "require_code_owner_reviews": { + "type": "boolean", + "examples": [ + true + ] + }, + "required_approving_review_count": { + "type": "integer", + "minimum": 0, + "maximum": 6, + "examples": [ + 2 + ] + } + }, + "required": [ + "dismiss_stale_reviews", + "require_code_owner_reviews" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + } + }, + "name": { + "type": "string", + "examples": [ + "\"branch/with/protection\"" + ] + }, + "protection_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection\"" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + } + } + }, + "protection_url": { + "type": "string", + "format": "uri" + }, + "pattern": { + "type": "string", + "examples": [ + "\"mas*\"" + ] + }, + "required_approving_review_count": { + "type": "integer", + "examples": [ + 1 + ] + } + }, + "required": [ + "name", + "commit", + "_links", + "protection", + "protected", + "protection_url" + ] + } } } ], @@ -97986,7 +100807,2001 @@ }, "response": { "statusCode": "200", - "description": "

Response

" + "contentType": "application/json", + "description": "

Response

", + "example": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [], + "teams": [], + "apps": [] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [], + "teams": [], + "apps": [] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + }, + "schema": { + "title": "Protected Branch", + "description": "Branch protections protect branches", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "required_status_checks": { + "title": "Status Check Policy", + "description": "Status Check Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks" + ] + }, + "strict": { + "type": "boolean", + "examples": [ + true + ] + }, + "contexts": { + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "checks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "context": { + "type": "string", + "examples": [ + "continuous-integration/travis-ci" + ] + }, + "app_id": { + "type": [ + "integer", + "null" + ] + } + }, + "required": [ + "context", + "app_id" + ] + } + }, + "contexts_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_status_checks/contexts" + ] + } + }, + "required": [ + "url", + "contexts_url", + "strict", + "contexts", + "checks" + ] + }, + "required_pull_request_reviews": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "dismiss_stale_reviews": { + "type": "boolean" + }, + "require_code_owner_reviews": { + "type": "boolean" + }, + "required_approving_review_count": { + "type": "integer" + }, + "dismissal_restrictions": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "users", + "teams" + ] + }, + "bypass_pull_request_allowances": { + "type": "object", + "properties": { + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent" + ] + } + }, + "apps": { + "type": "array", + "items": { + "title": "GitHub app", + "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the GitHub app", + "type": "integer", + "examples": [ + 37 + ] + }, + "slug": { + "description": "The slug name of the GitHub app", + "type": "string", + "examples": [ + "probot-owners" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOkludGVncmF0aW9uMQ==" + ] + }, + "owner": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + } + ] + }, + "name": { + "description": "The name of the GitHub app", + "type": "string", + "examples": [ + "Probot Owners" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "The description of the app." + ] + }, + "external_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://example.com" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/apps/super-ci" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2017-07-08T16:18:44-04:00" + ] + }, + "permissions": { + "description": "The set of permissions for the GitHub app", + "type": "object", + "properties": { + "issues": { + "type": "string" + }, + "checks": { + "type": "string" + }, + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "deployments": { + "type": "string" + } + }, + "additionalProperties": { + "type": "string" + }, + "example": { + "issues": "read", + "deployments": "write" + } + }, + "events": { + "description": "The list of events for the GitHub app", + "type": "array", + "items": { + "type": "string" + }, + "examples": [ + "label", + "deployment" + ] + }, + "installations_count": { + "description": "The number of installations associated with the GitHub app", + "type": "integer", + "examples": [ + 5 + ] + }, + "client_id": { + "type": "string", + "examples": [ + "\"Iv1.25b5d1e65ffc4022\"" + ] + }, + "client_secret": { + "type": "string", + "examples": [ + "\"1d4b2097ac622ba702d19de498f005747a8b21d3\"" + ] + }, + "webhook_secret": { + "type": [ + "string", + "null" + ], + "examples": [ + "\"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b\"" + ] + }, + "pem": { + "type": "string", + "examples": [ + "\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n\"" + ] + } + }, + "required": [ + "id", + "node_id", + "owner", + "name", + "description", + "external_url", + "html_url", + "created_at", + "updated_at", + "permissions", + "events" + ] + } + } + }, + "required": [ + "users", + "teams" + ] + } + }, + "required": [ + "url" + ] + }, + "required_signatures": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures" + ] + }, + "enabled": { + "type": "boolean", + "examples": [ + true + ] + } + }, + "required": [ + "url", + "enabled" + ] + }, + "enforce_admins": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "url", + "enabled" + ] + }, + "required_linear_history": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_force_pushes": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "allow_deletions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + }, + "restrictions": { + "title": "Branch Restriction Policy", + "description": "Branch Restriction Policy", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "users_url": { + "type": "string", + "format": "uri" + }, + "teams_url": { + "type": "string", + "format": "uri" + }, + "apps_url": { + "type": "string", + "format": "uri" + }, + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "gravatar_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "followers_url": { + "type": "string" + }, + "following_url": { + "type": "string" + }, + "gists_url": { + "type": "string" + }, + "starred_url": { + "type": "string" + }, + "subscriptions_url": { + "type": "string" + }, + "organizations_url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "received_events_url": { + "type": "string" + }, + "type": { + "type": "string" + }, + "site_admin": { + "type": "boolean" + } + } + } + }, + "teams": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string" + }, + "parent": { + "type": [ + "string", + "null" + ] + } + } + } + }, + "apps": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "node_id": { + "type": "string" + }, + "owner": { + "type": "object", + "properties": { + "login": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "repos_url": { + "type": "string" + }, + "events_url": { + "type": "string" + }, + "hooks_url": { + "type": "string" + }, + "issues_url": { + "type": "string" + }, + "members_url": { + "type": "string" + }, + "public_members_url": { + "type": "string" + }, + "avatar_url": { + "type": "string" + }, + "description": { + "type": "string" + }, + "gravatar_id": { + "type": "string", + "examples": [ + "\"\"" + ] + }, + "html_url": { + "type": "string", + "examples": [ + "\"https://github.com/testorg-ea8ec76d71c3af4b\"" + ] + }, + "followers_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers\"" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}\"" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}\"" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}\"" + ] + }, + "subscriptions_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions\"" + ] + }, + "organizations_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs\"" + ] + }, + "received_events_url": { + "type": "string", + "examples": [ + "\"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events\"" + ] + }, + "type": { + "type": "string", + "examples": [ + "\"Organization\"" + ] + }, + "site_admin": { + "type": "boolean", + "examples": [ + false + ] + } + } + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "external_url": { + "type": "string" + }, + "html_url": { + "type": "string" + }, + "created_at": { + "type": "string" + }, + "updated_at": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "metadata": { + "type": "string" + }, + "contents": { + "type": "string" + }, + "issues": { + "type": "string" + }, + "single_file": { + "type": "string" + } + } + }, + "events": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + }, + "required": [ + "url", + "users_url", + "teams_url", + "apps_url", + "users", + "teams", + "apps" + ] + }, + "required_conversation_resolution": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false + }, + "block_creations": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "enabled" + ] + } + }, + "required": [ + "url" + ] + } } } ], @@ -102531,7 +107346,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -102541,8 +107356,14 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding status checks to a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -102629,7 +107450,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -102639,8 +107460,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example updating status checks for a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -102722,7 +107548,7 @@ "type": "array of strings", "name": "contexts", "in": "body", - "description": "

contexts parameter

", + "description": "

The name of the status checks

", "isRequired": true } ], @@ -102732,8 +107558,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing status checks from a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "contexts": [ + "continuous-integration/travis-ci" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -105427,7 +110258,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -105437,8 +110268,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -105726,7 +110562,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -105736,8 +110572,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -106025,7 +110866,7 @@ "type": "array of strings", "name": "teams", "in": "body", - "description": "

teams parameter

", + "description": "

The slug values for teams

", "isRequired": true } ], @@ -106035,8 +110876,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a team in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "teams": [ + "justice-league" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -106581,7 +111427,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -106591,8 +111437,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example adding a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -106847,7 +111698,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -106857,8 +111708,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example replacing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -107113,7 +111969,7 @@ "type": "array of strings", "name": "users", "in": "body", - "description": "

users parameter

", + "description": "

The username for users

", "isRequired": true } ], @@ -107123,8 +111979,13 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example removing a user in a branch protection rule", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "users": [ + "octocat" + ] + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -118255,6 +123116,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -121338,6 +126203,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -123939,6 +128808,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -126959,6 +131832,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -130086,6 +134963,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -131178,7 +136059,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -131505,6 +136387,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -131781,7 +136670,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -132108,6 +136998,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -132585,6 +137482,33 @@ "6c81cd8e-b078-4ac3-a3be-1dad7dbd0b53" ] } + }, + { + "name": "direction", + "description": "

The direction to sort the results by.

", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "sort", + "description": "

The property by which to sort the results.

", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created" + ], + "default": "created" + } } ], "bodyParameters": [], @@ -136139,6 +141063,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -139251,6 +144179,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -139948,8 +144880,11 @@ "key": "default", "request": { "contentType": "application/json", - "description": "Example", + "description": "Example request body", "acceptHeader": "application/vnd.github.v3+json", + "bodyParameters": { + "permissions": "write" + }, "parameters": { "owner": "OWNER", "repo": "REPO", @@ -141981,6 +146916,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -144749,6 +149688,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -149853,6 +154796,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -151421,6 +156368,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -152934,6 +157885,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] }, @@ -155515,6 +160470,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ] } @@ -159856,6 +164815,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -175369,14 +180332,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -176293,14 +181248,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -177088,14 +182035,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -192191,6 +197130,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -194633,6 +199578,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -195615,6 +200564,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -198057,6 +203012,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -198893,7 +203852,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ], "schema": { @@ -198956,6 +203916,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -201398,6 +206364,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -202174,7 +207144,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -202234,6 +207205,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -204676,6 +209653,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -205419,7 +210400,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -205479,6 +210461,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -207921,6 +212909,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -208516,6 +213508,18 @@ "closed" ] }, + { + "type": "string or null", + "name": "state_reason", + "in": "body", + "description": "

The reason for the current state

", + "enum": [ + "completed", + "not_planned", + "reopened", + null + ] + }, { "type": "null or string or integer or string or integer", "name": "milestone", @@ -208720,7 +213724,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -208780,6 +213785,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -211222,6 +216233,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -212374,6 +217389,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -214816,6 +219837,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -215898,7 +220923,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -215958,6 +220984,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -218400,6 +223432,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -219137,7 +224173,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" }, "schema": { "title": "Issue", @@ -219197,6 +224234,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -221639,6 +226682,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -226270,7 +231317,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ], @@ -226562,6 +231610,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -229004,6 +234058,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -231138,7 +236196,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } }, "schema": { @@ -231427,6 +236486,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -233869,6 +238934,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -258921,6 +263990,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -261363,6 +266438,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -268949,6 +274028,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -270866,6 +275949,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -272755,6 +277842,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -274624,6 +279715,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -276540,6 +281635,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -278792,6 +283891,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -279654,6 +284757,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -279857,6 +285002,42 @@ "name": "blog", "in": "body", "description": "" + }, + { + "type": "boolean", + "name": "advanced_security_enabled_for_new_repositories", + "in": "body", + "description": "

Whether GitHub Advanced Security is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "dependabot_alerts_enabled_for_new_repositories", + "in": "body", + "description": "

Whether Dependabot alerts is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "dependabot_security_updates_enabled_for_new_repositories", + "in": "body", + "description": "

Whether Dependabot security updates is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "dependency_graph_enabled_for_new_repositories", + "in": "body", + "description": "

Whether dependency graph is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "secret_scanning_enabled_for_new_repositories", + "in": "body", + "description": "

Whether secret scanning is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" + }, + { + "type": "boolean", + "name": "secret_scanning_push_protection_enabled_for_new_repositories", + "in": "body", + "description": "

Whether secret scanning push protection is automatically enabled for new repositories.

\n

To use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"Managing security managers in your organization.\"

\n

You can check which security and analysis features are currently enabled by using a GET /orgs/{org} request.

" } ], "enabledForGitHubApps": true, @@ -280285,6 +285466,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -281203,14 +286426,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -282336,10 +287551,6 @@ "httpStatusCode": "200", "description": "

OK

" }, - { - "httpStatusCode": "302", - "description": "

Response if requester is not an organization member

" - }, { "httpStatusCode": "422", "description": "

Validation failed

" @@ -298718,6 +303929,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -300286,6 +305501,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -308615,6 +313834,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -313526,6 +318749,10 @@ { "httpStatusCode": "500", "description": "

Internal Error

" + }, + { + "httpStatusCode": "503", + "description": "

Service unavailable

" } ], "subcategory": "pulls" @@ -321685,6 +326912,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -323253,6 +328484,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -327211,6 +332446,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -328779,6 +334018,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -348861,6 +354104,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -349254,7 +354501,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -350749,6 +355996,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -353350,6 +358601,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -355027,6 +360282,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -356406,6 +361665,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -356873,7 +362136,7 @@ "type": "boolean", "name": "use_squash_pr_title_as_default", "in": "body", - "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message.

" + "description": "

Either true to allow squash-merge commits to use pull request title, or false to use commit message. **This property has been deprecated. Please use squash_merge_commit_title instead.

" }, { "type": "string", @@ -359424,6 +364687,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -361101,6 +366368,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -362480,6 +367751,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -366183,6 +371458,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -367933,6 +373212,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -368015,7 +373298,7 @@ } ], "previews": [], - "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", + "descriptionHTML": "

Creates a new repository using a repository template. Use the template_owner and template_repo route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the Get a repository endpoint and check that the is_template key is true.

\n

OAuth scope requirements

\n

When using OAuth, authorizations must include:

\n
    \n
  • public_repo scope or repo scope to create a public repository. Note: For GitHub AE, use repo scope to create an internal repository.
  • \n
  • repo scope to create a private repository
  • \n
", "statusCodes": [ { "httpStatusCode": "201", @@ -369582,6 +374865,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -371295,6 +376582,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -373504,6 +378795,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -373905,6 +379200,13 @@ "in": "body", "description": "

The URL must contain <num> for the reference number.

", "isRequired": true + }, + { + "type": "boolean", + "name": "is_alphanumeric", + "in": "body", + "description": "

Whether this autolink reference matches alphanumeric characters. If true, the <num> parameter of the url_template matches alphanumeric characters A-Z (case insensitive), 0-9, and -. If false, this autolink reference only matches numeric characters.

", + "default": "true" } ], "enabledForGitHubApps": true, @@ -373917,7 +379219,8 @@ "acceptHeader": "application/vnd.github.v3+json", "bodyParameters": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true }, "parameters": { "owner": "OWNER", @@ -376659,7 +381962,7 @@ "type": "string", "name": "sha", "in": "body", - "description": "

The blob SHA of the file being replaced.

", + "description": "

The blob SHA of the file being deleted.

", "isRequired": true }, { @@ -379587,6 +384890,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -382355,6 +387662,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -384032,6 +389343,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -385411,6 +390726,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -387908,6 +393227,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -390724,6 +396047,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -391223,7 +396550,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] }, @@ -393584,6 +398912,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -402660,6 +407992,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -405273,6 +410609,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -411130,6 +416470,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -413737,6 +419081,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/dereferenced/api.github.com.deref.json b/lib/rest/static/dereferenced/api.github.com.deref.json index dcaeca741d..462a52517c 100644 --- a/lib/rest/static/dereferenced/api.github.com.deref.json +++ b/lib/rest/static/dereferenced/api.github.com.deref.json @@ -2854,14 +2854,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -3006,6 +2998,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -3791,14 +3791,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -3943,6 +3935,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -4514,14 +4514,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -4666,6 +4658,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -4807,14 +4807,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -4959,6 +4951,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -6343,8 +6343,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -6417,6 +6418,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -7458,14 +7463,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -7610,6 +7607,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -8432,14 +8437,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -8584,6 +8581,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -9278,14 +9283,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9430,6 +9427,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -9826,14 +9831,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9978,6 +9975,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -17600,8 +17605,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -17674,6 +17680,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -19159,8 +19169,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -19233,6 +19244,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -21225,6 +21240,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -24640,6 +24662,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -27084,8 +27112,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -27158,6 +27187,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -42117,8 +42150,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -42191,6 +42225,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -42718,6 +42756,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -45162,8 +45206,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -45236,6 +45281,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -49573,6 +49622,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -52017,8 +52072,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -52091,6 +52147,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -55424,8 +55484,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -55498,6 +55559,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -58097,8 +58162,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -58171,6 +58237,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -59363,7 +59433,7 @@ "/organizations/{organization_id}/custom_roles": { "get": { "summary": "List custom repository roles in an organization", - "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", + "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nTo use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with `admin:org repo` scope.\nGitHub Apps must have the `organization_custom_roles:read` organization permission to use this endpoint.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", "tags": [ "orgs" ], @@ -59412,6 +59482,199 @@ "name": { "description": "The name of the custom role.", "type": "string" + }, + "description": { + "description": "A short description about who this role is for or what permissions it grants.", + "type": [ + "string", + "null" + ] + }, + "base_role": { + "type": "string", + "description": "The system role from which this role inherits permissions.", + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + "permissions": { + "description": "A list of additional permissions included in this role.", + "type": "array", + "items": { + "type": "string" + } + }, + "organization": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" } }, "required": [ @@ -59429,11 +59692,70 @@ "custom_roles": [ { "id": 8030, - "name": "Developer" + "name": "Security Engineer", + "description": "Able to contribute code and maintain the security pipeline", + "base_role": "maintain", + "permissions": [ + "delete_alerts_code_scanning" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-04T22:19:11Z", + "updated_at": "2022-07-04T22:20:11Z" }, { "id": 8031, - "name": "Designer" + "name": "Community manager", + "description": "Able to handle all the community interactions without being able to contribute code", + "base_role": "read", + "permissions": [ + "mark_as_duplicate", + "manage_settings_pages", + "manage_settings_wiki", + "set_social_preview", + "edit_repo_metadata", + "toggle_discussion_comment_minimize" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-05T12:01:11Z", + "updated_at": "2022-07-05T12:20:11Z" } ] } @@ -59823,6 +60145,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -60077,6 +60441,30 @@ "examples": [ "\"http://github.blog\"" ] + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether Dependabot alerts is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether Dependabot security updates is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." } } }, @@ -60448,6 +60836,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -62603,8 +63033,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -62677,6 +63108,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -66061,8 +66496,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -66135,6 +66571,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -68920,8 +69360,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -68994,6 +69435,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -70479,8 +70924,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -70553,6 +70999,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -74229,8 +74679,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -74303,6 +74754,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -76029,6 +76484,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -79357,8 +79819,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -79431,6 +79894,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -79970,6 +80437,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -80847,6 +81324,942 @@ } } }, + "/orgs/{org}/custom_roles": { + "post": { + "summary": "Create a custom role", + "description": "**Note**: This operation is in beta and is subject to change.\n\nCreates a custom repository role that can be used by all repositories owned by the organization.\n\nTo use this endpoint the authenticated user must be an administrator for the organization and must use an access token with `admin:org` scope.\nGitHub Apps must have the `organization_custom_roles:write` organization permission to use this endpoint.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization).\"", + "tags": [ + "orgs" + ], + "operationId": "orgs/create-custom-role", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/orgs#create-a-custom-role" + }, + "parameters": [ + { + "name": "org", + "description": "The organization name. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the custom role." + }, + "description": { + "type": "string", + "description": "A short description about the intended usage of this role or what permissions it grants." + }, + "base_role": { + "type": "string", + "enum": [ + "read", + "triage", + "write", + "maintain" + ], + "description": "The system role from which this role inherits permissions." + }, + "permissions": { + "type": "array", + "description": "A list of additional permissions included in this role.", + "items": { + "type": "string" + } + } + }, + "required": [ + "name", + "base_role", + "permissions" + ] + }, + "examples": { + "default": { + "value": { + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label" + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Organization Custom Repository Role", + "description": "Custom repository roles created by organization administrators", + "type": "object", + "properties": { + "id": { + "description": "The unique identifier of the custom role.", + "type": "integer" + }, + "name": { + "description": "The name of the custom role.", + "type": "string" + }, + "description": { + "description": "A short description about who this role is for or what permissions it grants.", + "type": [ + "string", + "null" + ] + }, + "base_role": { + "type": "string", + "description": "The system role from which this role inherits permissions.", + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + "permissions": { + "description": "A list of additional permissions included in this role.", + "type": "array", + "items": { + "type": "string" + } + }, + "organization": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "id", + "name" + ] + }, + "examples": { + "default": { + "value": { + "id": 8030, + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-04T22:19:11Z", + "updated_at": "2022-07-04T22:19:11Z" + } + } + } + } + } + }, + "422": { + "description": "Validation failed", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "orgs", + "subcategory": "custom-roles" + } + } + }, + "/orgs/{org}/custom_roles/{role_id}": { + "patch": { + "summary": "Update a custom role", + "description": "**Note**: This operation is in beta and subject to change.\n\nUpdates a custom repository role that can be used by all repositories owned by the organization.\n\nTo use this endpoint the authenticated user must be an administrator for the organization and must use an access token with `admin:org` scope.\nGitHub Apps must have the `organization_custom_roles:write` organization permission to use this endpoint.\n\nFor more information about custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization).\"", + "tags": [ + "orgs" + ], + "operationId": "orgs/update-custom-role", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/orgs#update-a-custom-role" + }, + "parameters": [ + { + "name": "org", + "description": "The organization name. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "role_id", + "description": "The unique identifier of the role.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the custom role." + }, + "description": { + "type": "string", + "description": "A short description about who this role is for or what permissions it grants." + }, + "base_role": { + "type": "string", + "enum": [ + "read", + "triage", + "write", + "maintain" + ], + "description": "The system role from which this role inherits permissions." + }, + "permissions": { + "type": "array", + "description": "A list of additional permissions included in this role. If specified, these permissions will replace any currently set on the role.", + "items": { + "type": "string" + } + } + } + }, + "examples": { + "default": { + "value": { + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label", + "remove_label" + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Organization Custom Repository Role", + "description": "Custom repository roles created by organization administrators", + "type": "object", + "properties": { + "id": { + "description": "The unique identifier of the custom role.", + "type": "integer" + }, + "name": { + "description": "The name of the custom role.", + "type": "string" + }, + "description": { + "description": "A short description about who this role is for or what permissions it grants.", + "type": [ + "string", + "null" + ] + }, + "base_role": { + "type": "string", + "description": "The system role from which this role inherits permissions.", + "enum": [ + "read", + "triage", + "write", + "maintain" + ] + }, + "permissions": { + "description": "A list of additional permissions included in this role.", + "type": "array", + "items": { + "type": "string" + } + }, + "organization": { + "title": "Simple User", + "description": "Simple User", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + } + }, + "required": [ + "avatar_url", + "events_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", + "html_url", + "id", + "node_id", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "id", + "name" + ] + }, + "examples": { + "default": { + "value": { + "id": 8030, + "name": "Labeler", + "description": "A role for issue and PR labelers", + "base_role": "read", + "permissions": [ + "add_label", + "remove_label" + ], + "organization": { + "login": "github", + "id": 9919, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=", + "avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/github", + "html_url": "https://github.com/github", + "followers_url": "https://api.github.com/users/github/followers", + "following_url": "https://api.github.com/users/github/following{/other_user}", + "gists_url": "https://api.github.com/users/github/gists{/gist_id}", + "starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/github/subscriptions", + "organizations_url": "https://api.github.com/users/github/orgs", + "repos_url": "https://api.github.com/users/github/repos", + "events_url": "https://api.github.com/users/github/events{/privacy}", + "received_events_url": "https://api.github.com/users/github/received_events", + "type": "Organization", + "site_admin": false + }, + "created_at": "2022-07-04T22:19:11Z", + "updated_at": "2022-07-04T22:19:11Z" + } + } + } + } + } + }, + "422": { + "description": "Validation failed", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "orgs", + "subcategory": "custom-roles" + } + }, + "delete": { + "summary": "Delete a custom role", + "description": "**Note**: This operation is in beta and is subject to change.\n\nDeletes a custom role from an organization. Once the custom role has been deleted, any\nuser, team, or invitation with the deleted custom role will be reassigned the inherited role.\n\nTo use this endpoint the authenticated user must be an administrator for the organization and must use an access token with `admin:org` scope.\nGitHub Apps must have the `organization_custom_roles:write` organization permission to use this endpoint.\n\nFor more information about custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization).\"", + "tags": [ + "orgs" + ], + "operationId": "orgs/delete-custom-role", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/orgs#delete-a-custom-role" + }, + "parameters": [ + { + "name": "org", + "description": "The organization name. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "role_id", + "description": "The unique identifier of the role.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "previews": [ + + ], + "category": "orgs", + "subcategory": "custom-roles" + } + } + }, "/orgs/{org}/dependabot/secrets": { "get": { "summary": "List organization secrets", @@ -83296,8 +84709,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -83370,6 +84784,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -84104,6 +85522,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -86548,8 +87972,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -86622,6 +88047,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -88609,6 +90038,87 @@ } } }, + "/orgs/{org}/fine_grained_permissions": { + "get": { + "summary": "List fine-grained permissions for an organization", + "description": "**Note**: This operation is in beta and subject to change.\n\nLists the fine-grained permissions available for an organization.\n\nTo use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with `admin:org repo` scope.\nGitHub Apps must have the `organization_custom_roles:read` organization permission to use this endpoint.", + "tags": [ + "orgs" + ], + "operationId": "orgs/list-fine-grained-permissions", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/orgs#list-fine-grained-permissions-for-an-organization" + }, + "parameters": [ + { + "name": "org", + "description": "The organization name. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Organization Fine-Grained Permission", + "description": "Fine-grained permissions available for the organization", + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "name", + "description" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "name": "add_assignee", + "description": "Assign or remove a user" + }, + { + "name": "remove_assignee", + "description": "Remove an assigned user" + }, + { + "name": "add_label", + "description": "Add or remove a label" + } + ] + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "previews": [ + + ], + "category": "orgs", + "subcategory": "custom-roles" + } + } + }, "/orgs/{org}/hooks": { "get": { "summary": "List organization webhooks", @@ -91569,14 +93079,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -91721,6 +93223,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -92520,14 +94030,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -92672,6 +94174,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -94877,6 +96387,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -97321,8 +98837,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -97395,6 +98912,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -98486,17 +100007,6 @@ } } }, - "302": { - "description": "Response if requester is not an organization member", - "headers": { - "Location": { - "example": "https://api.github.com/orgs/github/public_members", - "schema": { - "type": "string" - } - } - } - }, "422": { "description": "Validation failed", "content": { @@ -101176,8 +102686,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -101250,6 +102761,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -101789,6 +103304,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -101955,8 +103480,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -101964,7 +103489,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -104796,8 +106322,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -104870,6 +106397,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -106825,8 +108356,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -106899,6 +108431,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -108881,8 +110417,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -108955,6 +110492,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -111457,8 +112998,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -111531,6 +113073,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -114574,8 +116120,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -114648,6 +116195,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -117223,8 +118774,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -117297,6 +118849,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -122127,8 +123683,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -122201,6 +123758,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -122687,8 +124248,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -124053,8 +125615,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -124127,6 +125690,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -139562,8 +141129,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -139636,6 +141204,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -142111,8 +143683,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -142185,6 +143758,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -143462,6 +145039,78 @@ } } }, + "/orgs/{org}/{security_product}/{enablement}": { + "post": { + "summary": "Enable or disable a security feature for an organization", + "description": "Enables or disables the specified security feature for all repositories in an organization.\n\nTo use this endpoint, you must be an organization owner or be member of a team with the security manager role.\nA token with the 'write:org' scope is also required.\n\nGitHub Apps must have the `organization_administration:write` permission to use this endpoint.\n\nFor more information, see \"[Managing security managers in your organization](https://docs.github.com/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"", + "tags": [ + "orgs" + ], + "operationId": "orgs/enable-or-disable-security-product-on-all-org-repos", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/orgs#enable-or-disable-security-product-on-all-org-repos" + }, + "parameters": [ + { + "name": "org", + "description": "The organization name. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "security_product", + "in": "path", + "description": "The security feature to enable or disable.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "dependency_graph", + "dependabot_alerts", + "dependabot_security_updates", + "advanced_security", + "secret_scanning", + "secret_scanning_push_protection" + ] + } + }, + { + "name": "enablement", + "in": "path", + "description": "The action to take.\n\n`enable_all` means to enable the specified security feature for all repositories in the organization.\n`disable_all` means to disable the specified security feature for all repositories in the organization.", + "required": true, + "schema": { + "type": "string", + "enum": [ + "enable_all", + "disable_all" + ] + } + } + ], + "responses": { + "204": { + "description": "Action started" + }, + "422": { + "description": "The action could not be taken due to an in progress enablement, or a policy is preventing enablement" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "previews": [ + + ], + "category": "orgs", + "subcategory": "orgs" + } + } + }, "/projects/columns/cards/{card_id}": { "get": { "summary": "Get a project card", @@ -151648,8 +153297,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -151722,6 +153372,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -153447,8 +155101,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -153521,6 +155176,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -154902,8 +156561,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -154976,6 +156636,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -155996,8 +157660,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -158025,8 +159690,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -158099,6 +159765,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -159824,8 +161494,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -159898,6 +161569,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -161279,8 +162954,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -161353,6 +163029,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -166876,8 +168556,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -166950,6 +168631,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -168444,8 +170129,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -168518,6 +170204,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -169911,6 +171601,15 @@ "schema": { "type": "integer" } + }, + { + "name": "head_sha", + "description": "Only returns workflow runs that are associated with the specified `head_sha`.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } } ], "responses": { @@ -172535,8 +174234,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -172609,6 +174309,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -174739,8 +176443,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -174813,6 +176518,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -177998,8 +179707,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -178072,6 +179782,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -180202,8 +181916,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -180276,6 +181991,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -184264,8 +185983,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -184338,6 +186058,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -186468,8 +188192,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -186542,6 +188267,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -191311,7 +193040,7 @@ }, "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs": { "get": { - "summary": "List workflow runs", + "summary": "List workflow runs for a workflow", "description": "List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/rest/overview/resources-in-the-rest-api#parameters).\n\nAnyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.", "tags": [ "actions" @@ -191452,6 +193181,15 @@ "schema": { "type": "integer" } + }, + { + "name": "head_sha", + "description": "Only returns workflow runs that are associated with the specified `head_sha`.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } } ], "responses": { @@ -194076,8 +195814,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -194150,6 +195889,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -196280,8 +198023,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -196354,6 +198098,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -197443,14 +199191,18 @@ ] }, "is_alphanumeric": { - "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference is a legacy autolink that only matches numeric characters.", - "type": "boolean" + "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference only matches numeric characters.", + "type": "boolean", + "examples": [ + true + ] } }, "required": [ "id", "key_prefix", - "url_template" + "url_template", + "is_alphanumeric" ] } }, @@ -197517,11 +199269,16 @@ "properties": { "key_prefix": { "type": "string", - "description": "The prefix appended by alphanumeric characters will generate a link any time it is found in an issue, pull request, or commit." + "description": "This prefix appended by certain characters will generate a link any time it is found in an issue, pull request, or commit." }, "url_template": { "type": "string", - "description": "The URL must contain `` for the reference number. `` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`." + "description": "The URL must contain `` for the reference number. `` matches different characters depending on the value of `is_alphanumeric`." + }, + "is_alphanumeric": { + "type": "boolean", + "default": "true", + "description": "Whether this autolink reference matches alphanumeric characters. If true, the `` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters." } }, "required": [ @@ -197533,7 +199290,8 @@ "default": { "value": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true } } } @@ -197571,14 +199329,18 @@ ] }, "is_alphanumeric": { - "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference is a legacy autolink that only matches numeric characters.", - "type": "boolean" + "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference only matches numeric characters.", + "type": "boolean", + "examples": [ + true + ] } }, "required": [ "id", "key_prefix", - "url_template" + "url_template", + "is_alphanumeric" ] }, "examples": { @@ -197758,14 +199520,18 @@ ] }, "is_alphanumeric": { - "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference is a legacy autolink that only matches numeric characters.", - "type": "boolean" + "description": "Whether this autolink reference matches alphanumeric characters. If false, this autolink reference only matches numeric characters.", + "type": "boolean", + "examples": [ + true + ] } }, "required": [ "id", "key_prefix", - "url_template" + "url_template", + "is_alphanumeric" ] }, "examples": { @@ -202802,6 +204568,115 @@ "protected", "protection_url" ] + }, + "examples": { + "default": { + "value": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [ + + ], + "checks": [ + + ] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + } + } } } } @@ -207309,6 +209184,85 @@ "required": [ "url" ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + } + } } } } @@ -212195,7 +214149,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -212212,12 +214166,23 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding status checks to a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + } + } } } } @@ -212432,7 +214397,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -212449,12 +214414,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example updating status checks for a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -212641,7 +214616,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -212658,12 +214633,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing status checks from a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -215785,7 +217770,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -215802,12 +217787,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -216179,7 +218174,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -216190,18 +218185,28 @@ ], "example": { "teams": [ - "my-team" + "justice-league" ] } }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -216572,7 +218577,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -216589,12 +218594,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -217241,7 +219256,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -217263,6 +219278,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example adding a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -217601,7 +219626,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -217623,6 +219648,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -217960,7 +219995,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -217982,6 +220017,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example removing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -228336,8 +230381,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -228410,6 +230456,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -231488,8 +233538,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -231562,6 +233613,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -234236,8 +236291,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -234310,6 +236366,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -237267,8 +239327,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -237341,6 +239402,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -240497,6 +242562,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -240666,7 +242738,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -241205,6 +243278,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -241374,7 +243454,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -241659,6 +243740,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -241880,6 +243962,33 @@ "6c81cd8e-b078-4ac3-a3be-1dad7dbd0b53" ] } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "sort", + "description": "The property by which to sort the results.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created" + ], + "default": "created" + } } ], "responses": { @@ -242466,7 +244575,7 @@ }, "delete": { "summary": "Delete a code scanning analysis from a repository", - "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `analysis_key`\n* `environment`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", + "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `category`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", "operationId": "code-scanning/delete-analysis", "tags": [ "code-scanning" @@ -245560,8 +247669,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -245634,6 +247744,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -246173,6 +248287,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -248969,8 +251093,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -249043,6 +251168,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -249582,6 +251711,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -249748,8 +251887,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -249757,7 +251896,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -252021,8 +254161,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -252095,6 +254236,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -252634,6 +254779,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -252800,8 +254955,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -252809,7 +254964,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -256755,8 +258911,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -256829,6 +258986,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -265534,8 +267695,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -265608,6 +267770,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -267178,8 +269344,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -267252,6 +269419,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -269400,6 +271571,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -273222,8 +275414,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -273296,6 +275489,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -275899,8 +278096,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -275973,6 +278171,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -279712,6 +281914,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -279738,26 +281966,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -281358,7 +283581,7 @@ }, "sha": { "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being deleted." }, "branch": { "type": "string", @@ -291482,6 +293705,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -293926,8 +296155,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -294000,6 +296230,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -297238,8 +299472,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -297312,6 +299547,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -297805,6 +300044,10 @@ "name": { "type": "string", "description": "When forking from an existing repository, a new name for the fork." + }, + "default_branch_only": { + "type": "boolean", + "description": "When forking from an existing repository, fork with only the default branch." } } } @@ -299770,8 +302013,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -299844,6 +302088,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -301569,8 +303817,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -301643,6 +303892,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -303024,8 +305277,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -303098,6 +305352,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -312912,14 +315170,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -313064,6 +315314,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -313678,6 +315936,15 @@ "required": [ "limit" ] + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "limit": "collaborators_only", + "expiry": "one_day" + } + } } } } @@ -315756,8 +318023,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -315830,6 +318098,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -316661,6 +318933,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "permissions": "write" + } + } } } } @@ -318575,8 +320855,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -318649,6 +320930,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -319676,6 +321961,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -322120,8 +324411,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -322194,6 +324486,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -322855,7 +325151,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -323209,6 +325506,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -325653,8 +327956,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -325727,6 +328031,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -326386,7 +328694,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -330573,6 +332882,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -333017,8 +335332,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -333091,6 +335407,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -335118,7 +337438,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ] @@ -335550,6 +337871,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -337994,8 +340321,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -338068,6 +340396,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -340133,7 +342465,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -340332,6 +342665,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -342776,8 +345115,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -342850,6 +345190,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -343509,7 +345853,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -343690,6 +346035,22 @@ "closed" ] }, + "state_reason": { + "type": [ + "string", + "null" + ], + "enum": [ + "completed", + "not_planned", + "reopened", + null + ], + "description": "The reason for the current state", + "examples": [ + "not_planned" + ] + }, "milestone": { "oneOf": [ { @@ -343831,6 +346192,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -346275,8 +348642,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -346349,6 +348717,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -347008,7 +349380,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -347357,6 +349730,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -349801,8 +352180,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -349875,6 +352255,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -350534,7 +352918,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -350680,6 +353065,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -353124,8 +355515,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -353198,6 +355590,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -353857,7 +356253,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -377763,6 +380160,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -380207,8 +382610,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -380281,6 +382685,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -391383,8 +393791,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -391457,6 +393866,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -398807,8 +401220,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -398881,6 +401295,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -400451,8 +402869,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -400525,6 +402944,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -412679,6 +415102,32 @@ "304": { "description": "Not modified" }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -412705,26 +415154,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -419048,8 +421492,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -419122,6 +421567,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -419661,6 +422110,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -419827,8 +422286,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -419836,7 +422295,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -422100,8 +424560,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -422174,6 +424635,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -422713,6 +425178,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -422879,8 +425354,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -422888,7 +425363,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -426294,6 +428770,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -429957,8 +432454,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -430031,6 +432529,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -431601,8 +434103,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -431675,6 +434178,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -435709,8 +438216,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -435783,6 +438291,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -437353,8 +439865,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -437427,6 +439940,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -459287,8 +461804,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -459361,6 +461879,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -460038,7 +462560,7 @@ "/repos/{template_owner}/{template_repo}/generate": { "post": { "summary": "Create a repository using a template", - "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", + "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", "tags": [ "repos" ], @@ -461421,8 +463943,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -461495,6 +464018,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -463636,8 +466163,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -463710,6 +466238,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -472552,8 +475084,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -472626,6 +475159,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -475508,8 +478045,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -475582,6 +478120,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -478473,8 +481015,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -478547,6 +481090,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479143,7 +481690,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -493228,8 +495776,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -493302,6 +495851,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -495797,8 +498350,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -495871,6 +498425,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -501954,8 +504512,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -502028,6 +504587,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -502567,6 +505130,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -505546,8 +508119,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -505620,6 +508194,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -506159,6 +508737,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -506325,8 +508913,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -506334,7 +508922,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -508598,8 +511187,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -508672,6 +511262,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -509211,6 +511805,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -509377,8 +511981,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -509386,7 +511990,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -511940,8 +514545,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -512014,6 +514620,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -515365,8 +517975,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -515439,6 +518050,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -515978,6 +518593,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -516144,8 +518769,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -516153,7 +518778,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -518589,8 +521215,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -518663,6 +521290,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -519202,6 +521833,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -519368,8 +522009,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -519377,7 +522018,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -522615,8 +525257,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -522689,6 +525332,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -523228,6 +525875,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -523394,8 +526051,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -523403,7 +526060,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -525927,8 +528585,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -526001,6 +528660,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -526540,6 +529203,16 @@ "examples": [ "2011-01-26T20:01:12Z" ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] } }, "required": [ @@ -526706,8 +529379,8 @@ }, "location": "WestUs2", "idle_timeout_minutes": 60, - "retention_period_minutes": "43200,", - "retention_expires_at": "null,", + "retention_period_minutes": 43200, + "retention_expires_at": null, "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", @@ -526715,7 +529388,8 @@ "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", "recent_folders": [ - ] + ], + "template": null } } } @@ -530621,14 +533295,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -530773,6 +533439,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -532651,8 +535325,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -532725,6 +535400,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -533701,6 +536380,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -536145,8 +538830,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -536219,6 +538905,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -541715,8 +544405,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -541789,6 +544480,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -543808,8 +546503,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -543882,6 +546578,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -545877,8 +548577,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -545951,6 +548652,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -548612,8 +551317,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -548686,6 +551392,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -551494,8 +554204,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -551568,6 +554279,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -554082,8 +556797,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -554156,6 +556872,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -557745,8 +560465,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -557819,6 +560540,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -559663,8 +562388,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -559737,6 +562463,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -562131,8 +564861,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -562205,6 +564936,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -563289,6 +566024,719 @@ } } }, + "/user/ssh_signing_keys": { + "get": { + "summary": "List SSH signing keys for the authenticated user", + "description": "Lists the SSH signing keys for the authenticated user's GitHub account. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least `read:ssh_signing_key` scope. For more information, see \"[Understanding scopes for OAuth apps](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).\"", + "tags": [ + "users" + ], + "operationId": "users/list-ssh-signing-keys-for-authenticated-user", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/users#list-public-ssh-signing-keys-for-the-authenticated-user" + }, + "parameters": [ + { + "name": "per_page", + "description": "The number of results per page (max 100).", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "Page number of the results to fetch.", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + }, + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJy931234", + "id": 3, + "url": "https://api.github.com/user/keys/3", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAB", + "created_at": "2020-07-11T21:31:57Z" + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + }, + "304": { + "description": "Not modified" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "401": { + "description": "Requires authentication", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": false, + "previews": [ + + ], + "category": "users", + "subcategory": "ssh-signing-keys" + } + }, + "post": { + "summary": "Create a SSH signing key for the authenticated user", + "description": "Creates an SSH signing key for the authenticated user's GitHub account. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least `write:ssh_signing_key` scope. For more information, see \"[Understanding scopes for OAuth apps](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).\"", + "operationId": "users/create-ssh-signing-key-for-authenticated-user", + "tags": [ + "users" + ], + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/users#create-an-ssh-signing-key-for-the-authenticated-user" + }, + "parameters": [ + + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "title": { + "description": "A descriptive name for the new key.", + "type": "string", + "examples": [ + "Personal MacBook Air" + ] + }, + "key": { + "description": "The public SSH key to add to your GitHub account. For more information, see \"[Checking for existing SSH keys](https://docs.github.com/authentication/connecting-to-github-with-ssh/checking-for-existing-ssh-keys).\"", + "type": "string", + "pattern": "^ssh-(rsa|dss|ed25519) |^ecdsa-sha2-nistp(256|384|521) " + } + }, + "required": [ + "key" + ], + "type": "object" + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + }, + "examples": { + "default": { + "value": { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + } + } + } + } + } + }, + "422": { + "description": "Validation failed", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "304": { + "description": "Not modified" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "401": { + "description": "Requires authentication", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": false, + "category": "users", + "subcategory": "ssh-signing-keys" + } + } + }, + "/user/ssh_signing_keys/{ssh_signing_key_id}": { + "get": { + "summary": "Get an SSH signing key for the authenticated user", + "description": "Gets extended details for an SSH signing key. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least `read:ssh_signing_key` scope. For more information, see \"[Understanding scopes for OAuth apps](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).\"", + "tags": [ + "users" + ], + "operationId": "users/get-ssh-signing-key-for-authenticated-user", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/users#get-a-ssh-signing-key-for-the-authenticated-user" + }, + "parameters": [ + { + "name": "ssh_signing_key_id", + "description": "The unique identifier of the SSH signing key.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + }, + "examples": { + "default": { + "value": { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "304": { + "description": "Not modified" + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "401": { + "description": "Requires authentication", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": false, + "category": "users", + "subcategory": "ssh-signing-keys" + } + }, + "delete": { + "summary": "Delete an SSH signing key for the authenticated user", + "description": "Deletes an SSH signing key from the authenticated user's GitHub account. You must authenticate with Basic Authentication, or you must authenticate with OAuth with at least `admin:ssh_signing_key` scope. For more information, see \"[Understanding scopes for OAuth apps](https://docs.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/).\"", + "tags": [ + "users" + ], + "operationId": "users/delete-ssh-signing-key-for-authenticated-user", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/users#delete-a-ssh-signing-key-for-the-authenticated-user" + }, + "parameters": [ + { + "name": "ssh_signing_key_id", + "description": "The unique identifier of the SSH signing key.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + }, + "304": { + "description": "Not modified" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "401": { + "description": "Requires authentication", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": false, + "category": "users", + "subcategory": "ssh-signing-keys" + } + } + }, "/user/starred": { "get": { "summary": "List repositories starred by the authenticated user", @@ -564659,8 +568107,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -564733,6 +568182,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -566258,8 +569711,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -566332,6 +569786,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -568931,8 +572389,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -569005,6 +572464,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -571416,6 +574879,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -573860,8 +577329,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -573934,6 +577404,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -575435,6 +578909,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -577879,8 +581359,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -577953,6 +581434,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -579456,6 +582941,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -581900,8 +585391,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -581974,6 +585466,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -585360,14 +588856,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -585512,6 +589000,14 @@ "write" ] }, + "organization_custom_roles": { + "type": "string", + "description": "The level of permission to grant the access token for custom roles management. This property is in beta and is subject to change.", + "enum": [ + "read", + "write" + ] + }, "organization_hooks": { "type": "string", "description": "The level of permission to grant the access token to manage the post-receive hooks for an organization.", @@ -588373,8 +591869,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -588447,6 +591944,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -591022,8 +594523,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -591096,6 +594598,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -593307,6 +596813,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -595751,8 +599263,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -595825,6 +599338,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -597328,6 +600845,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -599772,8 +603295,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -599846,6 +603370,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -603114,8 +606642,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -603188,6 +606717,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -603836,6 +607369,121 @@ } } }, + "/users/{username}/ssh_signing_keys": { + "get": { + "summary": "List SSH signing keys for a user", + "description": "Lists the SSH signing keys for a user. This operation is accessible by anyone.", + "tags": [ + "users" + ], + "operationId": "users/list-ssh-signing-keys-for-user", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reference/users#list-ssh-signing-keys-for-a-user" + }, + "parameters": [ + { + "name": "username", + "description": "The handle for the GitHub user account.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100).", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "Page number of the results to fetch.", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "SSH Signing Key", + "description": "A public SSH key used to sign Git commits", + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "id": { + "type": "integer" + }, + "title": { + "type": "string" + }, + "created_at": { + "type": "string", + "format": "date-time" + } + }, + "required": [ + "key", + "id", + "title", + "created_at" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234", + "id": 2, + "url": "https://api.github.com/user/keys/2", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAA", + "created_at": "2020-06-11T21:31:57Z" + }, + { + "key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJy931234", + "id": 3, + "url": "https://api.github.com/user/keys/3", + "title": "ssh-rsa AAAAB3NzaC1yc2EAAB", + "created_at": "2020-07-11T21:31:57Z" + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "users", + "subcategory": "ssh-signing-keys" + } + } + }, "/users/{username}/starred": { "get": { "summary": "List repositories starred by a user", @@ -605226,8 +608874,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -605300,6 +608949,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -606690,8 +610343,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -606764,6 +610418,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -608936,8 +612594,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -609010,6 +612669,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/dereferenced/ghes-3.2.deref.json b/lib/rest/static/dereferenced/ghes-3.2.deref.json index c9dadf843c..3919756e85 100644 --- a/lib/rest/static/dereferenced/ghes-3.2.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.2.deref.json @@ -4438,14 +4438,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -5691,14 +5683,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -6489,14 +6473,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9493,14 +9469,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10438,14 +10406,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -11169,14 +11129,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -11470,14 +11422,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -12996,6 +12940,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14948,14 +14896,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -15930,14 +15870,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -16784,14 +16716,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -17340,14 +17264,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -18396,14 +18312,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -19290,14 +19198,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -20676,14 +20576,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -21668,14 +21560,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -22733,14 +22617,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -23539,14 +23415,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -24582,14 +24450,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -25388,14 +25248,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -26305,14 +26157,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -27247,14 +27091,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -34823,6 +34659,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -36290,6 +36130,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -36823,6 +36667,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -39249,6 +39099,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54186,6 +54040,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54719,6 +54577,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -57145,6 +57009,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -58939,6 +58807,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -61365,6 +61239,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -64674,6 +64552,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -67243,6 +67125,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -71106,6 +70992,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -74171,6 +74061,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -76942,6 +76836,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -78409,6 +78307,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -81180,6 +81082,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -81908,6 +81814,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -84334,6 +84246,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -88566,14 +88482,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -89525,14 +89433,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -90277,6 +90177,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -92703,6 +92609,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -93803,17 +93713,6 @@ } } }, - "302": { - "description": "Response if requester is not an organization member", - "headers": { - "Location": { - "example": "https://api.github.com/orgs/github/public_members", - "schema": { - "type": "string" - } - } - } - }, "422": { "description": "Validation failed", "content": { @@ -99380,6 +99279,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -99864,8 +99767,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -101212,6 +101116,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -113661,6 +113569,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -116106,6 +116018,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -125427,6 +125343,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -127070,6 +126990,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -128433,6 +128357,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -129957,8 +129885,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -131963,6 +131892,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -133606,6 +133539,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -134969,6 +134906,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -139067,6 +139008,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -140543,6 +140488,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -143225,6 +143174,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -145325,6 +145278,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -148061,6 +148018,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -150161,6 +150122,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -154542,7 +154507,7 @@ }, "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs": { "get": { - "summary": "List workflow runs", + "summary": "List workflow runs for a workflow", "description": "List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/enterprise-server@3.2/rest/overview/resources-in-the-rest-api#parameters).\n\nAnyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.", "tags": [ "actions" @@ -156898,6 +156863,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -158998,6 +158967,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -163212,6 +163185,115 @@ "protected", "protection_url" ] + }, + "examples": { + "default": { + "value": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [ + + ], + "checks": [ + + ] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + } + } } } } @@ -166250,6 +166332,85 @@ "required": [ "url" ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + } + } } } } @@ -169667,7 +169828,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -169684,12 +169845,23 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding status checks to a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + } + } } } } @@ -169904,7 +170076,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -169921,12 +170093,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example updating status checks for a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -170113,7 +170295,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -170130,12 +170312,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing status checks from a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -173257,7 +173449,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -173274,12 +173466,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -173651,7 +173853,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -173662,18 +173864,28 @@ ], "example": { "teams": [ - "my-team" + "justice-league" ] } }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -174044,7 +174256,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -174061,12 +174273,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -174713,7 +174935,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -174735,6 +174957,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example adding a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -175073,7 +175305,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -175095,6 +175327,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -175432,7 +175674,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -175454,6 +175696,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example removing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -184916,6 +185168,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -187964,6 +188220,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -190608,6 +190868,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -193535,6 +193799,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -196586,6 +196854,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -196755,7 +197030,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -197260,6 +197536,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -197429,7 +197712,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -201455,6 +201739,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -210182,6 +210470,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -211734,6 +212026,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -213888,6 +214184,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -217686,6 +218003,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -220259,6 +220580,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -223592,6 +223917,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -223618,26 +223969,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -225563,7 +225909,7 @@ }, "sha": { "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being deleted." }, "branch": { "type": "string", @@ -234578,6 +234924,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -237004,6 +237356,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -240218,6 +240574,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -242648,6 +243008,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -244291,6 +244655,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -245654,6 +246022,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -253675,14 +254047,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -256213,6 +256577,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -257038,6 +257406,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "permissions": "write" + } + } } } } @@ -258928,6 +259304,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -259949,6 +260329,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -262375,6 +262761,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -263036,7 +263426,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -263399,6 +263790,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -265825,6 +266222,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -266484,7 +266885,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -270702,6 +271104,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -273128,6 +273536,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -275155,7 +275567,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ] @@ -275593,6 +276006,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -278019,6 +278438,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -280084,7 +280507,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -280289,6 +280713,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -282715,6 +283145,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -283374,7 +283808,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -283560,6 +283995,22 @@ "closed" ] }, + "state_reason": { + "type": [ + "string", + "null" + ], + "enum": [ + "completed", + "not_planned", + "reopened", + null + ], + "description": "The reason for the current state", + "examples": [ + "not_planned" + ] + }, "milestone": { "oneOf": [ { @@ -283701,6 +284152,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -286127,6 +286584,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -286786,7 +287247,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -287135,6 +287597,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -289561,6 +290029,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -290220,7 +290692,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -290366,6 +290839,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -292792,6 +293271,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -293451,7 +293934,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -317384,6 +317868,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -319810,6 +320300,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -330638,6 +331132,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -337646,6 +338144,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -339198,6 +339700,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -351381,6 +351887,32 @@ "304": { "description": "Not modified" }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -351407,26 +351939,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -358714,6 +359241,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -362359,6 +362907,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -363911,6 +364463,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -367927,6 +368483,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -369479,6 +370039,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -389086,6 +389650,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -389620,7 +390188,7 @@ "/repos/{template_owner}/{template_repo}/generate": { "post": { "summary": "Create a repository using a template", - "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.2/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.2/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", + "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.2/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.2/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", "tags": [ "repos" ], @@ -390985,6 +391553,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -393124,6 +393696,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -396005,6 +396581,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -398857,6 +399437,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -401729,6 +402313,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -402325,7 +402913,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -417614,6 +418203,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -420079,6 +420672,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -426063,14 +426660,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -428083,6 +428672,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428763,6 +429356,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -431189,6 +431788,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -436777,6 +437380,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -438594,6 +439201,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -440960,6 +441571,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -443390,6 +444005,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -444896,6 +445515,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -447471,6 +448094,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -449860,6 +450487,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -452286,6 +452919,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -453787,6 +454424,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -456213,6 +456856,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -457716,6 +458363,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -460142,6 +460795,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -463505,14 +464162,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -465049,6 +465698,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -467475,6 +468130,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -468978,6 +469637,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -471404,6 +472069,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -474648,6 +475317,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -476457,6 +477130,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -477829,6 +478506,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479976,6 +480657,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/dereferenced/ghes-3.3.deref.json b/lib/rest/static/dereferenced/ghes-3.3.deref.json index 2d1944072e..587a3828b3 100644 --- a/lib/rest/static/dereferenced/ghes-3.3.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.3.deref.json @@ -4292,14 +4292,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -5545,14 +5537,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -6343,14 +6327,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9347,14 +9323,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10292,14 +10260,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -11023,14 +10983,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -11324,14 +11276,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -12861,6 +12805,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14813,14 +14761,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -15795,14 +15735,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -16649,14 +16581,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -17205,14 +17129,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -18261,14 +18177,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -19155,14 +19063,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -20541,14 +20441,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -21533,14 +21425,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -22598,14 +22482,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -23404,14 +23280,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -24447,14 +24315,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -25253,14 +25113,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -26170,14 +26022,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -27112,14 +26956,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -34699,6 +34535,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -36177,6 +36017,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37106,6 +36950,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -39543,6 +39393,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54491,6 +54345,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -55018,6 +54876,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -57455,6 +57319,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -59240,6 +59108,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -61677,6 +61551,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -64997,6 +64875,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -67577,6 +67459,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -71441,6 +71327,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -74517,6 +74407,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -77299,6 +77193,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -78777,6 +78675,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -81559,6 +81461,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -82683,6 +82589,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -85120,6 +85032,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -89352,14 +89268,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -90311,14 +90219,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -91063,6 +90963,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -93500,6 +93406,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -94591,17 +94501,6 @@ } } }, - "302": { - "description": "Response if requester is not an organization member", - "headers": { - "Location": { - "example": "https://api.github.com/orgs/github/public_members", - "schema": { - "type": "string" - } - } - } - }, "422": { "description": "Validation failed", "content": { @@ -100145,6 +100044,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -100625,8 +100528,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -101984,6 +101888,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -115475,6 +115383,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -117931,6 +117843,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -127147,6 +127063,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -128807,6 +128727,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -130181,6 +130105,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -131201,8 +131129,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -133218,6 +133147,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -134878,6 +134811,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -136252,6 +136189,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -140432,6 +140373,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -141919,6 +141864,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -144612,6 +144561,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -146723,6 +146676,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -149470,6 +149427,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -151581,6 +151542,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -156026,7 +155991,7 @@ }, "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs": { "get": { - "summary": "List workflow runs", + "summary": "List workflow runs for a workflow", "description": "List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/enterprise-server@3.3/rest/overview/resources-in-the-rest-api#parameters).\n\nAnyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.", "tags": [ "actions" @@ -158393,6 +158358,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -160504,6 +160473,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -161498,6 +161471,11 @@ "url_template": { "type": "string", "description": "The URL must contain `` for the reference number." + }, + "is_alphanumeric": { + "type": "boolean", + "default": "true", + "description": "Whether this autolink reference matches alphanumeric characters. If true, the `` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters." } }, "required": [ @@ -161509,7 +161487,8 @@ "default": { "value": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true } } } @@ -165228,6 +165207,115 @@ "protected", "protection_url" ] + }, + "examples": { + "default": { + "value": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [ + + ], + "checks": [ + + ] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + } + } } } } @@ -168260,6 +168348,85 @@ "required": [ "url" ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + } + } } } } @@ -171641,7 +171808,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -171658,12 +171825,23 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding status checks to a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + } + } } } } @@ -171878,7 +172056,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -171895,12 +172073,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example updating status checks for a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -172087,7 +172275,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -172104,12 +172292,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing status checks from a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -175231,7 +175429,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -175248,12 +175446,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -175625,7 +175833,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -175636,18 +175844,28 @@ ], "example": { "teams": [ - "my-team" + "justice-league" ] } }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -176018,7 +176236,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -176035,12 +176253,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -176687,7 +176915,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -176709,6 +176937,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example adding a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -177047,7 +177285,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -177069,6 +177307,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -177406,7 +177654,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -177428,6 +177676,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example removing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -187049,6 +187307,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -190108,6 +190370,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -192763,6 +193029,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -195701,6 +195971,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -198752,6 +199026,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -198919,7 +199200,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -199424,6 +199706,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -199591,7 +199880,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -203622,6 +203912,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -212299,6 +212593,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -213862,6 +214160,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -216010,6 +216312,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -219819,6 +220142,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -222403,6 +222730,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -225736,6 +226067,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -225762,26 +226119,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -227707,7 +228059,7 @@ }, "sha": { "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being deleted." }, "branch": { "type": "string", @@ -236670,6 +237022,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -239107,6 +239465,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -242332,6 +242694,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -244773,6 +245139,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -246433,6 +246803,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -247807,6 +248181,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -255835,14 +256213,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -258384,6 +258754,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -259209,6 +259583,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "permissions": "write" + } + } } } } @@ -261110,6 +261492,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -262131,6 +262517,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -264568,6 +264960,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -265229,7 +265625,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -265583,6 +265980,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -268020,6 +268423,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -268679,7 +269086,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -272866,6 +273274,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -275303,6 +275717,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -277330,7 +277748,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ] @@ -277762,6 +278181,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -280199,6 +280624,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -282264,7 +282693,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -282463,6 +282893,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -284900,6 +285336,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -285559,7 +285999,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -285740,6 +286181,22 @@ "closed" ] }, + "state_reason": { + "type": [ + "string", + "null" + ], + "enum": [ + "completed", + "not_planned", + "reopened", + null + ], + "description": "The reason for the current state", + "examples": [ + "not_planned" + ] + }, "milestone": { "oneOf": [ { @@ -285881,6 +286338,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -288318,6 +288781,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -288977,7 +289444,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -289326,6 +289794,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -291763,6 +292237,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -292422,7 +292900,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -292568,6 +293047,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -295005,6 +295490,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -295664,7 +296153,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -319570,6 +320060,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -322007,6 +322503,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -333045,6 +333545,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -340018,6 +340522,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -341581,6 +342089,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -353723,6 +354235,32 @@ "304": { "description": "Not modified" }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -353749,26 +354287,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -361040,6 +361573,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -364696,6 +365250,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -366259,6 +366817,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -370286,6 +370848,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -371849,6 +372415,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -391770,6 +392340,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -392307,7 +392881,7 @@ "/repos/{template_owner}/{template_repo}/generate": { "post": { "summary": "Create a repository using a template", - "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.3/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.3/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", + "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.3/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.3/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", "tags": [ "repos" ], @@ -393683,6 +394257,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -395833,6 +396411,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -398725,6 +399307,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -401588,6 +402174,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -404466,6 +405056,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -405062,7 +405656,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -420247,6 +420842,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -422723,6 +423322,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428707,14 +429310,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -430738,6 +431333,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -431412,6 +432011,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -433849,6 +434454,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -439412,6 +440021,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -441249,6 +441862,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -443630,6 +444247,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -446071,6 +446692,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -447589,6 +448214,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -450175,6 +450804,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -452564,6 +453197,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -455001,6 +455640,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -456502,6 +457145,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -458939,6 +459588,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -460442,6 +461095,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -462879,6 +463538,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -466242,14 +466905,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -467781,6 +468436,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -470218,6 +470879,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -471721,6 +472386,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -474158,6 +474829,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -477413,6 +478088,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479228,6 +479907,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -480611,6 +481294,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -482770,6 +483457,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/dereferenced/ghes-3.4.deref.json b/lib/rest/static/dereferenced/ghes-3.4.deref.json index 60acdd2b68..d68b95ba60 100644 --- a/lib/rest/static/dereferenced/ghes-3.4.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.4.deref.json @@ -4292,14 +4292,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -5537,14 +5529,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -6327,14 +6311,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9323,14 +9299,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10260,14 +10228,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10983,14 +10943,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -11276,14 +11228,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -12805,6 +12749,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14705,14 +14653,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -15679,14 +15619,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -16525,14 +16457,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -17073,14 +16997,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -18584,14 +18500,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -19568,14 +19476,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -20625,14 +20525,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -21423,14 +21315,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -22458,14 +22342,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -23256,14 +23132,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -24165,14 +24033,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -25099,14 +24959,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -32678,6 +32530,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -34156,6 +34012,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37332,6 +37192,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -39769,6 +39635,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54717,6 +54587,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -55244,6 +55118,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -57681,6 +57561,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -59466,6 +59350,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -61903,6 +61793,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -65223,6 +65117,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -67803,6 +67701,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -68989,7 +68891,7 @@ "/organizations/{organization_id}/custom_roles": { "get": { "summary": "List custom repository roles in an organization", - "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/enterprise-server@3.4/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", + "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nTo use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with `admin:org repo` scope.\nGitHub Apps must have the `organization_custom_roles:read` organization permission to use this endpoint.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/enterprise-server@3.4/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", "tags": [ "orgs" ], @@ -71783,6 +71685,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -74859,6 +74765,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -77641,6 +77551,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -79119,6 +79033,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -82782,6 +82700,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -86136,6 +86058,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -86864,6 +86790,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -89301,6 +89233,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -93533,14 +93469,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -94484,14 +94412,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -95228,6 +95148,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -97665,6 +97591,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -98756,17 +98686,6 @@ } } }, - "302": { - "description": "Response if requester is not an organization member", - "headers": { - "Location": { - "example": "https://api.github.com/orgs/github/public_members", - "schema": { - "type": "string" - } - } - } - }, "422": { "description": "Validation failed", "content": { @@ -101681,6 +101600,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -103629,6 +103552,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -105604,6 +105531,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -110144,6 +110075,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -110624,8 +110559,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -111983,6 +111919,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -125685,6 +125625,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -128141,6 +128085,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -137357,6 +137305,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -139017,6 +138969,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -140391,6 +140347,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -141411,8 +141371,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -143428,6 +143389,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -145088,6 +145053,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -146462,6 +146431,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -150642,6 +150615,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -152129,6 +152106,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -155748,6 +155729,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -157859,6 +157844,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -160606,6 +160595,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -162717,6 +162710,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -167162,7 +167159,7 @@ }, "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs": { "get": { - "summary": "List workflow runs", + "summary": "List workflow runs for a workflow", "description": "List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/enterprise-server@3.4/rest/overview/resources-in-the-rest-api#parameters).\n\nAnyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.", "tags": [ "actions" @@ -169529,6 +169526,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -171640,6 +171641,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -172634,6 +172639,11 @@ "url_template": { "type": "string", "description": "The URL must contain `` for the reference number." + }, + "is_alphanumeric": { + "type": "boolean", + "default": "true", + "description": "Whether this autolink reference matches alphanumeric characters. If true, the `` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters." } }, "required": [ @@ -172645,7 +172655,8 @@ "default": { "value": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true } } } @@ -177816,6 +177827,115 @@ "protected", "protection_url" ] + }, + "examples": { + "default": { + "value": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [ + + ], + "checks": [ + + ] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + } + } } } } @@ -182323,6 +182443,85 @@ "required": [ "url" ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + } + } } } } @@ -187209,7 +187408,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -187226,12 +187425,23 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding status checks to a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + } + } } } } @@ -187446,7 +187656,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -187463,12 +187673,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example updating status checks for a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -187655,7 +187875,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -187672,12 +187892,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing status checks from a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -190799,7 +191029,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -190816,12 +191046,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -191193,7 +191433,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -191204,18 +191444,28 @@ ], "example": { "teams": [ - "my-team" + "justice-league" ] } }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -191586,7 +191836,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -191603,12 +191853,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -192255,7 +192515,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -192277,6 +192537,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example adding a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -192615,7 +192885,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -192637,6 +192907,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -192974,7 +193254,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -192996,6 +193276,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example removing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -203337,6 +203627,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -206396,6 +206690,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -209051,6 +209349,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -211989,6 +212291,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -215121,6 +215427,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -215288,7 +215601,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -215811,6 +216125,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -215978,7 +216299,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -216263,6 +216585,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -217070,7 +217393,7 @@ }, "delete": { "summary": "Delete a code scanning analysis from a repository", - "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `analysis_key`\n* `environment`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", + "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `category`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", "operationId": "code-scanning/delete-analysis", "tags": [ "code-scanning" @@ -220023,6 +220346,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -228700,6 +229027,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -230263,6 +230594,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -232411,6 +232746,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -236220,6 +236576,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -238804,6 +239164,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -242137,6 +242501,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -242163,26 +242553,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -243783,7 +244168,7 @@ }, "sha": { "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being deleted." }, "branch": { "type": "string", @@ -253211,6 +253596,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -255648,6 +256039,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -258873,6 +259268,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -261314,6 +261713,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -262974,6 +263377,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -264348,6 +264755,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -272376,14 +272787,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -274917,6 +275320,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -275742,6 +276149,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "permissions": "write" + } + } } } } @@ -277643,6 +278058,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -278664,6 +279083,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -281101,6 +281526,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -281762,7 +282191,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -282116,6 +282546,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -284553,6 +284989,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -285212,7 +285652,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -289399,6 +289840,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -291836,6 +292283,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -293863,7 +294314,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ] @@ -294295,6 +294747,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -296732,6 +297190,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -298797,7 +299259,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -298996,6 +299459,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -301433,6 +301902,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -302092,7 +302565,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -302273,6 +302747,22 @@ "closed" ] }, + "state_reason": { + "type": [ + "string", + "null" + ], + "enum": [ + "completed", + "not_planned", + "reopened", + null + ], + "description": "The reason for the current state", + "examples": [ + "not_planned" + ] + }, "milestone": { "oneOf": [ { @@ -302414,6 +302904,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -304851,6 +305347,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -305510,7 +306010,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -305859,6 +306360,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -308296,6 +308803,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -308955,7 +309466,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -309101,6 +309613,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -311538,6 +312056,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -312197,7 +312719,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -336103,6 +336626,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -338540,6 +339069,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -349578,6 +350111,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -356551,6 +357088,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -358114,6 +358655,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -370256,6 +370801,32 @@ "304": { "description": "Not modified" }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -370282,26 +370853,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -377573,6 +378139,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -381229,6 +381816,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -382792,6 +383383,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -386819,6 +387414,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -388382,6 +388981,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -408502,6 +409105,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -409039,7 +409646,7 @@ "/repos/{template_owner}/{template_repo}/generate": { "post": { "summary": "Create a repository using a template", - "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.4/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.4/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", + "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.4/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.4/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", "tags": [ "repos" ], @@ -410415,6 +411022,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -412565,6 +413176,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -415457,6 +416072,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -418320,6 +418939,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -421198,6 +421821,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -421794,7 +422421,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -437006,6 +437634,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -439482,6 +440114,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -445466,14 +446102,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -447489,6 +448117,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -448163,6 +448795,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -450600,6 +451238,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -455377,6 +456019,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -457389,6 +458035,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -459844,6 +460494,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -462570,6 +463224,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -464407,6 +465065,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -466788,6 +467450,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -469229,6 +469895,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -470747,6 +471417,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -473333,6 +474007,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -475731,6 +476409,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -478168,6 +478852,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479669,6 +480357,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -482106,6 +482800,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -483609,6 +484307,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -486046,6 +486750,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -489409,14 +490117,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -490940,6 +491640,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -493377,6 +494083,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -494880,6 +495590,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -497317,6 +498033,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -500572,6 +501292,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -502387,6 +503111,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -503770,6 +504498,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -505929,6 +506661,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/dereferenced/ghes-3.5.deref.json b/lib/rest/static/dereferenced/ghes-3.5.deref.json index 33272011e4..845b037250 100644 --- a/lib/rest/static/dereferenced/ghes-3.5.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.5.deref.json @@ -4292,14 +4292,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -5537,14 +5529,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -6327,14 +6311,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9323,14 +9299,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10260,14 +10228,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10983,14 +10943,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -11276,14 +11228,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -12805,6 +12749,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14705,14 +14653,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -15679,14 +15619,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -16525,14 +16457,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -17073,14 +16997,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -18584,14 +18500,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -19568,14 +19476,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -20625,14 +20525,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -21423,14 +21315,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -22458,14 +22342,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -23256,14 +23132,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -24165,14 +24033,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -25099,14 +24959,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -33044,6 +32896,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -34522,6 +34378,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37702,6 +37562,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -40139,6 +40005,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -55087,6 +54957,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -55614,6 +55488,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -58051,6 +57931,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -59836,6 +59720,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -62273,6 +62163,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -65599,6 +65493,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -68185,6 +68083,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -69371,7 +69273,7 @@ "/organizations/{organization_id}/custom_roles": { "get": { "summary": "List custom repository roles in an organization", - "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/enterprise-server@3.5/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", + "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nTo use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with `admin:org repo` scope.\nGitHub Apps must have the `organization_custom_roles:read` organization permission to use this endpoint.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/enterprise-server@3.5/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", "tags": [ "orgs" ], @@ -72371,6 +72273,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -75739,6 +75645,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -78521,6 +78431,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -79999,6 +79913,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -83668,6 +83586,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -85032,6 +84954,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -88489,6 +88418,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -89217,6 +89150,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -91654,6 +91593,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -95886,14 +95829,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -96837,14 +96772,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -97581,6 +97508,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -100018,6 +99951,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -101109,17 +101046,6 @@ } } }, - "302": { - "description": "Response if requester is not an organization member", - "headers": { - "Location": { - "example": "https://api.github.com/orgs/github/public_members", - "schema": { - "type": "string" - } - } - } - }, "422": { "description": "Validation failed", "content": { @@ -104034,6 +103960,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -105982,6 +105912,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -107957,6 +107891,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -112503,6 +112441,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -112983,8 +112925,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -114342,6 +114285,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -128054,6 +128001,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -130516,6 +130467,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -139614,6 +139569,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -141274,6 +141233,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -142648,6 +142611,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -143668,8 +143635,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -145685,6 +145653,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -147345,6 +147317,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -148719,6 +148695,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -153405,6 +153385,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -154892,6 +154876,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -158869,6 +158857,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -160986,6 +160978,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -164125,6 +164121,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -166242,6 +166242,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -170030,6 +170034,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -172147,6 +172155,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -176649,7 +176661,7 @@ }, "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs": { "get": { - "summary": "List workflow runs", + "summary": "List workflow runs for a workflow", "description": "List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/enterprise-server@3.5/rest/overview/resources-in-the-rest-api#parameters).\n\nAnyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.", "tags": [ "actions" @@ -179374,6 +179386,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -181491,6 +181507,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -182527,6 +182547,11 @@ "url_template": { "type": "string", "description": "The URL must contain `` for the reference number." + }, + "is_alphanumeric": { + "type": "boolean", + "default": "true", + "description": "Whether this autolink reference matches alphanumeric characters. If true, the `` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters." } }, "required": [ @@ -182538,7 +182563,8 @@ "default": { "value": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true } } } @@ -187709,6 +187735,115 @@ "protected", "protection_url" ] + }, + "examples": { + "default": { + "value": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [ + + ], + "checks": [ + + ] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + } + } } } } @@ -192216,6 +192351,85 @@ "required": [ "url" ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + } + } } } } @@ -197102,7 +197316,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -197119,12 +197333,23 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding status checks to a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + } + } } } } @@ -197339,7 +197564,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -197356,12 +197581,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example updating status checks for a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -197548,7 +197783,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -197565,12 +197800,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing status checks from a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -200692,7 +200937,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -200709,12 +200954,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -201086,7 +201341,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -201097,18 +201352,28 @@ ], "example": { "teams": [ - "my-team" + "justice-league" ] } }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -201479,7 +201744,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -201496,12 +201761,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -202148,7 +202423,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -202170,6 +202445,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example adding a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -202508,7 +202793,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -202530,6 +202815,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -202867,7 +203162,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -202889,6 +203184,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example removing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -213236,6 +213541,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -216301,6 +216610,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -218962,6 +219275,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -221906,6 +222223,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -225038,6 +225359,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -225205,7 +225533,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -225728,6 +226057,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -225895,7 +226231,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -226180,6 +226517,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -226987,7 +227325,7 @@ }, "delete": { "summary": "Delete a code scanning analysis from a repository", - "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `analysis_key`\n* `environment`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", + "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `category`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", "operationId": "code-scanning/delete-analysis", "tags": [ "code-scanning" @@ -230122,6 +230460,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -238813,6 +239155,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -240376,6 +240722,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -242524,6 +242874,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -246339,6 +246710,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -248929,6 +249304,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -252262,6 +252641,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -252288,26 +252693,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -253908,7 +254308,7 @@ }, "sha": { "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being deleted." }, "branch": { "type": "string", @@ -263336,6 +263736,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -265773,6 +266179,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -269004,6 +269414,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -271445,6 +271859,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -273105,6 +273523,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -274479,6 +274901,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -282507,14 +282933,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -285054,6 +285472,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -285879,6 +286301,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "permissions": "write" + } + } } } } @@ -287786,6 +288216,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -288807,6 +289241,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -291244,6 +291684,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -291905,7 +292349,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -292259,6 +292704,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -294696,6 +295147,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -295355,7 +295810,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -299542,6 +299998,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -301979,6 +302441,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -304006,7 +304472,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ] @@ -304438,6 +304905,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -306875,6 +307348,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -308940,7 +309417,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -309139,6 +309617,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -311576,6 +312060,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -312235,7 +312723,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -312416,6 +312905,22 @@ "closed" ] }, + "state_reason": { + "type": [ + "string", + "null" + ], + "enum": [ + "completed", + "not_planned", + "reopened", + null + ], + "description": "The reason for the current state", + "examples": [ + "not_planned" + ] + }, "milestone": { "oneOf": [ { @@ -312557,6 +313062,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -314994,6 +315505,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -315653,7 +316168,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -316002,6 +316518,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -318439,6 +318961,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -319098,7 +319624,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -319244,6 +319771,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -321681,6 +322214,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -322340,7 +322877,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -346246,6 +346784,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -348683,6 +349227,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -359727,6 +360275,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -366700,6 +367252,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -368263,6 +368819,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -380405,6 +380965,32 @@ "304": { "description": "Not modified" }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -380431,26 +381017,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -387722,6 +388303,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -391378,6 +391980,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -392941,6 +393547,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -396968,6 +397578,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -398531,6 +399145,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -419103,6 +419721,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -419640,7 +420262,7 @@ "/repos/{template_owner}/{template_repo}/generate": { "post": { "summary": "Create a repository using a template", - "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.5/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.5/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", + "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.5/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.5/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", "tags": [ "repos" ], @@ -421016,6 +421638,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -423172,6 +423798,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -426070,6 +426700,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -428939,6 +429573,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -431817,6 +432455,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -432413,7 +433055,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -447631,6 +448274,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -450113,6 +450760,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -456099,14 +456750,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -458122,6 +458765,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -458796,6 +459443,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -461233,6 +461886,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -466010,6 +466667,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -468022,6 +468683,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -470483,6 +471148,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -473209,6 +473878,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -475046,6 +475719,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -477433,6 +478110,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479874,6 +480555,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -481392,6 +482077,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -483984,6 +484673,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -486382,6 +487075,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -488819,6 +489518,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -490320,6 +491023,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -492757,6 +493466,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -494260,6 +494973,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -496697,6 +497416,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -500060,14 +500783,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -501591,6 +502306,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -504028,6 +504749,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -505531,6 +506256,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -507968,6 +508699,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -511229,6 +511964,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -513044,6 +513783,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -514427,6 +515170,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -516592,6 +517339,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/dereferenced/ghes-3.6.deref.json b/lib/rest/static/dereferenced/ghes-3.6.deref.json index d567f62dab..efd51007ba 100644 --- a/lib/rest/static/dereferenced/ghes-3.6.deref.json +++ b/lib/rest/static/dereferenced/ghes-3.6.deref.json @@ -4292,14 +4292,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -5537,14 +5529,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -6327,14 +6311,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9323,14 +9299,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10260,14 +10228,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10983,14 +10943,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -11276,14 +11228,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -12812,8 +12756,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -12886,6 +12831,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -14786,14 +14735,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -15760,14 +15701,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -16606,14 +16539,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -17154,14 +17079,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -18665,14 +18582,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -19649,14 +19558,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -20706,14 +20607,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -21504,14 +21397,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -22539,14 +22424,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -23337,14 +23214,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -24246,14 +24115,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -25180,14 +25041,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -33278,8 +33131,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -33352,6 +33206,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -34837,8 +34695,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -34911,6 +34770,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -38327,6 +38190,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -40771,8 +40640,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -40845,6 +40715,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -55800,8 +55674,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -55874,6 +55749,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -56401,6 +56280,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -58845,8 +58730,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -58919,6 +58805,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -60704,6 +60594,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -63148,8 +63044,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -63222,6 +63119,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -66555,8 +66456,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -66629,6 +66531,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -69228,8 +69134,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -69302,6 +69209,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -70494,7 +70405,7 @@ "/organizations/{organization_id}/custom_roles": { "get": { "summary": "List custom repository roles in an organization", - "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/enterprise-server@3.6/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", + "description": "List the custom repository roles available in this organization. In order to see custom\nrepository roles in an organization, the authenticated user must be an organization owner.\n\nTo use this endpoint the authenticated user must be an administrator for the organization or of an repository of the organizaiton and must use an access token with `admin:org repo` scope.\nGitHub Apps must have the `organization_custom_roles:read` organization permission to use this endpoint.\n\nFor more information on custom repository roles, see \"[Managing custom repository roles for an organization](https://docs.github.com/enterprise-server@3.6/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)\".", "tags": [ "orgs" ], @@ -73519,8 +73430,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -73593,6 +73505,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -76977,8 +76893,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -77051,6 +76968,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -79846,8 +79767,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -79920,6 +79842,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -81405,8 +81331,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -81479,6 +81406,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -85155,8 +85086,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -85229,6 +85161,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -86607,6 +86543,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -90073,8 +90016,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -90147,6 +90091,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -90881,6 +90829,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -93325,8 +93279,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -93399,6 +93354,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -97631,14 +97590,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -98582,14 +98533,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -99326,6 +99269,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -101770,8 +101719,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -101844,6 +101794,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -102935,17 +102889,6 @@ } } }, - "302": { - "description": "Response if requester is not an organization member", - "headers": { - "Location": { - "example": "https://api.github.com/orgs/github/public_members", - "schema": { - "type": "string" - } - } - } - }, "422": { "description": "Validation failed", "content": { @@ -105867,8 +105810,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -105941,6 +105885,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -107896,8 +107844,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -107970,6 +107919,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -109952,8 +109905,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -110026,6 +109980,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -114579,8 +114537,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -114653,6 +114612,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -115139,8 +115102,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -116505,8 +116469,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -116579,6 +116544,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -130552,8 +130521,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -130626,6 +130596,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -133101,8 +133075,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -133175,6 +133150,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -142288,8 +142267,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -142362,6 +142342,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -144087,8 +144071,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -144161,6 +144146,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -145542,8 +145531,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -145616,6 +145606,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -146636,8 +146630,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -148665,8 +148660,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -148739,6 +148735,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -150464,8 +150464,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -150538,6 +150539,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -151919,8 +151924,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -151993,6 +151999,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -156874,8 +156884,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -156948,6 +156959,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -158442,8 +158457,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -158516,6 +158532,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -162533,8 +162553,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -162607,6 +162628,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -164737,8 +164762,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -164811,6 +164837,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -167996,8 +168026,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -168070,6 +168101,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -170200,8 +170235,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -170274,6 +170310,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -174139,8 +174179,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -174213,6 +174254,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -176343,8 +176388,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -176417,6 +176463,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -180956,7 +181006,7 @@ }, "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs": { "get": { - "summary": "List workflow runs", + "summary": "List workflow runs for a workflow", "description": "List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/enterprise-server@3.6/rest/overview/resources-in-the-rest-api#parameters).\n\nAnyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.", "tags": [ "actions" @@ -183721,8 +183771,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -183795,6 +183846,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -185925,8 +185980,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -185999,6 +186055,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -187041,6 +187101,11 @@ "url_template": { "type": "string", "description": "The URL must contain `` for the reference number." + }, + "is_alphanumeric": { + "type": "boolean", + "default": "true", + "description": "Whether this autolink reference matches alphanumeric characters. If true, the `` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters." } }, "required": [ @@ -187052,7 +187117,8 @@ "default": { "value": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true } } } @@ -192223,6 +192289,115 @@ "protected", "protection_url" ] + }, + "examples": { + "default": { + "value": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [ + + ], + "checks": [ + + ] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + } + } } } } @@ -196730,6 +196905,85 @@ "required": [ "url" ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + } + } } } } @@ -201616,7 +201870,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -201633,12 +201887,23 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding status checks to a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + } + } } } } @@ -201853,7 +202118,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -201870,12 +202135,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example updating status checks for a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -202062,7 +202337,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -202079,12 +202354,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing status checks from a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -205206,7 +205491,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -205223,12 +205508,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -205600,7 +205895,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -205611,18 +205906,28 @@ ], "example": { "teams": [ - "my-team" + "justice-league" ] } }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -205993,7 +206298,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -206010,12 +206315,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -206662,7 +206977,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -206684,6 +206999,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example adding a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -207022,7 +207347,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -207044,6 +207369,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -207381,7 +207716,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -207403,6 +207738,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example removing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -217757,8 +218102,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -217831,6 +218177,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -220909,8 +221259,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -220983,6 +221334,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -223657,8 +224012,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -223731,6 +224087,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -226688,8 +227048,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -226762,6 +227123,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -229918,6 +230283,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -230087,7 +230459,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -230626,6 +230999,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -230795,7 +231175,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -231080,6 +231461,7 @@ "ref": "refs/heads/main", "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "environment": "", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", "state": "open", "fixed_at": null, "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", @@ -231887,7 +232269,7 @@ }, "delete": { "summary": "Delete a code scanning analysis from a repository", - "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `analysis_key`\n* `environment`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", + "description": "Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the `repo` scope. For public repositories,\nyou must use an access token with `public_repo` scope.\nGitHub Apps must have the `security_events` write permission to use this endpoint.\n\nYou can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.\n\nWhen you list the analyses for a repository,\none or more will be identified as deletable in the response:\n\n```\n\"deletable\": true\n```\n\nAn analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:\n\n* `ref`\n* `tool`\n* `category`\n\nIf you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:\n\n```\nAnalysis specified is not deletable.\n```\n\nThe response from a successful `DELETE` operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\n`next_analysis_url` and `confirm_delete_url`.\nUse the `next_analysis_url` URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the `confirm_delete_url` URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of `next_analysis_url` and `confirm_delete_url`\nin the 200 response is `null`.\n\nAs an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:\n\n**Outer loop**:\n* List the analyses for the repository, filtered by tool.\n* Parse this list to find a deletable analysis. If found:\n\n **Inner loop**:\n * Delete the identified analysis.\n * Parse the response for the value of `confirm_delete_url` and, if found, use this in the next iteration.\n\nThe above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the `confirm_delete_url` value. Alternatively, you could use the `next_analysis_url` value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.", "operationId": "code-scanning/delete-analysis", "tags": [ "code-scanning" @@ -235029,8 +235411,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -235103,6 +235486,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -243807,8 +244194,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -243881,6 +244269,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -245451,8 +245843,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -245525,6 +245918,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -247673,6 +248070,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -251495,8 +251913,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -251569,6 +251988,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -254172,8 +254595,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -254246,6 +254670,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -257585,6 +258013,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -257611,26 +258065,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -259231,7 +259680,7 @@ }, "sha": { "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being deleted." }, "branch": { "type": "string", @@ -268952,6 +269401,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -271396,8 +271851,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -271470,6 +271926,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -274708,8 +275168,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -274782,6 +275243,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -277236,8 +277701,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -277310,6 +277776,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -279035,8 +279505,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -279109,6 +279580,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -280490,8 +280965,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -280564,6 +281040,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -288594,14 +289074,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -291148,8 +291620,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -291222,6 +291695,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -292053,6 +292530,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "permissions": "write" + } + } } } } @@ -293967,8 +294452,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -294041,6 +294527,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -295068,6 +295558,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -297512,8 +298008,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -297586,6 +298083,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -298247,7 +298748,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -298601,6 +299103,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -301045,8 +301553,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -301119,6 +301628,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -301778,7 +302291,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -305965,6 +306479,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -308409,8 +308929,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -308483,6 +309004,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -310510,7 +311035,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ] @@ -310942,6 +311468,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -313386,8 +313918,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -313460,6 +313993,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -315525,7 +316062,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -315724,6 +316262,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -318168,8 +318712,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -318242,6 +318787,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -318901,7 +319450,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -319082,6 +319632,22 @@ "closed" ] }, + "state_reason": { + "type": [ + "string", + "null" + ], + "enum": [ + "completed", + "not_planned", + "reopened", + null + ], + "description": "The reason for the current state", + "examples": [ + "not_planned" + ] + }, "milestone": { "oneOf": [ { @@ -319223,6 +319789,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -321667,8 +322239,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -321741,6 +322314,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -322400,7 +322977,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -322749,6 +323327,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -325193,8 +325777,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -325267,6 +325852,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -325926,7 +326515,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -326072,6 +326662,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -328516,8 +329112,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -328590,6 +329187,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -329249,7 +329850,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -353155,6 +353757,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -355599,8 +356207,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -355673,6 +356282,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -366724,8 +367337,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -366798,6 +367412,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -373784,8 +374402,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -373858,6 +374477,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -375428,8 +376051,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -375502,6 +376126,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -387656,6 +388284,32 @@ "304": { "description": "Not modified" }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -387682,26 +388336,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -394979,6 +395628,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -398642,8 +399312,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -398716,6 +399387,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -400286,8 +400961,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -400360,6 +401036,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -404394,8 +405074,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -404468,6 +405149,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -406038,8 +406723,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -406112,6 +406798,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -427302,8 +427992,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -427376,6 +428067,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -427919,7 +428614,7 @@ "/repos/{template_owner}/{template_repo}/generate": { "post": { "summary": "Create a repository using a template", - "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.6/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.6/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", + "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/enterprise-server@3.6/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/enterprise-server@3.6/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", "tags": [ "repos" ], @@ -429302,8 +429997,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -429376,6 +430072,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -431539,8 +432239,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -431613,6 +432314,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -434524,8 +435229,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -434598,6 +435304,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -437480,8 +438190,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -437554,6 +438265,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -440445,8 +441160,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -440519,6 +441235,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -441115,7 +441835,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -456364,8 +457085,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -456438,6 +457160,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -458933,8 +459659,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -459007,6 +459734,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -465074,14 +465805,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -467104,8 +467827,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -467178,6 +467902,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -467852,6 +468580,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -470296,8 +471030,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -470370,6 +471105,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -475154,8 +475893,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -475228,6 +475968,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -477247,8 +477991,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -477321,6 +478066,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -479789,8 +480538,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -479863,6 +480613,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -482602,8 +483356,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -482676,6 +483431,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -484520,8 +485279,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -484594,6 +485354,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -486988,8 +487752,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -487062,6 +487827,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -489516,8 +490285,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -489590,6 +490360,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -491115,8 +491889,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -491189,6 +491964,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -493788,8 +494567,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -493862,6 +494642,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -496272,6 +497056,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -498716,8 +499506,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -498790,6 +499581,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -500291,6 +501086,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -502735,8 +503536,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -502809,6 +503611,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -504312,6 +505118,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -506756,8 +507568,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -506830,6 +507643,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -510216,14 +511033,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -511747,6 +512556,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -514191,8 +515006,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -514265,6 +515081,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -515768,6 +516588,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -518212,8 +519038,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -518286,6 +519113,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -521554,8 +522385,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -521628,6 +522460,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -523456,8 +524292,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -523530,6 +524367,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -524920,8 +525761,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -524994,6 +525836,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -527166,8 +528012,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default.", - "default": false + "description": "Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -527240,6 +528087,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/rest/static/dereferenced/github.ae.deref.json b/lib/rest/static/dereferenced/github.ae.deref.json index c74a79e1b1..b7f892b49e 100644 --- a/lib/rest/static/dereferenced/github.ae.deref.json +++ b/lib/rest/static/dereferenced/github.ae.deref.json @@ -2762,14 +2762,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -3668,14 +3660,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -4458,14 +4442,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -7453,14 +7429,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -8390,14 +8358,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9113,14 +9073,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -9406,14 +9358,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -10940,6 +10884,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -11981,14 +11929,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -12955,14 +12895,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -14027,14 +13959,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -21530,6 +21454,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -23013,6 +22941,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37366,6 +37298,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -37893,6 +37829,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -40335,6 +40277,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -43977,6 +43923,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -46574,6 +46524,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -48135,6 +48089,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -48389,6 +48385,30 @@ "examples": [ "\"http://github.blog\"" ] + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/github-ae@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether Dependabot alerts is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/github-ae@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether Dependabot security updates is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/github-ae@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/github-ae@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/github-ae@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories.\n\nTo use this parameter, you must have admin permissions for the repository or be an owner or security manager for the organization that owns the repository. For more information, see \"[Managing security managers in your organization](https://docs.github.com/github-ae@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization).\"\n\nYou can check which security and analysis features are currently enabled by using a `GET /orgs/{org}` request." } } }, @@ -48760,6 +48780,48 @@ "updated_at": { "type": "string", "format": "date-time" + }, + "advanced_security_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is enabled for new repositories and repositories transferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_alerts_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether GitHub Advanced Security is automatically enabled for new repositories and repositories transferred to\nthis organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependabot_security_updates_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependabot security updates are automatically enabled for new repositories and repositories transferred\nto this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "dependency_graph_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether dependency graph is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning is automatically enabled for new repositories and repositories transferred to this\norganization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] + }, + "secret_scanning_push_protection_enabled_for_new_repositories": { + "type": "boolean", + "description": "Whether secret scanning push protection is automatically enabled for new repositories and repositories\ntransferred to this organization.\n\nThis field is only visible to organization owners or members of a team with the security manager role.", + "examples": [ + false + ] } }, "required": [ @@ -50502,6 +50564,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -53375,6 +53441,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -54858,6 +54928,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -57651,6 +57725,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -61875,14 +61953,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -62826,14 +62896,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -63570,6 +63632,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -66012,6 +66080,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -67103,17 +67175,6 @@ } } }, - "302": { - "description": "Response if requester is not an organization member", - "headers": { - "Location": { - "example": "https://api.github.com/orgs/github/public_members", - "schema": { - "type": "string" - } - } - } - }, "422": { "description": "Validation failed", "content": { @@ -70033,6 +70094,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -71986,6 +72051,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -73966,6 +74035,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -77714,6 +77787,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -78200,8 +78277,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -79564,6 +79642,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -92293,6 +92375,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -94766,6 +94852,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -103877,6 +103967,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -105554,6 +105648,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -106933,6 +107031,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -107953,8 +108055,9 @@ }, "use_squash_pr_title_as_default": { "type": "boolean", - "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message.", - "default": false + "description": "Either `true` to allow squash-merge commits to use pull request title, or `false` to use commit message. **This property has been deprecated. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true }, "squash_merge_commit_title": { "type": "string", @@ -109980,6 +110083,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -111657,6 +111764,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -113036,6 +113147,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -117234,6 +117349,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -118726,6 +118845,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -121807,6 +121930,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -123935,6 +124062,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -127118,6 +127249,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -129246,6 +129381,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -132758,6 +132897,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -134886,6 +135029,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -138168,7 +138315,7 @@ }, "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs": { "get": { - "summary": "List workflow runs", + "summary": "List workflow runs for a workflow", "description": "List all workflow runs for a workflow. You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. You can use parameters to narrow the list of results. For more information about using parameters, see [Parameters](https://docs.github.com/github-ae@latest/rest/overview/resources-in-the-rest-api#parameters).\n\nAnyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the `repo` scope.", "tags": [ "actions" @@ -140923,6 +141070,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -143051,6 +143202,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -144214,6 +144369,11 @@ "url_template": { "type": "string", "description": "The URL must contain `` for the reference number." + }, + "is_alphanumeric": { + "type": "boolean", + "default": "true", + "description": "Whether this autolink reference matches alphanumeric characters. If true, the `` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters." } }, "required": [ @@ -144225,7 +144385,8 @@ "default": { "value": { "key_prefix": "TICKET-", - "url_template": "https://example.com/TICKET?query=" + "url_template": "https://example.com/TICKET?query=", + "is_alphanumeric": true } } } @@ -149396,6 +149557,115 @@ "protected", "protection_url" ] + }, + "examples": { + "default": { + "value": { + "name": "main", + "commit": { + "sha": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "node_id": "MDY6Q29tbWl0MTI5NjI2OTo3ZmQxYTYwYjAxZjkxYjMxNGY1OTk1NWE0ZTRkNGU4MGQ4ZWRmMTFk", + "commit": { + "author": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "committer": { + "name": "The Octocat", + "email": "octocat@nowhere.com", + "date": "2012-03-06T23:06:50Z" + }, + "message": "Merge pull request #6 from Spaceghost/patch-1\n\nNew line at end of file.", + "tree": { + "sha": "b4eecafa9be2f2006ce1b709d6857b07069b4608", + "url": "https://api.github.com/repos/octocat/Hello-World/git/trees/b4eecafa9be2f2006ce1b709d6857b07069b4608" + }, + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comment_count": 77, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "html_url": "https://github.com/octocat/Hello-World/commit/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/7fd1a60b01f91b314f59955a4e4d4e80d8edf11d/comments", + "author": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 583231, + "node_id": "MDQ6VXNlcjU4MzIzMQ==", + "avatar_url": "https://avatars.githubusercontent.com/u/583231?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e", + "html_url": "https://github.com/octocat/Hello-World/commit/553c2077f0edc3d5dc5d17262f6aa498e69d6f8e" + }, + { + "sha": "762941318ee16e59dabbacb1b4049eec22f0d303", + "url": "https://api.github.com/repos/octocat/Hello-World/commits/762941318ee16e59dabbacb1b4049eec22f0d303", + "html_url": "https://github.com/octocat/Hello-World/commit/762941318ee16e59dabbacb1b4049eec22f0d303" + } + ] + }, + "_links": { + "self": "https://api.github.com/repos/octocat/Hello-World/branches/main", + "html": "https://github.com/octocat/Hello-World/tree/main" + }, + "protected": false, + "protection": { + "enabled": false, + "required_status_checks": { + "enforcement_level": "off", + "contexts": [ + + ], + "checks": [ + + ] + } + }, + "protection_url": "https://api.github.com/repos/octocat/Hello-World/branches/main/protection" + } + } } } } @@ -153903,6 +154173,85 @@ "required": [ "url" ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection", + "required_status_checks": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks", + "strict": true, + "contexts": [ + "continuous-integration/travis-ci" + ], + "contexts_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_status_checks/contexts", + "checks": [ + { + "context": "continuous-integration/travis-ci", + "app_id": null + } + ] + }, + "restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/teams", + "apps_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/restrictions/apps", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + }, + "required_pull_request_reviews": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_pull_request_reviews", + "dismiss_stale_reviews": true, + "require_code_owner_reviews": true, + "required_approving_review_count": 2, + "dismissal_restrictions": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions", + "users_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/users", + "teams_url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/dismissal_restrictions/teams", + "users": [ + + ], + "teams": [ + + ], + "apps": [ + + ] + } + }, + "required_signatures": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/required_signatures", + "enabled": false + }, + "enforce_admins": { + "url": "https://api.github.com/repos/octocat/hello-world/branches/main/protection/enforce_admins", + "enabled": true + }, + "required_linear_history": { + "enabled": true + }, + "allow_force_pushes": { + "enabled": true + }, + "allow_deletions": { + "enabled": true + }, + "block_creations": { + "enabled": true + }, + "required_conversation_resolution": { + "enabled": true + } + } + } } } } @@ -158789,7 +159138,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -158806,12 +159155,23 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding status checks to a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci", + "continuous-integration/jenkins" + ] + } + } } } } @@ -159026,7 +159386,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -159043,12 +159403,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example updating status checks for a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -159235,7 +159605,7 @@ "properties": { "contexts": { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } @@ -159252,12 +159622,22 @@ }, { "type": "array", - "description": "contexts parameter", + "description": "The name of the status checks", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing status checks from a branch protection rule", + "value": { + "contexts": [ + "continuous-integration/travis-ci" + ] + } + } } } } @@ -162379,7 +162759,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -162396,12 +162776,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example adding a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -162773,7 +163163,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -162784,18 +163174,28 @@ ], "example": { "teams": [ - "my-team" + "justice-league" ] } }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -163166,7 +163566,7 @@ "properties": { "teams": { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } @@ -163183,12 +163583,22 @@ }, { "type": "array", - "description": "teams parameter", + "description": "The slug values for teams", "items": { "type": "string" } } ] + }, + "examples": { + "default": { + "summary": "Example removing a team in a branch protection rule", + "value": { + "teams": [ + "justice-league" + ] + } + } } } } @@ -163835,7 +164245,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -163857,6 +164267,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example adding a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -164195,7 +164615,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -164217,6 +164637,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example replacing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -164554,7 +164984,7 @@ "properties": { "users": { "type": "array", - "description": "users parameter", + "description": "The username for users", "items": { "type": "string" } @@ -164576,6 +165006,16 @@ } } ] + }, + "examples": { + "default": { + "summary": "Example removing a user in a branch protection rule", + "value": { + "users": [ + "octocat" + ] + } + } } } } @@ -171946,6 +172386,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -175022,6 +175466,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -177694,6 +178142,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -180649,6 +181101,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -183706,6 +184162,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -183874,7 +184337,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -184379,6 +184843,13 @@ "null" ], "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." } } }, @@ -184547,7 +185018,8 @@ "security", "external/cwe/cwe-022" ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ..." + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" }, "tool": { "name": "CodeQL", @@ -185051,6 +185523,33 @@ "6c81cd8e-b078-4ac3-a3be-1dad7dbd0b53" ] } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "sort", + "description": "The property by which to sort the results.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created" + ], + "default": "created" + } } ], "responses": { @@ -188777,6 +189276,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -197516,6 +198019,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -199084,6 +199591,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -201232,6 +201743,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -205052,6 +205584,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -207653,6 +208189,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -210992,6 +211532,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -211018,26 +211584,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -212638,7 +213199,7 @@ }, "sha": { "type": "string", - "description": "The blob SHA of the file being replaced." + "description": "The blob SHA of the file being deleted." }, "branch": { "type": "string", @@ -221601,6 +222162,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -224043,6 +224610,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -227279,6 +227850,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -229731,6 +230306,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -231408,6 +231987,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -232787,6 +233370,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -240816,14 +241403,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -243368,6 +243947,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -244199,6 +244782,14 @@ ] } } + }, + "examples": { + "default": { + "summary": "Example request body", + "value": { + "permissions": "write" + } + } } } } @@ -246111,6 +246702,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -247138,6 +247733,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -249580,6 +250181,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -250241,7 +250846,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -250595,6 +251201,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -253037,6 +253649,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -253696,7 +254312,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -257898,6 +258515,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -260340,6 +260963,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -262367,7 +262994,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } ] @@ -262799,6 +263427,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -265241,6 +265875,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -267306,7 +267944,8 @@ "closed_at": null, "created_at": "2011-04-22T13:33:48Z", "updated_at": "2011-04-22T13:33:48Z", - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -267505,6 +268144,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -269947,6 +270592,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -270606,7 +271255,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -270787,6 +271437,22 @@ "closed" ] }, + "state_reason": { + "type": [ + "string", + "null" + ], + "enum": [ + "completed", + "not_planned", + "reopened", + null + ], + "description": "The reason for the current state", + "examples": [ + "not_planned" + ] + }, "milestone": { "oneOf": [ { @@ -270928,6 +271594,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -273370,6 +274042,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -274029,7 +274705,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -274378,6 +275055,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -276820,6 +277503,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -277479,7 +278166,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -277625,6 +278313,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -280067,6 +280761,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -280726,7 +281424,8 @@ "type": "User", "site_admin": false }, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } } } @@ -304647,6 +305346,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -307089,6 +307794,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -318138,6 +318847,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -324717,6 +325430,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -326285,6 +327002,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -338454,6 +339175,32 @@ "304": { "description": "Not modified" }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -338480,26 +339227,21 @@ } } }, - "404": { - "description": "Resource not found", + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { + "code": { + "type": "string" + }, "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -345777,6 +346519,27 @@ } } } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -349438,6 +350201,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -351006,6 +351773,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -355038,6 +355809,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -356606,6 +357381,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -376202,6 +376981,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -376745,7 +377528,7 @@ "/repos/{template_owner}/{template_repo}/generate": { "post": { "summary": "Create a repository using a template", - "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. The authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/github-ae@latest/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/github-ae@latest/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", + "description": "Creates a new repository using a repository template. Use the `template_owner` and `template_repo` route parameters to specify the repository to use as the template. If the repository is not public, the authenticated user must own or be a member of an organization that owns the repository. To check if a repository is available to use as a template, get the repository's information using the [Get a repository](https://docs.github.com/github-ae@latest/rest/reference/repos#get-a-repository) endpoint and check that the `is_template` key is `true`.\n\n**OAuth scope requirements**\n\nWhen using [OAuth](https://docs.github.com/github-ae@latest/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/), authorizations must include:\n\n* `public_repo` scope or `repo` scope to create a public repository. Note: For GitHub AE, use `repo` scope to create an internal repository.\n* `repo` scope to create a private repository", "tags": [ "repos" ], @@ -378126,6 +378909,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -381362,6 +382149,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -384242,6 +385033,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -387131,6 +387926,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -387727,7 +388526,8 @@ "body": "...", "score": 1, "locked": true, - "author_association": "COLLABORATOR" + "author_association": "COLLABORATOR", + "state_reason": "completed" } ] } @@ -400087,6 +400887,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -402580,6 +403384,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -407823,14 +408631,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -409851,6 +410651,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -410525,6 +411329,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -412967,6 +413777,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -417749,6 +418563,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -419766,6 +420584,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -422232,6 +423054,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -424775,6 +425601,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -426617,6 +427447,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -429009,6 +429843,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -431461,6 +432299,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -432984,6 +433826,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -435581,6 +436427,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -437992,6 +438842,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -440434,6 +441290,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -441935,6 +442795,12 @@ "string", "null" ], + "enum": [ + "completed", + "reopened", + "not_planned", + null + ], "examples": [ "not_planned" ] @@ -444377,6 +445243,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -447751,14 +448621,6 @@ "write" ] }, - "organization_custom_roles": { - "type": "string", - "description": "The level of permission to grant the access token for custom roles management.", - "enum": [ - "read", - "write" - ] - }, "deployments": { "type": "string", "description": "The level of permission to grant the access token for deployments and deployment statuses.", @@ -451045,6 +451907,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -452801,6 +453667,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -454189,6 +455059,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ @@ -456359,6 +457233,10 @@ "examples": [ "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" } }, "required": [ diff --git a/lib/search/indexes/github-docs-3.2-cn-records.json.br b/lib/search/indexes/github-docs-3.2-cn-records.json.br index 6991f2c7fe..4f7e252fd2 100644 --- a/lib/search/indexes/github-docs-3.2-cn-records.json.br +++ b/lib/search/indexes/github-docs-3.2-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c8c518047571a7ace2ef75ae94e167558640f047b9df1697504b84c3961252c -size 795422 +oid sha256:7a587c416f0aebfe2446129e0c800ab29aea9fe583cdc11da8e9fa707d59bb05 +size 795909 diff --git a/lib/search/indexes/github-docs-3.2-cn.json.br b/lib/search/indexes/github-docs-3.2-cn.json.br index df0ec64360..b7046218b1 100644 --- a/lib/search/indexes/github-docs-3.2-cn.json.br +++ b/lib/search/indexes/github-docs-3.2-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b41b856dabb0b9658103212207cee4168e69a43886258d1257cdf55ef4d961c -size 1643982 +oid sha256:727202b4d4c79419b179fcaa7c9b7e5e9d486cf6ad19f3be7d9293f249670427 +size 1650852 diff --git a/lib/search/indexes/github-docs-3.2-en-records.json.br b/lib/search/indexes/github-docs-3.2-en-records.json.br index 5f8a941258..9903b1edee 100644 --- a/lib/search/indexes/github-docs-3.2-en-records.json.br +++ b/lib/search/indexes/github-docs-3.2-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:42032441915f5f3098d2254c96fc20de989d8e6600f40d335cb70ea8414aad75 -size 1093843 +oid sha256:8f852cf14d243065a4b46e31290d3823ecd581acad27e7ec1ef3b3d0661af4c0 +size 1095714 diff --git a/lib/search/indexes/github-docs-3.2-en.json.br b/lib/search/indexes/github-docs-3.2-en.json.br index 0ef885bcfd..d57c773f4e 100644 --- a/lib/search/indexes/github-docs-3.2-en.json.br +++ b/lib/search/indexes/github-docs-3.2-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b6b5e69333f053494e13d0b3afa90e62bf9c111f3859706ae127206063829c29 -size 4434296 +oid sha256:3f93004ca349e2bf475f6f71411286bbc4ace8c168cd3fd8db332d5cf9d09084 +size 4444029 diff --git a/lib/search/indexes/github-docs-3.2-es-records.json.br b/lib/search/indexes/github-docs-3.2-es-records.json.br index 1f561e4fe1..5bb9d8fb0b 100644 --- a/lib/search/indexes/github-docs-3.2-es-records.json.br +++ b/lib/search/indexes/github-docs-3.2-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:13040d3e8b7dfd76f583a9fa5e2d18abc74db948ff3b9940182eef8c0cf2785f -size 734116 +oid sha256:21f12fbc0f4943191393c06ac1c17507ddaec4d32f4b3bd962f3cf0b395fccf8 +size 734735 diff --git a/lib/search/indexes/github-docs-3.2-es.json.br b/lib/search/indexes/github-docs-3.2-es.json.br index c78aee2b89..f641d1104d 100644 --- a/lib/search/indexes/github-docs-3.2-es.json.br +++ b/lib/search/indexes/github-docs-3.2-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e42c158540578830d5374e906e4330eaf9278ddbcb0efb77c5a4dd059d6d7cff -size 3127006 +oid sha256:c393734540491be1be511bb00c6b841230685ea1bd074189906b2a1a7c4e2ddc +size 3131065 diff --git a/lib/search/indexes/github-docs-3.2-ja-records.json.br b/lib/search/indexes/github-docs-3.2-ja-records.json.br index 241159c35e..99d094f9f7 100644 --- a/lib/search/indexes/github-docs-3.2-ja-records.json.br +++ b/lib/search/indexes/github-docs-3.2-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d7d1fedecb390d8d2ae8625dd585485f8021a28214e9577b50e837ad8b2bbdf5 -size 810858 +oid sha256:e22b3596906b3203ba52800d967d58282801149ef7cb544fd825b497a14c3541 +size 811256 diff --git a/lib/search/indexes/github-docs-3.2-ja.json.br b/lib/search/indexes/github-docs-3.2-ja.json.br index c8bddca04a..f55f9000a9 100644 --- a/lib/search/indexes/github-docs-3.2-ja.json.br +++ b/lib/search/indexes/github-docs-3.2-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2cee58111b5967530da55c4b3d5338c9ba0503e213c2456cb0777e897d74ea98 -size 4449580 +oid sha256:8a7b32c0c19e9343765e022cbb736dbac8a1fb85f96345173ba8808ead3ee676 +size 4457597 diff --git a/lib/search/indexes/github-docs-3.2-pt-records.json.br b/lib/search/indexes/github-docs-3.2-pt-records.json.br index bd8c3722f0..95d6ef8e32 100644 --- a/lib/search/indexes/github-docs-3.2-pt-records.json.br +++ b/lib/search/indexes/github-docs-3.2-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:78eec632df91daa1168feea78911228fc288ca525b0c8eee62df694541380ac2 -size 722900 +oid sha256:10b5acc288b966c2bfd274cb0e5bef57bf82a68b9c7dc596fca01e4847b95052 +size 723270 diff --git a/lib/search/indexes/github-docs-3.2-pt.json.br b/lib/search/indexes/github-docs-3.2-pt.json.br index 4adade35a8..00ad967707 100644 --- a/lib/search/indexes/github-docs-3.2-pt.json.br +++ b/lib/search/indexes/github-docs-3.2-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70a267351014d46f796046484644868f8dd29dca4dec5f3a63a5ea3a371f59ea -size 3023798 +oid sha256:b03c4c83caa47c08075db2811a991e02dbe6bca83db1b42e688a31559ed59ed8 +size 3021315 diff --git a/lib/search/indexes/github-docs-3.3-cn-records.json.br b/lib/search/indexes/github-docs-3.3-cn-records.json.br index 63e4dcfc7c..f362a9d050 100644 --- a/lib/search/indexes/github-docs-3.3-cn-records.json.br +++ b/lib/search/indexes/github-docs-3.3-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9f44031477e14085c194d9ed4797f06e50c6e9ec28e126871d70f1b4c5f080f -size 820818 +oid sha256:68079833a6686a71299e8d13b9b598a97795fab027f2684430811ca529fdd1ca +size 821394 diff --git a/lib/search/indexes/github-docs-3.3-cn.json.br b/lib/search/indexes/github-docs-3.3-cn.json.br index e6e50a0b3b..f11b137232 100644 --- a/lib/search/indexes/github-docs-3.3-cn.json.br +++ b/lib/search/indexes/github-docs-3.3-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c555cbe26429a94b71f39ede09cb1262d7bfd553a70fcbcb0df4837355af48a3 -size 1690905 +oid sha256:a3b0fb23eacd7df93ad2129eadc3f21e7073052f7903ee9a40a3e0d5e087e0d2 +size 1698704 diff --git a/lib/search/indexes/github-docs-3.3-en-records.json.br b/lib/search/indexes/github-docs-3.3-en-records.json.br index acd5a15f20..f35b5d7afa 100644 --- a/lib/search/indexes/github-docs-3.3-en-records.json.br +++ b/lib/search/indexes/github-docs-3.3-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:863eb8df2c27226f484a7c2e0be328a5faf1eb3a62f9baee8a6b2f38e145d28e -size 1129008 +oid sha256:443e6f10bd39a79382daeb50a9b60ba481452e8d4ed390ae24653fc97bf0e455 +size 1131102 diff --git a/lib/search/indexes/github-docs-3.3-en.json.br b/lib/search/indexes/github-docs-3.3-en.json.br index 65e39ed89a..273649b038 100644 --- a/lib/search/indexes/github-docs-3.3-en.json.br +++ b/lib/search/indexes/github-docs-3.3-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01e6d2073b476fe61836cb85715d71d93555d6865f68191a1cc93dd17c4ed871 -size 4537972 +oid sha256:c028acc0a7d819986ebbce3a096818abe044c76da1eba5a72807bc310965ed15 +size 4548958 diff --git a/lib/search/indexes/github-docs-3.3-es-records.json.br b/lib/search/indexes/github-docs-3.3-es-records.json.br index 3b8c47395d..8a0acde6e8 100644 --- a/lib/search/indexes/github-docs-3.3-es-records.json.br +++ b/lib/search/indexes/github-docs-3.3-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b80ca6d539f08ad7330c8cdc141af41fe29741a515c8cc36f5c52be794156f4 -size 755218 +oid sha256:afd4cf70f009f345e172d7847859549a5ba646115d2dab9b5ece829c450a6d0b +size 756049 diff --git a/lib/search/indexes/github-docs-3.3-es.json.br b/lib/search/indexes/github-docs-3.3-es.json.br index 973c295315..5b20c63b71 100644 --- a/lib/search/indexes/github-docs-3.3-es.json.br +++ b/lib/search/indexes/github-docs-3.3-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:600b70de6941405bd86fb123c3bd0dc5267bb8d6413de2ffa2f5694008e7ad0c -size 3212354 +oid sha256:048c9e4d259c9a31b53b761f3b9c1efe781de591ab4136251c3480ee8eb10faf +size 3215413 diff --git a/lib/search/indexes/github-docs-3.3-ja-records.json.br b/lib/search/indexes/github-docs-3.3-ja-records.json.br index 42d0312a00..f7ca30f810 100644 --- a/lib/search/indexes/github-docs-3.3-ja-records.json.br +++ b/lib/search/indexes/github-docs-3.3-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:93ad20947ce547d339dd2d3dbf5b1da78bc19338c574c14bbf03d655048ca2f4 -size 836052 +oid sha256:03b39f7e20ea561372bb470fb86216d0df071b5b0275644e14f0d3247ae61c99 +size 836634 diff --git a/lib/search/indexes/github-docs-3.3-ja.json.br b/lib/search/indexes/github-docs-3.3-ja.json.br index cc860f9e41..0cb5e07df2 100644 --- a/lib/search/indexes/github-docs-3.3-ja.json.br +++ b/lib/search/indexes/github-docs-3.3-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bf737d1721cb8c60aca2303c7d3e93dff99d1898151dac9ee019c92a6fad96e7 -size 4584043 +oid sha256:7594bf0ed33e1720911dbb7d02ea7af35660f38efbf33f32ab3f17f2fad3c49d +size 4592506 diff --git a/lib/search/indexes/github-docs-3.3-pt-records.json.br b/lib/search/indexes/github-docs-3.3-pt-records.json.br index 850301a484..919548db1b 100644 --- a/lib/search/indexes/github-docs-3.3-pt-records.json.br +++ b/lib/search/indexes/github-docs-3.3-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c706ed0e3350ee31935b628fd9bad6336a82bb532a03d574c0b2fddf9be65374 -size 744584 +oid sha256:f78130e5c74562d16adcf7edf1f6b223a3b187cf3dea074b76bc154c7fee7bdf +size 744955 diff --git a/lib/search/indexes/github-docs-3.3-pt.json.br b/lib/search/indexes/github-docs-3.3-pt.json.br index 2015943d97..527400c586 100644 --- a/lib/search/indexes/github-docs-3.3-pt.json.br +++ b/lib/search/indexes/github-docs-3.3-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:07e14ee75c7344cd37f3c47cae18a962ac2666db7d05e9315a9ce8330692d5a8 -size 3107615 +oid sha256:f11c45b2d04294ce8f4dddb149876c29457eefb35fec2cbc16e45ea8335a5f96 +size 3107584 diff --git a/lib/search/indexes/github-docs-3.4-cn-records.json.br b/lib/search/indexes/github-docs-3.4-cn-records.json.br index 81c9142181..4553d628e3 100644 --- a/lib/search/indexes/github-docs-3.4-cn-records.json.br +++ b/lib/search/indexes/github-docs-3.4-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7ea6a714ea1335e53eb73c1d8c0fa9d3936e1e4a788f809e73d76e9db23a8369 -size 823606 +oid sha256:95554081052f8748935df451ffb8718d2743b9527b87b642403f71602996cb62 +size 823804 diff --git a/lib/search/indexes/github-docs-3.4-cn.json.br b/lib/search/indexes/github-docs-3.4-cn.json.br index d44f829ca2..652460b62c 100644 --- a/lib/search/indexes/github-docs-3.4-cn.json.br +++ b/lib/search/indexes/github-docs-3.4-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:89d07ca07c58b6585ffb7b59ee83d84109a0c41f956eb236bf3681b4d3e26127 -size 1706607 +oid sha256:1c65db04757eb3a769de49ec7579233b4a4d7cb6ebcc0d235f4c79e409644b46 +size 1714664 diff --git a/lib/search/indexes/github-docs-3.4-en-records.json.br b/lib/search/indexes/github-docs-3.4-en-records.json.br index c0c3e6afd0..53ee665848 100644 --- a/lib/search/indexes/github-docs-3.4-en-records.json.br +++ b/lib/search/indexes/github-docs-3.4-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f3a934352c83e808eee5dc925c998e343cd073df8c154ea01fb73438cec7f6ae -size 1140254 +oid sha256:0fd1b41d4c0bb6dcfeb9cc3e68a368731062bef56076eab2793cd41b040f9724 +size 1143229 diff --git a/lib/search/indexes/github-docs-3.4-en.json.br b/lib/search/indexes/github-docs-3.4-en.json.br index 7f98f77aae..d9825224b5 100644 --- a/lib/search/indexes/github-docs-3.4-en.json.br +++ b/lib/search/indexes/github-docs-3.4-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:498f2b59a5e5ad430ae8b98f74cefade9f359c3ea480eae2e78bbb58c93db9f9 -size 4597618 +oid sha256:b42dcb8f05e342b39a9948786d199e5008ef304ab9ea67db25cdd628b9fecd8e +size 4608151 diff --git a/lib/search/indexes/github-docs-3.4-es-records.json.br b/lib/search/indexes/github-docs-3.4-es-records.json.br index 3bab119b7d..b3dd784cdf 100644 --- a/lib/search/indexes/github-docs-3.4-es-records.json.br +++ b/lib/search/indexes/github-docs-3.4-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f8fff4eeeefe42c0763873f2c406291e299a637037fb199d99745d6c9fd13091 -size 759894 +oid sha256:7c8ef9f40d4f9114d2ebf5277fc06a97d45664353d999ed5cd725767a454bdcc +size 760934 diff --git a/lib/search/indexes/github-docs-3.4-es.json.br b/lib/search/indexes/github-docs-3.4-es.json.br index 8357720a88..2d7ce2a6d0 100644 --- a/lib/search/indexes/github-docs-3.4-es.json.br +++ b/lib/search/indexes/github-docs-3.4-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7d5368c64db0e4dc4c0700ad89f600481e36bb40321302cacdae61724cc8e86 -size 3234653 +oid sha256:fef74c10542cab8464250359db3c348a92711aa6ef3d9496400a4324bc6f8d37 +size 3240030 diff --git a/lib/search/indexes/github-docs-3.4-ja-records.json.br b/lib/search/indexes/github-docs-3.4-ja-records.json.br index 20c0babec6..7471d75401 100644 --- a/lib/search/indexes/github-docs-3.4-ja-records.json.br +++ b/lib/search/indexes/github-docs-3.4-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c52dcf6ccc9d712e4f72c6fd305ef526d8e654da3f71c767b70708fdf6c8caaa -size 839517 +oid sha256:73599c9f7801ee5bea4a0ec33e6656645b219f3c51f1ede008665b377fb52237 +size 840181 diff --git a/lib/search/indexes/github-docs-3.4-ja.json.br b/lib/search/indexes/github-docs-3.4-ja.json.br index 1e251e68a0..0cde04e7b2 100644 --- a/lib/search/indexes/github-docs-3.4-ja.json.br +++ b/lib/search/indexes/github-docs-3.4-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:49c5ca0c6eb056d5c5bf5ca59719ffc0b66ae7538fb77e19d6d66cc36b036ffe -size 4618234 +oid sha256:91e961ebbe32959df453e45680d45a74a19da9653ab80f3494fdda23e0cd2482 +size 4628231 diff --git a/lib/search/indexes/github-docs-3.4-pt-records.json.br b/lib/search/indexes/github-docs-3.4-pt-records.json.br index 1ef70e062a..8877e225f1 100644 --- a/lib/search/indexes/github-docs-3.4-pt-records.json.br +++ b/lib/search/indexes/github-docs-3.4-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c014b604894d7744394ddf3a430bdb043bc87b45afe210d4b78009f1da0485b4 -size 748780 +oid sha256:3a23083c2b14056712a8c4c4294b8f1a1faaff230c1b16cfcd8a013eae26aca8 +size 749253 diff --git a/lib/search/indexes/github-docs-3.4-pt.json.br b/lib/search/indexes/github-docs-3.4-pt.json.br index d71b14e900..3a65840eb8 100644 --- a/lib/search/indexes/github-docs-3.4-pt.json.br +++ b/lib/search/indexes/github-docs-3.4-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:52ab5aed173cba0d02a421d57f91e1bcc1eedd3254fa6cd901daea9bf72d1662 -size 3132813 +oid sha256:df3c54f099824b0d679e48100017610a2ad2940bc2de03ee5583331edbadcb10 +size 3131164 diff --git a/lib/search/indexes/github-docs-3.5-cn-records.json.br b/lib/search/indexes/github-docs-3.5-cn-records.json.br index d7997890c7..3792ae91d4 100644 --- a/lib/search/indexes/github-docs-3.5-cn-records.json.br +++ b/lib/search/indexes/github-docs-3.5-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:072761949bf6e18bc69a34b8d9705e800e658cae0cb74ffdeca671ed68099987 -size 854214 +oid sha256:b9955c0534e18bb33ee52ab9e390a5329ee3489be214d774b423caee77c53958 +size 855288 diff --git a/lib/search/indexes/github-docs-3.5-cn.json.br b/lib/search/indexes/github-docs-3.5-cn.json.br index 44716cd4ad..0328f9db4f 100644 --- a/lib/search/indexes/github-docs-3.5-cn.json.br +++ b/lib/search/indexes/github-docs-3.5-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d410e5419091ae5b6588f351e3d943a1fc35e222acf54ad8c280427261ee7422 -size 1771127 +oid sha256:d120c8598eb3a2c6f56a3d125a860bb02948dc02434b3910e1cf6c731013e788 +size 1783506 diff --git a/lib/search/indexes/github-docs-3.5-en-records.json.br b/lib/search/indexes/github-docs-3.5-en-records.json.br index 87c718fc5a..1e4d6e0b8a 100644 --- a/lib/search/indexes/github-docs-3.5-en-records.json.br +++ b/lib/search/indexes/github-docs-3.5-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d9e661dbdf40bd5752d0a4977d9759547df785218454e5b63ee290356d875f53 -size 1181042 +oid sha256:2ae715432b634e117f9b010f6e523dbd80c68c5c468cc67a032d9227dfb44f3b +size 1182962 diff --git a/lib/search/indexes/github-docs-3.5-en.json.br b/lib/search/indexes/github-docs-3.5-en.json.br index 72b01400ab..ac4bb5f81a 100644 --- a/lib/search/indexes/github-docs-3.5-en.json.br +++ b/lib/search/indexes/github-docs-3.5-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e357faed3a1c362da4e14dfe3e3e8114cc8425c856075c1e96282cde85965660 -size 4763092 +oid sha256:f7a530f4ca5e8332cbe667b9a0317e090d3e540de98ec7c8a9e2196aa7185f94 +size 4772050 diff --git a/lib/search/indexes/github-docs-3.5-es-records.json.br b/lib/search/indexes/github-docs-3.5-es-records.json.br index 533f625c89..0f58b369d3 100644 --- a/lib/search/indexes/github-docs-3.5-es-records.json.br +++ b/lib/search/indexes/github-docs-3.5-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e055d7f2bc5a100c0388d15b64fa876f099d83a9edb8847dbbe31af6e504be83 -size 784201 +oid sha256:9dfeacceff8910c1e7abd31ed8c77fd8a77518a3c0cb85a6098c5c330096678d +size 785284 diff --git a/lib/search/indexes/github-docs-3.5-es.json.br b/lib/search/indexes/github-docs-3.5-es.json.br index 6845830505..14c14c0ad9 100644 --- a/lib/search/indexes/github-docs-3.5-es.json.br +++ b/lib/search/indexes/github-docs-3.5-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2f939da505146afed4a74a50e65eca5cdf0de3ac5bc983dd878fb688cf57be77 -size 3353051 +oid sha256:bf2c1f71fd27e6fc294f84e62f0cb861efab75e8248b09402a58d9f437f4584d +size 3360519 diff --git a/lib/search/indexes/github-docs-3.5-ja-records.json.br b/lib/search/indexes/github-docs-3.5-ja-records.json.br index 4ce51fd584..5a6600f2c8 100644 --- a/lib/search/indexes/github-docs-3.5-ja-records.json.br +++ b/lib/search/indexes/github-docs-3.5-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec7c9087d8db2c9c75ded8b2fd4fb7047759c95d4ab2b70f11e89afeca2035a9 -size 867953 +oid sha256:eb844a66ae67b840b20566605ba311cd3d4a90fb146e8b8f0e8445e5ac477fdc +size 869517 diff --git a/lib/search/indexes/github-docs-3.5-ja.json.br b/lib/search/indexes/github-docs-3.5-ja.json.br index 343280d2c9..943f850396 100644 --- a/lib/search/indexes/github-docs-3.5-ja.json.br +++ b/lib/search/indexes/github-docs-3.5-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:55f7f8023b6aae82c88bb1b146dade0854d102c95f651d239f36b801d0672120 -size 4792678 +oid sha256:cf60584921335b9f26d8fac712939f6b0fcdf390559787789134ed2053dcacaf +size 4803965 diff --git a/lib/search/indexes/github-docs-3.5-pt-records.json.br b/lib/search/indexes/github-docs-3.5-pt-records.json.br index 54d1aab5f1..c1e5ee8a9d 100644 --- a/lib/search/indexes/github-docs-3.5-pt-records.json.br +++ b/lib/search/indexes/github-docs-3.5-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ff58cb4be6b38fd3dc0be6a8f174f6f73801ab46d87733e82d9d3e5ccb1db9ed -size 772574 +oid sha256:146eccd61d563fb96f26d028a7afe14fad42f045781403b2423ef5752f35ee5c +size 773500 diff --git a/lib/search/indexes/github-docs-3.5-pt.json.br b/lib/search/indexes/github-docs-3.5-pt.json.br index ba2108d65b..7181ade312 100644 --- a/lib/search/indexes/github-docs-3.5-pt.json.br +++ b/lib/search/indexes/github-docs-3.5-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc8e6718d23587b5c4914e7de572909ecc1c1d398f8b5373795c514b565ea5ba -size 3247348 +oid sha256:6c57b27f08fd63e675753aa22403d01bb8629b6f5adccf8d133c1569054d91d1 +size 3245475 diff --git a/lib/search/indexes/github-docs-3.6-cn-records.json.br b/lib/search/indexes/github-docs-3.6-cn-records.json.br index 0f0dd0f14e..6023b1d931 100644 --- a/lib/search/indexes/github-docs-3.6-cn-records.json.br +++ b/lib/search/indexes/github-docs-3.6-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1967b51b39e74dd04ba5603e691384e4161000529a60f49c473c2254f34d6ebc -size 875799 +oid sha256:0ca8a2f3b86918989ed8127b62e4b3fccd6a304fdc23425ca6ae1e4d00413d86 +size 877296 diff --git a/lib/search/indexes/github-docs-3.6-cn.json.br b/lib/search/indexes/github-docs-3.6-cn.json.br index f610c123bc..aea6f6648d 100644 --- a/lib/search/indexes/github-docs-3.6-cn.json.br +++ b/lib/search/indexes/github-docs-3.6-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c6e9b0a9f038d5b85ac512f17ccb611ee13165e3bf828f645ce09ff38072013c -size 1818132 +oid sha256:12d2eda40b3b79d4b8eec9a916687f8935bfe12258737fd23e71939f4dff85d4 +size 1833444 diff --git a/lib/search/indexes/github-docs-3.6-en-records.json.br b/lib/search/indexes/github-docs-3.6-en-records.json.br index d58ded2d93..cf80373efd 100644 --- a/lib/search/indexes/github-docs-3.6-en-records.json.br +++ b/lib/search/indexes/github-docs-3.6-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4e52c2afb1bb4a75c09a197dd59bb63683896ad7ffb22d5eac6251f08fabd7d0 -size 1209171 +oid sha256:9ab5485e159c931f18653c9c8d941a972d2d5fdf1c7678db6ac7d7d6703f47fb +size 1211363 diff --git a/lib/search/indexes/github-docs-3.6-en.json.br b/lib/search/indexes/github-docs-3.6-en.json.br index 9337299af8..c81417687e 100644 --- a/lib/search/indexes/github-docs-3.6-en.json.br +++ b/lib/search/indexes/github-docs-3.6-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7640c45bebf3170c34f77b9b572dc050b681ef885c3663d1e7fd4396e717dc26 -size 4875104 +oid sha256:8a71e1033af665f25b8d82e938885b459ad12a17a4aaa3f8e550a42b663da21f +size 4888015 diff --git a/lib/search/indexes/github-docs-3.6-es-records.json.br b/lib/search/indexes/github-docs-3.6-es-records.json.br index 5d900edf4e..7645134eeb 100644 --- a/lib/search/indexes/github-docs-3.6-es-records.json.br +++ b/lib/search/indexes/github-docs-3.6-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:021a68d2b53adc1aa69dff312131139671298bec1a8c0064160f7aff0217a302 -size 803950 +oid sha256:f9a152ce4e8d98ff4ecdd44e64137580edee25bf05fb16e2b68b48e6f576f4ec +size 805799 diff --git a/lib/search/indexes/github-docs-3.6-es.json.br b/lib/search/indexes/github-docs-3.6-es.json.br index 422c2c162d..f7a67439b6 100644 --- a/lib/search/indexes/github-docs-3.6-es.json.br +++ b/lib/search/indexes/github-docs-3.6-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9aa212d43350ed7903a5abeb5244db07b31f17298ba8ae346c39c6069392dd64 -size 3446372 +oid sha256:c6786de911b9c4dd0cafc2d013b857f7f337e3cdf4766cce3009722d79e2cdfc +size 3451161 diff --git a/lib/search/indexes/github-docs-3.6-ja-records.json.br b/lib/search/indexes/github-docs-3.6-ja-records.json.br index e37bc638b4..d164b1c716 100644 --- a/lib/search/indexes/github-docs-3.6-ja-records.json.br +++ b/lib/search/indexes/github-docs-3.6-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:41e1b9d909a53ac60c220893ac212fe2fa28726f01d6da39f0179ef56ebbf16f -size 889665 +oid sha256:94d4845dd911d29f500ab4533f1632f269c0713f26eabe79700e51164b65d0f2 +size 891893 diff --git a/lib/search/indexes/github-docs-3.6-ja.json.br b/lib/search/indexes/github-docs-3.6-ja.json.br index 4580896cfc..30e5effbde 100644 --- a/lib/search/indexes/github-docs-3.6-ja.json.br +++ b/lib/search/indexes/github-docs-3.6-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9fe3b2529c94d6565f8347009a32a14a1716f40ebe8c219933d01ed5cab077b2 -size 4918624 +oid sha256:a6885dd552272828ec40b9940a44780b0a35795159cd2233cd3189ad629d94c5 +size 4936729 diff --git a/lib/search/indexes/github-docs-3.6-pt-records.json.br b/lib/search/indexes/github-docs-3.6-pt-records.json.br index e9f7054c91..d38897aa0a 100644 --- a/lib/search/indexes/github-docs-3.6-pt-records.json.br +++ b/lib/search/indexes/github-docs-3.6-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:26e722833054681cb53dbd82c0c5f30e58d8400303d17bc5ebb9b6615efb6cf7 -size 792648 +oid sha256:7351a6675d9b03792c1bab30d334f7632da8fd704bebab39ee8364eab9f0de8d +size 794034 diff --git a/lib/search/indexes/github-docs-3.6-pt.json.br b/lib/search/indexes/github-docs-3.6-pt.json.br index 8074dc0940..c2f14355c6 100644 --- a/lib/search/indexes/github-docs-3.6-pt.json.br +++ b/lib/search/indexes/github-docs-3.6-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:97b991c5cc8279475816833e6c3ba5c45ed0818446fcc83217f993841779e511 -size 3339538 +oid sha256:e306abfd7acd79d45106b404bd64497cc18c94536f605c14e77e5341d62236a8 +size 3342522 diff --git a/lib/search/indexes/github-docs-dotcom-cn-records.json.br b/lib/search/indexes/github-docs-dotcom-cn-records.json.br index 52433ddc2b..b0d18b932e 100644 --- a/lib/search/indexes/github-docs-dotcom-cn-records.json.br +++ b/lib/search/indexes/github-docs-dotcom-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:134453773cc6b20e73c1b5d1362781215abd6fc7a0ca31a4686b649e3c537657 -size 1036844 +oid sha256:ff27c6a66f430a0d059eb992d8d67fe738a86542a0f49a4170eaffc08267985e +size 1040683 diff --git a/lib/search/indexes/github-docs-dotcom-cn.json.br b/lib/search/indexes/github-docs-dotcom-cn.json.br index c954c302a2..a244e4788a 100644 --- a/lib/search/indexes/github-docs-dotcom-cn.json.br +++ b/lib/search/indexes/github-docs-dotcom-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4aa721a804dcef3cd2852006fc073bc44c2c744d6ce9e0f74ad5e784867a3eaf -size 1865765 +oid sha256:4f0f73b6bca939ca225f0478fa436b01229232f8aee4b7b75792af6271ef5a87 +size 1905496 diff --git a/lib/search/indexes/github-docs-dotcom-en-records.json.br b/lib/search/indexes/github-docs-dotcom-en-records.json.br index d565cfd60c..eb7ac60478 100644 --- a/lib/search/indexes/github-docs-dotcom-en-records.json.br +++ b/lib/search/indexes/github-docs-dotcom-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b41f1b7c4ee46666ff1977df6d98a75e299d91368d61f7bff13308ecc0c9052 -size 1455599 +oid sha256:4117bc0700c844d40da7bba1cc37dc5648c813ab6be7408f4f65076b082a3620 +size 1464261 diff --git a/lib/search/indexes/github-docs-dotcom-en.json.br b/lib/search/indexes/github-docs-dotcom-en.json.br index c872311198..c6d43bf451 100644 --- a/lib/search/indexes/github-docs-dotcom-en.json.br +++ b/lib/search/indexes/github-docs-dotcom-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:71052bd518b98f0fd5fe0959bda704f1816f5258ee008a5622c6836911685aa1 -size 5606238 +oid sha256:51c900f5b7e3803c214f4a7773f4cb7238f1295aeb12432febeaa6f814c1f94d +size 5643388 diff --git a/lib/search/indexes/github-docs-dotcom-es-records.json.br b/lib/search/indexes/github-docs-dotcom-es-records.json.br index 69e083c554..328454cbda 100644 --- a/lib/search/indexes/github-docs-dotcom-es-records.json.br +++ b/lib/search/indexes/github-docs-dotcom-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:77b1bfa9446295f904e3416345895ffa80fe18bcd9203f19262b5e057c752030 -size 935126 +oid sha256:f845a620f814027bfe9cf5761af430e7d1104b369cb04ea5bb8e62ba310196eb +size 940363 diff --git a/lib/search/indexes/github-docs-dotcom-es.json.br b/lib/search/indexes/github-docs-dotcom-es.json.br index 33866bb4a7..a047e01a66 100644 --- a/lib/search/indexes/github-docs-dotcom-es.json.br +++ b/lib/search/indexes/github-docs-dotcom-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:83346511cc6a363595162ab1c9fb5069c802da9512082b74c6ff513014d85cee -size 3879996 +oid sha256:81ed7307cefaf07fafdd5e92616d1f1cd1878cdf5de3c90789bd72fa01a85ec0 +size 3912866 diff --git a/lib/search/indexes/github-docs-dotcom-ja-records.json.br b/lib/search/indexes/github-docs-dotcom-ja-records.json.br index 63102f0eec..b1b61a37f8 100644 --- a/lib/search/indexes/github-docs-dotcom-ja-records.json.br +++ b/lib/search/indexes/github-docs-dotcom-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:61733f547b672feada97cdcfdbbcb7e5b6e00d78a49f86543f0f5f88b5a3cf0c -size 1044459 +oid sha256:e1aba8967dd7fd9e5e01f4db28c90c717540283f3a60e1368872449a71a28689 +size 1049518 diff --git a/lib/search/indexes/github-docs-dotcom-ja.json.br b/lib/search/indexes/github-docs-dotcom-ja.json.br index fbab518a30..699fcdb5d7 100644 --- a/lib/search/indexes/github-docs-dotcom-ja.json.br +++ b/lib/search/indexes/github-docs-dotcom-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8de61c2a97e0af64fa5e6f1d104725234d0ed5d39276b38f874cd962f2ecbd36 -size 5609281 +oid sha256:55e71b39e3e0da785852122716dd72f6c5d948b06b90731781a5e5b46d2dbe15 +size 5653216 diff --git a/lib/search/indexes/github-docs-dotcom-pt-records.json.br b/lib/search/indexes/github-docs-dotcom-pt-records.json.br index ff791aeb0b..b81d2b9886 100644 --- a/lib/search/indexes/github-docs-dotcom-pt-records.json.br +++ b/lib/search/indexes/github-docs-dotcom-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc0a1f630ad0a8da7f1fb9021511579306d29bd52bed1a1f92d7c47f7dd6b467 -size 924097 +oid sha256:1d519fd17fc4586d85fc530ff580271791bbb3503fa917067c5f1b098581c592 +size 928281 diff --git a/lib/search/indexes/github-docs-dotcom-pt.json.br b/lib/search/indexes/github-docs-dotcom-pt.json.br index 6eec9e856a..8b44033d6f 100644 --- a/lib/search/indexes/github-docs-dotcom-pt.json.br +++ b/lib/search/indexes/github-docs-dotcom-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c1adfd7ab96604fcb266b5601f8b4f1c63d9188d941cef7aab4689e5cd3024f0 -size 3785349 +oid sha256:4137cad60bc106533532e2e9cd59f2650bfc4dd84891235d2bcb201fea86f3b7 +size 3802234 diff --git a/lib/search/indexes/github-docs-ghae-cn-records.json.br b/lib/search/indexes/github-docs-ghae-cn-records.json.br index 349bbc44ec..fbe2dc1eeb 100644 --- a/lib/search/indexes/github-docs-ghae-cn-records.json.br +++ b/lib/search/indexes/github-docs-ghae-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:595d83d5f7aa8c517018059c4101ae4bd441d9fefa6f5a131cb1bce32b58fc61 -size 660117 +oid sha256:d28172ca3418fdd3e6cb5523b30f0d8960ada764b81e8b2a69c5aee7aca8b394 +size 661472 diff --git a/lib/search/indexes/github-docs-ghae-cn.json.br b/lib/search/indexes/github-docs-ghae-cn.json.br index 890a59a34c..b38f3040b8 100644 --- a/lib/search/indexes/github-docs-ghae-cn.json.br +++ b/lib/search/indexes/github-docs-ghae-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b6d4d9c0b90dbb0258b8cf31d060ea4ba00abcf0c382ff220141c4fed57c6faf -size 1316780 +oid sha256:f7bcfcb92362dc66819fe9608cdda1ad934a4dd22e1a83f9e78296566b3ec3db +size 1326729 diff --git a/lib/search/indexes/github-docs-ghae-en-records.json.br b/lib/search/indexes/github-docs-ghae-en-records.json.br index 6188cf88e3..a63a27c687 100644 --- a/lib/search/indexes/github-docs-ghae-en-records.json.br +++ b/lib/search/indexes/github-docs-ghae-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4df19592aa70d177ad58dc2a2a68e88c97d4f25472ddbbb8bea21413016d79f2 -size 937922 +oid sha256:a4566b6c6cb36d700bcd3abdceafaf1797f4d93cae1f1bb92381ca7aede4e1f1 +size 940692 diff --git a/lib/search/indexes/github-docs-ghae-en.json.br b/lib/search/indexes/github-docs-ghae-en.json.br index 398fa38fa2..0a6d1955e2 100644 --- a/lib/search/indexes/github-docs-ghae-en.json.br +++ b/lib/search/indexes/github-docs-ghae-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7885dcc14339f80744fdf17df791106323ecbec08d7b3fd392fa8b738fa78ab9 -size 3718218 +oid sha256:3d3b698cf68bcd3a1ff19cd9ae9edec527c99ed3dc55b81c94228d7a196cfb00 +size 3732143 diff --git a/lib/search/indexes/github-docs-ghae-es-records.json.br b/lib/search/indexes/github-docs-ghae-es-records.json.br index 3c05482af7..7b8f4930fd 100644 --- a/lib/search/indexes/github-docs-ghae-es-records.json.br +++ b/lib/search/indexes/github-docs-ghae-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e19af84a01bbca89246d7af097902dd52377db4ee94e1e2333b653482f648a9f -size 613465 +oid sha256:8a4a2523d60e5f7a3116ddd1ebc6c45b38a7db3788f90f30f46e5108a1fc82d0 +size 615199 diff --git a/lib/search/indexes/github-docs-ghae-es.json.br b/lib/search/indexes/github-docs-ghae-es.json.br index eba0575ce9..a36b9134d0 100644 --- a/lib/search/indexes/github-docs-ghae-es.json.br +++ b/lib/search/indexes/github-docs-ghae-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dee0199c3eaf9aabefdc51e66aa7171eb095ec926971a804c703219453c00596 -size 2532562 +oid sha256:86782809a5112907e463167f6df3ad8ca40485238ec447c291d676cf5ae3404c +size 2540211 diff --git a/lib/search/indexes/github-docs-ghae-ja-records.json.br b/lib/search/indexes/github-docs-ghae-ja-records.json.br index 17e1bebccb..eb346cf4ad 100644 --- a/lib/search/indexes/github-docs-ghae-ja-records.json.br +++ b/lib/search/indexes/github-docs-ghae-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ecf9f8f41b658b992d46a2268d6286bd02f81c68e5019f4cc5463178ad74ccb0 -size 673422 +oid sha256:3dcef074aa629baccc39bf4dfcb19ab7990ff733eaaaf1ef8af409ee3dff9f47 +size 674655 diff --git a/lib/search/indexes/github-docs-ghae-ja.json.br b/lib/search/indexes/github-docs-ghae-ja.json.br index 1ad15d2777..5f51a25033 100644 --- a/lib/search/indexes/github-docs-ghae-ja.json.br +++ b/lib/search/indexes/github-docs-ghae-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:641df7904e7c8cb291ded8b5abd9ea25ffc6493cd134b13e19eb3a18f29c0b98 -size 3601116 +oid sha256:b23a2104cbc9febb903a9e0e128eeaa2fab247f0750d44df41e6e21a3b27cf4e +size 3612094 diff --git a/lib/search/indexes/github-docs-ghae-pt-records.json.br b/lib/search/indexes/github-docs-ghae-pt-records.json.br index dbca1aa2a4..ec1669ce1d 100644 --- a/lib/search/indexes/github-docs-ghae-pt-records.json.br +++ b/lib/search/indexes/github-docs-ghae-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:95ab77485fc5414bf46058b0d19ba90de715a587e268dac736f90e5e65aa84c1 -size 604994 +oid sha256:4f550a325ddca23c0fab0cd0816be27cf5f983d9509a6739a3269babe75baba4 +size 606184 diff --git a/lib/search/indexes/github-docs-ghae-pt.json.br b/lib/search/indexes/github-docs-ghae-pt.json.br index c03c796c06..0b7c476191 100644 --- a/lib/search/indexes/github-docs-ghae-pt.json.br +++ b/lib/search/indexes/github-docs-ghae-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fee80e8d79a83ca5d3d02783302bccb9f4c4ac9e11327f5cbe624b440f58491 -size 2432187 +oid sha256:298372e76838e51da31306672fae18b5322a4a9cd3305fb86e43aa07ce31497c +size 2430487 diff --git a/lib/search/indexes/github-docs-ghec-cn-records.json.br b/lib/search/indexes/github-docs-ghec-cn-records.json.br index e86850dfc4..7012fcb4a5 100644 --- a/lib/search/indexes/github-docs-ghec-cn-records.json.br +++ b/lib/search/indexes/github-docs-ghec-cn-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c05136cdce05e9bb70e1e045e2fa61ad79c5f85d848e42012ebbcb51220243ae -size 1008265 +oid sha256:a43a60f1975679e3043452a172c09cf8cced85fc7bfded552d9bf76861a8103e +size 1016342 diff --git a/lib/search/indexes/github-docs-ghec-cn.json.br b/lib/search/indexes/github-docs-ghec-cn.json.br index a7e7b55650..934db229cb 100644 --- a/lib/search/indexes/github-docs-ghec-cn.json.br +++ b/lib/search/indexes/github-docs-ghec-cn.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ba59b641e4e18983b10b2f7b10340378ce00bc398d7e160e1a2e4ffb6709e69a -size 1993683 +oid sha256:bb47c4fb0e998dd941edfbf90587bb1e870051aac27776ec3e87110cd0d4f8df +size 2042453 diff --git a/lib/search/indexes/github-docs-ghec-en-records.json.br b/lib/search/indexes/github-docs-ghec-en-records.json.br index d59f8efbae..7ffdc6ac27 100644 --- a/lib/search/indexes/github-docs-ghec-en-records.json.br +++ b/lib/search/indexes/github-docs-ghec-en-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a5157289555385f558fc811f49815bf55d76036776f8851a323172c81c6e593 -size 1385459 +oid sha256:e2bc44f59159032e8df0518f5f4b627d164143313c8e0ad570fb98cdcb7b0541 +size 1396691 diff --git a/lib/search/indexes/github-docs-ghec-en.json.br b/lib/search/indexes/github-docs-ghec-en.json.br index 4f2acf9ec7..ca8a2ffec2 100644 --- a/lib/search/indexes/github-docs-ghec-en.json.br +++ b/lib/search/indexes/github-docs-ghec-en.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f1713d4509984707bf3eb01aea564108ac428a2e08d5e1d12007a102c532882a -size 5621411 +oid sha256:734edfde11985d38776f4bfbb233a63bc9a243ea9deeae027c023e399fee6431 +size 5673493 diff --git a/lib/search/indexes/github-docs-ghec-es-records.json.br b/lib/search/indexes/github-docs-ghec-es-records.json.br index 722342b03b..23ca940fc9 100644 --- a/lib/search/indexes/github-docs-ghec-es-records.json.br +++ b/lib/search/indexes/github-docs-ghec-es-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8e88247d89b48d2ff79b6764b791dec06908665de1d8fe834a7de373bb8f85a3 -size 933381 +oid sha256:4563dd85814237f153d22fd0cca7e6afa5b5a18e3fc03ee0e656680a13611c6d +size 940470 diff --git a/lib/search/indexes/github-docs-ghec-es.json.br b/lib/search/indexes/github-docs-ghec-es.json.br index 7df400d1c1..7943bc0bd4 100644 --- a/lib/search/indexes/github-docs-ghec-es.json.br +++ b/lib/search/indexes/github-docs-ghec-es.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b00c099c5819a6e23bb2b528b68d6da47900d2c3362ff5d3ff4096c8e07c264 -size 4017625 +oid sha256:74e40771e8e403aec99b713c99c7c63e4638cc64ef88401f6bfd54a885a5a12a +size 4063203 diff --git a/lib/search/indexes/github-docs-ghec-ja-records.json.br b/lib/search/indexes/github-docs-ghec-ja-records.json.br index 33129f093c..009e492aba 100644 --- a/lib/search/indexes/github-docs-ghec-ja-records.json.br +++ b/lib/search/indexes/github-docs-ghec-ja-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:271804fdd16d6bc29ede673ff734e473175ef5881aee6b443e20eb74905f16b2 -size 1022279 +oid sha256:ea54e169ab7e03428d66a741334cc0d353568839f17a7ab0b093b7d987c65834 +size 1031237 diff --git a/lib/search/indexes/github-docs-ghec-ja.json.br b/lib/search/indexes/github-docs-ghec-ja.json.br index d029ff0bc3..a7a7988ec9 100644 --- a/lib/search/indexes/github-docs-ghec-ja.json.br +++ b/lib/search/indexes/github-docs-ghec-ja.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d160cc68e2a6f47c0685e0d66234722b6a2377efbd26d4af0e5176f08d85ee5 -size 5708276 +oid sha256:f059816993dbb2140bc3c17df80a0451eb2c519366ec46b08d1182837158ddc0 +size 5769145 diff --git a/lib/search/indexes/github-docs-ghec-pt-records.json.br b/lib/search/indexes/github-docs-ghec-pt-records.json.br index 118dbff0db..d6b7ef37f9 100644 --- a/lib/search/indexes/github-docs-ghec-pt-records.json.br +++ b/lib/search/indexes/github-docs-ghec-pt-records.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:74efc31a8338aafbf139524988077d144f545521115ee1546be07db333ccaf3e -size 920695 +oid sha256:1b9af2b800285db41508f707f9a806f83f559ad6994f20952c07bc02332553d9 +size 928017 diff --git a/lib/search/indexes/github-docs-ghec-pt.json.br b/lib/search/indexes/github-docs-ghec-pt.json.br index bbf3f73b70..9350defb02 100644 --- a/lib/search/indexes/github-docs-ghec-pt.json.br +++ b/lib/search/indexes/github-docs-ghec-pt.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:364190c0307850835ad6d5177201e03729923cda13e8855becd5f13a905cf566 -size 3911897 +oid sha256:ec57c35d4a24a4f85f3a084ac469aa067e2a1fbdf6ae907667accacccef1d14a +size 3941799 diff --git a/middleware/api/es-search.js b/middleware/api/es-search.js index e42d006843..339206d293 100644 --- a/middleware/api/es-search.js +++ b/middleware/api/es-search.js @@ -48,22 +48,24 @@ export async function getSearchResults({ const highlight = getHighlightConfiguration(query) const searchQuery = { - index: indexName, highlight, from, size, - // Since we know exactly which fields from the source we're going - // need we can specify that here. It's an inclusion list. - // We can save precious network by not having to transmit fields - // stored in Elasticsearch to here if it's not going to be needed - // anyway. - _source_includes: [ - 'title', - 'url', - 'breadcrumbs', - // 'headings' - 'popularity', - ], + + // COMMENTED out because of ES 7.11. + // Once we're on ES >7.11 we can add this option in. + // // Since we know exactly which fields from the source we're going + // // need we can specify that here. It's an inclusion list. + // // We can save precious network by not having to transmit fields + // // stored in Elasticsearch to here if it's not going to be needed + // // anyway. + // _source_includes: [ + // 'title', + // 'url', + // 'breadcrumbs', + // // 'headings' + // 'popularity', + // ], } if (includeTopics) { @@ -107,15 +109,17 @@ export async function getSearchResults({ throw new Error(`Unrecognized sort enum '${sort}'`) } - const result = await client.search(searchQuery) + const result = await client.search({ index: indexName, body: searchQuery }) - const hits = getHits(result.hits.hits, { indexName, debug, includeTopics }) + // const hitsAll = result.hits // ES >7.11 + const hitsAll = result.body // ES <=7.11 + const hits = getHits(hitsAll.hits.hits, { indexName, debug, includeTopics }) const t1 = new Date() const meta = { - found: result.hits.total, + found: hitsAll.hits.total, took: { - query_msec: result.took, + query_msec: hitsAll.took, total_msec: t1.getTime() - t0.getTime(), }, page, diff --git a/middleware/api/search.js b/middleware/api/search.js index 3c08c45101..a5afb747c9 100644 --- a/middleware/api/search.js +++ b/middleware/api/search.js @@ -1,6 +1,7 @@ import express from 'express' import searchVersions from '../../lib/search/versions.js' +import FailBot from '../../lib/failbot.js' import languages from '../../lib/languages.js' import { allVersions } from '../../lib/all-versions.js' import { defaultCacheControl } from '../cache-control.js' @@ -43,6 +44,20 @@ const legacyEnterpriseServerVersions = Object.fromEntries( }) ) +function getIndexPrefix() { + // This logic is mirrored in the scripts we use before running tests + // In particular, see the `index-test-fixtures` npm script. + // That's expected to be run before CI and local jest testing. + // The reason we have a deliberately different index name (by prefix) + // for testing compared to regular operation is to make it convenient + // for engineers working on local manual testing *and* automated + // testing without have to re-index different content (e.g. fixtures + // vs real content) on the same index name. + if (process.env.NODE_ENV === 'test') return 'tests_' + + return '' +} + function convertLegacyVersionName(version) { // In the olden days we used to use `?version=3.5&...` but we decided // that's ambiguous and it should be `ghes-3.5` instead. @@ -87,7 +102,10 @@ router.get( return res.status(200).json([]) } - const indexName = `github-docs-${convertLegacyVersionName(version)}-${language}` + const indexName = `${getIndexPrefix()}github-docs-${convertLegacyVersionName( + version + )}-${language}` + const hits = [] try { const searchResults = await getSearchResults({ @@ -205,7 +223,7 @@ const validationMiddleware = (req, res, next) => { const version = versionAliases[search.version] || allVersions[search.version].miscVersionName - search.indexName = `github-docs-${version}-${search.language}` // github-docs-ghes-3.5-en + search.indexName = `${getIndexPrefix()}github-docs-${version}-${search.language}` // github-docs-ghes-3.5-en req.search = search return next() @@ -217,20 +235,44 @@ router.get( notConfiguredMiddleware, catchMiddlewareError(async function search(req, res, next) { const { indexName, query, page, size, debug, sort } = req.search - const { meta, hits } = await getSearchResults({ indexName, query, page, size, debug, sort }) + try { + const { meta, hits } = await getSearchResults({ indexName, query, page, size, debug, sort }) - if (process.env.NODE_ENV !== 'development') { - // The assumption, at the moment is that searches are never distinguished - // differently depending on a cookie or a request header. - // So the only distinguishing key is the request URL. - // Because of that, it's safe to allow the reverse proxy (a.k.a the CDN) - // cache and hold on to this. - defaultCacheControl(res) + if (process.env.NODE_ENV !== 'development') { + // The assumption, at the moment is that searches are never distinguished + // differently depending on a cookie or a request header. + // So the only distinguishing key is the request URL. + // Because of that, it's safe to allow the reverse proxy (a.k.a the CDN) + // cache and hold on to this. + defaultCacheControl(res) + } + + // The v1 version of the output matches perfectly what comes out + // of the getSearchResults() function. + res.status(200).json({ meta, hits }) + } catch (error) { + // If getSearchResult() throws an error that might be 404 inside + // elasticsearch, if we don't capture that here, it will propgate + // to the next middleware. + if (process.env.NODE_ENV === 'development') { + console.error('Error calling getSearchResults()', error) + } else { + const reports = FailBot.report(error, { + url: req.url, + indexName, + query, + page, + size, + debug, + sort, + }) + // It might be `undefined` if no backends are configured which + // is likely when using production NODE_ENV on your laptop + // where you might not have a HATSTACK_URL configured. + if (reports) await Promise.all(reports) + } + res.status(500).send(error.message) } - - // The v1 version of the output matches perfectly what comes out - // of the getSearchResults() function. - res.status(200).json({ meta, hits }) }) ) diff --git a/middleware/contextualizers/breadcrumbs.js b/middleware/contextualizers/breadcrumbs.js index a707cd0a9b..ef4195c4c9 100644 --- a/middleware/contextualizers/breadcrumbs.js +++ b/middleware/contextualizers/breadcrumbs.js @@ -17,6 +17,8 @@ export default async function breadcrumbs(req, res, next) { return next() } +const earlyAccessExceptions = ['insights', 'enterprise-importer'] + async function getBreadcrumbs(req, isEarlyAccess = false) { const crumbs = [] const { currentPath, currentVersion } = req.context @@ -30,11 +32,11 @@ async function getBreadcrumbs(req, isEarlyAccess = false) { // top-level like "/github" cutoff++ - // The only exception to this rule is for the - // /{version}/early-access/insights/... URLs because they're a + // There are a few exceptions to this rule for the + // /{version}/early-access//... URLs because they're a // bit different. - // If there are more known exceptions, extend this conditional. - if (!split.includes('insights')) { + // If there are more known exceptions, add them to the array above. + if (!earlyAccessExceptions.some((product) => split.includes(product))) { cutoff++ } diff --git a/middleware/next.js b/middleware/next.js index ab9de7ae09..8ad6b3eb22 100644 --- a/middleware/next.js +++ b/middleware/next.js @@ -1,16 +1,9 @@ import next from 'next' -// This import is necessary, as of Jan 2022 to avoid a segmentation fault. -// Next is suppose to automatically pick up the `next.config.js` file -// but if you don't specify it to the `next()` constructor you currently -// get a seg fault. -// Possibly relevant: https://github.com/vercel/next.js/issues/33008 -import conf from '../next.config.js' - const { NODE_ENV } = process.env const isDevelopment = NODE_ENV === 'development' -export const nextApp = next({ dev: isDevelopment, conf }) +export const nextApp = next({ dev: isDevelopment }) export const nextHandleRequest = nextApp.getRequestHandler() await nextApp.prepare() diff --git a/middleware/redirects/handle-redirects.js b/middleware/redirects/handle-redirects.js index 3395554e6a..48eea18472 100644 --- a/middleware/redirects/handle-redirects.js +++ b/middleware/redirects/handle-redirects.js @@ -39,11 +39,11 @@ export default function handleRedirects(req, res, next) { let redirect = req.path let queryParams = req._parsedUrl.query - // If process.env.ELASTICSEARCH_URL isn't set, you can't go to the + // If process.env.ENABLE_SEARCH_RESULTS_PAGE isn't set, you can't go to the // dedicated search results page. // If that's the case, use the "old redirect" where all it does is // "correcting" the old query string 'q' to 'query'. - if (!process.env.ELASTICSEARCH_URL && 'q' in req.query && !('query' in req.query)) { + if (!process.env.ENABLE_SEARCH_RESULTS_PAGE && 'q' in req.query && !('query' in req.query)) { // update old-style query params (#9467) const newQueryParams = new URLSearchParams(queryParams) newQueryParams.set('query', newQueryParams.get('q')) @@ -51,19 +51,19 @@ export default function handleRedirects(req, res, next) { return res.redirect(301, `${req.path}?${newQueryParams.toString()}`) } - // If process.env.ELASTICSEARCH_URL is set, the dedicated search + // If process.env.ENABLE_SEARCH_RESULTS_PAGE is set, the dedicated search // result page is ready. If that's the case, we can redirect to // `/$locale/search?query=...` from `/foo/bar?query=...` or from // (the old style) `/foo/bar/?q=...` if ( - process.env.ELASTICSEARCH_URL && + process.env.ENABLE_SEARCH_RESULTS_PAGE && ('q' in req.query || ('query' in req.query && !(req.path.endsWith('/search') || req.path.startsWith('/api/search')))) ) { // If you had the old legacy format of /some/uri?q=stuff // it needs to redirect to /en/search?query=stuff or - // /some/uri?query=stuff depending on if ELASTICSEARCH_URL has been + // /some/uri?query=stuff depending on if ENABLE_SEARCH_RESULTS_PAGE has been // set up. // If you have the new format of /some/uri?query=stuff it too needs // to redirect to /en/search?query=stuff diff --git a/next.config.js b/next.config.js index bf3db7e254..50aa6fcec0 100644 --- a/next.config.js +++ b/next.config.js @@ -2,6 +2,7 @@ import fs from 'fs' import path from 'path' import frontmatter from 'gray-matter' +import { languageKeys } from './lib/languages.js' const homepage = path.posix.join(process.cwd(), 'content/index.md') const { data } = frontmatter(fs.readFileSync(homepage, 'utf8')) @@ -17,8 +18,7 @@ export default { ignoreDuringBuilds: true, }, i18n: { - // locales: Object.values(languages).map(({ code }) => code), - locales: ['en', 'cn', 'ja', 'es', 'pt'], + locales: languageKeys, defaultLocale: 'en', }, sassOptions: { diff --git a/package-lock.json b/package-lock.json index e15210551a..6e91c6c87b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,7 +7,7 @@ "name": "docs.github.com", "license": "(MIT AND CC-BY-4.0)", "dependencies": { - "@elastic/elasticsearch": "8.2.1", + "@elastic/elasticsearch": "7.11.0", "@github/failbot": "0.8.0", "@primer/css": "^20.2.4", "@primer/octicons": "17.3.0", @@ -53,7 +53,7 @@ "mdast-util-to-string": "^3.1.0", "morgan": "^1.10.0", "msgpack5rpc": "^1.1.0", - "next": "12.2.5", + "next": "12.2.4", "parse5": "7.0.0", "port-used": "^2.0.8", "react": "^17.0.2", @@ -97,7 +97,7 @@ "@babel/preset-env": "^7.18.2", "@graphql-inspector/core": "^3.1.2", "@graphql-tools/load": "^7.5.14", - "@jest/globals": "^28.1.1", + "@jest/globals": "29.0.0", "@octokit/graphql": "4.8.0", "@octokit/rest": "^18.12.0", "@types/github-slugger": "^1.3.0", @@ -134,9 +134,9 @@ "http-status-code": "^2.1.0", "husky": "^8.0.1", "japanese-characters": "^1.1.0", - "jest": "28.1.3", + "jest": "29.0.0", "jest-environment-puppeteer": "^5.0.4", - "jest-fail-on-console": "^2.4.2", + "jest-fail-on-console": "^3.0.1", "jest-github-actions-reporter": "^1.0.3", "jest-slow-test-reporter": "^1.0.0", "kill-port": "2.0.0", @@ -535,9 +535,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.17.12", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz", - "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", + "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", "dev": true, "engines": { "node": ">=6.9.0" @@ -1118,6 +1118,21 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "dev": true, @@ -1214,12 +1229,12 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.17.12", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.17.12.tgz", - "integrity": "sha512-TYY0SXFiO31YXtNg3HtFwNJHjLsAyIIhAhNWkQ5whPPS7HWUFlg9z0Ta4qAQNjQbP1wsSt/oKkmZ/4/WWdMUpw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz", + "integrity": "sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.17.12" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { "node": ">=6.9.0" @@ -1938,59 +1953,20 @@ "dev": true }, "node_modules/@elastic/elasticsearch": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@elastic/elasticsearch/-/elasticsearch-8.2.1.tgz", - "integrity": "sha512-Kwerd8DfNZdBGgl7fkn+20kXkw1QePB3goTv5QwW9poo2d4VbPE0EChmh6irpXWAGsVSYiKr8x6bh8dH5YdylA==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@elastic/elasticsearch/-/elasticsearch-7.11.0.tgz", + "integrity": "sha512-AFVVuANIdbV1qYjuOi4hnsX/DehWYG+bbhQO4amq9K4/NnzU7mpGWOPgVlRQTiX+vBfBkx7SL6h4QEjIlM3ztA==", "dependencies": { - "@elastic/transport": "^8.2.0", - "tslib": "^2.4.0" + "debug": "^4.1.1", + "hpagent": "^0.1.1", + "ms": "^2.1.1", + "pump": "^3.0.0", + "secure-json-parse": "^2.1.0" }, "engines": { - "node": ">=14" + "node": ">=8" } }, - "node_modules/@elastic/transport": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/@elastic/transport/-/transport-8.2.0.tgz", - "integrity": "sha512-H/HmefMNQfLiBSVTmNExu2lYs5EzwipUnQB53WLr17RCTDaQX0oOLHcWpDsbKQSRhDAMPPzp5YZsZMJxuxPh7A==", - "dependencies": { - "debug": "^4.3.4", - "hpagent": "^1.0.0", - "ms": "^2.1.3", - "secure-json-parse": "^2.4.0", - "tslib": "^2.4.0", - "undici": "^5.1.1" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/@elastic/transport/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@elastic/transport/node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/@elastic/transport/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/@emotion/is-prop-valid": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.1.3.tgz", @@ -2363,29 +2339,29 @@ } }, "node_modules/@jest/console": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-28.1.3.tgz", - "integrity": "sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.0.0.tgz", + "integrity": "sha512-rHsKEqT2Kx73PqO9qIOdwg0Grd6Y3COyqNpi5SKRI0qXgmlqXkOczQMfIb8I0Gdnc9/kaMj6cTnBGLyBA03Xrg==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0", "slash": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/console/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -2393,13 +2369,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/console/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -2422,32 +2398,32 @@ } }, "node_modules/@jest/console/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/console/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -2455,22 +2431,21 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/console/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/console/node_modules/pretty-format/node_modules/ansi-styles": { @@ -2501,43 +2476,42 @@ } }, "node_modules/@jest/core": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-28.1.3.tgz", - "integrity": "sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.0.0.tgz", + "integrity": "sha512-9qljprspjQwbmnq3Wv9d/M6/ejMdWs1uAAljQAX9QsjJ1SlSByXw1mRA9UpR2BP9TxLLwEembbm0ykrT//2STg==", "dev": true, "dependencies": { - "@jest/console": "^28.1.3", - "@jest/reporters": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/console": "^29.0.0", + "@jest/reporters": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", "ci-info": "^3.2.0", "exit": "^0.1.2", "graceful-fs": "^4.2.9", - "jest-changed-files": "^28.1.3", - "jest-config": "^28.1.3", - "jest-haste-map": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-regex-util": "^28.0.2", - "jest-resolve": "^28.1.3", - "jest-resolve-dependencies": "^28.1.3", - "jest-runner": "^28.1.3", - "jest-runtime": "^28.1.3", - "jest-snapshot": "^28.1.3", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", - "jest-watcher": "^28.1.3", + "jest-changed-files": "^29.0.0", + "jest-config": "^29.0.0", + "jest-haste-map": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-resolve-dependencies": "^29.0.0", + "jest-runner": "^29.0.0", + "jest-runtime": "^29.0.0", + "jest-snapshot": "^29.0.0", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", + "jest-watcher": "^29.0.0", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", - "rimraf": "^3.0.0", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "strip-ansi": "^6.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -2549,12 +2523,12 @@ } }, "node_modules/@jest/core/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -2562,13 +2536,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/core/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -2591,32 +2565,32 @@ } }, "node_modules/@jest/core/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/core/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -2624,22 +2598,21 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/core/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/core/node_modules/pretty-format/node_modules/ansi-styles": { @@ -2696,28 +2669,28 @@ } }, "node_modules/@jest/expect": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-28.1.3.tgz", - "integrity": "sha512-lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.0.0.tgz", + "integrity": "sha512-X2S5NpZOeXXDGBLvU/4K1nAD5iIz6/9Gs041wToI0FiX3glh/aEGGsVv3+SxKddYIb6Ei+ZbqzJmfRzQ7nwPlQ==", "dev": true, "dependencies": { - "expect": "^28.1.3", - "jest-snapshot": "^28.1.3" + "expect": "^29.0.0", + "jest-snapshot": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/expect-utils": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-28.1.3.tgz", - "integrity": "sha512-wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.0.0.tgz", + "integrity": "sha512-odQ+cjUpui6++a9Ua/oWn7CG0Af+EZe9weWZbfUQHTg7C3K9PCb0AnD4X7nyAe4WjfeZmVVyG5SJELMQaUbCtg==", "dev": true, "dependencies": { - "jest-get-type": "^28.0.2" + "jest-get-type": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/fake-timers": { @@ -2737,58 +2710,59 @@ } }, "node_modules/@jest/globals": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-28.1.3.tgz", - "integrity": "sha512-XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.0.0.tgz", + "integrity": "sha512-ZHQMh6BZtabbikh9wkuPpVQmPHEpc4EgOaY/UJNM6hHHA5HRmiP5rH54M8267nkGscuqM5KpWP+zAZ4XEOXZag==", "dev": true, "dependencies": { - "@jest/environment": "^28.1.3", - "@jest/expect": "^28.1.3", - "@jest/types": "^28.1.3" + "@jest/environment": "^29.0.0", + "@jest/expect": "^29.0.0", + "@jest/types": "^29.0.0", + "jest-mock": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "dependencies": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -2796,7 +2770,7 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/@sinonjs/fake-timers": { @@ -2809,9 +2783,9 @@ } }, "node_modules/@jest/globals/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -2834,45 +2808,45 @@ } }, "node_modules/@jest/globals/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -2880,22 +2854,21 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals/node_modules/pretty-format/node_modules/ansi-styles": { @@ -2926,17 +2899,17 @@ } }, "node_modules/@jest/reporters": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-28.1.3.tgz", - "integrity": "sha512-JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.0.0.tgz", + "integrity": "sha512-6ZFLlHQwncULTucAKWeGJLGPvzjgC/0gFmxJi/LgU9G1v498r/RcWQiZBPqhJcSvpWGTCaqjvUGmPCLtrUpubw==", "dev": true, "dependencies": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", - "@jridgewell/trace-mapping": "^0.3.13", + "@jest/console": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "@jridgewell/trace-mapping": "^0.3.15", "@types/node": "*", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", @@ -2948,9 +2921,9 @@ "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", "istanbul-reports": "^3.1.3", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", - "jest-worker": "^28.1.3", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0", + "jest-worker": "^29.0.0", "slash": "^3.0.0", "string-length": "^4.0.1", "strip-ansi": "^6.0.0", @@ -2958,7 +2931,7 @@ "v8-to-istanbul": "^9.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -2970,12 +2943,12 @@ } }, "node_modules/@jest/reporters/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -2983,13 +2956,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/reporters/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -3042,32 +3015,32 @@ } }, "node_modules/@jest/reporters/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/reporters/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -3075,13 +3048,13 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/reporters/node_modules/jest-worker": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", - "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.0.0.tgz", + "integrity": "sha512-2t9Panx3F9N1wAvRuZT7xLEptRFc1C5G90DOHniIGz1JIgF9uhd5u8jNBsc7wN63lhnaiLeVLnNx21wT7OVFEQ==", "dev": true, "dependencies": { "@types/node": "*", @@ -3089,7 +3062,7 @@ "supports-color": "^8.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/reporters/node_modules/jest-worker/node_modules/supports-color": { @@ -3120,18 +3093,17 @@ } }, "node_modules/@jest/reporters/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/reporters/node_modules/pretty-format/node_modules/ansi-styles": { @@ -3174,53 +3146,53 @@ } }, "node_modules/@jest/schemas": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz", - "integrity": "sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz", + "integrity": "sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==", "dev": true, "dependencies": { "@sinclair/typebox": "^0.24.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/source-map": { - "version": "28.1.2", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-28.1.2.tgz", - "integrity": "sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.0.0.tgz", + "integrity": "sha512-nOr+0EM8GiHf34mq2GcJyz/gYFyLQ2INDhAylrZJ9mMWoW21mLBfZa0BUVPPMxVYrLjeiRe2Z7kWXOGnS0TFhQ==", "dev": true, "dependencies": { - "@jridgewell/trace-mapping": "^0.3.13", + "@jridgewell/trace-mapping": "^0.3.15", "callsites": "^3.0.0", "graceful-fs": "^4.2.9" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/test-result": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-28.1.3.tgz", - "integrity": "sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.0.0.tgz", + "integrity": "sha512-mv76j8ILaqOuZAWBGR1/ZSRinN5Q/eEji7kMcvADjd+gQGfn/Py+91nUrVakJT69idC66bvQ7yF24frQpzFKUg==", "dev": true, "dependencies": { - "@jest/console": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/console": "^29.0.0", + "@jest/types": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/test-result/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -3228,13 +3200,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/test-result/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -3257,18 +3229,18 @@ } }, "node_modules/@jest/test-sequencer": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-28.1.3.tgz", - "integrity": "sha512-NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.0.0.tgz", + "integrity": "sha512-uL6yX//SUME1c/ucbY365obdsrPjvSoNBwB80WTe+drYL4jf7A87vA2+w4hYwXJEIGQspv5skg3iB/sJSys7ew==", "dev": true, "dependencies": { - "@jest/test-result": "^28.1.3", + "@jest/test-result": "^29.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", + "jest-haste-map": "^29.0.0", "slash": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/test-sequencer/node_modules/slash": { @@ -3281,38 +3253,38 @@ } }, "node_modules/@jest/transform": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-28.1.3.tgz", - "integrity": "sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.0.0.tgz", + "integrity": "sha512-hwyBt8UR5o8GGaphmRqNQwVCctiOR8ncugCp/RlInEZvQ+ysKkS5TFfe5RgeQ0KtKdWByQqn5yA574LLOp3OWw==", "dev": true, "dependencies": { "@babel/core": "^7.11.6", - "@jest/types": "^28.1.3", - "@jridgewell/trace-mapping": "^0.3.13", + "@jest/types": "^29.0.0", + "@jridgewell/trace-mapping": "^0.3.15", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", - "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.3", + "jest-haste-map": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-util": "^29.0.0", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", "write-file-atomic": "^4.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/transform/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -3320,13 +3292,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/transform/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -3349,12 +3321,12 @@ } }, "node_modules/@jest/transform/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -3362,7 +3334,7 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/transform/node_modules/slash": { @@ -3375,16 +3347,16 @@ } }, "node_modules/@jest/transform/node_modules/write-file-atomic": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz", - "integrity": "sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^3.0.7" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, "node_modules/@jest/types": { @@ -3478,213 +3450,18 @@ "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", - "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "version": "0.3.15", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", + "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" } }, "node_modules/@next/env": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/env/-/env-12.2.5.tgz", - "integrity": "sha512-vLPLV3cpPGjUPT3PjgRj7e3nio9t6USkuew3JE/jMeon/9Mvp1WyR18v3iwnCuX7eUAm1HmAbJHHLAbcu/EJcw==" - }, - "node_modules/@next/swc-android-arm-eabi": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.2.5.tgz", - "integrity": "sha512-cPWClKxGhgn2dLWnspW+7psl3MoLQUcNqJqOHk2BhNcou9ARDtC0IjQkKe5qcn9qg7I7U83Gp1yh2aesZfZJMA==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-android-arm64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.2.5.tgz", - "integrity": "sha512-vMj0efliXmC5b7p+wfcQCX0AfU8IypjkzT64GiKJD9PgiA3IILNiGJr1fw2lyUDHkjeWx/5HMlMEpLnTsQslwg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.2.5.tgz", - "integrity": "sha512-VOPWbO5EFr6snla/WcxUKtvzGVShfs302TEMOtzYyWni6f9zuOetijJvVh9CCTzInnXAZMtHyNhefijA4HMYLg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.2.5.tgz", - "integrity": "sha512-5o8bTCgAmtYOgauO/Xd27vW52G2/m3i5PX7MUYePquxXAnX73AAtqA3WgPXBRitEB60plSKZgOTkcpqrsh546A==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-freebsd-x64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.2.5.tgz", - "integrity": "sha512-yYUbyup1JnznMtEBRkK4LT56N0lfK5qNTzr6/DEyDw5TbFVwnuy2hhLBzwCBkScFVjpFdfiC6SQAX3FrAZzuuw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm-gnueabihf": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.2.5.tgz", - "integrity": "sha512-2ZE2/G921Acks7UopJZVMgKLdm4vN4U0yuzvAMJ6KBavPzqESA2yHJlm85TV/K9gIjKhSk5BVtauIUntFRP8cg==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.2.5.tgz", - "integrity": "sha512-/I6+PWVlz2wkTdWqhlSYYJ1pWWgUVva6SgX353oqTh8njNQp1SdFQuWDqk8LnM6ulheVfSsgkDzxrDaAQZnzjQ==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.2.5.tgz", - "integrity": "sha512-LPQRelfX6asXyVr59p5sTpx5l+0yh2Vjp/R8Wi4X9pnqcayqT4CUJLiHqCvZuLin3IsFdisJL0rKHMoaZLRfmg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.2.5.tgz", - "integrity": "sha512-0szyAo8jMCClkjNK0hknjhmAngUppoRekW6OAezbEYwHXN/VNtsXbfzgYOqjKWxEx3OoAzrT3jLwAF0HdX2MEw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.2.5.tgz", - "integrity": "sha512-zg/Y6oBar1yVnW6Il1I/08/2ukWtOG6s3acdJdEyIdsCzyQi4RLxbbhkD/EGQyhqBvd3QrC6ZXQEXighQUAZ0g==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.2.5.tgz", - "integrity": "sha512-3/90DRNSqeeSRMMEhj4gHHQlLhhKg5SCCoYfE3kBjGpE63EfnblYUqsszGGZ9ekpKL/R4/SGB40iCQr8tR5Jiw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-ia32-msvc": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.2.5.tgz", - "integrity": "sha512-hGLc0ZRAwnaPL4ulwpp4D2RxmkHQLuI8CFOEEHdzZpS63/hMVzv81g8jzYA0UXbb9pus/iTc3VRbVbAM03SRrw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.2.5.tgz", - "integrity": "sha512-7h5/ahY7NeaO2xygqVrSG/Y8Vs4cdjxIjowTZ5W6CKoTKn7tmnuxlUc2h74x06FKmbhAd9agOjr/AOKyxYYm9Q==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-12.2.4.tgz", + "integrity": "sha512-/gApFXWk5CCLFQJL5IYJXxPQuG5tz5nPX4l27A9Zm/+wJxiwFrRSP54AopDxIv4JRp/rGwcgk/lZS/0Clw8jYA==" }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", @@ -3978,9 +3755,9 @@ "license": "BSD-3-Clause" }, "node_modules/@sinclair/typebox": { - "version": "0.24.20", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.20.tgz", - "integrity": "sha512-kVaO5aEFZb33nPMTZBxiPEkY+slxiPtqC7QX8f9B3eGOMBvEfuMfxp9DSTTCsRJPumPKjrge4yagyssO4q6qzQ==", + "version": "0.24.28", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.28.tgz", + "integrity": "sha512-dgJd3HLOkLmz4Bw50eZx/zJwtBq65nms3N9VBYu5LTjJ883oBFkTyXRlCB/ZGGwqYpJJHA5zW2Ibhl5ngITfow==", "dev": true }, "node_modules/@sindresorhus/is": { @@ -4164,9 +3941,9 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.17.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.1.tgz", - "integrity": "sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.0.tgz", + "integrity": "sha512-v4Vwdko+pgymgS+A2UIaJru93zQd85vIGWObM5ekZNdXCKtDYqATlEYnWgfo86Q6I1Lh0oXnksDnMU1cwmlPDw==", "dev": true, "dependencies": { "@babel/types": "^7.3.0" @@ -4345,9 +4122,9 @@ "license": "MIT" }, "node_modules/@types/prettier": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.3.tgz", - "integrity": "sha512-ymZk3LEC/fsut+/Q5qejp6R9O1rMxz3XaRHDV6kX8MrGAhOSPqVARbDi+EZvInBpw+BnCX3TD240byVkOfQsHg==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.0.tgz", + "integrity": "sha512-RI1L7N4JnW5gQw2spvL7Sllfuf1SaHdrZpCHiBlCXjIlufi1SMNnbu2teze3/QE67Fg2tBlH7W+mi4hVNk4p0A==", "dev": true }, "node_modules/@types/prop-types": { @@ -5389,21 +5166,21 @@ } }, "node_modules/babel-jest": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz", - "integrity": "sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.0.0.tgz", + "integrity": "sha512-EJM2dqxz9+uWJLLucZLPYAmRsHHt1IMkitAHGqjDlIP2IQXzkIMO3ATbBWk0lU6VwX4rNeVN04t/DDB8U5C2rg==", "dev": true, "dependencies": { - "@jest/transform": "^28.1.3", + "@jest/transform": "^29.0.0", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^28.1.3", + "babel-preset-jest": "^29.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "@babel/core": "^7.8.0" @@ -5495,9 +5272,9 @@ } }, "node_modules/babel-plugin-jest-hoist": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.3.tgz", - "integrity": "sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.0.0.tgz", + "integrity": "sha512-B9oaXrlxXHFWeWqhDPg03iqQd2UN/mg/VdZOsLaqAVBkztru3ctTryAI4zisxLEEgmcUnLTKewqx0gGifoXD3A==", "dev": true, "dependencies": { "@babel/template": "^7.3.3", @@ -5506,7 +5283,7 @@ "@types/babel__traverse": "^7.0.6" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/babel-plugin-polyfill-corejs2": { @@ -5960,16 +5737,16 @@ } }, "node_modules/babel-preset-jest": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-28.1.3.tgz", - "integrity": "sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.0.0.tgz", + "integrity": "sha512-B5Ke47Xcs8rDF3p1korT3LoilpADCwbG93ALqtvqu6Xpf4d8alKkrCBTExbNzdHJcIuEPpfYvEaFFRGee2kUgQ==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^28.1.3", + "babel-plugin-jest-hoist": "^29.0.0", "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "@babel/core": "^7.0.0" @@ -7490,12 +7267,12 @@ } }, "node_modules/diff-sequences": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-28.1.1.tgz", - "integrity": "sha512-FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.0.0.tgz", + "integrity": "sha512-7Qe/zd1wxSDL4D/X/FPjOMB+ZMDt71W94KYaq05I2l0oQqgXgs7s4ftYYmV38gBSrPz2vcygxfs1xn0FT+rKNA==", "dev": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/dir-glob": { @@ -8801,19 +8578,19 @@ } }, "node_modules/expect": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-28.1.3.tgz", - "integrity": "sha512-eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.0.0.tgz", + "integrity": "sha512-OKAHGwaBqZ6I7bas0cnrrvomEL2d0yp2XXYQhhnVHfaqDaKStUBxjWtlGu/uI2tBqwb9sBMvaS41DSJFsRRJHQ==", "dev": true, "dependencies": { - "@jest/expect-utils": "^28.1.3", - "jest-get-type": "^28.0.2", - "jest-matcher-utils": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3" + "@jest/expect-utils": "^29.0.0", + "jest-get-type": "^29.0.0", + "jest-matcher-utils": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/expect-puppeteer": { @@ -8823,12 +8600,12 @@ "optional": true }, "node_modules/expect/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -8836,13 +8613,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/expect/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -8865,32 +8642,32 @@ } }, "node_modules/expect/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/expect/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -8898,22 +8675,21 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/expect/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/expect/node_modules/pretty-format/node_modules/ansi-styles": { @@ -9467,34 +9243,11 @@ "node": ">=12" } }, - "node_modules/fs-extra/node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "optional": true, - "engines": { - "node": ">= 10.0.0" - } - }, "node_modules/fs.realpath": { "version": "1.0.0", "devOptional": true, "license": "ISC" }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/function-bind": { "version": "1.1.1", "license": "MIT" @@ -10362,12 +10115,9 @@ } }, "node_modules/hpagent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.0.0.tgz", - "integrity": "sha512-SCleE2Uc1bM752ymxg8QXYGW0TWtAV4ZW3TqH1aOnyi6T6YW2xadCcclm5qeVjvMvfQ2RKNtZxO7uVb9CTPt1A==", - "engines": { - "node": ">=14" - } + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-0.1.2.tgz", + "integrity": "sha512-ePqFXHtSQWAFXYmj+JtOTHr84iNrII4/QRlAAPPE+zqnKy4xJo7Ie1Y4kC7AdB+LxLxSTTzBMASsEcy0q8YyvQ==" }, "node_modules/html-entities": { "version": "2.3.3", @@ -11212,21 +10962,21 @@ "license": "MIT" }, "node_modules/jest": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest/-/jest-28.1.3.tgz", - "integrity": "sha512-N4GT5on8UkZgH0O5LUavMRV1EDEhNTL0KEfRmDIeZHSV7p2XgLoY9t9VDUgL6o+yfdgYHVxuz81G8oB9VG5uyA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.0.0.tgz", + "integrity": "sha512-9uz4Tclskb8WrfRXqu66FsFCFoyYctwWXpruKwnD95FZqkyoEAA1oGH53HUn7nQx7uEgZTKdNl/Yo6DqqU+XMg==", "dev": true, "dependencies": { - "@jest/core": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/core": "^29.0.0", + "@jest/types": "^29.0.0", "import-local": "^3.0.2", - "jest-cli": "^28.1.3" + "jest-cli": "^29.0.0" }, "bin": { "jest": "bin/jest.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -11238,87 +10988,87 @@ } }, "node_modules/jest-changed-files": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-28.1.3.tgz", - "integrity": "sha512-esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.0.0.tgz", + "integrity": "sha512-28/iDMDrUpGoCitTURuDqUzWQoWmOmOKOFST1mi2lwh62X4BFf6khgH3uSuo1e49X/UDjuApAj3w0wLOex4VPQ==", "dev": true, "dependencies": { "execa": "^5.0.0", "p-limit": "^3.1.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-28.1.3.tgz", - "integrity": "sha512-cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.0.0.tgz", + "integrity": "sha512-6EX70/+ZdzPLShBeokMVIpUaq5cQpOsO4OCDiV1drKUHht0hmUOWvY6LE4pBSFdepB0Sukw4Y0ajRqtvLBO9/A==", "dev": true, "dependencies": { - "@jest/environment": "^28.1.3", - "@jest/expect": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/expect": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "co": "^4.6.0", "dedent": "^0.7.0", "is-generator-fn": "^2.0.0", - "jest-each": "^28.1.3", - "jest-matcher-utils": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-runtime": "^28.1.3", - "jest-snapshot": "^28.1.3", - "jest-util": "^28.1.3", + "jest-each": "^29.0.0", + "jest-matcher-utils": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-runtime": "^29.0.0", + "jest-snapshot": "^29.0.0", + "jest-util": "^29.0.0", "p-limit": "^3.1.0", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "dependencies": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -11326,7 +11076,7 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/@sinonjs/fake-timers": { @@ -11339,9 +11089,9 @@ } }, "node_modules/jest-circus/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -11364,45 +11114,45 @@ } }, "node_modules/jest-circus/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -11410,22 +11160,21 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/pretty-format/node_modules/ansi-styles": { @@ -11456,21 +11205,21 @@ } }, "node_modules/jest-cli": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-28.1.3.tgz", - "integrity": "sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.0.0.tgz", + "integrity": "sha512-VZUPQjWJKL8QABFiBk1tHeJ3czBodjU9r22ceQmeL7X8/M73FYxTte0RkYPHI2SiLPWy99GZNWA+oOu9x0xKOA==", "dev": true, "dependencies": { - "@jest/core": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/core": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/types": "^29.0.0", "chalk": "^4.0.0", "exit": "^0.1.2", "graceful-fs": "^4.2.9", "import-local": "^3.0.2", - "jest-config": "^28.1.3", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", + "jest-config": "^29.0.0", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", "prompts": "^2.0.1", "yargs": "^17.3.1" }, @@ -11478,7 +11227,7 @@ "jest": "bin/jest.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -11490,12 +11239,12 @@ } }, "node_modules/jest-cli/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -11503,13 +11252,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-cli/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -11532,12 +11281,12 @@ } }, "node_modules/jest-cli/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -11545,40 +11294,40 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-28.1.3.tgz", - "integrity": "sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.0.0.tgz", + "integrity": "sha512-RbcUgQBJDS0O8OThWUwm5UCfzo0zOymUX/cJzUNlYB1ZWqe3M8MFEcgwqgZSifYuYTi46xWu5cmkMiyRQAdnMw==", "dev": true, "dependencies": { "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^28.1.3", - "@jest/types": "^28.1.3", - "babel-jest": "^28.1.3", + "@jest/test-sequencer": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", "chalk": "^4.0.0", "ci-info": "^3.2.0", "deepmerge": "^4.2.2", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-circus": "^28.1.3", - "jest-environment-node": "^28.1.3", - "jest-get-type": "^28.0.2", - "jest-regex-util": "^28.0.2", - "jest-resolve": "^28.1.3", - "jest-runner": "^28.1.3", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", + "jest-circus": "^29.0.0", + "jest-environment-node": "^29.0.0", + "jest-get-type": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-runner": "^29.0.0", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", "micromatch": "^4.0.4", "parse-json": "^5.2.0", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "strip-json-comments": "^3.1.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "@types/node": "*", @@ -11594,44 +11343,44 @@ } }, "node_modules/jest-config/node_modules/@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "dependencies": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -11639,7 +11388,7 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/@sinonjs/fake-timers": { @@ -11652,9 +11401,9 @@ } }, "node_modules/jest-config/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -11707,62 +11456,62 @@ } }, "node_modules/jest-config/node_modules/jest-environment-node": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-28.1.3.tgz", - "integrity": "sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.0.0.tgz", + "integrity": "sha512-Cns21Vgu0z7LjtssL0SWkxmjclHdwXeECFAP3ONit5NPnGCbv+0Rqby8w9vK7NpFlUaFgMmLYYBsUjSmIhwpvg==", "dev": true, "dependencies": { - "@jest/environment": "^28.1.3", - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -11770,7 +11519,7 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/minimatch": { @@ -11786,18 +11535,17 @@ } }, "node_modules/jest-config/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-config/node_modules/pretty-format/node_modules/ansi-styles": { @@ -11857,18 +11605,18 @@ } }, "node_modules/jest-diff": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-28.1.3.tgz", - "integrity": "sha512-8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.0.0.tgz", + "integrity": "sha512-erkuYf1dQBHow3XJmS+bH6t9TZ0GwrSdQGauN8sTqyZlFByOjRadmHgTTcAHINeeSwxzGHN2ob3PXVvZphD7XQ==", "dev": true, "dependencies": { "chalk": "^4.0.0", - "diff-sequences": "^28.1.1", - "jest-get-type": "^28.0.2", - "pretty-format": "^28.1.3" + "diff-sequences": "^29.0.0", + "jest-get-type": "^29.0.0", + "pretty-format": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-diff/node_modules/chalk": { @@ -11888,18 +11636,17 @@ } }, "node_modules/jest-diff/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-diff/node_modules/pretty-format/node_modules/ansi-styles": { @@ -11921,40 +11668,40 @@ "dev": true }, "node_modules/jest-docblock": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-28.1.1.tgz", - "integrity": "sha512-3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.0.0.tgz", + "integrity": "sha512-s5Kpra/kLzbqu9dEjov30kj1n4tfu3e7Pl8v+f8jOkeWNqM6Ds8jRaJfZow3ducoQUrf2Z4rs2N5S3zXnb83gw==", "dev": true, "dependencies": { "detect-newline": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-each": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-28.1.3.tgz", - "integrity": "sha512-arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.0.0.tgz", + "integrity": "sha512-ACKRvqdo7Bc0YrjQbrQtokpQ2NZxdXA63OklJht7a9UarCJXlZeWh51wEUe0ORqbnu15nAnX1YFQHmVpS1+ZXA==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "chalk": "^4.0.0", - "jest-get-type": "^28.0.2", - "jest-util": "^28.1.3", - "pretty-format": "^28.1.3" + "jest-get-type": "^29.0.0", + "jest-util": "^29.0.0", + "pretty-format": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-each/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -11962,13 +11709,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-each/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -11991,12 +11738,12 @@ } }, "node_modules/jest-each/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -12004,22 +11751,21 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-each/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-each/node_modules/pretty-format/node_modules/ansi-styles": { @@ -12085,9 +11831,9 @@ } }, "node_modules/jest-fail-on-console": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/jest-fail-on-console/-/jest-fail-on-console-2.4.2.tgz", - "integrity": "sha512-CdulWZvfI+cz4+dXQr6p0BhhexFjLnIIBR/7YcpzPXFxrNozAruWkEjR1RU89cd7WXYwckX5ygvHuHQa3NjbOQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jest-fail-on-console/-/jest-fail-on-console-3.0.1.tgz", + "integrity": "sha512-1811WQIY9lZN9wGkp7S6y69vw9+u6I21dmnRwXo6jSuF6Xv5OlN4msNCeKEVlc/C2H5N8dqLKuQlTAzQZ0mJlw==", "dev": true, "dependencies": { "chalk": "^4.1.0" @@ -12109,12 +11855,12 @@ } }, "node_modules/jest-get-type": { - "version": "28.0.2", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-28.0.2.tgz", - "integrity": "sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.0.0.tgz", + "integrity": "sha512-83X19z/HuLKYXYHskZlBAShO7UfLFXu/vWajw9ZNJASN32li8yHMaVGAQqxFW1RCFOkB7cubaL6FaJVQqqJLSw==", "dev": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-github-actions-reporter": { @@ -12126,37 +11872,37 @@ } }, "node_modules/jest-haste-map": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-28.1.3.tgz", - "integrity": "sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.0.0.tgz", + "integrity": "sha512-mLyDt2WyNU0DZ64s7kRFkFJzrHEuXIxG+OKOs9/P5s1W7NzXE+P7SvLbxjz2Cg63cJjuglYRrD6fZcYf19T8Lw==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "graceful-fs": "^4.2.9", - "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.3", - "jest-worker": "^28.1.3", + "jest-regex-util": "^29.0.0", + "jest-util": "^29.0.0", + "jest-worker": "^29.0.0", "micromatch": "^4.0.4", "walker": "^1.0.8" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "optionalDependencies": { "fsevents": "^2.3.2" } }, "node_modules/jest-haste-map/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -12164,13 +11910,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-haste-map/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -12193,12 +11939,12 @@ } }, "node_modules/jest-haste-map/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -12206,13 +11952,13 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-haste-map/node_modules/jest-worker": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", - "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.0.0.tgz", + "integrity": "sha512-2t9Panx3F9N1wAvRuZT7xLEptRFc1C5G90DOHniIGz1JIgF9uhd5u8jNBsc7wN63lhnaiLeVLnNx21wT7OVFEQ==", "dev": true, "dependencies": { "@types/node": "*", @@ -12220,7 +11966,7 @@ "supports-color": "^8.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-haste-map/node_modules/jest-worker/node_modules/supports-color": { @@ -12239,16 +11985,16 @@ } }, "node_modules/jest-leak-detector": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-28.1.3.tgz", - "integrity": "sha512-WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.0.0.tgz", + "integrity": "sha512-kBjNS0/z2+ZV/3N7R+ot5fKD2W1fHkoxC3kH/fkb2z24YSPfR9RGwiNX+YLRG9r0gWsxQx16boxzHT23G6rFBw==", "dev": true, "dependencies": { - "jest-get-type": "^28.0.2", - "pretty-format": "^28.1.3" + "jest-get-type": "^29.0.0", + "pretty-format": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-leak-detector/node_modules/ansi-styles": { @@ -12264,18 +12010,17 @@ } }, "node_modules/jest-leak-detector/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-leak-detector/node_modules/react-is": { @@ -12285,18 +12030,18 @@ "dev": true }, "node_modules/jest-matcher-utils": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-28.1.3.tgz", - "integrity": "sha512-kQeJ7qHemKfbzKoGjHHrRKH6atgxMk8Enkk2iPQ3XwO6oE/KYD8lMYOziCkeSB9G4adPM4nR1DE8Tf5JeWH6Bw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.0.0.tgz", + "integrity": "sha512-HtCxFHI8lQSbN1RppFjtl6DIrS+x4d3lOhpJljVxFEXob4lxlKon3FunW0XoGxNSvIoD00AfTFspnufpOqszrg==", "dev": true, "dependencies": { "chalk": "^4.0.0", - "jest-diff": "^28.1.3", - "jest-get-type": "^28.0.2", - "pretty-format": "^28.1.3" + "jest-diff": "^29.0.0", + "jest-get-type": "^29.0.0", + "pretty-format": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-matcher-utils/node_modules/chalk": { @@ -12316,18 +12061,17 @@ } }, "node_modules/jest-matcher-utils/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-matcher-utils/node_modules/pretty-format/node_modules/ansi-styles": { @@ -12433,54 +12177,54 @@ } }, "node_modules/jest-regex-util": { - "version": "28.0.2", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz", - "integrity": "sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.0.0.tgz", + "integrity": "sha512-BV7VW7Sy0fInHWN93MMPtlClweYv2qrSCwfeFWmpribGZtQPWNvRSq9XOVgOEjU1iBGRKXUZil0o2AH7Iy9Lug==", "dev": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-28.1.3.tgz", - "integrity": "sha512-Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.0.0.tgz", + "integrity": "sha512-MN19maPUXzibBshYg/cSrDWqiJwEBur6gbQb2lwOL4+6k14wdNW8Xh0uNPPxUntb7cpTi07uql/bUO5TVwiJbA==", "dev": true, "dependencies": { "chalk": "^4.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", + "jest-haste-map": "^29.0.0", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", "resolve": "^1.20.0", "resolve.exports": "^1.1.0", "slash": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve-dependencies": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.3.tgz", - "integrity": "sha512-qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.0.0.tgz", + "integrity": "sha512-1TYUMcLZcUqa2fdUQ3leYtiXWXfNmimPvnJ34YDLLf0nyJ/aEeqlHJM9Ji2jw9Qxdh7nUypanjUlUV87yRHBFQ==", "dev": true, "dependencies": { - "jest-regex-util": "^28.0.2", - "jest-snapshot": "^28.1.3" + "jest-regex-util": "^29.0.0", + "jest-snapshot": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -12488,13 +12232,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -12517,12 +12261,12 @@ } }, "node_modules/jest-resolve/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -12530,7 +12274,7 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve/node_modules/slash": { @@ -12543,76 +12287,76 @@ } }, "node_modules/jest-runner": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-28.1.3.tgz", - "integrity": "sha512-GkMw4D/0USd62OVO0oEgjn23TM+YJa2U2Wu5zz9xsQB1MxWKDOlrnykPxnMsN0tnJllfLPinHTka61u0QhaxBA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.0.0.tgz", + "integrity": "sha512-OpTpRIBOIn9RXuMMrpS+h9ZoK+nZHaOuNOceUiDbDoOJ6pmeGu0zst7VR22xXT3fOCwWqg5qe0fZ23G+ve5P0Q==", "dev": true, "dependencies": { - "@jest/console": "^28.1.3", - "@jest/environment": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/console": "^29.0.0", + "@jest/environment": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "emittery": "^0.10.2", "graceful-fs": "^4.2.9", - "jest-docblock": "^28.1.1", - "jest-environment-node": "^28.1.3", - "jest-haste-map": "^28.1.3", - "jest-leak-detector": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-resolve": "^28.1.3", - "jest-runtime": "^28.1.3", - "jest-util": "^28.1.3", - "jest-watcher": "^28.1.3", - "jest-worker": "^28.1.3", + "jest-docblock": "^29.0.0", + "jest-environment-node": "^29.0.0", + "jest-haste-map": "^29.0.0", + "jest-leak-detector": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-runtime": "^29.0.0", + "jest-util": "^29.0.0", + "jest-watcher": "^29.0.0", + "jest-worker": "^29.0.0", "p-limit": "^3.1.0", "source-map-support": "0.5.13" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "dependencies": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -12620,7 +12364,7 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/@sinonjs/fake-timers": { @@ -12633,9 +12377,9 @@ } }, "node_modules/jest-runner/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -12658,62 +12402,62 @@ } }, "node_modules/jest-runner/node_modules/jest-environment-node": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-28.1.3.tgz", - "integrity": "sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.0.0.tgz", + "integrity": "sha512-Cns21Vgu0z7LjtssL0SWkxmjclHdwXeECFAP3ONit5NPnGCbv+0Rqby8w9vK7NpFlUaFgMmLYYBsUjSmIhwpvg==", "dev": true, "dependencies": { - "@jest/environment": "^28.1.3", - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -12721,13 +12465,13 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/jest-worker": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", - "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.0.0.tgz", + "integrity": "sha512-2t9Panx3F9N1wAvRuZT7xLEptRFc1C5G90DOHniIGz1JIgF9uhd5u8jNBsc7wN63lhnaiLeVLnNx21wT7OVFEQ==", "dev": true, "dependencies": { "@types/node": "*", @@ -12735,7 +12479,7 @@ "supports-color": "^8.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/jest-worker/node_modules/supports-color": { @@ -12754,18 +12498,17 @@ } }, "node_modules/jest-runner/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/pretty-format/node_modules/ansi-styles": { @@ -12806,77 +12549,77 @@ } }, "node_modules/jest-runtime": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-28.1.3.tgz", - "integrity": "sha512-NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.0.0.tgz", + "integrity": "sha512-dU0qFpTRWZY7Rur7yBgpz4g67mITSozBZ1jlhoG4ER/P/NiTFyZ/W8nMd5floeAMafmbrOc/5A9SlCu7SQCoBA==", "dev": true, "dependencies": { - "@jest/environment": "^28.1.3", - "@jest/fake-timers": "^28.1.3", - "@jest/globals": "^28.1.3", - "@jest/source-map": "^28.1.2", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/fake-timers": "^29.0.0", + "@jest/globals": "^29.0.0", + "@jest/source-map": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "@types/node": "*", "chalk": "^4.0.0", "cjs-module-lexer": "^1.0.0", "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-regex-util": "^28.0.2", - "jest-resolve": "^28.1.3", - "jest-snapshot": "^28.1.3", - "jest-util": "^28.1.3", + "jest-haste-map": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-snapshot": "^29.0.0", + "jest-util": "^29.0.0", "slash": "^3.0.0", "strip-bom": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "dependencies": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -12884,7 +12627,7 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/@sinonjs/fake-timers": { @@ -12897,9 +12640,9 @@ } }, "node_modules/jest-runtime/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -12952,45 +12695,45 @@ } }, "node_modules/jest-runtime/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -12998,7 +12741,7 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/minimatch": { @@ -13014,18 +12757,17 @@ } }, "node_modules/jest-runtime/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/pretty-format/node_modules/ansi-styles": { @@ -13061,46 +12803,47 @@ "license": "MIT" }, "node_modules/jest-snapshot": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-28.1.3.tgz", - "integrity": "sha512-4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.0.0.tgz", + "integrity": "sha512-rR3B8GInk/IibF0M/sQCukSM8xX8bPI3Q0kjoAw4HT9Mx0Q3bS0MmF74rsreBOnVJgzN0Iwrc7YY56Yp8KQ7kA==", "dev": true, "dependencies": { "@babel/core": "^7.11.6", "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", "@babel/plugin-syntax-typescript": "^7.7.2", "@babel/traverse": "^7.7.2", "@babel/types": "^7.3.3", - "@jest/expect-utils": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/expect-utils": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", "@types/babel__traverse": "^7.0.6", "@types/prettier": "^2.1.5", "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", - "expect": "^28.1.3", + "expect": "^29.0.0", "graceful-fs": "^4.2.9", - "jest-diff": "^28.1.3", - "jest-get-type": "^28.0.2", - "jest-haste-map": "^28.1.3", - "jest-matcher-utils": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", + "jest-diff": "^29.0.0", + "jest-get-type": "^29.0.0", + "jest-haste-map": "^29.0.0", + "jest-matcher-utils": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0", "natural-compare": "^1.4.0", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "semver": "^7.3.5" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-snapshot/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -13108,13 +12851,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-snapshot/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -13137,32 +12880,32 @@ } }, "node_modules/jest-snapshot/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-snapshot/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -13170,22 +12913,21 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-snapshot/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-snapshot/node_modules/pretty-format/node_modules/ansi-styles": { @@ -13247,29 +12989,29 @@ } }, "node_modules/jest-validate": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-28.1.3.tgz", - "integrity": "sha512-SZbOGBWEsaTxBGCOpsRWlXlvNkvTkY0XxRfh7zYmvd8uL5Qzyg0CHAXiXKROflh801quA6+/DsT4ODDthOC/OA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.0.0.tgz", + "integrity": "sha512-UhgDKmahJnv5s5MK6a8kQ397YNS9euvL7gWTvUf7y0OO7vZeafUItlq3tguvfFVazQJ+kBGUm/XCJes7V61l8g==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "camelcase": "^6.2.0", "chalk": "^4.0.0", - "jest-get-type": "^28.0.2", + "jest-get-type": "^29.0.0", "leven": "^3.1.0", - "pretty-format": "^28.1.3" + "pretty-format": "^29.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-validate/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -13277,13 +13019,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-validate/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -13318,18 +13060,17 @@ } }, "node_modules/jest-validate/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-validate/node_modules/pretty-format/node_modules/ansi-styles": { @@ -13351,31 +13092,31 @@ "dev": true }, "node_modules/jest-watcher": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-28.1.3.tgz", - "integrity": "sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.0.0.tgz", + "integrity": "sha512-GoRq5QJt5/dv3keK7rIzg9R0e/HpTnjyMNYtCTTDZgGIj6QUDMpiJqt7Mwfyyaxwg5PS8gVyQvRQn6Lril4cuQ==", "dev": true, "dependencies": { - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/test-result": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", "emittery": "^0.10.2", - "jest-util": "^28.1.3", + "jest-util": "^29.0.0", "string-length": "^4.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-watcher/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -13383,13 +13124,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-watcher/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -13412,12 +13153,12 @@ } }, "node_modules/jest-watcher/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -13425,7 +13166,7 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-worker": { @@ -13460,12 +13201,12 @@ } }, "node_modules/jest/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -13473,13 +13214,13 @@ "chalk": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest/node_modules/@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "dependencies": { "@types/yargs-parser": "*" @@ -13591,15 +13332,6 @@ "graceful-fs": "^4.1.6" } }, - "node_modules/jsonfile/node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "optional": true, - "engines": { - "node": ">= 10.0.0" - } - }, "node_modules/jsx-ast-utils": { "version": "3.2.1", "dev": true, @@ -15388,15 +15120,15 @@ "peer": true }, "node_modules/next": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/next/-/next-12.2.5.tgz", - "integrity": "sha512-tBdjqX5XC/oFs/6gxrZhjmiq90YWizUYU6qOWAfat7zJwrwapJ+BYgX2PmiacunXMaRpeVT4vz5MSPSLgNkrpA==", + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/next/-/next-12.2.4.tgz", + "integrity": "sha512-b1xlxEozmAWokAXzXsi5vlmU/IfJcFNIJA8dpU5UdkFbyDPio8wwb8mAQ/Y7rGtfTgG/t/u49BiyEA+xAgFvow==", "dependencies": { - "@next/env": "12.2.5", + "@next/env": "12.2.4", "@swc/helpers": "0.4.3", "caniuse-lite": "^1.0.30001332", "postcss": "8.4.14", - "styled-jsx": "5.0.4", + "styled-jsx": "5.0.2", "use-sync-external-store": "1.2.0" }, "bin": { @@ -15406,19 +15138,19 @@ "node": ">=12.22.0" }, "optionalDependencies": { - "@next/swc-android-arm-eabi": "12.2.5", - "@next/swc-android-arm64": "12.2.5", - "@next/swc-darwin-arm64": "12.2.5", - "@next/swc-darwin-x64": "12.2.5", - "@next/swc-freebsd-x64": "12.2.5", - "@next/swc-linux-arm-gnueabihf": "12.2.5", - "@next/swc-linux-arm64-gnu": "12.2.5", - "@next/swc-linux-arm64-musl": "12.2.5", - "@next/swc-linux-x64-gnu": "12.2.5", - "@next/swc-linux-x64-musl": "12.2.5", - "@next/swc-win32-arm64-msvc": "12.2.5", - "@next/swc-win32-ia32-msvc": "12.2.5", - "@next/swc-win32-x64-msvc": "12.2.5" + "@next/swc-android-arm-eabi": "12.2.4", + "@next/swc-android-arm64": "12.2.4", + "@next/swc-darwin-arm64": "12.2.4", + "@next/swc-darwin-x64": "12.2.4", + "@next/swc-freebsd-x64": "12.2.4", + "@next/swc-linux-arm-gnueabihf": "12.2.4", + "@next/swc-linux-arm64-gnu": "12.2.4", + "@next/swc-linux-arm64-musl": "12.2.4", + "@next/swc-linux-x64-gnu": "12.2.4", + "@next/swc-linux-x64-musl": "12.2.4", + "@next/swc-win32-arm64-msvc": "12.2.4", + "@next/swc-win32-ia32-msvc": "12.2.4", + "@next/swc-win32-x64-msvc": "12.2.4" }, "peerDependencies": { "fibers": ">= 3.1.0", @@ -15928,9 +15660,9 @@ } }, "node_modules/p-queue": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.2.0.tgz", - "integrity": "sha512-Kvv7p13M46lTYLQ/PsZdaj/1Vj6u/8oiIJgyQyx4oVkOfHdd7M2EZvXigDvcsSzRwanCzQirV5bJPQFoSQt5MA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.3.0.tgz", + "integrity": "sha512-5fP+yVQ0qp0rEfZoDTlP2c3RYBgxvRsw30qO+VtPPc95lyvSG+x6USSh1TuLB4n96IO6I8/oXQGsTgtna4q2nQ==", "optional": true, "dependencies": { "eventemitter3": "^4.0.7", @@ -18115,9 +17847,9 @@ } }, "node_modules/secure-json-parse": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.4.0.tgz", - "integrity": "sha512-Q5Z/97nbON5t/L/sH6mY2EacfjVGwrCcSi5D3btRO2GZ8pf1K1UN7Z9H5J57hjVU2Qzxr1xO+FmBhOvEkzCMmg==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.5.0.tgz", + "integrity": "sha512-ZQruFgZnIWH+WyO9t5rWt4ZEGqCKPwhiw+YbzTwpmT9elgLrLcfuyUiSnwwjUiVy9r4VM3urtbNF1xmEh9IL2w==" }, "node_modules/semver": { "version": "7.3.7", @@ -18957,9 +18689,9 @@ } }, "node_modules/styled-jsx": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.4.tgz", - "integrity": "sha512-sDFWLbg4zR+UkNzfk5lPilyIgtpddfxXEULxhujorr5jtePTUqiPDc5BC0v1NRqTr/WaFBGQQUoYToGlF4B2KQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.2.tgz", + "integrity": "sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ==", "engines": { "node": ">= 12.0.0" }, @@ -19534,14 +19266,6 @@ "dev": true, "license": "MIT" }, - "node_modules/undici": { - "version": "5.9.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.9.1.tgz", - "integrity": "sha512-6fB3a+SNnWEm4CJbgo0/CWR8RGcOCQP68SF4X0mxtYTq2VNN8T88NYrWVBAeSX+zb7bny2dx2iYhP3XHi00omg==", - "engines": { - "node": ">=12.18" - } - }, "node_modules/unherit": { "version": "1.1.3", "license": "MIT", @@ -19781,6 +19505,15 @@ "dev": true, "license": "ISC" }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "optional": true, + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -20684,9 +20417,9 @@ } }, "node_modules/yargs/node_modules/yargs-parser": { - "version": "21.0.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz", - "integrity": "sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "engines": { "node": ">=12" @@ -20991,9 +20724,9 @@ } }, "@babel/helper-plugin-utils": { - "version": "7.17.12", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz", - "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz", + "integrity": "sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==", "dev": true }, "@babel/helper-remap-async-to-generator": { @@ -21369,6 +21102,15 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, "@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "dev": true, @@ -21428,12 +21170,12 @@ } }, "@babel/plugin-syntax-typescript": { - "version": "7.17.12", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.17.12.tgz", - "integrity": "sha512-TYY0SXFiO31YXtNg3HtFwNJHjLsAyIIhAhNWkQ5whPPS7HWUFlg9z0Ta4qAQNjQbP1wsSt/oKkmZ/4/WWdMUpw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz", + "integrity": "sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.17.12" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-arrow-functions": { @@ -21905,47 +21647,15 @@ "dev": true }, "@elastic/elasticsearch": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@elastic/elasticsearch/-/elasticsearch-8.2.1.tgz", - "integrity": "sha512-Kwerd8DfNZdBGgl7fkn+20kXkw1QePB3goTv5QwW9poo2d4VbPE0EChmh6irpXWAGsVSYiKr8x6bh8dH5YdylA==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/@elastic/elasticsearch/-/elasticsearch-7.11.0.tgz", + "integrity": "sha512-AFVVuANIdbV1qYjuOi4hnsX/DehWYG+bbhQO4amq9K4/NnzU7mpGWOPgVlRQTiX+vBfBkx7SL6h4QEjIlM3ztA==", "requires": { - "@elastic/transport": "^8.2.0", - "tslib": "^2.4.0" - } - }, - "@elastic/transport": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/@elastic/transport/-/transport-8.2.0.tgz", - "integrity": "sha512-H/HmefMNQfLiBSVTmNExu2lYs5EzwipUnQB53WLr17RCTDaQX0oOLHcWpDsbKQSRhDAMPPzp5YZsZMJxuxPh7A==", - "requires": { - "debug": "^4.3.4", - "hpagent": "^1.0.0", - "ms": "^2.1.3", - "secure-json-parse": "^2.4.0", - "tslib": "^2.4.0", - "undici": "^5.1.1" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - }, - "dependencies": { - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - } + "debug": "^4.1.1", + "hpagent": "^0.1.1", + "ms": "^2.1.1", + "pump": "^3.0.0", + "secure-json-parse": "^2.1.0" } }, "@emotion/is-prop-valid": { @@ -22240,26 +21950,26 @@ "dev": true }, "@jest/console": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-28.1.3.tgz", - "integrity": "sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.0.0.tgz", + "integrity": "sha512-rHsKEqT2Kx73PqO9qIOdwg0Grd6Y3COyqNpi5SKRI0qXgmlqXkOczQMfIb8I0Gdnc9/kaMj6cTnBGLyBA03Xrg==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0", "slash": "^3.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -22268,9 +21978,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -22287,29 +21997,29 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -22318,13 +22028,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -22352,49 +22061,48 @@ } }, "@jest/core": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-28.1.3.tgz", - "integrity": "sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.0.0.tgz", + "integrity": "sha512-9qljprspjQwbmnq3Wv9d/M6/ejMdWs1uAAljQAX9QsjJ1SlSByXw1mRA9UpR2BP9TxLLwEembbm0ykrT//2STg==", "dev": true, "requires": { - "@jest/console": "^28.1.3", - "@jest/reporters": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/console": "^29.0.0", + "@jest/reporters": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", "ci-info": "^3.2.0", "exit": "^0.1.2", "graceful-fs": "^4.2.9", - "jest-changed-files": "^28.1.3", - "jest-config": "^28.1.3", - "jest-haste-map": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-regex-util": "^28.0.2", - "jest-resolve": "^28.1.3", - "jest-resolve-dependencies": "^28.1.3", - "jest-runner": "^28.1.3", - "jest-runtime": "^28.1.3", - "jest-snapshot": "^28.1.3", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", - "jest-watcher": "^28.1.3", + "jest-changed-files": "^29.0.0", + "jest-config": "^29.0.0", + "jest-haste-map": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-resolve-dependencies": "^29.0.0", + "jest-runner": "^29.0.0", + "jest-runtime": "^29.0.0", + "jest-snapshot": "^29.0.0", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", + "jest-watcher": "^29.0.0", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", - "rimraf": "^3.0.0", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "strip-ansi": "^6.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -22403,9 +22111,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -22422,29 +22130,29 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -22453,13 +22161,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -22506,22 +22213,22 @@ } }, "@jest/expect": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-28.1.3.tgz", - "integrity": "sha512-lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.0.0.tgz", + "integrity": "sha512-X2S5NpZOeXXDGBLvU/4K1nAD5iIz6/9Gs041wToI0FiX3glh/aEGGsVv3+SxKddYIb6Ei+ZbqzJmfRzQ7nwPlQ==", "dev": true, "requires": { - "expect": "^28.1.3", - "jest-snapshot": "^28.1.3" + "expect": "^29.0.0", + "jest-snapshot": "^29.0.0" } }, "@jest/expect-utils": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-28.1.3.tgz", - "integrity": "sha512-wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.0.0.tgz", + "integrity": "sha512-odQ+cjUpui6++a9Ua/oWn7CG0Af+EZe9weWZbfUQHTg7C3K9PCb0AnD4X7nyAe4WjfeZmVVyG5SJELMQaUbCtg==", "dev": true, "requires": { - "jest-get-type": "^28.0.2" + "jest-get-type": "^29.0.0" } }, "@jest/fake-timers": { @@ -22537,49 +22244,50 @@ } }, "@jest/globals": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-28.1.3.tgz", - "integrity": "sha512-XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.0.0.tgz", + "integrity": "sha512-ZHQMh6BZtabbikh9wkuPpVQmPHEpc4EgOaY/UJNM6hHHA5HRmiP5rH54M8267nkGscuqM5KpWP+zAZ4XEOXZag==", "dev": true, "requires": { - "@jest/environment": "^28.1.3", - "@jest/expect": "^28.1.3", - "@jest/types": "^28.1.3" + "@jest/environment": "^29.0.0", + "@jest/expect": "^29.0.0", + "@jest/types": "^29.0.0", + "jest-mock": "^29.0.0" }, "dependencies": { "@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "requires": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" } }, "@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" } }, "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -22597,9 +22305,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -22616,39 +22324,39 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -22657,13 +22365,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -22691,17 +22398,17 @@ } }, "@jest/reporters": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-28.1.3.tgz", - "integrity": "sha512-JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.0.0.tgz", + "integrity": "sha512-6ZFLlHQwncULTucAKWeGJLGPvzjgC/0gFmxJi/LgU9G1v498r/RcWQiZBPqhJcSvpWGTCaqjvUGmPCLtrUpubw==", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", - "@jridgewell/trace-mapping": "^0.3.13", + "@jest/console": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "@jridgewell/trace-mapping": "^0.3.15", "@types/node": "*", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", @@ -22713,9 +22420,9 @@ "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", "istanbul-reports": "^3.1.3", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", - "jest-worker": "^28.1.3", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0", + "jest-worker": "^29.0.0", "slash": "^3.0.0", "string-length": "^4.0.1", "strip-ansi": "^6.0.0", @@ -22724,12 +22431,12 @@ }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -22738,9 +22445,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -22781,29 +22488,29 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -22812,9 +22519,9 @@ } }, "jest-worker": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", - "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.0.0.tgz", + "integrity": "sha512-2t9Panx3F9N1wAvRuZT7xLEptRFc1C5G90DOHniIGz1JIgF9uhd5u8jNBsc7wN63lhnaiLeVLnNx21wT7OVFEQ==", "dev": true, "requires": { "@types/node": "*", @@ -22843,13 +22550,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -22886,44 +22592,44 @@ } }, "@jest/schemas": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz", - "integrity": "sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz", + "integrity": "sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==", "dev": true, "requires": { "@sinclair/typebox": "^0.24.1" } }, "@jest/source-map": { - "version": "28.1.2", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-28.1.2.tgz", - "integrity": "sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.0.0.tgz", + "integrity": "sha512-nOr+0EM8GiHf34mq2GcJyz/gYFyLQ2INDhAylrZJ9mMWoW21mLBfZa0BUVPPMxVYrLjeiRe2Z7kWXOGnS0TFhQ==", "dev": true, "requires": { - "@jridgewell/trace-mapping": "^0.3.13", + "@jridgewell/trace-mapping": "^0.3.15", "callsites": "^3.0.0", "graceful-fs": "^4.2.9" } }, "@jest/test-result": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-28.1.3.tgz", - "integrity": "sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.0.0.tgz", + "integrity": "sha512-mv76j8ILaqOuZAWBGR1/ZSRinN5Q/eEji7kMcvADjd+gQGfn/Py+91nUrVakJT69idC66bvQ7yF24frQpzFKUg==", "dev": true, "requires": { - "@jest/console": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/console": "^29.0.0", + "@jest/types": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -22932,9 +22638,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -22953,14 +22659,14 @@ } }, "@jest/test-sequencer": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-28.1.3.tgz", - "integrity": "sha512-NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.0.0.tgz", + "integrity": "sha512-uL6yX//SUME1c/ucbY365obdsrPjvSoNBwB80WTe+drYL4jf7A87vA2+w4hYwXJEIGQspv5skg3iB/sJSys7ew==", "dev": true, "requires": { - "@jest/test-result": "^28.1.3", + "@jest/test-result": "^29.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", + "jest-haste-map": "^29.0.0", "slash": "^3.0.0" }, "dependencies": { @@ -22973,22 +22679,22 @@ } }, "@jest/transform": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-28.1.3.tgz", - "integrity": "sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.0.0.tgz", + "integrity": "sha512-hwyBt8UR5o8GGaphmRqNQwVCctiOR8ncugCp/RlInEZvQ+ysKkS5TFfe5RgeQ0KtKdWByQqn5yA574LLOp3OWw==", "dev": true, "requires": { "@babel/core": "^7.11.6", - "@jest/types": "^28.1.3", - "@jridgewell/trace-mapping": "^0.3.13", + "@jest/types": "^29.0.0", + "@jridgewell/trace-mapping": "^0.3.15", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", - "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.3", + "jest-haste-map": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-util": "^29.0.0", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", @@ -22996,12 +22702,12 @@ }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -23010,9 +22716,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -23029,12 +22735,12 @@ } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -23049,9 +22755,9 @@ "dev": true }, "write-file-atomic": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.1.tgz", - "integrity": "sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, "requires": { "imurmurhash": "^0.1.4", @@ -23132,96 +22838,18 @@ "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==" }, "@jridgewell/trace-mapping": { - "version": "0.3.13", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz", - "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "version": "0.3.15", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", + "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", "requires": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" } }, "@next/env": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/env/-/env-12.2.5.tgz", - "integrity": "sha512-vLPLV3cpPGjUPT3PjgRj7e3nio9t6USkuew3JE/jMeon/9Mvp1WyR18v3iwnCuX7eUAm1HmAbJHHLAbcu/EJcw==" - }, - "@next/swc-android-arm-eabi": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.2.5.tgz", - "integrity": "sha512-cPWClKxGhgn2dLWnspW+7psl3MoLQUcNqJqOHk2BhNcou9ARDtC0IjQkKe5qcn9qg7I7U83Gp1yh2aesZfZJMA==", - "optional": true - }, - "@next/swc-android-arm64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.2.5.tgz", - "integrity": "sha512-vMj0efliXmC5b7p+wfcQCX0AfU8IypjkzT64GiKJD9PgiA3IILNiGJr1fw2lyUDHkjeWx/5HMlMEpLnTsQslwg==", - "optional": true - }, - "@next/swc-darwin-arm64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.2.5.tgz", - "integrity": "sha512-VOPWbO5EFr6snla/WcxUKtvzGVShfs302TEMOtzYyWni6f9zuOetijJvVh9CCTzInnXAZMtHyNhefijA4HMYLg==", - "optional": true - }, - "@next/swc-darwin-x64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.2.5.tgz", - "integrity": "sha512-5o8bTCgAmtYOgauO/Xd27vW52G2/m3i5PX7MUYePquxXAnX73AAtqA3WgPXBRitEB60plSKZgOTkcpqrsh546A==", - "optional": true - }, - "@next/swc-freebsd-x64": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.2.5.tgz", - "integrity": "sha512-yYUbyup1JnznMtEBRkK4LT56N0lfK5qNTzr6/DEyDw5TbFVwnuy2hhLBzwCBkScFVjpFdfiC6SQAX3FrAZzuuw==", - "optional": true - }, - "@next/swc-linux-arm-gnueabihf": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.2.5.tgz", - "integrity": "sha512-2ZE2/G921Acks7UopJZVMgKLdm4vN4U0yuzvAMJ6KBavPzqESA2yHJlm85TV/K9gIjKhSk5BVtauIUntFRP8cg==", - "optional": true - }, - "@next/swc-linux-arm64-gnu": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.2.5.tgz", - "integrity": "sha512-/I6+PWVlz2wkTdWqhlSYYJ1pWWgUVva6SgX353oqTh8njNQp1SdFQuWDqk8LnM6ulheVfSsgkDzxrDaAQZnzjQ==", - "optional": true - }, - "@next/swc-linux-arm64-musl": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.2.5.tgz", - "integrity": "sha512-LPQRelfX6asXyVr59p5sTpx5l+0yh2Vjp/R8Wi4X9pnqcayqT4CUJLiHqCvZuLin3IsFdisJL0rKHMoaZLRfmg==", - "optional": true - }, - "@next/swc-linux-x64-gnu": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.2.5.tgz", - "integrity": "sha512-0szyAo8jMCClkjNK0hknjhmAngUppoRekW6OAezbEYwHXN/VNtsXbfzgYOqjKWxEx3OoAzrT3jLwAF0HdX2MEw==", - "optional": true - }, - "@next/swc-linux-x64-musl": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.2.5.tgz", - "integrity": "sha512-zg/Y6oBar1yVnW6Il1I/08/2ukWtOG6s3acdJdEyIdsCzyQi4RLxbbhkD/EGQyhqBvd3QrC6ZXQEXighQUAZ0g==", - "optional": true - }, - "@next/swc-win32-arm64-msvc": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.2.5.tgz", - "integrity": "sha512-3/90DRNSqeeSRMMEhj4gHHQlLhhKg5SCCoYfE3kBjGpE63EfnblYUqsszGGZ9ekpKL/R4/SGB40iCQr8tR5Jiw==", - "optional": true - }, - "@next/swc-win32-ia32-msvc": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.2.5.tgz", - "integrity": "sha512-hGLc0ZRAwnaPL4ulwpp4D2RxmkHQLuI8CFOEEHdzZpS63/hMVzv81g8jzYA0UXbb9pus/iTc3VRbVbAM03SRrw==", - "optional": true - }, - "@next/swc-win32-x64-msvc": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.2.5.tgz", - "integrity": "sha512-7h5/ahY7NeaO2xygqVrSG/Y8Vs4cdjxIjowTZ5W6CKoTKn7tmnuxlUc2h74x06FKmbhAd9agOjr/AOKyxYYm9Q==", - "optional": true + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-12.2.4.tgz", + "integrity": "sha512-/gApFXWk5CCLFQJL5IYJXxPQuG5tz5nPX4l27A9Zm/+wJxiwFrRSP54AopDxIv4JRp/rGwcgk/lZS/0Clw8jYA==" }, "@nodelib/fs.scandir": { "version": "2.1.5", @@ -23455,9 +23083,9 @@ "devOptional": true }, "@sinclair/typebox": { - "version": "0.24.20", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.20.tgz", - "integrity": "sha512-kVaO5aEFZb33nPMTZBxiPEkY+slxiPtqC7QX8f9B3eGOMBvEfuMfxp9DSTTCsRJPumPKjrge4yagyssO4q6qzQ==", + "version": "0.24.28", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.28.tgz", + "integrity": "sha512-dgJd3HLOkLmz4Bw50eZx/zJwtBq65nms3N9VBYu5LTjJ883oBFkTyXRlCB/ZGGwqYpJJHA5zW2Ibhl5ngITfow==", "dev": true }, "@sindresorhus/is": { @@ -23613,9 +23241,9 @@ } }, "@types/babel__traverse": { - "version": "7.17.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.1.tgz", - "integrity": "sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.0.tgz", + "integrity": "sha512-v4Vwdko+pgymgS+A2UIaJru93zQd85vIGWObM5ekZNdXCKtDYqATlEYnWgfo86Q6I1Lh0oXnksDnMU1cwmlPDw==", "dev": true, "requires": { "@babel/types": "^7.3.0" @@ -23774,9 +23402,9 @@ "version": "6.0.1" }, "@types/prettier": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.3.tgz", - "integrity": "sha512-ymZk3LEC/fsut+/Q5qejp6R9O1rMxz3XaRHDV6kX8MrGAhOSPqVARbDi+EZvInBpw+BnCX3TD240byVkOfQsHg==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.0.tgz", + "integrity": "sha512-RI1L7N4JnW5gQw2spvL7Sllfuf1SaHdrZpCHiBlCXjIlufi1SMNnbu2teze3/QE67Fg2tBlH7W+mi4hVNk4p0A==", "dev": true }, "@types/prop-types": { @@ -24549,15 +24177,15 @@ } }, "babel-jest": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-28.1.3.tgz", - "integrity": "sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.0.0.tgz", + "integrity": "sha512-EJM2dqxz9+uWJLLucZLPYAmRsHHt1IMkitAHGqjDlIP2IQXzkIMO3ATbBWk0lU6VwX4rNeVN04t/DDB8U5C2rg==", "dev": true, "requires": { - "@jest/transform": "^28.1.3", + "@jest/transform": "^29.0.0", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^28.1.3", + "babel-preset-jest": "^29.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" @@ -24630,9 +24258,9 @@ } }, "babel-plugin-jest-hoist": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.1.3.tgz", - "integrity": "sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.0.0.tgz", + "integrity": "sha512-B9oaXrlxXHFWeWqhDPg03iqQd2UN/mg/VdZOsLaqAVBkztru3ctTryAI4zisxLEEgmcUnLTKewqx0gGifoXD3A==", "dev": true, "requires": { "@babel/template": "^7.3.3", @@ -25029,12 +24657,12 @@ } }, "babel-preset-jest": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-28.1.3.tgz", - "integrity": "sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.0.0.tgz", + "integrity": "sha512-B5Ke47Xcs8rDF3p1korT3LoilpADCwbG93ALqtvqu6Xpf4d8alKkrCBTExbNzdHJcIuEPpfYvEaFFRGee2kUgQ==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^28.1.3", + "babel-plugin-jest-hoist": "^29.0.0", "babel-preset-current-node-syntax": "^1.0.0" } }, @@ -26041,9 +25669,9 @@ "version": "5.0.0" }, "diff-sequences": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-28.1.1.tgz", - "integrity": "sha512-FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.0.0.tgz", + "integrity": "sha512-7Qe/zd1wxSDL4D/X/FPjOMB+ZMDt71W94KYaq05I2l0oQqgXgs7s4ftYYmV38gBSrPz2vcygxfs1xn0FT+rKNA==", "dev": true }, "dir-glob": { @@ -26920,25 +26548,25 @@ } }, "expect": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-28.1.3.tgz", - "integrity": "sha512-eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.0.0.tgz", + "integrity": "sha512-OKAHGwaBqZ6I7bas0cnrrvomEL2d0yp2XXYQhhnVHfaqDaKStUBxjWtlGu/uI2tBqwb9sBMvaS41DSJFsRRJHQ==", "dev": true, "requires": { - "@jest/expect-utils": "^28.1.3", - "jest-get-type": "^28.0.2", - "jest-matcher-utils": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3" + "@jest/expect-utils": "^29.0.0", + "jest-get-type": "^29.0.0", + "jest-matcher-utils": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -26947,9 +26575,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -26966,29 +26594,29 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -26997,13 +26625,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -27396,27 +27023,12 @@ "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" - }, - "dependencies": { - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "optional": true - } } }, "fs.realpath": { "version": "1.0.0", "devOptional": true }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, "function-bind": { "version": "1.1.1" }, @@ -28005,9 +27617,9 @@ } }, "hpagent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-1.0.0.tgz", - "integrity": "sha512-SCleE2Uc1bM752ymxg8QXYGW0TWtAV4ZW3TqH1aOnyi6T6YW2xadCcclm5qeVjvMvfQ2RKNtZxO7uVb9CTPt1A==" + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/hpagent/-/hpagent-0.1.2.tgz", + "integrity": "sha512-ePqFXHtSQWAFXYmj+JtOTHr84iNrII4/QRlAAPPE+zqnKy4xJo7Ie1Y4kC7AdB+LxLxSTTzBMASsEcy0q8YyvQ==" }, "html-entities": { "version": "2.3.3", @@ -28517,24 +28129,24 @@ "version": "2.1.0" }, "jest": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest/-/jest-28.1.3.tgz", - "integrity": "sha512-N4GT5on8UkZgH0O5LUavMRV1EDEhNTL0KEfRmDIeZHSV7p2XgLoY9t9VDUgL6o+yfdgYHVxuz81G8oB9VG5uyA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.0.0.tgz", + "integrity": "sha512-9uz4Tclskb8WrfRXqu66FsFCFoyYctwWXpruKwnD95FZqkyoEAA1oGH53HUn7nQx7uEgZTKdNl/Yo6DqqU+XMg==", "dev": true, "requires": { - "@jest/core": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/core": "^29.0.0", + "@jest/types": "^29.0.0", "import-local": "^3.0.2", - "jest-cli": "^28.1.3" + "jest-cli": "^29.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -28543,9 +28155,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -28564,9 +28176,9 @@ } }, "jest-changed-files": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-28.1.3.tgz", - "integrity": "sha512-esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.0.0.tgz", + "integrity": "sha512-28/iDMDrUpGoCitTURuDqUzWQoWmOmOKOFST1mi2lwh62X4BFf6khgH3uSuo1e49X/UDjuApAj3w0wLOex4VPQ==", "dev": true, "requires": { "execa": "^5.0.0", @@ -28574,65 +28186,65 @@ } }, "jest-circus": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-28.1.3.tgz", - "integrity": "sha512-cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.0.0.tgz", + "integrity": "sha512-6EX70/+ZdzPLShBeokMVIpUaq5cQpOsO4OCDiV1drKUHht0hmUOWvY6LE4pBSFdepB0Sukw4Y0ajRqtvLBO9/A==", "dev": true, "requires": { - "@jest/environment": "^28.1.3", - "@jest/expect": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/expect": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "co": "^4.6.0", "dedent": "^0.7.0", "is-generator-fn": "^2.0.0", - "jest-each": "^28.1.3", - "jest-matcher-utils": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-runtime": "^28.1.3", - "jest-snapshot": "^28.1.3", - "jest-util": "^28.1.3", + "jest-each": "^29.0.0", + "jest-matcher-utils": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-runtime": "^29.0.0", + "jest-snapshot": "^29.0.0", + "jest-util": "^29.0.0", "p-limit": "^3.1.0", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, "dependencies": { "@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "requires": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" } }, "@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" } }, "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -28650,9 +28262,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -28669,39 +28281,39 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -28710,13 +28322,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -28744,32 +28355,32 @@ } }, "jest-cli": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-28.1.3.tgz", - "integrity": "sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.0.0.tgz", + "integrity": "sha512-VZUPQjWJKL8QABFiBk1tHeJ3czBodjU9r22ceQmeL7X8/M73FYxTte0RkYPHI2SiLPWy99GZNWA+oOu9x0xKOA==", "dev": true, "requires": { - "@jest/core": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/core": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/types": "^29.0.0", "chalk": "^4.0.0", "exit": "^0.1.2", "graceful-fs": "^4.2.9", "import-local": "^3.0.2", - "jest-config": "^28.1.3", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", + "jest-config": "^29.0.0", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", "prompts": "^2.0.1", "yargs": "^17.3.1" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -28778,9 +28389,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -28797,12 +28408,12 @@ } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -28813,68 +28424,68 @@ } }, "jest-config": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-28.1.3.tgz", - "integrity": "sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.0.0.tgz", + "integrity": "sha512-RbcUgQBJDS0O8OThWUwm5UCfzo0zOymUX/cJzUNlYB1ZWqe3M8MFEcgwqgZSifYuYTi46xWu5cmkMiyRQAdnMw==", "dev": true, "requires": { "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^28.1.3", - "@jest/types": "^28.1.3", - "babel-jest": "^28.1.3", + "@jest/test-sequencer": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", "chalk": "^4.0.0", "ci-info": "^3.2.0", "deepmerge": "^4.2.2", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-circus": "^28.1.3", - "jest-environment-node": "^28.1.3", - "jest-get-type": "^28.0.2", - "jest-regex-util": "^28.0.2", - "jest-resolve": "^28.1.3", - "jest-runner": "^28.1.3", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", + "jest-circus": "^29.0.0", + "jest-environment-node": "^29.0.0", + "jest-get-type": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-runner": "^29.0.0", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", "micromatch": "^4.0.4", "parse-json": "^5.2.0", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "strip-json-comments": "^3.1.1" }, "dependencies": { "@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "requires": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" } }, "@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" } }, "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -28892,9 +28503,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -28935,53 +28546,53 @@ } }, "jest-environment-node": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-28.1.3.tgz", - "integrity": "sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.0.0.tgz", + "integrity": "sha512-Cns21Vgu0z7LjtssL0SWkxmjclHdwXeECFAP3ONit5NPnGCbv+0Rqby8w9vK7NpFlUaFgMmLYYBsUjSmIhwpvg==", "dev": true, "requires": { - "@jest/environment": "^28.1.3", - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -28999,13 +28610,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -29056,15 +28666,15 @@ } }, "jest-diff": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-28.1.3.tgz", - "integrity": "sha512-8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.0.0.tgz", + "integrity": "sha512-erkuYf1dQBHow3XJmS+bH6t9TZ0GwrSdQGauN8sTqyZlFByOjRadmHgTTcAHINeeSwxzGHN2ob3PXVvZphD7XQ==", "dev": true, "requires": { "chalk": "^4.0.0", - "diff-sequences": "^28.1.1", - "jest-get-type": "^28.0.2", - "pretty-format": "^28.1.3" + "diff-sequences": "^29.0.0", + "jest-get-type": "^29.0.0", + "pretty-format": "^29.0.0" }, "dependencies": { "chalk": { @@ -29078,13 +28688,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -29106,34 +28715,34 @@ } }, "jest-docblock": { - "version": "28.1.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-28.1.1.tgz", - "integrity": "sha512-3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.0.0.tgz", + "integrity": "sha512-s5Kpra/kLzbqu9dEjov30kj1n4tfu3e7Pl8v+f8jOkeWNqM6Ds8jRaJfZow3ducoQUrf2Z4rs2N5S3zXnb83gw==", "dev": true, "requires": { "detect-newline": "^3.0.0" } }, "jest-each": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-28.1.3.tgz", - "integrity": "sha512-arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.0.0.tgz", + "integrity": "sha512-ACKRvqdo7Bc0YrjQbrQtokpQ2NZxdXA63OklJht7a9UarCJXlZeWh51wEUe0ORqbnu15nAnX1YFQHmVpS1+ZXA==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "chalk": "^4.0.0", - "jest-get-type": "^28.0.2", - "jest-util": "^28.1.3", - "pretty-format": "^28.1.3" + "jest-get-type": "^29.0.0", + "jest-util": "^29.0.0", + "pretty-format": "^29.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -29142,9 +28751,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -29161,12 +28770,12 @@ } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -29175,13 +28784,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -29238,9 +28846,9 @@ } }, "jest-fail-on-console": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/jest-fail-on-console/-/jest-fail-on-console-2.4.2.tgz", - "integrity": "sha512-CdulWZvfI+cz4+dXQr6p0BhhexFjLnIIBR/7YcpzPXFxrNozAruWkEjR1RU89cd7WXYwckX5ygvHuHQa3NjbOQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jest-fail-on-console/-/jest-fail-on-console-3.0.1.tgz", + "integrity": "sha512-1811WQIY9lZN9wGkp7S6y69vw9+u6I21dmnRwXo6jSuF6Xv5OlN4msNCeKEVlc/C2H5N8dqLKuQlTAzQZ0mJlw==", "dev": true, "requires": { "chalk": "^4.1.0" @@ -29257,9 +28865,9 @@ } }, "jest-get-type": { - "version": "28.0.2", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-28.0.2.tgz", - "integrity": "sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.0.0.tgz", + "integrity": "sha512-83X19z/HuLKYXYHskZlBAShO7UfLFXu/vWajw9ZNJASN32li8yHMaVGAQqxFW1RCFOkB7cubaL6FaJVQqqJLSw==", "dev": true }, "jest-github-actions-reporter": { @@ -29270,32 +28878,32 @@ } }, "jest-haste-map": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-28.1.3.tgz", - "integrity": "sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.0.0.tgz", + "integrity": "sha512-mLyDt2WyNU0DZ64s7kRFkFJzrHEuXIxG+OKOs9/P5s1W7NzXE+P7SvLbxjz2Cg63cJjuglYRrD6fZcYf19T8Lw==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "fsevents": "^2.3.2", "graceful-fs": "^4.2.9", - "jest-regex-util": "^28.0.2", - "jest-util": "^28.1.3", - "jest-worker": "^28.1.3", + "jest-regex-util": "^29.0.0", + "jest-util": "^29.0.0", + "jest-worker": "^29.0.0", "micromatch": "^4.0.4", "walker": "^1.0.8" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -29304,9 +28912,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -29323,12 +28931,12 @@ } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -29337,9 +28945,9 @@ } }, "jest-worker": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", - "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.0.0.tgz", + "integrity": "sha512-2t9Panx3F9N1wAvRuZT7xLEptRFc1C5G90DOHniIGz1JIgF9uhd5u8jNBsc7wN63lhnaiLeVLnNx21wT7OVFEQ==", "dev": true, "requires": { "@types/node": "*", @@ -29361,13 +28969,13 @@ } }, "jest-leak-detector": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-28.1.3.tgz", - "integrity": "sha512-WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.0.0.tgz", + "integrity": "sha512-kBjNS0/z2+ZV/3N7R+ot5fKD2W1fHkoxC3kH/fkb2z24YSPfR9RGwiNX+YLRG9r0gWsxQx16boxzHT23G6rFBw==", "dev": true, "requires": { - "jest-get-type": "^28.0.2", - "pretty-format": "^28.1.3" + "jest-get-type": "^29.0.0", + "pretty-format": "^29.0.0" }, "dependencies": { "ansi-styles": { @@ -29377,13 +28985,12 @@ "dev": true }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" } @@ -29397,15 +29004,15 @@ } }, "jest-matcher-utils": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-28.1.3.tgz", - "integrity": "sha512-kQeJ7qHemKfbzKoGjHHrRKH6atgxMk8Enkk2iPQ3XwO6oE/KYD8lMYOziCkeSB9G4adPM4nR1DE8Tf5JeWH6Bw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.0.0.tgz", + "integrity": "sha512-HtCxFHI8lQSbN1RppFjtl6DIrS+x4d3lOhpJljVxFEXob4lxlKon3FunW0XoGxNSvIoD00AfTFspnufpOqszrg==", "dev": true, "requires": { "chalk": "^4.0.0", - "jest-diff": "^28.1.3", - "jest-get-type": "^28.0.2", - "pretty-format": "^28.1.3" + "jest-diff": "^29.0.0", + "jest-get-type": "^29.0.0", + "pretty-format": "^29.0.0" }, "dependencies": { "chalk": { @@ -29419,13 +29026,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -29501,35 +29107,35 @@ } }, "jest-regex-util": { - "version": "28.0.2", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz", - "integrity": "sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.0.0.tgz", + "integrity": "sha512-BV7VW7Sy0fInHWN93MMPtlClweYv2qrSCwfeFWmpribGZtQPWNvRSq9XOVgOEjU1iBGRKXUZil0o2AH7Iy9Lug==", "dev": true }, "jest-resolve": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-28.1.3.tgz", - "integrity": "sha512-Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.0.0.tgz", + "integrity": "sha512-MN19maPUXzibBshYg/cSrDWqiJwEBur6gbQb2lwOL4+6k14wdNW8Xh0uNPPxUntb7cpTi07uql/bUO5TVwiJbA==", "dev": true, "requires": { "chalk": "^4.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", + "jest-haste-map": "^29.0.0", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^28.1.3", - "jest-validate": "^28.1.3", + "jest-util": "^29.0.0", + "jest-validate": "^29.0.0", "resolve": "^1.20.0", "resolve.exports": "^1.1.0", "slash": "^3.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -29538,9 +29144,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -29557,12 +29163,12 @@ } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -29579,77 +29185,77 @@ } }, "jest-resolve-dependencies": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.3.tgz", - "integrity": "sha512-qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.0.0.tgz", + "integrity": "sha512-1TYUMcLZcUqa2fdUQ3leYtiXWXfNmimPvnJ34YDLLf0nyJ/aEeqlHJM9Ji2jw9Qxdh7nUypanjUlUV87yRHBFQ==", "dev": true, "requires": { - "jest-regex-util": "^28.0.2", - "jest-snapshot": "^28.1.3" + "jest-regex-util": "^29.0.0", + "jest-snapshot": "^29.0.0" } }, "jest-runner": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-28.1.3.tgz", - "integrity": "sha512-GkMw4D/0USd62OVO0oEgjn23TM+YJa2U2Wu5zz9xsQB1MxWKDOlrnykPxnMsN0tnJllfLPinHTka61u0QhaxBA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.0.0.tgz", + "integrity": "sha512-OpTpRIBOIn9RXuMMrpS+h9ZoK+nZHaOuNOceUiDbDoOJ6pmeGu0zst7VR22xXT3fOCwWqg5qe0fZ23G+ve5P0Q==", "dev": true, "requires": { - "@jest/console": "^28.1.3", - "@jest/environment": "^28.1.3", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/console": "^29.0.0", + "@jest/environment": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "emittery": "^0.10.2", "graceful-fs": "^4.2.9", - "jest-docblock": "^28.1.1", - "jest-environment-node": "^28.1.3", - "jest-haste-map": "^28.1.3", - "jest-leak-detector": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-resolve": "^28.1.3", - "jest-runtime": "^28.1.3", - "jest-util": "^28.1.3", - "jest-watcher": "^28.1.3", - "jest-worker": "^28.1.3", + "jest-docblock": "^29.0.0", + "jest-environment-node": "^29.0.0", + "jest-haste-map": "^29.0.0", + "jest-leak-detector": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-runtime": "^29.0.0", + "jest-util": "^29.0.0", + "jest-watcher": "^29.0.0", + "jest-worker": "^29.0.0", "p-limit": "^3.1.0", "source-map-support": "0.5.13" }, "dependencies": { "@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "requires": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" } }, "@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" } }, "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -29667,9 +29273,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -29686,53 +29292,53 @@ } }, "jest-environment-node": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-28.1.3.tgz", - "integrity": "sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.0.0.tgz", + "integrity": "sha512-Cns21Vgu0z7LjtssL0SWkxmjclHdwXeECFAP3ONit5NPnGCbv+0Rqby8w9vK7NpFlUaFgMmLYYBsUjSmIhwpvg==", "dev": true, "requires": { - "@jest/environment": "^28.1.3", - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -29741,9 +29347,9 @@ } }, "jest-worker": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", - "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.0.0.tgz", + "integrity": "sha512-2t9Panx3F9N1wAvRuZT7xLEptRFc1C5G90DOHniIGz1JIgF9uhd5u8jNBsc7wN63lhnaiLeVLnNx21wT7OVFEQ==", "dev": true, "requires": { "@types/node": "*", @@ -29763,13 +29369,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -29807,68 +29412,68 @@ } }, "jest-runtime": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-28.1.3.tgz", - "integrity": "sha512-NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.0.0.tgz", + "integrity": "sha512-dU0qFpTRWZY7Rur7yBgpz4g67mITSozBZ1jlhoG4ER/P/NiTFyZ/W8nMd5floeAMafmbrOc/5A9SlCu7SQCoBA==", "dev": true, "requires": { - "@jest/environment": "^28.1.3", - "@jest/fake-timers": "^28.1.3", - "@jest/globals": "^28.1.3", - "@jest/source-map": "^28.1.2", - "@jest/test-result": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/environment": "^29.0.0", + "@jest/fake-timers": "^29.0.0", + "@jest/globals": "^29.0.0", + "@jest/source-map": "^29.0.0", + "@jest/test-result": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "@types/node": "*", "chalk": "^4.0.0", "cjs-module-lexer": "^1.0.0", "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-haste-map": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-regex-util": "^28.0.2", - "jest-resolve": "^28.1.3", - "jest-snapshot": "^28.1.3", - "jest-util": "^28.1.3", + "jest-haste-map": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-regex-util": "^29.0.0", + "jest-resolve": "^29.0.0", + "jest-snapshot": "^29.0.0", + "jest-util": "^29.0.0", "slash": "^3.0.0", "strip-bom": "^4.0.0" }, "dependencies": { "@jest/environment": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-28.1.3.tgz", - "integrity": "sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.0.0.tgz", + "integrity": "sha512-ZHLvUENMAnwXowtyhmPRS0QLCXM4TS0ZfuiSR4QfRsJVN5lG4KdBDvI9kHJe/21vrgzPVOkvI7IBnkyPFCbV7g==", "dev": true, "requires": { - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/fake-timers": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", - "jest-mock": "^28.1.3" + "jest-mock": "^29.0.0" } }, "@jest/fake-timers": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-28.1.3.tgz", - "integrity": "sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.0.0.tgz", + "integrity": "sha512-4tqH5fT9H0+Ms3Z1HLZ/JfpzJluep2Zo3uuj0KPyu6IIyYSHCDfkXuiBQNWUGvumZDLQ2Si03cC7Gq0r73VgVg==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@sinonjs/fake-timers": "^9.1.2", "@types/node": "*", - "jest-message-util": "^28.1.3", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3" + "jest-message-util": "^29.0.0", + "jest-mock": "^29.0.0", + "jest-util": "^29.0.0" } }, "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -29886,9 +29491,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -29929,39 +29534,39 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-mock": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-28.1.3.tgz", - "integrity": "sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.0.0.tgz", + "integrity": "sha512-0AWznVt415KMCxcJPaE2+tWaruw0w8aRrKH1Y/NZUx3+Pd9f20jQjUR82iHqGSuYS4EOHL9uI8SjAhJk+ET91g==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -29979,13 +29584,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -30017,43 +29621,44 @@ "dev": true }, "jest-snapshot": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-28.1.3.tgz", - "integrity": "sha512-4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.0.0.tgz", + "integrity": "sha512-rR3B8GInk/IibF0M/sQCukSM8xX8bPI3Q0kjoAw4HT9Mx0Q3bS0MmF74rsreBOnVJgzN0Iwrc7YY56Yp8KQ7kA==", "dev": true, "requires": { "@babel/core": "^7.11.6", "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", "@babel/plugin-syntax-typescript": "^7.7.2", "@babel/traverse": "^7.7.2", "@babel/types": "^7.3.3", - "@jest/expect-utils": "^28.1.3", - "@jest/transform": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/expect-utils": "^29.0.0", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", "@types/babel__traverse": "^7.0.6", "@types/prettier": "^2.1.5", "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", - "expect": "^28.1.3", + "expect": "^29.0.0", "graceful-fs": "^4.2.9", - "jest-diff": "^28.1.3", - "jest-get-type": "^28.0.2", - "jest-haste-map": "^28.1.3", - "jest-matcher-utils": "^28.1.3", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", + "jest-diff": "^29.0.0", + "jest-get-type": "^29.0.0", + "jest-haste-map": "^29.0.0", + "jest-matcher-utils": "^29.0.0", + "jest-message-util": "^29.0.0", + "jest-util": "^29.0.0", "natural-compare": "^1.4.0", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "semver": "^7.3.5" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -30062,9 +29667,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -30081,29 +29686,29 @@ } }, "jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.0.0.tgz", + "integrity": "sha512-4U0RdNV0TBTgVGzEchjryEpq4sqLO3gUQT7TEIbO5+q0K5MuiofOPcXk4GLpWviWByMRJjliQNMuzJ4YGT+oGQ==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", + "pretty-format": "^29.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -30112,13 +29717,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -30168,26 +29772,26 @@ } }, "jest-validate": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-28.1.3.tgz", - "integrity": "sha512-SZbOGBWEsaTxBGCOpsRWlXlvNkvTkY0XxRfh7zYmvd8uL5Qzyg0CHAXiXKROflh801quA6+/DsT4ODDthOC/OA==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.0.0.tgz", + "integrity": "sha512-UhgDKmahJnv5s5MK6a8kQ397YNS9euvL7gWTvUf7y0OO7vZeafUItlq3tguvfFVazQJ+kBGUm/XCJes7V61l8g==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "camelcase": "^6.2.0", "chalk": "^4.0.0", - "jest-get-type": "^28.0.2", + "jest-get-type": "^29.0.0", "leven": "^3.1.0", - "pretty-format": "^28.1.3" + "pretty-format": "^29.0.0" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -30196,9 +29800,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -30221,13 +29825,12 @@ } }, "pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.0.0.tgz", + "integrity": "sha512-tMkFRn1vxRwZdiDETcveuNeonRKDg4doOvI+iyb1sOAtxYioGzRicqnsr+d3C/lLv9hBiM/2lDBi5ilR81h2bQ==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.0.0", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, @@ -30249,28 +29852,28 @@ } }, "jest-watcher": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-28.1.3.tgz", - "integrity": "sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.0.0.tgz", + "integrity": "sha512-GoRq5QJt5/dv3keK7rIzg9R0e/HpTnjyMNYtCTTDZgGIj6QUDMpiJqt7Mwfyyaxwg5PS8gVyQvRQn6Lril4cuQ==", "dev": true, "requires": { - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", + "@jest/test-result": "^29.0.0", + "@jest/types": "^29.0.0", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", "emittery": "^0.10.2", - "jest-util": "^28.1.3", + "jest-util": "^29.0.0", "string-length": "^4.0.1" }, "dependencies": { "@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.0.0.tgz", + "integrity": "sha512-ErShruvByUF7vphEtPugMAphCtDIDdfWh3DxpBLxPEtHhL/H5MaidHsOutnOUhKpPL7QA6/7GitjFgLOLeGa1A==", "dev": true, "requires": { - "@jest/schemas": "^28.1.3", + "@jest/schemas": "^29.0.0", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", @@ -30279,9 +29882,9 @@ } }, "@types/yargs": { - "version": "17.0.10", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.10.tgz", - "integrity": "sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA==", + "version": "17.0.11", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.11.tgz", + "integrity": "sha512-aB4y9UDUXTSMxmM4MH+YnuR0g5Cph3FLQBoWoMB21DSvFVAxRVEHEMx3TLh+zUZYMCQtKiqazz0Q4Rre31f/OA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -30298,12 +29901,12 @@ } }, "jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.0.0.tgz", + "integrity": "sha512-HMjW/pkFgi34LGKumjNDK03DYonV+nPMNUZ63rZX8PFdBkdIWUtOCEiaa7sAJkWrw5MyMVzSpa22NcOJjoQ3JQ==", "dev": true, "requires": { - "@jest/types": "^28.1.3", + "@jest/types": "^29.0.0", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -30395,14 +29998,6 @@ "requires": { "graceful-fs": "^4.1.6", "universalify": "^2.0.0" - }, - "dependencies": { - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "optional": true - } } }, "jsx-ast-utils": { @@ -31487,28 +31082,28 @@ "peer": true }, "next": { - "version": "12.2.5", - "resolved": "https://registry.npmjs.org/next/-/next-12.2.5.tgz", - "integrity": "sha512-tBdjqX5XC/oFs/6gxrZhjmiq90YWizUYU6qOWAfat7zJwrwapJ+BYgX2PmiacunXMaRpeVT4vz5MSPSLgNkrpA==", + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/next/-/next-12.2.4.tgz", + "integrity": "sha512-b1xlxEozmAWokAXzXsi5vlmU/IfJcFNIJA8dpU5UdkFbyDPio8wwb8mAQ/Y7rGtfTgG/t/u49BiyEA+xAgFvow==", "requires": { - "@next/env": "12.2.5", - "@next/swc-android-arm-eabi": "12.2.5", - "@next/swc-android-arm64": "12.2.5", - "@next/swc-darwin-arm64": "12.2.5", - "@next/swc-darwin-x64": "12.2.5", - "@next/swc-freebsd-x64": "12.2.5", - "@next/swc-linux-arm-gnueabihf": "12.2.5", - "@next/swc-linux-arm64-gnu": "12.2.5", - "@next/swc-linux-arm64-musl": "12.2.5", - "@next/swc-linux-x64-gnu": "12.2.5", - "@next/swc-linux-x64-musl": "12.2.5", - "@next/swc-win32-arm64-msvc": "12.2.5", - "@next/swc-win32-ia32-msvc": "12.2.5", - "@next/swc-win32-x64-msvc": "12.2.5", + "@next/env": "12.2.4", + "@next/swc-android-arm-eabi": "12.2.4", + "@next/swc-android-arm64": "12.2.4", + "@next/swc-darwin-arm64": "12.2.4", + "@next/swc-darwin-x64": "12.2.4", + "@next/swc-freebsd-x64": "12.2.4", + "@next/swc-linux-arm-gnueabihf": "12.2.4", + "@next/swc-linux-arm64-gnu": "12.2.4", + "@next/swc-linux-arm64-musl": "12.2.4", + "@next/swc-linux-x64-gnu": "12.2.4", + "@next/swc-linux-x64-musl": "12.2.4", + "@next/swc-win32-arm64-msvc": "12.2.4", + "@next/swc-win32-ia32-msvc": "12.2.4", + "@next/swc-win32-x64-msvc": "12.2.4", "@swc/helpers": "0.4.3", "caniuse-lite": "^1.0.30001332", "postcss": "8.4.14", - "styled-jsx": "5.0.4", + "styled-jsx": "5.0.2", "use-sync-external-store": "1.2.0" } }, @@ -31827,9 +31422,9 @@ } }, "p-queue": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.2.0.tgz", - "integrity": "sha512-Kvv7p13M46lTYLQ/PsZdaj/1Vj6u/8oiIJgyQyx4oVkOfHdd7M2EZvXigDvcsSzRwanCzQirV5bJPQFoSQt5MA==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.3.0.tgz", + "integrity": "sha512-5fP+yVQ0qp0rEfZoDTlP2c3RYBgxvRsw30qO+VtPPc95lyvSG+x6USSh1TuLB4n96IO6I8/oXQGsTgtna4q2nQ==", "optional": true, "requires": { "eventemitter3": "^4.0.7", @@ -33260,9 +32855,9 @@ } }, "secure-json-parse": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.4.0.tgz", - "integrity": "sha512-Q5Z/97nbON5t/L/sH6mY2EacfjVGwrCcSi5D3btRO2GZ8pf1K1UN7Z9H5J57hjVU2Qzxr1xO+FmBhOvEkzCMmg==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.5.0.tgz", + "integrity": "sha512-ZQruFgZnIWH+WyO9t5rWt4ZEGqCKPwhiw+YbzTwpmT9elgLrLcfuyUiSnwwjUiVy9r4VM3urtbNF1xmEh9IL2w==" }, "semver": { "version": "7.3.7", @@ -33842,9 +33437,9 @@ } }, "styled-jsx": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.4.tgz", - "integrity": "sha512-sDFWLbg4zR+UkNzfk5lPilyIgtpddfxXEULxhujorr5jtePTUqiPDc5BC0v1NRqTr/WaFBGQQUoYToGlF4B2KQ==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.2.tgz", + "integrity": "sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ==", "requires": {} }, "styled-system": { @@ -34244,11 +33839,6 @@ "version": "2.0.5", "dev": true }, - "undici": { - "version": "5.9.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.9.1.tgz", - "integrity": "sha512-6fB3a+SNnWEm4CJbgo0/CWR8RGcOCQP68SF4X0mxtYTq2VNN8T88NYrWVBAeSX+zb7bny2dx2iYhP3XHi00omg==" - }, "unherit": { "version": "1.1.3", "requires": { @@ -34394,6 +33984,12 @@ "version": "6.0.0", "dev": true }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "optional": true + }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -35015,9 +34611,9 @@ }, "dependencies": { "yargs-parser": { - "version": "21.0.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz", - "integrity": "sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true } } diff --git a/package.json b/package.json index 18989a054f..9cf95a62c7 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ ".next/cache" ], "dependencies": { - "@elastic/elasticsearch": "8.2.1", + "@elastic/elasticsearch": "7.11.0", "@github/failbot": "0.8.0", "@primer/css": "^20.2.4", "@primer/octicons": "17.3.0", @@ -55,7 +55,7 @@ "mdast-util-to-string": "^3.1.0", "morgan": "^1.10.0", "msgpack5rpc": "^1.1.0", - "next": "12.2.5", + "next": "12.2.4", "parse5": "7.0.0", "port-used": "^2.0.8", "react": "^17.0.2", @@ -99,7 +99,7 @@ "@babel/preset-env": "^7.18.2", "@graphql-inspector/core": "^3.1.2", "@graphql-tools/load": "^7.5.14", - "@jest/globals": "^28.1.1", + "@jest/globals": "29.0.0", "@octokit/graphql": "4.8.0", "@octokit/rest": "^18.12.0", "@types/github-slugger": "^1.3.0", @@ -136,9 +136,9 @@ "http-status-code": "^2.1.0", "husky": "^8.0.1", "japanese-characters": "^1.1.0", - "jest": "28.1.3", + "jest": "29.0.0", "jest-environment-puppeteer": "^5.0.4", - "jest-fail-on-console": "^2.4.2", + "jest-fail-on-console": "^3.0.1", "jest-github-actions-reporter": "^1.0.3", "jest-slow-test-reporter": "^1.0.0", "kill-port": "2.0.0", @@ -183,7 +183,7 @@ "build": "next build", "debug": "cross-env NODE_ENV=development ENABLED_LANGUAGES='en,ja' nodemon --inspect server.js", "dev": "cross-env npm start", - "index-test-fixtures": "node script/search/index-elasticsearch.js -s tests/content/fixtures/search-indexes -l en -V ghae -V dotcom", + "index-test-fixtures": "node script/search/index-elasticsearch.js -s tests/content/fixtures/search-indexes -l en -V ghae -V dotcom --index-prefix tests", "lint": "eslint '**/*.{js,mjs,ts,tsx}'", "lint-translation": "cross-env NODE_OPTIONS=--experimental-vm-modules TEST_TRANSLATION=true jest tests/linting/lint-files.js", "prepare": "husky install", diff --git a/pages/search.tsx b/pages/search.tsx index fa6281d615..67703ae44b 100644 --- a/pages/search.tsx +++ b/pages/search.tsx @@ -26,7 +26,10 @@ export const getServerSideProps: GetServerSideProps = async (context) => // So if that's the case, which might be true in production (Aug 2022) // or on an engineers local development, we basically pretend the // page doesn't exist. - if (!process.env.ELASTICSEARCH_URL) { + // By depending conditionally on these two environment variables we're + // able to carefully launch the dedicated search results page + // separately from the JSON API endpoint. + if (!process.env.ELASTICSEARCH_URL || !process.env.ENABLE_SEARCH_RESULTS_PAGE) { return { notFound: true } } diff --git a/script/i18n/lint-translation-files.js b/script/i18n/lint-translation-files.js index 58a784fe0f..93e6db9531 100755 --- a/script/i18n/lint-translation-files.js +++ b/script/i18n/lint-translation-files.js @@ -7,6 +7,8 @@ // // [end-readme] +// Remove this when removing translations directory B504EDD0 + import { execSync } from 'child_process' import { program } from 'commander' import fs from 'fs' diff --git a/script/rendered-content-link-checker.js b/script/rendered-content-link-checker.js index e3ece57f06..5bf9127978 100755 --- a/script/rendered-content-link-checker.js +++ b/script/rendered-content-link-checker.js @@ -12,6 +12,7 @@ import path from 'path' import cheerio from 'cheerio' import { program, Option, InvalidArgumentError } from 'commander' import chalk from 'chalk' +import got, { RequestError } from 'got' import shortVersions from '../middleware/contextualizers/short-versions.js' import contextualize from '../middleware/context.js' @@ -20,6 +21,7 @@ import getRedirect from '../lib/get-redirect.js' import warmServer from '../lib/warm-server.js' import renderContent from '../lib/render-content/index.js' import { deprecated } from '../lib/enterprise-server-releases.js' +import excludedLinks from '../lib/excluded-links.js' const STATIC_PREFIXES = { assets: path.resolve('assets'), @@ -32,6 +34,18 @@ Object.entries(STATIC_PREFIXES).forEach(([key, value]) => { } }) +// Return a function that can as quickly as possible check if a certain +// href input should be skipped. +// Do this so we can use a `Set` and a `iterable.some()` for a speedier +// check. +function linksToSkipFactory() { + const set = new Set(excludedLinks.filter((regexOrURL) => typeof regexOrURL === 'string')) + const regexes = excludedLinks.filter((regexOrURL) => regexOrURL instanceof RegExp) + return (href) => set.has(href) || regexes.some((regex) => regex.test(href)) +} + +const linksToSkip = linksToSkipFactory(excludedLinks) + const CONTENT_ROOT = path.resolve('content') const deprecatedVersionPrefixesRegex = new RegExp( @@ -56,9 +70,13 @@ program .option('-b, --bail', 'Exit on the first flaw') .option('--check-anchors', "Validate links that start with a '#' too") .option('--check-images', 'Validate local images too') + .option('--check-external-links', 'Check external URLs too') .option('-v, --verbose', 'Verbose outputs') .option('--debug', "Loud about everything it's doing") .option('--random', 'Load pages in a random order (useful for debugging)') + .option('--patient', 'Give external link checking longer timeouts and more retries') + .option('-o, --out ', 'Put warnings and errors into a file instead of stdout') + .option('--json-output', 'Print JSON to stdout or file instead') .option('--max ', 'integer argument (default: none)', (value) => { const parsed = parseInt(value, 10) if (isNaN(parsed)) { @@ -92,7 +110,19 @@ program main(program.opts(), program.args) async function main(opts, files) { - const { random, language, filter, exit, debug, max, verbose, list } = opts + const { + random, + language, + filter, + exit, + debug, + max, + verbose, + list, + checkExternalLinks, + jsonOutput, + out, + } = opts // Note! The reason we're using `warmServer()` in this script, // even though there's no server involved, is because @@ -133,12 +163,23 @@ async function main(opts, files) { const pages = getPages(pageList, languages, filters, files, max) debug && console.timeEnd('getPages') + if (checkExternalLinks && pages.length >= 100) { + console.warn( + chalk.yellow( + `Warning! Checking external URLs can be time costly. You're testing ${pages.length} pages.` + ) + ) + } + const processPagesStart = new Date() const flawsGroups = await Promise.all( pages.map((page) => processPage(page, pageMap, redirects, opts)) ) const processPagesEnd = new Date() const flaws = flawsGroups.flat() + if (jsonOutput) { + jsonPrintFlaws(flaws, opts) + } debug && printGlobalCacheHitRatio() @@ -149,6 +190,9 @@ async function main(opts, files) { console.log(`Took ${getDurationString(processPagesStart, processPagesEnd)}`) summarizeFlaws(flaws) + if (out && flaws.length > 0) { + console.log(`All flaws written to ${chalk.bold(out)}`) + } } if (exit) { @@ -221,7 +265,7 @@ function getPages(pageList, languages, filters, files, max) { } async function processPage(page, pageMap, redirects, opts) { - const { bail, verboseUrl } = opts + const { bail, verboseUrl, jsonOutput, out } = opts const allFlawsEach = await Promise.all( page.permalinks.map((permalink) => processPermalink(permalink, page, pageMap, redirects, opts)) @@ -230,48 +274,75 @@ async function processPage(page, pageMap, redirects, opts) { const allFlaws = allFlawsEach.flat() if (bail && allFlaws.length > 0) { - printFlaws(allFlaws, verboseUrl) + if (jsonOutput) { + jsonPrintFlaws(allFlaws, opts) + } else { + printFlaws(allFlaws, { verboseUrl, out }) + } process.exit(1) } - printFlaws(allFlaws, verboseUrl) + if (!jsonOutput) { + printFlaws(allFlaws, { verboseUrl, out }) + } return allFlaws } async function processPermalink(permalink, page, pageMap, redirects, opts) { - const { level, checkAnchors, checkImages } = opts + const { level, checkAnchors, checkImages, checkExternalLinks, verbose, patient } = opts const html = await renderInnerHTML(page, permalink) const $ = cheerio.load(html) const flaws = [] + const links = [] $('a[href]').each((i, link) => { - const { href } = link.attribs - - // The global cache can't be used for anchor links because they - // depend on each page it renders - if (!href.startsWith('#')) { - if (globalHrefCheckCache.has(href)) { - globalCacheHitCount++ - return globalHrefCheckCache.get(href) - } - globalCacheMissCount++ - } - - const flaw = checkHrefLink(href, $, redirects, pageMap, checkAnchors) - - // Again if it's *not* an anchor link, we can use the cache. - if (!href.startsWith('#')) { - globalHrefCheckCache.set(href, flaw) - } - - if (flaw) { - if (level === 'critical' && !flaw.CRITICAL) { - return - } - const text = $(link).text() - flaws.push({ permalink, page, href, flaw, text }) - } + links.push(link) }) + const newFlaws = await Promise.all( + links.map(async (link) => { + const { href } = link.attribs + + // The global cache can't be used for anchor links because they + // depend on each page it renders + if (!href.startsWith('#')) { + if (globalHrefCheckCache.has(href)) { + globalCacheHitCount++ + return globalHrefCheckCache.get(href) + } + globalCacheMissCount++ + } + + const flaw = await checkHrefLink( + href, + $, + redirects, + pageMap, + checkAnchors, + checkExternalLinks, + { verbose, patient } + ) + + if (flaw) { + if (level === 'critical' && !flaw.CRITICAL) { + return + } + const text = $(link).text() + if (!href.startsWith('#')) { + globalHrefCheckCache.set(href, { href, flaw, text }) + } + return { href, flaw, text } + } else { + if (!href.startsWith('#')) { + globalHrefCheckCache.set(href, flaw) + } + } + }) + ) + for (const flaw of newFlaws) { + if (flaw) { + flaws.push(Object.assign(flaw, { page, permalink })) + } + } if (checkImages) { $('img[src]').each((i, img) => { @@ -304,36 +375,92 @@ async function processPermalink(permalink, page, pageMap, redirects, opts) { return flaws } -function printFlaws(flaws, verboseUrl = null) { +function jsonPrintFlaws(flaws, { verboseUrl = null, out = null } = {}) { + const printableFlaws = {} + for (const { page, permalink, href, text, src, flaw } of flaws) { + const fullPath = prettyFullPath(page.fullPath) + + if (!(fullPath in printableFlaws)) { + printableFlaws[fullPath] = [] + } + if (href) { + printableFlaws[fullPath].push({ + href, + url: verboseUrl ? new URL(permalink.href, verboseUrl).toString() : permalink.href, + text, + flaw, + }) + } else if (src) { + printableFlaws[fullPath].push({ + src, + }) + } + } + const message = JSON.stringify(printableFlaws, undefined, 2) + if (out) { + fs.writeFileSync(out, message + '\n', 'utf-8') + } else { + console.log(message) + } +} + +function printFlaws(flaws, { verboseUrl = null, out = null } = {}) { let previousPage = null let previousPermalink = null + + function fout(msg) { + if (out) { + fs.appendFileSync(out, `${msg}\n`, 'utf-8') + } else { + console.log(msg) + } + } + for (const { page, permalink, href, text, src, flaw } of flaws) { + const fullPath = prettyFullPath(page.fullPath) if (page !== previousPage) { - console.log(`PAGE: ${chalk.bold(prettyFullPath(page.fullPath))}`) + if (out) { + fout(`PAGE: ${fullPath}`) + } else { + console.log(`PAGE: ${chalk.bold(fullPath)}`) + } } previousPage = page if (href) { if (previousPermalink !== permalink.href) { if (verboseUrl) { - console.log(` URL: ${new URL(permalink.href, verboseUrl).toString()}`) + fout(` URL: ${new URL(permalink.href, verboseUrl).toString()}`) } else { - console.log(` PERMALINK: ${permalink.href}`) + fout(` PERMALINK: ${permalink.href}`) } } previousPermalink = permalink.href - console.log(` HREF: ${chalk.bold(href)}`) - console.log(` TEXT: ${text}`) + if (out) { + fout(` HREF: ${href}`) + } else { + console.log(` HREF: ${chalk.bold(href)}`) + } + fout(` TEXT: ${text}`) } else if (src) { - console.log(` IMG SRC: ${chalk.bold(src)}`) + if (out) { + fout(` IMG SRC: ${src}`) + } else { + console.log(` IMG SRC: ${chalk.bold(src)}`) + } } else { throw new Error("Flaw has neither 'href' nor 'src'") } - console.log( - ` FLAW: ${flaw.CRITICAL ? chalk.red(flaw.CRITICAL) : chalk.yellow(flaw.WARNING)}` - ) - console.log('') + + if (out) { + fout(` FLAW: ${flaw.CRITICAL ? flaw.CRITICAL : flaw.WARNING}`) + } else { + console.log( + ` FLAW: ${flaw.CRITICAL ? chalk.red(flaw.CRITICAL) : chalk.yellow(flaw.WARNING)}` + ) + } + fout('') } } @@ -353,7 +480,15 @@ const globalImageSrcCheckCache = new Map() let globalCacheHitCount = 0 let globalCacheMissCount = 0 -function checkHrefLink(href, $, redirects, pageMap, checkAnchors = false) { +async function checkHrefLink( + href, + $, + redirects, + pageMap, + checkAnchors = false, + checkExternalLinks = false, + { verbose = false, patient = false } = {} +) { if (href === '#') { if (checkAnchors) { return { WARNING: 'Link is just an empty `#`' } @@ -399,9 +534,143 @@ function checkHrefLink(href, $, redirects, pageMap, checkAnchors = false) { return { CRITICAL: 'Broken link' } } } + } else if (checkExternalLinks) { + if (!href.startsWith('https://')) { + return { WARNING: `Will not check external URLs that are not HTTPS (${href})` } + } + if (linksToSkip(href)) { + return + } + const { ok, ...info } = await checkExternalURL(href, { verbose, patient }) + if (!ok) { + return { CRITICAL: `Broken external link (${JSON.stringify(info)})` } + } } } +const _fetchCache = new Map() +async function checkExternalURL(url, { verbose = false, patient = false } = {}) { + if (!url.startsWith('https://')) throw new Error('Invalid URL') + const cleanURL = url.split('#')[0] + if (!_fetchCache.has(cleanURL)) { + _fetchCache.set(cleanURL, innerFetch(cleanURL, { verbose, patient })) + } + return _fetchCache.get(cleanURL) +} + +const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)) + +// Global for recording which domains we get rate-limited on. +// For example, if you got rate limited on `something.github.com/foo` +// and now we're asked to fetch for `something.github.com/bar` +// it's good to know to now bother yet. +const _rateLimitedDomains = new Map() + +async function innerFetch(url, config = {}) { + const { verbose, useGET, patient } = config + + const { hostname } = new URL(url) + if (_rateLimitedDomains.has(hostname)) { + await sleep(_rateLimitedDomains.get(hostname)) + } + // The way `got` does retries: + // + // sleep = 1000 * Math.pow(2, retry - 1) + Math.random() * 100 + // + // So, it means: + // + // 1. ~1000ms + // 2. ~2000ms + // 3. ~4000ms + // + // ...if the limit we set is 3. + // Our own timeout, in ./middleware/timeout.js defaults to 10 seconds. + // So there's no point in trying more attempts than 3 because it would + // just timeout on the 10s. (i.e. 1000 + 2000 + 4000 + 8000 > 10,000) + const retry = { + limit: patient ? 5 : 2, + } + const timeout = { request: patient ? 10000 : 2000 } + + const headers = { + 'User-Agent': + 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36', + } + + const retries = config.retries || 0 + const httpFunction = useGET ? got.get : got.head + + if (verbose) console.log(`External URL ${useGET ? 'GET' : 'HEAD'}: ${url} (retries: ${retries})`) + try { + const r = await httpFunction(url, { + headers, + throwHttpErrors: false, + retry, + timeout, + }) + if (verbose) { + console.log( + `External URL ${useGET ? 'GET' : 'HEAD'} ${url}: ${r.statusCode} (retries: ${retries})` + ) + } + + // If we get rate limited, remember that this hostname is now all + // rate limited. And sleep for the number of seconds that the + // `retry-after` header indicated. + if (r.statusCode === 429) { + let sleepTime = Math.min( + 60_000, + Math.max(10_000, getRetryAfterSleep(r.headers['retry-after'])) + ) + // Sprinkle a little jitter so it doesn't all start again all + // at the same time + sleepTime += Math.random() * 10 * 1000 + // Give it a bit extra when we can be really patient + if (patient) sleepTime += 30 * 1000 + + _rateLimitedDomains.set(hostname, sleepTime + Math.random() * 10 * 1000) + if (verbose) + console.log( + chalk.yellow( + `Rate limited on ${hostname} (${url}). Sleeping for ${(sleepTime / 1000).toFixed(1)}s` + ) + ) + await sleep(sleepTime) + return innerFetch(url, Object.assign({}, config, { retries: retries + 1 })) + } else { + _rateLimitedDomains.delete(hostname) + } + + // Perhaps the server doesn't suppport HEAD requests. + // If so, try again with a regular GET. + if ((r.statusCode === 405 || r.statusCode === 404) && !useGET) { + return innerFetch(url, Object.assign({}, config, { useGET: true })) + } + if (verbose) { + console.log((r.ok ? chalk.green : chalk.red)(`${r.statusCode} on ${url}`)) + } + return { ok: r.ok, statusCode: r.statusCode } + } catch (err) { + if (err instanceof RequestError) { + if (verbose) { + console.log(chalk.yellow(`RequestError (${err.message}) on ${url}`)) + } + return { ok: false, requestError: err.message } + } + throw err + } +} + +// Return number of milliseconds from a `Retry-After` header value +function getRetryAfterSleep(headerValue) { + if (!headerValue) return 0 + let ms = Math.round(parseFloat(headerValue) * 1000) + if (isNaN(ms)) { + ms = Math.max(0, new Date(headerValue) - new Date()) + } + return ms +} + function checkImageSrc(src, $) { const pathname = new URL(src, 'http://example.com').pathname if (!pathname.startsWith('/')) { diff --git a/script/rest/utils/get-body-params.js b/script/rest/utils/get-body-params.js new file mode 100644 index 0000000000..2618cd32e1 --- /dev/null +++ b/script/rest/utils/get-body-params.js @@ -0,0 +1,152 @@ +#!/usr/bin/env node +import renderContent from '../../../lib/render-content/index.js' + +// If there is a oneOf at the top level, then we have to present just one +// in the docs. We don't currently have a convention for showing more than one +// set of input parameters in the docs. Having a top-level oneOf is also very +// uncommon. +// Currently there aren't very many operations that require this treatment. +// As an example, the 'Add status check contexts' and 'Set status check contexts' +// operations have a top-level oneOf. + +async function getTopLevelOneOfProperty(schema) { + if (!schema.oneOf) { + throw new Error('Schema does not have a requestBody oneOf property defined') + } + if (!(Array.isArray(schema.oneOf) && schema.oneOf.length > 0)) { + throw new Error('Schema requestBody oneOf property is not an array') + } + // When a oneOf exists but the `type` differs, the case has historically + // been that the alternate option is an array, where the first option + // is the array as a property of the object. We need to ensure that the + // first option listed is the most comprehensive and preferred option. + const firstOneOfObject = schema.oneOf[0] + const allOneOfAreObjects = schema.oneOf.every((elem) => elem.type === 'object') + let required = firstOneOfObject.required || [] + let properties = firstOneOfObject.properties || {} + + // When all of the oneOf objects have the `type: object` we + // need to display all of the parameters. + // This merges all of the properties and required values. + if (allOneOfAreObjects) { + for (const each of schema.oneOf.slice(1)) { + Object.assign(firstOneOfObject.properties, each.properties) + required = firstOneOfObject.required.concat(each.required) + } + properties = firstOneOfObject.properties + } + return { properties, required } +} + +// Gets the body parameters for a given schema recursively. +export async function getBodyParams(schema, topLevel = false) { + const bodyParametersParsed = [] + const schemaObject = schema.oneOf && topLevel ? await getTopLevelOneOfProperty(schema) : schema + const properties = schemaObject.properties || {} + const required = schemaObject.required || [] + + for (const [paramKey, param] of Object.entries(properties)) { + const paramDecorated = {} + + // OpenAPI 3.0 only had a single value for `type`. OpenAPI 3.1 + // will either be a single value or an array of values. + // This makes type an array regardless of how many values the array + // includes. This allows us to support 3.1 while remaining backwards + // compatible with 3.0. + const paramType = Array.isArray(param.type) ? param.type : [param.type] + const additionalPropertiesType = param.additionalProperties + ? Array.isArray(param.additionalProperties.type) + ? param.additionalProperties.type + : [param.additionalProperties.type] + : [] + const childParamsGroups = [] + + // If the parameter is an array or object there may be child params + // If the parameter has oneOf or additionalProperties, they need to be + // recursively read too. + + // There are a couple operations with additionalProperties, which allows + // the api to define input parameters with the type dictionary. These are the only + // two operations (at the time of adding this code) that use additionalProperties + // Create a snapshot of dependencies for a repository + // Update a gist + if (param.additionalProperties && additionalPropertiesType.includes('object')) { + const keyParam = { + type: 'object', + name: 'key', + description: await renderContent( + `A user-defined key to represent an item in \`${paramKey}\`.` + ), + isRequired: param.required, + enum: param.enum, + default: param.default, + childParamsGroups: [], + } + keyParam.childParamsGroups.push(...(await getBodyParams(param.additionalProperties, false))) + childParamsGroups.push(keyParam) + } else if (paramType && paramType.includes('array')) { + const arrayType = param.items.type + if (arrayType) { + paramType.splice(paramType.indexOf('array'), 1, `array of ${arrayType}s`) + } + if (arrayType === 'object') { + childParamsGroups.push(...(await getBodyParams(param.items, false))) + } + } else if (paramType && paramType.includes('object')) { + childParamsGroups.push(...(await getBodyParams(param, false))) + } else if (param && param.oneOf) { + // get concatenated description and type + const descriptions = [] + for (const childParam of param.oneOf) { + paramType.push(childParam.type) + // If there is no parent description, create a description from + // each type + if (!param.description) { + if (childParam.type === 'array') { + if (childParam.items.description) { + descriptions.push({ + type: childParam.type, + description: childParam.items.description, + }) + } + } else { + if (childParam.description) { + descriptions.push({ type: childParam.type, description: childParam.description }) + } + } + } + } + // Occasionally, there is no parent description and the description + // is in the first child parameter. + const oneOfDescriptions = descriptions.length ? descriptions[0].description : '' + if (!param.description) param.description = oneOfDescriptions + } + + // Supports backwards compatibility for OpenAPI 3.0 + // In 3.1 a nullable type is part of the param.type array and + // the property param.nullable does not exist. + if (param.nullable) paramType.push('null') + paramDecorated.type = paramType.filter(Boolean).join(' or ') + paramDecorated.name = paramKey + if (topLevel) { + paramDecorated.in = 'body' + } + paramDecorated.description = await renderContent(param.description) + if (required.includes(paramKey)) { + paramDecorated.isRequired = true + } + if (childParamsGroups.length > 0) { + paramDecorated.childParamsGroups = childParamsGroups + } + if (param.enum) { + paramDecorated.enum = param.enum + } + if (param.default) { + paramDecorated.default = param.default + } + + bodyParametersParsed.push(paramDecorated) + } + + return bodyParametersParsed +} diff --git a/script/rest/utils/operation.js b/script/rest/utils/operation.js index 6e59cc9451..88a087d6a4 100644 --- a/script/rest/utils/operation.js +++ b/script/rest/utils/operation.js @@ -8,6 +8,7 @@ import { parseTemplate } from 'url-template' import renderContent from '../../../lib/render-content/index.js' import getCodeSamples from './create-rest-examples.js' import operationSchema from './operation-schema.js' +import { getBodyParams } from './get-body-params.js' const { operationUrls } = JSON.parse( await readFile('script/rest/utils/rest-api-overrides.json', 'utf8') @@ -184,148 +185,3 @@ export default class Operation { ) } } - -// If there is a oneOf at the top level, then we have to present just one -// in the docs. We don't currently have a convention for showing more than one -// set of input parameters in the docs. Having a top-level oneOf is also very -// uncommon. -// Currently there aren't very many operations that require this treatment. -// As an example, the 'Add status check contexts' and 'Set status check contexts' -// operations have a top-level oneOf. -async function getTopLevelOneOfProperty(schema) { - if (!schema.oneOf) { - throw new Error('Schema does not have a requestBody oneOf property defined') - } - if (!(Array.isArray(schema.oneOf) && schema.oneOf.length > 0)) { - throw new Error('Schema requestBody oneOf property is not an array') - } - // When a oneOf exists but the `type` differs, the case has historically - // been that the alternate option is an array, where the first option - // is the array as a property of the object. We need to ensure that the - // first option listed is the most comprehensive and preferred option. - const firstOneOfObject = schema.oneOf[0] - const allOneOfAreObjects = schema.oneOf.every((elem) => elem.type === 'object') - let required = firstOneOfObject.required || [] - let properties = firstOneOfObject.properties || {} - - // When all of the oneOf objects have the `type: object` we - // need to display all of the parameters. - // This merges all of the properties and required values. - if (allOneOfAreObjects) { - for (const each of schema.oneOf.slice(1)) { - Object.assign(firstOneOfObject.properties, each.properties) - required = firstOneOfObject.required.concat(each.required) - } - properties = firstOneOfObject.properties - } - return { properties, required } -} - -// Gets the body parameters for a given schema recursively. -async function getBodyParams(schema, topLevel = false) { - const bodyParametersParsed = [] - const schemaObject = schema.oneOf && topLevel ? await getTopLevelOneOfProperty(schema) : schema - const properties = schemaObject.properties || {} - const required = schemaObject.required || [] - - for (const [paramKey, param] of Object.entries(properties)) { - const paramDecorated = {} - - // OpenAPI 3.0 only had a single value for `type`. OpenAPI 3.1 - // will either be a single value or an array of values. - // This makes type an array regardless of how many values the array - // includes. This allows us to support 3.1 while remaining backwards - // compatible with 3.0. - const paramType = Array.isArray(param.type) ? param.type : [param.type] - const additionalPropertiesType = param.additionalProperties - ? Array.isArray(param.additionalProperties.type) - ? param.additionalProperties.type - : [param.additionalProperties.type] - : [] - const childParamsGroups = [] - - // If the parameter is an array or object there may be child params - // If the parameter has oneOf or additionalProperties, they need to be - // recursively read too. - - // There are a couple operations with additionalProperties, which allows - // the api to define input parameters with the type dictionary. These are the only - // two operations (at the time of adding this code) that use additionalProperties - // Create a snapshot of dependencies for a repository - // Update a gist - if (param.additionalProperties && additionalPropertiesType.includes('object')) { - const keyParam = { - type: 'object', - name: 'key', - description: `

A user-defined key to represent an item in ${paramKey}.

`, - isRequired: param.required, - enum: param.enum, - default: param.default, - childParamsGroups: [], - } - keyParam.childParamsGroups.push(...(await getBodyParams(param.additionalProperties))) - childParamsGroups.push(keyParam) - } else if (paramType && paramType.includes('array')) { - const arrayType = param.items.type - if (arrayType) { - paramType.splice(paramType.indexOf('array'), 1, `array of ${arrayType}s`) - } - if (arrayType === 'object') { - childParamsGroups.push(...(await getBodyParams(param.items))) - } - } else if (paramType && paramType.includes('object')) { - childParamsGroups.push(...(await getBodyParams(param))) - } else if (param && param.oneOf) { - // get concatenated description and type - const descriptions = [] - for (const childParam of param.oneOf) { - paramType.push(childParam.type) - // If there is no parent description, create a description from - // each type - if (!param.description) { - if (childParam.type === 'array') { - if (childParam.items.description) { - descriptions.push({ - type: childParam.type, - description: childParam.items.description, - }) - } - } else { - if (childParam.description) { - descriptions.push({ type: childParam.type, description: childParam.description }) - } - } - } - } - // Occasionally, there is no parent description and the description - // is in the first child parameter. - const oneOfDescriptions = descriptions.length ? descriptions[0].description : '' - if (!param.description) param.description = oneOfDescriptions - } - - paramDecorated.type = paramType.filter(Boolean).join(' or ') - paramDecorated.name = paramKey - if (topLevel) { - paramDecorated.in = 'body' - } - paramDecorated.description = await renderContent(param.description) - if (required.includes(paramKey)) { - paramDecorated.isRequired = true - } - if (childParamsGroups.length > 0) { - paramDecorated.childParamsGroups = childParamsGroups - } - if (param.enum) { - paramDecorated.enum = param.enum - } - if (param.default) { - paramDecorated.default = param.default - } - // Supports backwards compatibility for OpenAPI 3.0 - // In 3.1 a nullable type is part of the param.type array and - // the property param.nullable does not exist. - if (param.nullable) paramDecorated.type('null') - bodyParametersParsed.push(paramDecorated) - } - return bodyParametersParsed -} diff --git a/script/search/index-elasticsearch.js b/script/search/index-elasticsearch.js index ad055f6ce8..27574dec77 100755 --- a/script/search/index-elasticsearch.js +++ b/script/search/index-elasticsearch.js @@ -13,11 +13,15 @@ import path from 'path' import { Client } from '@elastic/elasticsearch' import { program, Option } from 'commander' import chalk from 'chalk' +import dotenv from 'dotenv' import { languageKeys } from '../../lib/languages.js' import { allVersions } from '../../lib/all-versions.js' import { decompress } from '../../lib/search/compress.js' +// Now you can optionally have set the ELASTICSEARCH_URL in your .env file. +dotenv.config() + // Create an object that maps the "short name" of a version to // all information about it. E.g // @@ -61,6 +65,7 @@ program '-s, --source-directory ', `Directory where records files are (default ${DEFAULT_SOURCE_DIRECTORY})` ) + .option('-p, --index-prefix ', 'Index string to put before index name') .parse(process.argv) main(program.opts()) @@ -107,10 +112,7 @@ async function main(opts) { throw error } - const client = new Client({ - node, - sniffOnStart: true, - }) + const client = new Client({ node }) // This will throw if it can't ping await client.ping() @@ -122,10 +124,13 @@ async function main(opts) { console.log(`Indexing on languages ${chalk.bold(languages.join(', '))}`) } + const { indexPrefix } = opts + const prefix = indexPrefix ? `${indexPrefix}_` : '' + for (const language of languages) { for (const versionKey of versionKeys) { console.log(chalk.yellow(`Indexing ${chalk.bold(versionKey)} in ${chalk.bold(language)}`)) - const indexName = `github-docs-${versionKey}-${language}` + const indexName = `${prefix}github-docs-${versionKey}-${language}` console.time(`Indexing ${indexName}`) await indexVersion(client, indexName, versionKey, language, sourceDirectory, verbose) @@ -205,6 +210,9 @@ async function indexVersion( // Will later, conditionally, put the snowball configuration here. }, }, + // requestTimeout: 2 * 1000, + // timeout: 3 * 1000, + // master_timeout: 4 * 1000, } const snowballLanguage = getSnowballLanguage(language) if (snowballLanguage) { @@ -221,23 +229,20 @@ async function indexVersion( await client.indices.create({ index: thisAlias, - mappings: { - properties: { - url: { type: 'keyword' }, - title: { type: 'text', analyzer: 'text_analyzer', norms: false }, - title_autocomplete: { - type: 'search_as_you_type', - doc_values: false, - max_shingle_size: 3, + body: { + mappings: { + properties: { + url: { type: 'keyword' }, + title: { type: 'text', analyzer: 'text_analyzer', norms: false }, + content: { type: 'text', analyzer: 'text_analyzer' }, + headings: { type: 'text' }, + breadcrumbs: { type: 'text' }, + topics: { type: 'text' }, + popularity: { type: 'float' }, }, - content: { type: 'text', analyzer: 'text_analyzer' }, - headings: { type: 'text' }, - breadcrumbs: { type: 'text' }, - topics: { type: 'text' }, - popularity: { type: 'float' }, }, + settings, }, - settings, }) // POPULATE @@ -262,7 +267,7 @@ async function indexVersion( return [{ index: { _index: thisAlias } }, record] }) - const bulkResponse = await client.bulk({ refresh: true, operations }) + const bulkResponse = await client.bulk({ refresh: true, body: operations }) if (bulkResponse.errors) { // Some day, when we're more confident how and why this might happen @@ -274,7 +279,9 @@ async function indexVersion( throw new Error('Bulk errors happened.') } - const { count } = await client.count({ index: thisAlias }) + const { + body: { count }, + } = await client.count({ index: thisAlias }) console.log(`Documents now in ${chalk.bold(thisAlias)}: ${chalk.bold(count.toLocaleString())}`) // To perform an atomic operation that creates the new alias and removes @@ -293,7 +300,8 @@ async function indexVersion( ] console.log(`Alias ${indexName} -> ${thisAlias}`) - const indices = await client.cat.indices({ format: 'json' }) + // const indices = await client.cat.indices({ format: 'json' }) + const { body: indices } = await client.cat.indices({ format: 'json' }) for (const index of indices) { if (index.index !== thisAlias && index.index.startsWith(indexName)) { aliasUpdates.push({ remove_index: { index: index.index } }) diff --git a/stylesheets/extended-markdown.scss b/stylesheets/extended-markdown.scss index 0e1c819027..067e47f67f 100644 --- a/stylesheets/extended-markdown.scss +++ b/stylesheets/extended-markdown.scss @@ -23,6 +23,15 @@ padding: 0.5rem 0.5rem 0.5rem 0; margin-bottom: 0; } + + &.note, + &.warning, + &.tip, + &.danger { + p { + margin: 0; + } + } } .warning { diff --git a/tests/content/crowdin-config.js b/tests/content/crowdin-config.js deleted file mode 100644 index fb216e545d..0000000000 --- a/tests/content/crowdin-config.js +++ /dev/null @@ -1,54 +0,0 @@ -import CrowdinConfig from '../helpers/crowdin-config.js' -import { loadPages } from '../../lib/page-data.js' -import { jest } from '@jest/globals' - -const config = CrowdinConfig.read() -const ignoredPagePaths = config.files[0].ignore -const ignoredDataPaths = config.files[2].ignore - -describe('crowdin.yml config file', () => { - jest.setTimeout(60 * 1000) - - let pages - beforeAll(async () => { - pages = await loadPages() - }) - - test('has expected file structure', async () => { - expect(config.files.length).toBe(3) - expect(config.files[0].source).toBe('/content/**/*.md') - expect(config.files[0].ignore).toContain('/content/README.md') - }) - - test('ignores all Early Access paths', async () => { - expect(ignoredPagePaths).toContain('/content/early-access') - expect(ignoredDataPaths).toContain('/data/early-access') - }) - - test('ignores all hidden pages', async () => { - const hiddenPages = pages - .filter( - (page) => page.hidden && page.languageCode === 'en' && !page.hasExperimentalAlternative - ) - .map((page) => `/content/${page.relativePath}`) - const overlooked = hiddenPages.filter((page) => !isIgnored(page, ignoredPagePaths)) - const message = `Found some hidden pages that are not yet excluded from localization. - Please copy and paste the lines below into the \`ignore\` section of /crowdin.yml: \n\n"${overlooked.join( - '",\n"' - )}"` - - // This may not be true anymore given the separation of Early Access docs - // expect(hiddenPages.length).toBeGreaterThan(0) - expect(ignoredPagePaths.length).toBeGreaterThan(0) - expect(overlooked, message).toHaveLength(0) - }) -}) - -// file is ignored if its exact filename in the list, -// or if it's within an ignored directory -function isIgnored(filename, ignoredPagePaths) { - return ignoredPagePaths.some((ignoredPath) => { - const isDirectory = !ignoredPath.endsWith('.md') - return ignoredPath === filename || (isDirectory && filename.startsWith(ignoredPath)) - }) -} diff --git a/tests/content/featured-links.js b/tests/content/featured-links.js index 476fc3a549..b2dbca5e7d 100644 --- a/tests/content/featured-links.js +++ b/tests/content/featured-links.js @@ -4,7 +4,6 @@ import { fileURLToPath } from 'url' import { beforeAll, jest } from '@jest/globals' import nock from 'nock' -import japaneseCharacters from 'japanese-characters' import { getDOM, getJSON } from '../helpers/e2etest.js' import enterpriseServerReleases from '../../lib/enterprise-server-releases.js' @@ -49,23 +48,6 @@ describe('featuredLinks', () => { ).toBe(true) }) - test('localized intro links link to localized pages', async () => { - const $jaPages = await getDOM('/ja') - const $enPages = await getDOM('/en') - const $jaFeaturedLinks = $jaPages('[data-testid=article-list] a') - const $enFeaturedLinks = $enPages('[data-testid=article-list] a') - expect($jaFeaturedLinks.length).toBe($enFeaturedLinks.length) - expect($jaFeaturedLinks.eq(0).attr('href').startsWith('/ja')).toBe(true) - - // Footer translations change very rarely if ever, so we can more - // reliably test those text values for the language - const footerText = [] - $jaPages('footer a').each((index, element) => { - footerText.push($jaPages(element).text()) - }) - expect(footerText.some((elem) => japaneseCharacters.presentIn(elem))) - }) - test('Enterprise user intro links have expected values', async () => { const $ = await getDOM(`/en/enterprise/${enterpriseServerReleases.latest}/user/get-started`) const $featuredLinks = $('[data-testid=article-list] a') diff --git a/tests/content/glossary.js b/tests/content/glossary.js index 12bbae0664..fef36c2882 100644 --- a/tests/content/glossary.js +++ b/tests/content/glossary.js @@ -37,13 +37,6 @@ describe('glossaries', () => { }) }) - test('non-English external glossary is in correct order', async () => { - const vals = loadSiteData().ja.site.data.glossaries.external - vals.forEach((val, i) => { - expect(val.term.localeCompare(vals[i + 1], 'ja')).toBeGreaterThan(0) - }) - }) - test('candidates all have a term, but no description', async () => { expect(glossaries.candidates.length).toBeGreaterThan(20) glossaries.candidates.forEach((entry) => { diff --git a/tests/content/search.js b/tests/content/search.js index e42898d5c6..f99423cb7a 100644 --- a/tests/content/search.js +++ b/tests/content/search.js @@ -31,16 +31,6 @@ describe('search', () => { }) }) }) - - test('has Lunr index for every language for dotcom', async () => { - expect(languageCodes.length).toBeGreaterThan(0) - languageCodes.forEach((languageCode) => { - const indexName = `${namePrefix}-dotcom-${languageCode}` - const indexRecordName = `${indexName}-records` - expect(lunrIndexNames.includes(indexName)).toBe(true) - expect(lunrIndexNames.includes(indexRecordName)).toBe(true) - }) - }) }) function getDate(date) { diff --git a/tests/content/site-data.js b/tests/content/site-data.js index 46f6f2fe2f..cb473d8208 100644 --- a/tests/content/site-data.js +++ b/tests/content/site-data.js @@ -19,7 +19,6 @@ describe('siteData module (English)', () => { test('sets a top-level key for each language', async () => { expect('en' in data).toEqual(true) - expect('ja' in data).toEqual(true) }) test('includes English variables', async () => { @@ -35,16 +34,6 @@ describe('siteData module (English)', () => { expect(reusable).toBe('1. Change the current working directory to your local repository.') }) - test('includes Japanese variables', async () => { - const prodName = get(data, 'ja.site.data.variables.product.prodname_dotcom') - expect(prodName).toBe('GitHub') - }) - - test('includes Japanese reusables', async () => { - const reusable = get(data, 'ja.site.data.reusables.audit_log.octicon_icon') - expect(reusable.includes('任意のページの左上で')).toBe(true) - }) - test('all Liquid tags are valid', async () => { const dataMap = flat(data) for (const key in dataMap) { diff --git a/tests/content/site-tree.js b/tests/content/site-tree.js index 64551eb266..8d930eb235 100644 --- a/tests/content/site-tree.js +++ b/tests/content/site-tree.js @@ -2,7 +2,6 @@ import revalidator from 'revalidator' import schema from '../helpers/schemas/site-tree-schema.js' import EnterpriseServerReleases from '../../lib/enterprise-server-releases.js' import { loadSiteTree } from '../../lib/page-data.js' -import japaneseCharacters from 'japanese-characters' import nonEnterpriseDefaultVersion from '../../lib/non-enterprise-default-version.js' import { jest } from '@jest/globals' @@ -18,7 +17,6 @@ describe('siteTree', () => { test('has language codes as top-level keys', () => { expect('en' in siteTree).toBe(true) - expect('ja' in siteTree).toBe(true) }) test('object order and structure', () => { @@ -29,19 +27,6 @@ describe('siteTree', () => { }) describe('localized titles', () => { - // skipped because it has rendering errors. See translations/log/ja-resets.csv - test.skip('titles for categories', () => { - const japaneseTitle = - siteTree.ja[nonEnterpriseDefaultVersion].childPages[0].childPages[0].page.title - expect(typeof japaneseTitle).toBe('string') - expect(japaneseCharacters.presentIn(japaneseTitle)).toBe(true) - - const englishTitle = - siteTree.en[nonEnterpriseDefaultVersion].childPages[0].childPages[0].page.title - expect(typeof englishTitle).toBe('string') - expect(japaneseCharacters.presentIn(englishTitle)).toBe(false) - }) - test('articles that include site data in liquid templating', async () => { const ghesLatest = `enterprise-server@${latestEnterpriseRelease}` const ghesSiteTree = siteTree.en[ghesLatest] diff --git a/tests/fixtures/versionless-redirects.txt b/tests/fixtures/versionless-redirects.txt index ef00c5335c..2631a91c4e 100644 --- a/tests/fixtures/versionless-redirects.txt +++ b/tests/fixtures/versionless-redirects.txt @@ -90,7 +90,7 @@ - /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 -/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-project-board-policies-in-your-enterprise +/enterprise-cloud@latest/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-projects-in-your-enterprise - /articles/enforcing-project-board-settings-for-organizations-in-your-business-account - /articles/enforcing-project-board-policies-for-organizations-in-your-enterprise-account - /articles/enforcing-project-board-policies-in-your-enterprise-account diff --git a/tests/helpers/conditional-runs.js b/tests/helpers/conditional-runs.js index da762a1397..2e1951358b 100644 --- a/tests/helpers/conditional-runs.js +++ b/tests/helpers/conditional-runs.js @@ -4,9 +4,13 @@ const runningActionsOnInternalRepo = export const testViaActionsOnly = runningActionsOnInternalRepo ? test : test.skip export const describeViaActionsOnly = runningActionsOnInternalRepo ? describe : describe.skip export const describeIfElasticsearchURL = process.env.ELASTICSEARCH_URL ? describe : describe.skip +export const describeIfDedicatedSearchResultsPage = process.env.ENABLE_SEARCH_RESULTS_PAGE + ? describe + : describe.skip export default { testViaActionsOnly, describeViaActionsOnly, describeIfElasticsearchURL, + describeIfDedicatedSearchResultsPage, } diff --git a/tests/helpers/crowdin-config.js b/tests/helpers/crowdin-config.js deleted file mode 100644 index 5d10555146..0000000000 --- a/tests/helpers/crowdin-config.js +++ /dev/null @@ -1,12 +0,0 @@ -import { fileURLToPath } from 'url' -import path from 'path' -import fs from 'fs' -import yaml from 'js-yaml' -const __dirname = path.dirname(fileURLToPath(import.meta.url)) - -export const read = function () { - const filename = path.join(__dirname, '../../crowdin.yml') - return yaml.load(fs.readFileSync(filename, 'utf8'), { filename }) -} - -export default { read } diff --git a/tests/helpers/e2etest.js b/tests/helpers/e2etest.js index 2e1ef00ba0..6195b72c4c 100644 --- a/tests/helpers/e2etest.js +++ b/tests/helpers/e2etest.js @@ -10,7 +10,6 @@ export async function get( followRedirects: false, followAllRedirects: false, headers: {}, - cookieJar: undefined, } ) { const method = opts.method || 'get' @@ -22,7 +21,6 @@ export async function get( body: opts.body, headers: opts.headers, retry: { limit: 0 }, - cookieJar: opts.cookieJar, throwHttpErrors: false, followRedirect: opts.followAllRedirects || opts.followRedirects, }, @@ -62,14 +60,13 @@ export function post(route, opts) { export async function getDOM( route, - { headers, allow500s, allow404, cookieJar } = { + { headers, allow500s, allow404 } = { headers: undefined, allow500s: false, allow404: false, - cookieJar: undefined, } ) { - const res = await get(route, { followRedirects: true, headers, cookieJar }) + const res = await get(route, { followRedirects: true, headers }) if (!allow500s && res.status >= 500) { throw new Error(`Server error (${res.status}) on ${route}`) } diff --git a/tests/helpers/lint-translation-reporter.js b/tests/helpers/lint-translation-reporter.js index dae6fc02b8..3e532f66f5 100644 --- a/tests/helpers/lint-translation-reporter.js +++ b/tests/helpers/lint-translation-reporter.js @@ -1,3 +1,5 @@ +// Remove this when removing translations directory B504EDD0 + import chalk from 'chalk' import stripAnsi from 'strip-ansi' import { groupBy } from 'lodash-es' diff --git a/tests/helpers/schemas/languages-schema.js b/tests/helpers/schemas/languages-schema.js deleted file mode 100644 index 73099ceedc..0000000000 --- a/tests/helpers/schemas/languages-schema.js +++ /dev/null @@ -1,48 +0,0 @@ -export default { - properties: { - name: { - required: true, - description: 'the English name', - type: 'string', - }, - - nativeName: { - description: 'the native name', - type: 'string', - }, - - code: { - required: true, - description: 'the code used in the URL', - type: 'string', - minLength: 2, - maxLength: 2, - }, - - dir: { - required: true, - description: 'the local relative path to files in this language', - type: 'string', - }, - - // https://support.google.com/webmasters/answer/189077 - // https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes - // http://unicode.org/iso15924/iso15924-codes.html - hreflang: { - required: true, - description: 'the ISO 639-1, ISO 3166-1 Alpha 2, or ISO 15924 language code', - type: 'string', - minLength: 2, - }, - - redirectPatterns: { - description: 'array of regular expressions used for redirecting incorrect URLs', - type: 'array', - }, - - wip: { - description: 'boolean indicating whether translations are incomplete', - type: 'boolean', - }, - }, -} diff --git a/tests/linting/lint-files.js b/tests/linting/lint-files.js index 93cf500f81..b1ef96ada2 100644 --- a/tests/linting/lint-files.js +++ b/tests/linting/lint-files.js @@ -277,6 +277,7 @@ if (!process.env.TEST_TRANSLATION) { ) learningTracksToLint = zip(learningTracksYamlRelPaths, learningTracksYamlAbsPaths) } else { + // Remove this `else` when removing translations directory B504EDD0 // get all translated markdown or yaml files by comparing files changed to main branch const changedFilesRelPaths = execSync( 'git -c diff.renameLimit=10000 diff --name-only origin/main', diff --git a/tests/meta/repository-references.js b/tests/meta/repository-references.js index 261ce28119..d9526f9841 100644 --- a/tests/meta/repository-references.js +++ b/tests/meta/repository-references.js @@ -66,6 +66,7 @@ const PUBLIC_REPOS = new Set([ 'super-linter', 'tweetsodium', 'VisualStudio', + 'codespaces-getting-started-ml', ]) const ALLOW_DOCS_PATHS = [ diff --git a/tests/rendering/block-robots.js b/tests/rendering/block-robots.js index 8bc7041391..2e93df331f 100644 --- a/tests/rendering/block-robots.js +++ b/tests/rendering/block-robots.js @@ -1,5 +1,4 @@ import { blockIndex } from '../../middleware/block-robots.js' -import languages from '../../lib/languages.js' import { productMap } from '../../lib/all-products.js' import enterpriseServerReleases from '../../lib/enterprise-server-releases.js' @@ -14,13 +13,6 @@ describe('block robots', () => { expect(allowIndex('/en/articles/verifying-your-email-address')).toBe(true) }) - it('allows crawling of generally available localized content', async () => { - Object.values(languages).forEach((language) => { - expect(allowIndex(`/${language.code}`)).toBe(true) - expect(allowIndex(`/${language.code}/articles/verifying-your-email-address`)).toBe(true) - }) - }) - it('disallows crawling of WIP products', async () => { const wipProductIds = Object.values(productMap) .filter((product) => product.wip) @@ -29,19 +21,11 @@ describe('block robots', () => { wipProductIds.forEach((id) => { const { href } = productMap[id] const blockedPaths = [ - // English `/en${href}`, `/en${href}/overview`, `/en${href}/overview/intro`, `/en/enterprise/${enterpriseServerReleases.latest}/user${href}`, `/en/enterprise/${enterpriseServerReleases.oldestSupported}/user${href}`, - - // Japanese - `/ja${href}`, - `/ja${href}/overview`, - `/ja${href}/overview/intro`, - `/ja/enterprise/${enterpriseServerReleases.latest}/user${href}`, - `/ja/enterprise/${enterpriseServerReleases.oldestSupported}/user${href}`, ] blockedPaths.forEach((path) => { @@ -59,14 +43,7 @@ describe('block robots', () => { const { versions } = productMap[id] const blockedPaths = versions .map((version) => { - return [ - // English - `/en/${version}/${id}`, - `/en/${version}/${id}/some-early-access-article`, - // Japanese - `/ja/${version}/${id}`, - `/ja/${version}/${id}/some-early-access-article`, - ] + return [`/en/${version}/${id}`, `/en/${version}/${id}/some-early-access-article`] }) .flat() @@ -90,16 +67,10 @@ describe('block robots', () => { it('disallows crawling of deprecated enterprise releases', async () => { enterpriseServerReleases.deprecated.forEach((version) => { const blockedPaths = [ - // English `/en/enterprise-server@${version}/actions`, `/en/enterprise/${version}/actions`, `/en/enterprise-server@${version}/actions/overview`, `/en/enterprise/${version}/actions/overview`, - // Japanese - `/ja/enterprise-server@${version}/actions`, - `/ja/enterprise/${version}/actions`, - `/ja/enterprise-server@${version}/actions/overview`, - `/ja/enterprise/${version}/actions/overview`, ] blockedPaths.forEach((path) => { diff --git a/tests/rendering/breadcrumbs.js b/tests/rendering/breadcrumbs.js index db31e6f57b..aeb9e46987 100644 --- a/tests/rendering/breadcrumbs.js +++ b/tests/rendering/breadcrumbs.js @@ -83,12 +83,6 @@ describe('breadcrumbs', () => { const $breadcrumbs = $('[data-testid=breadcrumbs] a') expect($breadcrumbs[0].attribs.href).toBe('/en/get-started') }) - - test('localized breadcrumbs link to localize pages', async () => { - const $ = await getDOM('/ja/get-started/learning-about-github') - const $breadcrumbs = $('[data-testid=breadcrumbs] a') - expect($breadcrumbs[0].attribs.href).toBe('/ja/get-started') - }) }) describeInternalOnly('early access rendering', () => { diff --git a/tests/rendering/curated-homepage-links.js b/tests/rendering/curated-homepage-links.js index ccbba75c04..e5a6e5a352 100644 --- a/tests/rendering/curated-homepage-links.js +++ b/tests/rendering/curated-homepage-links.js @@ -29,25 +29,4 @@ describe('curated homepage links', () => { expect($(el).find('p p').length).toBe(0) }) }) - - test('Japanese', async () => { - const $ = await getDOM('/ja') - const $links = $('[data-testid=bump-link]') - expect($links.length).toBeGreaterThanOrEqual(8) - - // Check that each link is localized and includes a title and intro - $links.each((i, el) => { - const linkUrl = $(el).attr('href') - - expect(linkUrl.startsWith('/ja/')).toBe(true) - expect( - $(el).find('[data-testid=link-with-intro-title]').text().trim().length, - `Did not find a title for the linked article ${linkUrl}` - ).toBeGreaterThan(0) - expect( - $(el).find('[data-testid=link-with-intro-intro]').text().trim().length, - `Did not find an intro for the linked article ${linkUrl}` - ).toBeGreaterThan(0) - }) - }) }) diff --git a/tests/rendering/head.js b/tests/rendering/head.js index b196bda20f..3a4132421b 100644 --- a/tests/rendering/head.js +++ b/tests/rendering/head.js @@ -1,5 +1,4 @@ import { getDOM } from '../helpers/e2etest.js' -import languages from '../../lib/languages.js' import { jest } from '@jest/globals' jest.useFakeTimers({ legacyFakeTimers: true }) @@ -7,24 +6,6 @@ jest.useFakeTimers({ legacyFakeTimers: true }) describe('', () => { jest.setTimeout(5 * 60 * 1000) - test('includes hreflangs (references to all language versions of the same page)', async () => { - const $ = await getDOM('/en') - const $hreflangs = $('link[rel="alternate"]') - expect($hreflangs.length).toEqual(Object.keys(languages).length) - expect($('link[href="https://docs.github.com/cn"]').length).toBe(1) - expect($('link[href="https://docs.github.com/ja"]').length).toBe(1) - // Due to a bug in either NextJS, JSX, or TypeScript, - // when put `` in a .tsx file, this incorrectly - // gets rendered out as `` in the final HTML. - // Note the uppercase L. It's supposed to become ``. - // When cheerio serializes to HTML, it gets this right so it lowercases - // the attribute. So if this rendering in this jest test was the first - // ever cold hit, you might get the buggy HTML from React or you - // might get the correct HTML from cheerio's `.html()` serializer. - // This is why we're looking for either. - expect($('link[hreflang="en"]').length + $('link[hrefLang="en"]').length).toBe(1) - }) - test('includes page intro in `description` meta tag', async () => { const $ = await getDOM('/en/articles/about-ssh') const $description = $('meta[name="description"]') diff --git a/tests/rendering/header.js b/tests/rendering/header.js index ba594b10a2..0351a999fc 100644 --- a/tests/rendering/header.js +++ b/tests/rendering/header.js @@ -6,99 +6,6 @@ import { oldestSupported } from '../../lib/enterprise-server-releases.js' describe('header', () => { jest.setTimeout(5 * 60 * 1000) - test('includes localized meta tags', async () => { - const $ = await getDOM('/en') - expect($('link[rel="alternate"]').length).toBeGreaterThan(2) - }) - - test("includes a link to the homepage (in the current page's language)", async () => { - let $ = await getDOM('/en') - expect($('#github-logo a[href="/en"]').length).toBe(2) - - $ = await getDOM('/ja') - expect($('#github-logo a[href="/ja"]').length).toBe(2) - expect($('#github-logo a[href="/en"]').length).toBe(0) - }) - - describe.skip('language links', () => { - test('lead to the same page in a different language', async () => { - const $ = await getDOM( - '/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule' - ) - expect( - $( - 'li a[href="/ja/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule"]' - ).length - ).toBe(1) - }) - - test('display the native name and the English name for each translated language', async () => { - const $ = await getDOM('/en') - - expect($('[data-testid=language-picker] li a[href="/en"]').text().trim()).toBe('English') - expect($('[data-testid=language-picker] li a[href="/cn"]').text().trim()).toBe('简体中文') - expect($('[data-testid=language-picker] li a[href="/ja"]').text().trim()).toBe('日本語') - }) - - test('emphasize the current language', async () => { - const $ = await getDOM('/en') - expect($('[data-testid=desktop-header] [data-testid=language-picker] button').text()).toBe( - 'English' - ) - }) - }) - - describe('notices', () => { - // Docs engineering issue: 1055 - test.skip('displays a "localization in progress" notice for WIP languages', async () => { - const $ = await getDOM('/de') - expect($('[data-testid=header-notification][data-type=TRANSLATION]').length).toBe(1) - expect($('[data-testid=header-notification] a[href="/en"]').length).toBe(1) - }) - - test('displays "complete" notice for non-WIP non-English languages', async () => { - const $ = await getDOM('/ja') - expect($('[data-testid=header-notification][data-type=TRANSLATION]').length).toBe(1) - expect($('[data-testid=header-notification] a[href="/en"]').length).toBe(1) - }) - - // Docs Engineering issue: 966 - test.skip('does not display any notices for English', async () => { - const $ = await getDOM('/en') - expect($('[data-testid=header-notification]').length).toBe(0) - }) - - test.skip("renders a link to the same page in user's preferred language, if available", async () => { - // const headers = { 'accept-language': 'ja' } - // const $ = await getDOM('/en', { headers }) - // expect(getUserLanguage($)).toBe('ja') - }) - - test.skip("renders a link to the same page if user's preferred language is Chinese - PRC", async () => { - // const headers = { 'accept-language': 'zh-CN' } - // const $ = await getDOM('/en', { headers }) - // expect(getUserLanguage($)).toBe('cn') - }) - - test.skip("renders a link to the same page in user's preferred language from multiple, if available", async () => { - // const headers = { 'accept-language': 'ja, *;q=0.9' } - // const $ = await getDOM('/en', { headers }) - // expect(getUserLanguage($)).toBe('ja') - }) - - test.skip("renders a link to the same page in user's preferred language with weights, if available", async () => { - // const headers = { 'accept-language': 'ja;q=1.0, *;q=0.9' } - // const $ = await getDOM('/en', { headers }) - // expect(getUserLanguage($)).toBe('ja') - }) - - test.skip("renders a link to the user's 2nd preferred language if 1st is not available", async () => { - // const headers = { 'accept-language': 'zh-TW,zh;q=0.9,ja *;q=0.8' } - // const $ = await getDOM('/en', { headers }) - // expect(getUserLanguage($)).toBe('ja') - }) - }) - describe('mobile-only product dropdown links', () => { test('include Get started and admin, and emphasize the current product', async () => { const $ = await getDOM( @@ -113,14 +20,6 @@ describe('header', () => { expect(ghec.text().trim()).toBe('Enterprise administrators') }) - test("point to homepages in the current page's language", async () => { - const $ = await getDOM('/ja/github/site-policy/github-terms-of-service') - const $breadcrumbRefs = $('[data-testid=breadcrumbs] a') - expect($breadcrumbRefs[0].attribs.href.startsWith('/ja')).toBe(true) - const $sidebarRefs = $('[data-testid=sidebar] a') - expect($sidebarRefs[0].attribs.href.startsWith('/ja')).toBe(true) - }) - test('emphasizes the product that corresponds to the current page', async () => { const $ = await getDOM( `/en/enterprise-server@${oldestSupported}/get-started/importing-your-projects-to-github/importing-source-code-to-github/importing-a-git-repository-using-the-command-line` diff --git a/tests/rendering/page-titles.js b/tests/rendering/page-titles.js index ac87defb08..9a4288f28d 100644 --- a/tests/rendering/page-titles.js +++ b/tests/rendering/page-titles.js @@ -51,13 +51,4 @@ describe('page titles', () => { `GitHub Enterprise Server Help Documentation - GitHub Enterprise Server ${enterpriseServerReleases.latest} Docs` ) }) - - // TODO enable this once translated content has synced with the versioning changes - // Note the expected translations may need to be updated, since the English title changed - // from `GitHub.com Help Documentation` to `GitHub Documentation` - // Docs Engineering issue: 967 - test.skip('displays only the site name on localized homepages', async () => { - expect((await getDOM('/cn'))('title').text()).toBe('GitHub 帮助文档') - expect((await getDOM('/ja'))('title').text()).toBe('GitHub ヘルプドキュメント') - }) }) diff --git a/tests/rendering/products.js b/tests/rendering/products.js index 72462beea7..8579aa5fbf 100644 --- a/tests/rendering/products.js +++ b/tests/rendering/products.js @@ -16,9 +16,6 @@ describe('mobile-only products nav', () => { ['/desktop', 'GitHub Desktop'], ['/actions', 'GitHub Actions'], - - // localized - ['/ja/desktop', 'GitHub Desktop'], ] test.each(cases)('on %p, renders current product %p', async (url, name) => { diff --git a/tests/rendering/robots-txt.js b/tests/rendering/robots-txt.js index 5c05bad054..b51688901b 100644 --- a/tests/rendering/robots-txt.js +++ b/tests/rendering/robots-txt.js @@ -1,4 +1,3 @@ -import languages from '../../lib/languages.js' import robotsParser from 'robots-parser' import { get } from '../helpers/e2etest.js' import { jest } from '@jest/globals' @@ -24,17 +23,6 @@ describe('robots.txt', () => { ).toBe(true) }) - it('allows indexing of generally available localized content', async () => { - Object.values(languages).forEach((language) => { - expect(robots.isAllowed(`https://docs.github.com/${language.code}`)).toBe(true) - expect( - robots.isAllowed( - `https://docs.github.com/${language.code}/articles/verifying-your-email-address` - ) - ).toBe(true) - }) - }) - it('disallows indexing of azurecontainer.io domains', async () => { const res = await get('/robots.txt', { headers: { diff --git a/tests/rendering/search.js b/tests/rendering/search.js index eafe42ee75..c2b4899293 100644 --- a/tests/rendering/search.js +++ b/tests/rendering/search.js @@ -1,8 +1,9 @@ import { expect, jest } from '@jest/globals' import { getDOM } from '../helpers/e2etest.js' +import { describeIfDedicatedSearchResultsPage } from '../helpers/conditional-runs.js' -describe('search results page', () => { +describeIfDedicatedSearchResultsPage('search results page', () => { jest.setTimeout(5 * 60 * 1000) test('says something if no query is provided', async () => { diff --git a/tests/rendering/server.js b/tests/rendering/server.js index a7ed3fe0d7..66f71f47d5 100644 --- a/tests/rendering/server.js +++ b/tests/rendering/server.js @@ -7,7 +7,6 @@ import CspParse from 'csp-parse' import { productMap } from '../../lib/all-products.js' import { SURROGATE_ENUMS } from '../../middleware/set-fastly-surrogate-key.js' import { describe, jest } from '@jest/globals' -import { languageKeys } from '../../lib/languages.js' const AZURE_STORAGE_URL = 'githubdocs.azureedge.net' const activeProducts = Object.values(productMap).filter( @@ -141,12 +140,6 @@ describe('server', () => { expect($('body').length).toBe(1) }) - test('sets `lang` attribute on attribute', async () => { - expect((await getDOM('/en'))('html').attr('lang')).toBe('en') - expect((await getDOM('/en/articles/set-up-git'))('html').attr('lang')).toBe('en') - expect((await getDOM('/ja'))('html').attr('lang')).toBe('ja') - }) - test('renders a 404 page', async () => { const $ = await getDOM('/not-a-real-page', { allow404: true }) expect($('h1').text()).toBe('Ooops!') @@ -326,7 +319,7 @@ describe('server', () => { test('renders mini TOC in articles with more than one heading', async () => { const $ = await getDOM('/en/github/getting-started-with-github/githubs-products') expect($('h2#in-this-article').length).toBe(1) - expect($('h2#in-this-article + div div ul').length).toBeGreaterThan(1) + expect($('h2#in-this-article + nav ul li').length).toBeGreaterThan(1) }) test('renders mini TOC in articles that includes h3s when specified by frontmatter', async () => { @@ -334,8 +327,8 @@ describe('server', () => { '/en/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise' ) expect($('h2#in-this-article').length).toBe(1) - expect($('h2#in-this-article + div div ul').length).toBeGreaterThan(0) // non-indented items - expect($('h2#in-this-article + div div ul li div div ul.ml-3').length).toBeGreaterThan(0) // indented items + expect($('h2#in-this-article + nav ul').length).toBeGreaterThan(0) // non-indented items + expect($('h2#in-this-article + nav ul div ul div').length).toBeGreaterThan(0) // indented items }) test('does not render mini TOC in articles with only one heading', async () => { @@ -358,13 +351,7 @@ describe('server', () => { // TODO test('renders mini TOC with correct links when headings contain markup', async () => { const $ = await getDOM('/en/actions/using-workflows/workflow-syntax-for-github-actions') - expect($('h2#in-this-article + div div ul a[href="#on"]').length).toBe(1) - }) - - // TODO - test('renders mini TOC with correct links when headings contain markup in localized content', async () => { - const $ = await getDOM('/ja/actions/using-workflows/workflow-syntax-for-github-actions') - expect($('h2#in-this-article + div div ul a[href="#on"]').length).toBe(1) + expect($('h2#in-this-article + nav ul li a[href="#on"]').length).toBe(1) }) }) @@ -633,23 +620,6 @@ describe('server', () => { expect(res.headers['set-cookie']).toBeUndefined() }) - test('redirects / to appropriate language preference if specified', async () => { - await Promise.all( - languageKeys.map(async (languageKey) => { - const res = await get('/', { - headers: { - 'accept-language': `${languageKey}`, - }, - followRedirects: false, - }) - expect(res.statusCode).toBe(302) - expect(res.headers.location).toBe(`/${languageKey}`) - expect(res.headers['cache-control']).toBe('private, no-store') - expect(res.headers['set-cookie']).toBeUndefined() - }) - ) - }) - // This test exists because in a previous life, our NextJS used to // 500 if the 'Accept-Language' header was malformed. // We *used* have a custom middleware to cope with this and force a @@ -749,18 +719,6 @@ describe('server', () => { }) }) -describe('URLs by language', () => { - test('heading IDs and links on translated pages are in English', async () => { - const $ = await getDOM('/ja/site-policy/github-terms/github-terms-of-service') - expect($.res.statusCode).toBe(200) - // This check is true on either the translated version of the page, or when the title is pending translation and is in English. - expect($('h1')[0].children[0].data).toMatch( - /(GitHub利用規約|GitHub Terms of Service|GitHub のサービス条件)/ - ) - expect($('h2 a[href="#summary"]').length).toBe(1) - }) -}) - describe('GitHub Enterprise URLs', () => { test('renders the GHE user docs homepage', async () => { const $ = await getDOM(`/en/enterprise/${enterpriseServerReleases.latest}/user/get-started`) @@ -798,12 +756,6 @@ describe('GitHub Enterprise URLs', () => { expect($(`a[href^="${installationCategoryHome}/"]`).length).toBeGreaterThan(1) }) - test('renders a translated Enterprise Admin category with English links', async () => { - const installationCategoryHome = `/ja/enterprise-server@${enterpriseServerReleases.latest}/admin/installation` - const $ = await getDOM(installationCategoryHome) - expect($(`a[href^="${installationCategoryHome}/"]`).length).toBeGreaterThan(1) - }) - test('renders an Enterprise Admin category article', async () => { const $ = await getDOM( `/en/enterprise/${enterpriseServerReleases.latest}/admin/overview/about-github-enterprise-server` @@ -828,26 +780,6 @@ describe('GitHub Enterprise URLs', () => { ) expect($.text()).toContain('Before upgrading GitHub Enterprise') }) - - test('renders Enterprise homepage in Japanese', async () => { - const res = await get(`/ja/enterprise-server@${enterpriseServerReleases.latest}`) - expect(res.statusCode).toBe(200) - }) - - test('renders Enterprise Admin homepage in Japanese', async () => { - const res = await get(`/ja/enterprise-server@${enterpriseServerReleases.latest}/admin`) - expect(res.statusCode).toBe(200) - }) - - test('renders Enterprise homepage in Chinese', async () => { - const res = await get(`/cn/enterprise-server@${enterpriseServerReleases.latest}`) - expect(res.statusCode).toBe(200) - }) - - test('renders Enterprise Admin homepage in Chinese', async () => { - const res = await get(`/cn/enterprise-server@${enterpriseServerReleases.latest}/admin`) - expect(res.statusCode).toBe(200) - }) }) describe('GitHub Desktop URLs', () => { @@ -878,11 +810,6 @@ describe('GitHub Desktop URLs', () => { ) expect(res.statusCode).toBe(200) }) - - test('renders the Desktop homepage in Japanese', async () => { - const res = await get('/ja/desktop') - expect(res.statusCode).toBe(200) - }) }) describe('extended Markdown', () => { @@ -918,13 +845,9 @@ describe('extended Markdown', () => { test('renders expected mini TOC headings in platform-specific content', async () => { const $ = await getDOM('/en/github/using-git/associating-text-editors-with-git') expect($('h2#in-this-article').length).toBe(1) - expect($('h2#in-this-article + div div ul li.extended-markdown.mac').length).toBeGreaterThan(1) - expect( - $('h2#in-this-article + div div ul li.extended-markdown.windows').length - ).toBeGreaterThan(1) - expect($('h2#in-this-article + div div ul li.extended-markdown.linux').length).toBeGreaterThan( - 1 - ) + expect($('h2#in-this-article + nav ul div.extended-markdown.mac').length).toBeGreaterThan(1) + expect($('h2#in-this-article + nav ul div.extended-markdown.windows').length).toBeGreaterThan(1) + expect($('h2#in-this-article + nav ul div.extended-markdown.linux').length).toBeGreaterThan(1) }) }) @@ -1060,15 +983,8 @@ describe('REST reference pages', () => { const res = await get('/en/rest/repos') expect(res.statusCode).toBe(200) }) - test('view the rest/repos page in Japanese', async () => { - const res = await get('/ja/rest/repos') - expect(res.statusCode).toBe(200) - }) + test('deeper pages in English', async () => { - const res = await get('/ja/enterprise-cloud@latest/rest/code-scanning') - expect(res.statusCode).toBe(200) - }) - test('deeper pages in Japanese', async () => { const res = await get('/en/enterprise-cloud@latest/rest/code-scanning') expect(res.statusCode).toBe(200) }) diff --git a/tests/routing/deprecated-enterprise-versions.js b/tests/routing/deprecated-enterprise-versions.js index e693789f5f..b02820863e 100644 --- a/tests/routing/deprecated-enterprise-versions.js +++ b/tests/routing/deprecated-enterprise-versions.js @@ -3,7 +3,6 @@ import { describe, jest, test } from '@jest/globals' import enterpriseServerReleases from '../../lib/enterprise-server-releases.js' import { get, getDOM } from '../helpers/e2etest.js' import { SURROGATE_ENUMS } from '../../middleware/set-fastly-surrogate-key.js' -import { PREFERRED_LOCALE_COOKIE_NAME } from '../../lib/constants.js' jest.useFakeTimers({ legacyFakeTimers: true }) @@ -99,16 +98,7 @@ describe('recently deprecated redirects', () => { // Deliberately no cache control because it is user-dependent expect(res.headers['cache-control']).toBe('private, no-store') }) - test('basic enterprise 3.0 redirects by cookie', async () => { - const res = await get('/enterprise/3.0', { - headers: { - Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=ja`, - }, - followRedirects: false, - }) - expect(res.statusCode).toBe(302) - expect(res.headers.location).toBe('/ja/enterprise-server@3.0') - }) + test('already languaged enterprise 3.0 redirects', async () => { const res = await get('/en/enterprise/3.0') expect(res.statusCode).toBe(301) @@ -132,20 +122,7 @@ describe('recently deprecated redirects', () => { '/en/enterprise-server@3.0/get-started/learning-about-github/githubs-products' ) }) - test('redirects enterprise-server 3.0 with actual redirect with language', async () => { - const res = await get( - '/ja/enterprise-server@3.0/github/getting-started-with-github/githubs-products' - ) - expect(res.statusCode).toBe(301) - expect(res.headers['set-cookie']).toBeUndefined() - expect(res.headers['cache-control']).toContain('public') - expect(res.headers['cache-control']).toMatch(/max-age=\d+/) - // This is based on - // https://github.com/github/help-docs-archived-enterprise-versions/blob/master/3.0/redirects.json - expect(res.headers.location).toBe( - '/ja/enterprise-server@3.0/get-started/learning-about-github/githubs-products' - ) - }) + test('follow redirects enterprise-server 3.0 with actual redirect without language', async () => { const res = await get( '/enterprise-server@3.0/github/getting-started-with-github/githubs-products', diff --git a/tests/routing/language-code-redirects.js b/tests/routing/language-code-redirects.js deleted file mode 100644 index 585d2f3701..0000000000 --- a/tests/routing/language-code-redirects.js +++ /dev/null @@ -1,27 +0,0 @@ -import { jest } from '@jest/globals' - -import { get } from '../helpers/e2etest.js' - -describe('language code redirects', () => { - jest.setTimeout(5 * 60 * 1000) - - test('redirects accidental /jp* requests to /ja*', async () => { - let res = await get('/jp') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe('/ja') - - res = await get('/jp/articles/about-your-personal-dashboard') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe('/ja/articles/about-your-personal-dashboard') - }) - - test('redirects accidental /zh-CN* requests to /cn*', async () => { - let res = await get('/zh-CN') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe('/cn') - - res = await get('/zh-TW/articles/about-your-personal-dashboard') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe('/cn/articles/about-your-personal-dashboard') - }) -}) diff --git a/tests/routing/redirects.js b/tests/routing/redirects.js index 65eb194fec..cd4e4baa9a 100644 --- a/tests/routing/redirects.js +++ b/tests/routing/redirects.js @@ -9,7 +9,6 @@ import enterpriseServerReleases, { import Page from '../../lib/page.js' import { get, head } from '../helpers/e2etest.js' import versionSatisfiesRange from '../../lib/version-satisfies-range.js' -import { PREFERRED_LOCALE_COOKIE_NAME } from '../../lib/constants.js' const __dirname = path.dirname(fileURLToPath(import.meta.url)) @@ -17,7 +16,9 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url)) // dedicated search results page works. // In a near future, we won't be needing this and assume it's always // true. -const USE_DEDICATED_SEARCH_RESULTS_PAGE = Boolean(process.env.ELASTICSEARCH_URL) +const USE_DEDICATED_SEARCH_RESULTS_PAGE = Boolean( + JSON.parse(process.env.ENABLE_SEARCH_RESULTS_PAGE || 'false') +) describe('redirects', () => { jest.setTimeout(5 * 60 * 1000) @@ -128,39 +129,6 @@ describe('redirects', () => { expect(res.headers['cache-control']).toBe('private, no-store') }) - test('homepage redirects to preferred language', async () => { - const res = await get('/', { headers: { 'Accept-Language': 'ja' }, followRedirects: false }) - expect(res.statusCode).toBe(302) - expect(res.headers.location).toBe('/ja') - expect(res.headers['cache-control']).toBe('private, no-store') - }) - - test('homepage redirects to preferred language by cookie', async () => { - const res = await get('/', { - headers: { - Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=ja`, - 'Accept-Language': 'es', // note how this is going to be ignored - }, - followRedirects: false, - }) - expect(res.statusCode).toBe(302) - expect(res.headers.location).toBe('/ja') - expect(res.headers['cache-control']).toBe('private, no-store') - }) - - test('homepage redirects to preferred language by cookie if valid', async () => { - const res = await get('/', { - headers: { - Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=xy`, - 'Accept-Language': 'ja', // note how this is going to be ignored - }, - followRedirects: false, - }) - expect(res.statusCode).toBe(302) - expect(res.headers.location).toBe('/ja') - expect(res.headers['cache-control']).toBe('private, no-store') - }) - test('trailing slash on languaged homepage should permantently redirect', async () => { const res = await get('/en/') expect(res.statusCode).toBe(301) @@ -169,15 +137,6 @@ describe('redirects', () => { expect(res.headers['cache-control']).toContain('public') expect(res.headers['cache-control']).toMatch(/max-age=\d+/) }) - - test('trailing slash with query string on languaged homepage should permantently redirect', async () => { - const res = await get('/ja/?foo=bar&bar=foo') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe('/ja?foo=bar&bar=foo') - expect(res.headers['set-cookie']).toBeUndefined() - expect(res.headers['cache-control']).toContain('public') - expect(res.headers['cache-control']).toMatch(/max-age=\d+/) - }) }) describe('external redirects', () => { @@ -210,87 +169,10 @@ describe('redirects', () => { expect(res.statusCode).toBe(301) expect(res.headers.location).toBe('https://gitready.com/') }) - - test('work for top-level request paths with /ja/ prefix', async () => { - const res = await get('/ja/git-ready') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe('https://gitready.com/') - }) - }) - - describe('localized redirects', () => { - const redirectFrom = - '/desktop/contributing-to-projects/changing-a-remote-s-url-from-github-desktop' - const redirectTo = - '/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/changing-a-remotes-url-from-github-desktop' - - test('redirect_from for renamed pages', async () => { - const res = await get(`/ja${redirectFrom}`) - expect(res.statusCode).toBe(301) - const expected = `/ja${redirectTo}` - expect(res.headers.location).toBe(expected) - }) - - test('redirect_from for renamed pages by Accept-Language header', async () => { - const res = await get(redirectFrom, { - headers: { - 'Accept-Language': 'ja', - }, - followRedirects: false, - }) - expect(res.statusCode).toBe(302) - const expected = `/ja${redirectTo}` - expect(res.headers.location).toBe(expected) - expect(res.headers['cache-control']).toBe('private, no-store') - }) - - test('redirect_from for renamed pages but ignore Accept-Language header if not recognized', async () => { - const res = await get(redirectFrom, { - headers: { - // None of these are recognized - 'Accept-Language': 'sv,fr,gr', - }, - followRedirects: false, - }) - expect(res.statusCode).toBe(302) - const expected = `/en${redirectTo}` - expect(res.headers.location).toBe(expected) - expect(res.headers['cache-control']).toBe('private, no-store') - }) - - test('redirect_from for renamed pages but ignore unrecognized Accept-Language header values', async () => { - const res = await get(redirectFrom, { - headers: { - // Only the last one is recognized - 'Accept-Language': 'sv,ja', - }, - followRedirects: false, - }) - expect(res.statusCode).toBe(302) - const expected = `/ja${redirectTo}` - expect(res.headers.location).toBe(expected) - expect(res.headers['cache-control']).toBe('private, no-store') - }) - - test('will inject the preferred language from cookie', async () => { - const res = await get(redirectFrom, { - headers: { - Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=ja`, - 'Accept-Language': 'es', // note how this is going to be ignored - }, - followRedirects: false, - }) - // 302 because the redirect depended on cookie - expect(res.statusCode).toBe(302) - const expected = `/ja${redirectTo}` - expect(res.headers.location).toBe(expected) - expect(res.headers['cache-control']).toBe('private, no-store') - }) }) describe('enterprise home page', () => { const enterpriseHome = `/en/enterprise-server@${enterpriseServerReleases.latest}` - const japaneseEnterpriseHome = enterpriseHome.replace('/en/', '/ja/') test('/enterprise', async () => { const res = await get('/enterprise') @@ -310,12 +192,6 @@ describe('redirects', () => { expect(res.headers.location).toBe(enterpriseHome) }) - test('no version redirects to latest version (japanese)', async () => { - const res = await get('/ja/enterprise') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe(japaneseEnterpriseHome) - }) - test('hardcoded @latest redirects to latest version', async () => { const res = await get('/en/enterprise-server@latest') expect(res.statusCode).toBe(302) @@ -358,7 +234,6 @@ describe('redirects', () => { const { firstRestoredAdminGuides, getPreviousReleaseNumber, latest } = enterpriseServerReleases const lastBeforeRestoredAdminGuides = getPreviousReleaseNumber(firstRestoredAdminGuides) const enterpriseAdmin = `/en/enterprise-server@${latest}/admin` - const japaneseEnterpriseAdmin = enterpriseAdmin.replace('/en/', '/ja/') test('no language code redirects to english', async () => { const res = await get(`/enterprise/${latest}/admin`) @@ -413,30 +288,10 @@ describe('redirects', () => { const expected = `/en/enterprise-server@${firstRestoredAdminGuides}/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server` expect(res.headers.location).toBe(expected) }) - - test('no version redirects to latest version (japanese)', async () => { - const res = await get('/ja/enterprise/admin') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe(japaneseEnterpriseAdmin) - }) - - test('admin/guides redirects to admin on <2.21 (japanese)', async () => { - const res = await get(`/ja/enterprise-server@${lastBeforeRestoredAdminGuides}/admin/guides`) - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe( - japaneseEnterpriseAdmin.replace(latest, lastBeforeRestoredAdminGuides) - ) - }) - - test('admin/guides does not redirect to admin on >=2.21 (japanese)', async () => { - const res = await get(`/ja/enterprise-server@${firstRestoredAdminGuides}/admin/guides`) - expect(res.statusCode).toBe(200) - }) }) describe('enterprise user homepage', () => { const enterpriseUser = `/en/enterprise-server@${enterpriseServerReleases.latest}` - const japaneseEnterpriseUser = enterpriseUser.replace('/en/', '/ja/') test('no product redirects to GitHub.com product', async () => { const res = await get(`/en/enterprise/${enterpriseServerReleases.latest}/user`) @@ -455,17 +310,10 @@ describe('redirects', () => { expect(res.statusCode).toBe(301) expect(res.headers.location).toBe(enterpriseUser) }) - - test('no version redirects to latest version (japanese)', async () => { - const res = await get('/ja/enterprise/user/github') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe(japaneseEnterpriseUser) - }) }) describe('enterprise user article', () => { const userArticle = `/en/enterprise-server@${enterpriseServerReleases.latest}/get-started/quickstart/fork-a-repo` - const japaneseUserArticle = userArticle.replace('/en/', '/ja/') test('no product redirects to GitHub.com product on the latest version', async () => { const res = await get( @@ -494,18 +342,11 @@ describe('redirects', () => { expect(res.statusCode).toBe(301) expect(res.headers.location).toBe(userArticle) }) - - test('no version redirects to latest version (japanese)', async () => { - const res = await get('/ja/enterprise/articles/fork-a-repo') - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe(japaneseUserArticle) - }) }) describe('enterprise user article with frontmatter redirect', () => { const userArticle = `/en/enterprise-server@${enterpriseServerReleases.latest}/get-started/quickstart/fork-a-repo` const redirectFromPath = '/articles/fork-a-repo' - const japaneseUserArticle = userArticle.replace('/en/', '/ja/') test('redirects to expected article', async () => { const res = await get( @@ -528,18 +369,11 @@ describe('redirects', () => { expect(res.statusCode).toBe(301) expect(res.headers.location).toBe(userArticle) }) - - test('no version redirects to latest version (japanese)', async () => { - const res = await get(`/ja/enterprise/user${redirectFromPath}`) - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe(japaneseUserArticle) - }) }) describe('desktop guide', () => { const desktopGuide = '/en/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/creating-an-issue-or-pull-request' - const japaneseDesktopGuides = desktopGuide.replace('/en/', '/ja/') test('no language code redirects to english', async () => { const res = await get( @@ -556,14 +390,6 @@ describe('redirects', () => { expect(res.statusCode).toBe(301) expect(res.headers.location).toBe(desktopGuide) }) - - test('desktop/guides redirects to desktop (japanese)', async () => { - const res = await get( - '/ja/desktop/guides/contributing-and-collaborating-using-github-desktop/creating-an-issue-or-pull-request' - ) - expect(res.statusCode).toBe(301) - expect(res.headers.location).toBe(japaneseDesktopGuides) - }) }) describe('recently deprecated ghes version redirects that lack language', () => { diff --git a/tests/translations/empty-sources-test.js b/tests/translations/empty-sources-test.js deleted file mode 100644 index 3984c1d822..0000000000 --- a/tests/translations/empty-sources-test.js +++ /dev/null @@ -1,13 +0,0 @@ -import {execSync} from 'child_process' - -describe('source directories', () => { - // crowdin upload sources command fails if there are empty source files - // please refer to crowdin-support #117 for more details - it('should not contain empty files', () => { - const command = "find content data -type f -empty" - const emptyFiles = execSync(command).toString().split("\n") - const disallowedEmptyFiles = emptyFiles.filter(file => file.match(/\.(yml|md)$/)) - - expect(disallowedEmptyFiles).toEqual([]) - }) -}) diff --git a/tests/translations/files.js b/tests/translations/files.js new file mode 100644 index 0000000000..2fcea620d6 --- /dev/null +++ b/tests/translations/files.js @@ -0,0 +1,73 @@ +import languages from '../../lib/languages.js' +import { omit } from 'lodash-es' +import walk from 'walk-sync' +import { execSync } from 'child_process' +import { get } from '../helpers/e2etest.js' +import { jest } from '@jest/globals' + +function difference (A, B) { + const A2 = new Set(A) + B.forEach(b => A2.delete(b)) + return A2 +} + +const englishPaths = new Set(walk('content', { + directories: false, + ignore: ['**/README.md', 'search', 'early-access'], +})) + +const nonEnglish = Object.entries(omit(languages, 'en')) + +const langWalksTable = nonEnglish.map(([code, lang]) => [ + code, + lang, + new Set(walk(`${lang.dir}/content`, { + directories: false, + ignore: ['**/README.md'], + })) +]) + +describe('files', () => { + jest.setTimeout(60 * 1000) + + test.each(Object.entries(languages))('%s matches language schema', async (_, lang) => { + expect(lang.name).toMatch(/\w+/) + if (lang.nativeName) expect(lang.nativeName).toMatch(/.+/) + expect(lang.code).toMatch(/\w{2}/) + if (lang.code !== 'en') expect(lang.dir).toMatch(/.+/) + expect(lang.hreflang).toMatch(/\w{2}/) + if (lang.redirectPatterns) expect(lang.redirectPatterns).toBeInstanceOf(Array) + }) + + // crowdin upload sources command fails if there are empty source files + // please refer to crowdin-support #117 for more details + it('should not contain empty files', () => { + const command = "find content data -type f -empty" + const emptyFiles = execSync(command).toString().split("\n") + const disallowedEmptyFiles = emptyFiles.filter(file => file.match(/\.(yml|md)$/)) + + expect(disallowedEmptyFiles).toEqual([]) + }) + + test.each(langWalksTable)("falls back to the English page if it can't find a %s page", async (code, lang, langPaths) => { + const paths = [...difference(englishPaths, langPaths)] + .map(path => path.replace('/index.md', '')) + .map(path => path.replace('.md', '')) + for (const path of paths) { + const res = await get(`/${code}/${path}`) + expect(res.statusCode, path).toBeGreaterThanOrEqual(200) + expect(res.statusCode, path).toBeLessThanOrEqual(399) + } + }) + + test.each(langWalksTable)("only loads a %s page if there's an English page", async (code, lang, langPaths) => { + const paths = [...difference(langPaths, englishPaths)] + .map(path => path.replace('/index.md', '')) + .map(path => path.replace('.md', '')) + for (const path of paths) { + const res = await get(`/${code}/${path}`) + expect(res.statusCode, path).toBeGreaterThanOrEqual(300) + expect(res.statusCode, path).toBeLessThanOrEqual(499) + } + }) +}) diff --git a/tests/translations/frame.js b/tests/translations/frame.js new file mode 100644 index 0000000000..4723b74945 --- /dev/null +++ b/tests/translations/frame.js @@ -0,0 +1,62 @@ +import { languageKeys } from '../../lib/languages.js' +import { blockIndex } from '../../middleware/block-robots.js' +import { getDOM } from '../helpers/e2etest.js' + +const langs = languageKeys.filter(lang => lang !== 'en') + +describe('frame', () => { + test.each(langs)('allows crawling of %s pages', async (lang) => { + expect(blockIndex(`/${lang}/articles/verifying-your-email-address`)).toBe(false) + }) + + test.each(langs)('breadcrumbs link to %s pages', async (lang) => { + const $ = await getDOM(`/${lang}/get-started/learning-about-github`) + const $breadcrumbs = $('[data-testid=breadcrumbs] a') + expect($breadcrumbs[0].attribs.href).toBe(`/${lang}/get-started`) + }) + + test.each(langs)('homepage links go to %s pages', async (lang) => { + const $ = await getDOM(`/${lang}`) + const $links = $('[data-testid=bump-link]') + $links.each((i, el) => { + const linkUrl = $(el).attr('href') + expect(linkUrl.startsWith(`/${lang}/`)).toBe(true) + }) + }) + + test.each(langs)('includes homepage hreflang to %s', async (lang) => { + const $ = await getDOM('/en') + expect($(`link[rel="alternate"][href="https://docs.github.com/${lang}"]`).length).toBe(1) + }) + + test.each(langs)('sets `lang` attribute on attribute in %s', async (lang) => { + const $ = await getDOM(`/${lang}`) + expect($('html').attr('lang')).toBe(lang) + }) + + test.each(langs)('autogenerated heading IDs on %s are in english', async (lang) => { + const $ = await getDOM(`/${lang}/site-policy/github-terms/github-terms-of-service`) + expect($('h2 a[href="#summary"]').length).toBe(1) + }) + + test.each(langs)('loads the side bar via site tree in %s', async (lang) => { + const $en = await getDOM(`/en/get-started`) + const $ = await getDOM(`/${lang}/get-started`) + expect( + $(`a[href="/${lang}/get-started"]`).text() + ).not.toEqual( + $en(`a[href="/${lang}/get-started"]`).text() + ) + }) + + test.each(langs)('loads the survey via site data in %s', async (lang) => { + const $en = await getDOM(`/en`) + const $ = await getDOM(`/${lang}`) + expect( + $('[data-testid="survey-form"] h2').text() + ).not.toEqual( + $en('[data-testid="survey-form"] h2').text() + ) + }) +}) + diff --git a/tests/translations/matching-liquid-tags-test.js b/tests/translations/matching-liquid-tags-test.js deleted file mode 100644 index 5f43c2f111..0000000000 --- a/tests/translations/matching-liquid-tags-test.js +++ /dev/null @@ -1,65 +0,0 @@ -import languages from '../../lib/languages.js' -import { languageFiles, compareLiquidTags } from '../../lib/liquid-tags/tokens.js' - -const currentTranslations = [] - -// populate currentTranslations -Object.keys(languages).forEach((code) => { - const language = languages[code] - if (!language.wip && code !== 'en') { - currentTranslations.push(language) - } -}) - -function diffToErrorString(diff) { - return ` - ${diff.translation} does not match liquid tags in ${diff.file}: - - ${diff.diff.output} - ` -} - -function formatMessage(parsingErrors, mismatches) { - return ` - ${parsingErrors.length} files have parsing errors. - ${mismatches.length} files have mismatching liquid tags. - - ${'#'.repeat(80)} - Parsing errors were found in the following files: - ${'#'.repeat(80)} - - ${parsingErrors.map((error) => `- ${error.message}`).join('\n')} - - ${'#'.repeat(80)} - ${mismatches.length} files do not match liquid tags: - ${'#'.repeat(80)} - - ${mismatches.map((diff) => diffToErrorString(diff)).join('\n')} - ` -} - -describe('translated pages', () => { - currentTranslations.forEach((language) => { - test.skip(`every ${language.name} has the same number of liquid tags as the English one`, () => { - const mismatches = [] - const files = languageFiles(language) - const parsingErrors = [] - - files.forEach((file) => { - try { - const comparison = compareLiquidTags(file, language) - - if (comparison.diff.count > 0) { - mismatches.push(comparison) - } - } catch (e) { - parsingErrors.push(e) - } - }) - - const message = formatMessage(parsingErrors, mismatches) - - expect(mismatches.length, message).toEqual(0) - }) - }) -}) diff --git a/tests/translations/redirects.js b/tests/translations/redirects.js new file mode 100644 index 0000000000..be1a948487 --- /dev/null +++ b/tests/translations/redirects.js @@ -0,0 +1,44 @@ +import { languageKeys } from '../../lib/languages.js' +import { get } from '../helpers/e2etest.js' +import { PREFERRED_LOCALE_COOKIE_NAME } from '../../lib/constants.js' + +const langs = languageKeys.filter(lang => lang !== 'en') + +describe('redirects', () => { + test.each(langs)('redirects to %s if accept-language', async (lang) => { + const res = await get('/get-started', { + headers: { 'accept-language': lang }, + followRedirects: false, + }) + expect(res.statusCode).toBe(302) + expect(res.headers.location).toBe(`/${lang}/get-started`) + expect(res.headers['cache-control']).toBe('private, no-store') + expect(res.headers['set-cookie']).toBeUndefined() + }) + + test.each(langs)('redirects to %s if PREFERRED_LOCALE_COOKIE_NAME', async (lang) => { + const res = await get('/get-started', { + headers: { + 'accept-language': 'en', + Cookie: `${PREFERRED_LOCALE_COOKIE_NAME}=${lang}`, + }, + followRedirects: false, + }) + expect(res.statusCode).toBe(302) + expect(res.headers.location).toBe(`/${lang}/get-started`) + expect(res.headers['cache-control']).toBe('private, no-store') + expect(res.headers['set-cookie']).toBeUndefined() + }) + + test('redirects accidental /jp* requests to /ja*', async () => { + const res = await get('/jp') + expect(res.statusCode).toBe(301) + expect(res.headers.location).toBe('/ja') + }) + + test('redirects accidental /zh-CN* requests to /cn*', async () => { + const res = await get('/zh-CN') + expect(res.statusCode).toBe(301) + expect(res.headers.location).toBe('/cn') + }) +}) diff --git a/tests/translations/search.js b/tests/translations/search.js new file mode 100644 index 0000000000..451afc630f --- /dev/null +++ b/tests/translations/search.js @@ -0,0 +1,13 @@ +import { languageKeys } from '../../lib/languages' +import { get } from '../helpers/e2etest.js' + +const langs = languageKeys.filter(lang => lang !== 'en') + +// Skipping for now, as we would need to download the indexes with LFS +// in Actions to run these. Explore again after ES switch over. +describe.skip('search', () => { + test.each(langs)('search in %s', async (lang) => { + const res = await get(`/search?language=${lang}&version=dotcom&query=pages`) + expect(res.statusCode).toBe(200) + }) +}) diff --git a/tests/unit/detect-language.js b/tests/unit/detect-language.js deleted file mode 100644 index e39d15e0e8..0000000000 --- a/tests/unit/detect-language.js +++ /dev/null @@ -1,22 +0,0 @@ -import { expect } from '@jest/globals' -import { getLanguageCodeFromPath } from '../../middleware/detect-language.js' - -describe('detect-language - getLanguageCodeFromPath', () => { - test('should handle client-side routing path shape', () => { - expect(getLanguageCodeFromPath('/_next/data/development/ja/articles/foo')).toBe('ja') - }) - - test('should not error on /_next/data/ input', () => { - expect(getLanguageCodeFromPath('/_next/data/')).toBe('en') - }) - - test('should return for paths with an extension', () => { - expect(getLanguageCodeFromPath('/ja.json')).toBe('ja') - expect(getLanguageCodeFromPath('/_next/data/development/ja.json')).toBe('ja') - }) - - test('should return en for invalid languages', () => { - expect(getLanguageCodeFromPath('/xx/articles/foo')).toBe('en') - expect(getLanguageCodeFromPath('/_next/data/development/xx/articles/foo')).toBe('en') - }) -}) diff --git a/tests/unit/find-page.js b/tests/unit/find-page.js index 9692558849..51880d36a2 100644 --- a/tests/unit/find-page.js +++ b/tests/unit/find-page.js @@ -8,25 +8,6 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url)) describe('find page', () => { jest.setTimeout(1000 * 1000) - test("falls back to the English page if it can't find a localized page", async () => { - const page = await Page.init({ - relativePath: 'page-that-does-not-exist-in-translations-dir.md', - basePath: path.join(__dirname, '../fixtures'), - languageCode: 'en', - }) - - const englishPermalink = page.permalinks[0].href - const japanesePermalink = englishPermalink.replace('/en/', '/ja/') - - // add named keys - const pageMap = { - [englishPermalink]: page, - } - - const localizedPage = findPage(japanesePermalink, pageMap, {}) - expect(typeof localizedPage.title).toBe('string') - }) - test('follows redirects', async () => { const page = await Page.init({ relativePath: 'page-with-redirects.md', diff --git a/tests/unit/get-redirect.js b/tests/unit/get-redirect.js index fd401e4d86..0d51e67982 100644 --- a/tests/unit/get-redirect.js +++ b/tests/unit/get-redirect.js @@ -1,36 +1,8 @@ -import { describe, expect, test } from '@jest/globals' +import { describe, expect } from '@jest/globals' -import getRedirect, { splitPathByLanguage } from '../../lib/get-redirect.js' +import getRedirect from '../../lib/get-redirect.js' import { latest } from '../../lib/enterprise-server-releases.js' -describe('splitPathByLanguage', () => { - test('basic', () => { - const [language, withoutLanguage] = splitPathByLanguage('/foo/') - expect(language).toBe('en') - expect(withoutLanguage).toBe('/foo/') - }) - test('already has /en in it', () => { - const [language, withoutLanguage] = splitPathByLanguage('/en/foo/') - expect(language).toBe('en') - expect(withoutLanguage).toBe('/foo/') - }) - test('basic with different fallback', () => { - const [language, withoutLanguage] = splitPathByLanguage('/foo/', 'ja') - expect(language).toBe('ja') - expect(withoutLanguage).toBe('/foo/') - }) - test('already has /en different fallback', () => { - const [language, withoutLanguage] = splitPathByLanguage('/en/foo/', 'ja') - expect(language).toBe('en') - expect(withoutLanguage).toBe('/foo/') - }) - test('unrecognized prefix is ignored', () => { - const [language, withoutLanguage] = splitPathByLanguage('/sv/foo/') - expect(language).toBe('en') - expect(withoutLanguage).toBe('/sv/foo/') - }) -}) - describe('getRedirect basics', () => { it('should sometimes not correct the version prefix', () => { // This essentially tests legacy entries that come from the @@ -153,20 +125,6 @@ describe('getRedirect basics', () => { expect(getRedirect(`/en/enterprise-cloud@latest/user/foo`, ctx)).toBeUndefined() }) - it('should only inject language sometimes', () => { - const ctx = { - pages: {}, - redirects: { - '/foo': '/bar', - }, - } - // Nothing's needed here because it's not /admin/guides and - // it already has the enterprise-server prefix. - expect(getRedirect('/foo', ctx)).toBe('/en/bar') - expect(getRedirect('/en/foo', ctx)).toBe('/en/bar') - expect(getRedirect('/ja/foo', ctx)).toBe('/ja/bar') - }) - it('should redirect both the prefix and the path needs to change', () => { const ctx = { pages: {}, @@ -179,20 +137,6 @@ describe('getRedirect basics', () => { expect(getRedirect('/enterprise-server/foo', ctx)).toBe(`/en/enterprise-server@${latest}/bar`) }) - it('should redirect according to the req.context.userLanguage', () => { - const ctx = { - pages: {}, - redirects: { - '/foo': '/bar', - }, - userLanguage: 'ja', - } - expect(getRedirect('/foo', ctx)).toBe(`/ja/bar`) - // falls back to 'en' if it's falsy - ctx.userLanguage = null - expect(getRedirect('/foo', ctx)).toBe(`/en/bar`) - }) - it('should work for some deprecated enterprise-server URLs too', () => { // Starting with enterprise-server 3.0, we have made redirects become // a *function* rather than a lookup on a massive object. diff --git a/tests/unit/languages.js b/tests/unit/languages.js deleted file mode 100644 index e10fb5aced..0000000000 --- a/tests/unit/languages.js +++ /dev/null @@ -1,19 +0,0 @@ -import revalidator from 'revalidator' -import languages from '../../lib/languages.js' -import schema from '../helpers/schemas/languages-schema.js' - -describe('languages module', () => { - test('is an object with language codes as keys', () => { - expect('en' in languages).toBe(true) - expect('ja' in languages).toBe(true) - expect('cn' in languages).toBe(true) - }) - - test('every language is valid', () => { - Object.values(languages).forEach((language) => { - const { valid, errors } = revalidator.validate(language, schema) - const expectation = JSON.stringify(errors, null, 2) - expect(valid, expectation).toBe(true) - }) - }) -}) diff --git a/tests/unit/liquid-helpers.js b/tests/unit/liquid-helpers.js index 107c0bd6b7..7589132112 100644 --- a/tests/unit/liquid-helpers.js +++ b/tests/unit/liquid-helpers.js @@ -15,7 +15,6 @@ describe('liquid helper tags', () => { context.pages = pageMap context.redirects = { '/en/desktop/contributing-and-collaborating-using-github-desktop': `/en/${nonEnterpriseDefaultVersion}/desktop/contributing-and-collaborating-using-github-desktop`, - '/ja/desktop/contributing-and-collaborating-using-github-desktop': `/ja/${nonEnterpriseDefaultVersion}/desktop/contributing-and-collaborating-using-github-desktop`, '/en/desktop/contributing-and-collaborating-using-github-desktop/adding-and-cloning-repositories': `/en/${nonEnterpriseDefaultVersion}/desktop/contributing-and-collaborating-using-github-desktop/adding-and-cloning-repositories`, '/en/github/writing-on-github/basic-writing-and-formatting-syntax': `/en/${nonEnterpriseDefaultVersion}/github/writing-on-github/basic-writing-and-formatting-syntax`, } diff --git a/tests/unit/load-translation-orphans.js b/tests/unit/load-translation-orphans.js deleted file mode 100644 index 581c6ee23c..0000000000 --- a/tests/unit/load-translation-orphans.js +++ /dev/null @@ -1,60 +0,0 @@ -import path from 'path' -import { fileURLToPath } from 'url' - -import { expect } from '@jest/globals' - -import languages from '../../lib/languages.js' -import Page from '../../lib/page.js' -import { loadPageMap, correctTranslationOrphans } from '../../lib/page-data.js' -const __dirname = path.dirname(fileURLToPath(import.meta.url)) - -describe('loading page map with translation orphans', () => { - test('inject missing translations from English', async () => { - const basePath = path.join(__dirname, '../fixtures') - const page = await Page.init({ - relativePath: 'page-that-does-not-exist-in-translations-dir.md', - basePath, - languageCode: 'en', - }) - console.assert(page, 'page could not be loaded') - - const pageList = [page] - const pageMap = await loadPageMap(await correctTranslationOrphans(pageList, basePath)) - // It should make a copy of the English into each language - expect(Object.keys(pageMap).length).toBe(Object.keys(languages).length) - - // +1 for the test just above, 2 tests per language. - expect.assertions(1 + Object.keys(languages).length * 2) - - for (const languageCode of Object.keys(languages)) { - for (const permalink of page.permalinks) { - const translationHref = permalink.href.replace('/en', `/${languageCode}`) - const translationPage = pageMap[translationHref] - expect(translationPage).toBeTruthy() - expect(translationPage.languageCode).toBe(languageCode) - } - } - }) - - test('remove translation pages that were not in English', async () => { - const basePath = path.join(__dirname, '../fixtures') - const page = await Page.init({ - relativePath: 'page-that-does-not-exist-in-translations-dir.md', - basePath, - languageCode: 'en', - }) - console.assert(page, 'page could not be loaded') - const orphan = await Page.init({ - relativePath: 'article-with-videos.md', - basePath, - languageCode: 'ja', - }) - console.assert(orphan, 'page could not be loaded') - const orphanPermalinks = orphan.permalinks.map((p) => p.href) - - const pageList = await correctTranslationOrphans([page, orphan], basePath) - const pageMap = await loadPageMap(pageList) - expect(pageMap[orphanPermalinks[0]]).toBeFalsy() - expect(Object.keys(pageMap).length).toBe(Object.keys(languages).length) - }) -}) diff --git a/tests/unit/page.js b/tests/unit/page.js index ca572f83da..d1b9150477 100644 --- a/tests/unit/page.js +++ b/tests/unit/page.js @@ -31,15 +31,6 @@ describe('Page class', () => { expect(page.fullPath.includes(page.relativePath)).toBe(true) }) - test('does not error out on translated TOC with no links', async () => { - const page = await Page.init({ - relativePath: 'translated-toc-with-no-links-index.md', - basePath: path.join(__dirname, '../fixtures'), - languageCode: 'ja', - }) - expect(typeof page.title).toBe('string') - }) - describe('showMiniToc page property', () => { let article, articleWithFM, tocPage @@ -612,17 +603,6 @@ describe('Page class', () => { it('works for the homepage', () => { const variants = Page.getLanguageVariants('/en') expect(variants.find(({ code }) => code === 'en').href).toBe('/en') - // expect(variants.find(({ code }) => code === 'ja').href).toBe('/ja') - }) - - it('works for enterprise URLs', () => { - const variants = Page.getLanguageVariants( - `/ja/enterprise/${enterpriseServerReleases.oldestSupported}/user/articles/github-glossary` - ) - expect(variants.find(({ code }) => code === 'en').href).toBe( - `/en/enterprise/${enterpriseServerReleases.oldestSupported}/user/articles/github-glossary` - ) - // expect(variants.find(({ code }) => code === 'ja').href).toBe('/ja/enterprise/2.14/user/articles/github-glossary') }) }) diff --git a/tests/unit/pages.js b/tests/unit/pages.js index 32f97d35cf..271afeeb2b 100644 --- a/tests/unit/pages.js +++ b/tests/unit/pages.js @@ -6,24 +6,12 @@ import { liquid } from '../../lib/render-content/index.js' import patterns from '../../lib/patterns.js' import GithubSlugger from 'github-slugger' import { decode } from 'html-entities' -import walk from 'walk-sync' -import { chain, difference, pick } from 'lodash-es' +import { chain, pick } from 'lodash-es' import checkIfNextVersionOnly from '../../lib/check-if-next-version-only.js' import removeFPTFromPath from '../../lib/remove-fpt-from-path.js' const languageCodes = Object.keys(libLanguages) const slugger = new GithubSlugger() -// By default, the tests don't change that each translation has an -// equivalent English page (e.g. `translations/*/content/foo.md` -// expects `content/foo.md`) -// Set the environment variable `TEST_TRANSLATION_MATCHING=true` -// to enable that test. -const testIfRequireTranslationMatching = JSON.parse( - process.env.TEST_TRANSLATION_MATCHING || 'false' -) - ? test - : test.skip - describe('pages module', () => { jest.setTimeout(60 * 1000) @@ -163,30 +151,6 @@ describe('pages module', () => { const failureMessage = JSON.stringify(liquidErrors, null, 2) expect(liquidErrors.length, failureMessage).toBe(0) }) - - testIfRequireTranslationMatching( - 'every non-English page has a matching English page', - async () => { - const englishPaths = chain(walk('content', { directories: false })) - .uniq() - .value() - - const nonEnglishPaths = chain(Object.values(libLanguages)) - .filter((language) => language.code !== 'en') - .map((language) => walk(`${language.dir}/content`, { directories: false })) - .flatten() - .uniq() - .value() - - const diff = difference(nonEnglishPaths, englishPaths) - const failureMessage = ` -Found ${diff.length} non-English pages without a matching English page:\n - ${diff.join('\n - ')} - -Remove them with script/i18n/prune-stale-files.js and commit your changes using "git commit --no-verify". -` - expect(diff.length, failureMessage).toBe(0) - } - ) }) describe('loadPageMap', () => { diff --git a/tests/javascripts/user-agent.js b/tests/unit/user-agent.js similarity index 96% rename from tests/javascripts/user-agent.js rename to tests/unit/user-agent.js index 49bc60b84a..b11e03c6ec 100644 --- a/tests/javascripts/user-agent.js +++ b/tests/unit/user-agent.js @@ -1,4 +1,4 @@ -import parseUserAgent from '../../components/lib/user-agent' +import { parseUserAgent } from '../../components/lib/user-agent.ts' describe('parseUserAgent', () => { it('android, chrome', () => { diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/setting-your-profile-to-private.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/setting-your-profile-to-private.md index 6d236d1cd1..d6b35dde09 100644 --- a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/setting-your-profile-to-private.md +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/setting-your-profile-to-private.md @@ -1,63 +1,63 @@ --- -title: Setting your profile to private -intro: 'A private profile displays only limited information, and hides some activity.' +title: Configurar tu perfil como privado +intro: Un perfil privado muestra información limitada únicamente y oculta algo de actividad. versions: fpt: '*' topics: - Profiles -shortTitle: Set profile to private +shortTitle: Configurar el perfil como privado --- -## About private profiles +## Acerca de los perfiles privados {% note %} -**Note:** Private profiles are currently in beta and are subject to change. +**Nota:** Los perfiles privados se encuentran actualmente en beta y están sujetos a cambios. {% endnote %} -To hide parts of your profile page, you can make your profile private. This also hides your activity in various social features on {% data variables.product.prodname_dotcom_the_website %}. A private profile hides information from all users, and there is currently no option to allow specified users to see your activity. +Para ocultar partes de tu página de perfil, puedes hacer a tu perfil privado. Esto también oculta tu actividad en varias características sociales de {% data variables.product.prodname_dotcom_the_website %}. Un perfil privado oculta información para todos los usuarios y actualmente no hay una opción para permitir que usuarios específicos vea tu actividad. -After making your profile private, you can still view all your information when you visit your own profile. +Después de hacer a tu perfil privado, aún puedes ver toda tu información cuando visitas tu propio perfil. -Private profiles cannot receive sponsorships under [{% data variables.product.prodname_sponsors %}](/sponsors/getting-started-with-github-sponsors/about-github-sponsors). To be eligible for {% data variables.product.prodname_sponsors %}, your profile cannot be private. +Los perfiles privados no pueden recibir patrocinios bajo [{% data variables.product.prodname_sponsors %}](/sponsors/getting-started-with-github-sponsors/about-github-sponsors). Para que pueda ser elegible para {% data variables.product.prodname_sponsors %}, tu perfil no puede ser privado. -## Differences between private and public profiles +## Diferencias entre los perfiles públicos y privados -When your profile is private, the following content is hidden from your profile page: +Cuando tu perfil es privado, el siguiente contenido se oculta de tu página de perfil: -- Achievements and highlights. -- Activity overview and activity feed. -- Contribution graph. -- Follower and following counts. -- Follow and Sponsor buttons. -- Organization memberships. -- Stars, projects, packages, and sponsoring tabs. +- Los logros y puntos destacados. +- El resumen de la actividad y la fuente de actividad. +- La gráfica de contribuciones. +- Los conteos de seguidores y seguidos. +- Los botones de seguir y de patrocinar. +- Las membrecías de organización. +- Las pestañas de favoritos, proyectos, paquetes y patrocinando. {% note %} -**Note**: When your profile is private, some optional fields are still publicly visible, such as the README, biography, and profile photo. +**Nota**: Cuando tu perfil es privado, algunos de los campos opcionales aún se encuentran visibles para el público tal como el README, la biografía y la foto de perfil. {% endnote %} -## Changes to reporting on your activities +## Cambios a reportar en tus actividades -By making your profile private, you will not remove or hide past activity; this setting only applies to your activity while the private setting is enabled. +Al hacer tu perfil privado, no eliminarás ni ocultarás la actividad anterior; este ajuste solo aplica a tu actividad mientras el ajuste privado esté habilitado. -When your profile is private, your {% data variables.product.prodname_dotcom_the_website %} activity will not appear in the following locations: +Cuando tu perfil es privado, tu actividad de {% data variables.product.prodname_dotcom_the_website %} no se mostrará en las siguientes ubicaciones: -- Activity feeds for other users. -- Discussions leaderboards. -- The [Trending](https://github.com/trending) page. +- Fuentes de actividad para otros usuarios. +- Tablas de clasificación de debates. +- La página de [Tendencias](https://github.com/trending). {% note %} -**Note**: Your activity on public repositories will still be publicly visible to anyone viewing those repositories, and some activity data may still be available through the {% data variables.product.prodname_dotcom %} API. +**Nota**: Cualquiera que vea estos repositorios tendrá visibilidad del público en general para tu actividad en los repositorios públicos y algunos datos de la actividad aún estarán disponibles mediante la API de {% data variables.product.prodname_dotcom %}. {% endnote %} -## Changing your profile's privacy settings +## Cambiar los ajustes de privacidad de tu perfil {% data reusables.user-settings.access_settings %} -1. Under "Contributions & Activity", select the checkbox next to **Make profile private and hide activity**. +1. Dababjo de "Contribuciones & actividad", selecciona la casilla de verificación junto a **Hacer perfil privado y ocultar actividad**. {% data reusables.user-settings.update-preferences %} diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md index cdc8f7a80c..3bb4ede446 100644 --- a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md @@ -1,6 +1,6 @@ --- title: Setting up and managing your personal account on GitHub -intro: 'You can manage settings for your personal account on {% data variables.product.prodname_dotcom %}, including email preferences, collaborator access for personal repositories, and organization memberships.' +intro: 'You can manage settings for your personal account on {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}, including email preferences, access to personal repositories, and organization memberships. You can also manage the account itself.' shortTitle: Cuentas personales redirect_from: - /categories/setting-up-and-managing-your-github-user-account @@ -15,6 +15,7 @@ topics: - Accounts children: - /managing-personal-account-settings + - /managing-your-personal-account - /managing-email-preferences - /managing-access-to-your-personal-repositories - /managing-your-membership-in-organizations diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md index 1288b54218..91c180cbd8 100644 --- a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md @@ -1,6 +1,6 @@ --- title: Administrar las configuraciones del usuario de la cuenta -intro: 'Puedes cambiar varias configuraciones de tu cuenta personal, lo que incluye cambiar tu nombre de usuario y eliminar tu cuenta.' +intro: 'You can manage settings for your personal account, including your theme, username, default branch, accessibility, and security settings.' redirect_from: - /categories/29/articles - /categories/user-accounts @@ -19,17 +19,14 @@ children: - /managing-your-theme-settings - /managing-your-tab-size-rendering-preference - /changing-your-github-username - - /merging-multiple-personal-accounts - - /converting-a-user-into-an-organization - - /deleting-your-personal-account - /permission-levels-for-a-personal-account-repository - /permission-levels-for-a-project-board-owned-by-a-personal-account - /managing-accessibility-settings - /managing-the-default-branch-name-for-your-repositories - /managing-security-and-analysis-settings-for-your-personal-account - /managing-access-to-your-personal-accounts-project-boards + - /managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages - /integrating-jira-with-your-personal-projects - - /best-practices-for-leaving-your-company - /what-does-the-available-for-hire-checkbox-do shortTitle: Ajustes de cuenta personal --- diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md new file mode 100644 index 0000000000..41ff7da201 --- /dev/null +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md @@ -0,0 +1,33 @@ +--- +title: Managing your cookie preferences for GitHub's enterprise marketing pages +intro: 'You can control how {% data variables.product.company_short %} uses information from non-essential tracking cookies for enterprise marketing pages.' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +shortTitle: Manage cookie preferences +--- + +## About cookie preferences on enterprise marketing pages + +{% data variables.product.company_short %} may use non-essential cookies on some enterprise marketing pages. You can customize how these cookies behave. For more information about how {% data variables.product.company_short %} uses cookies, see "[{% data variables.product.company_short %} Privacy Statement](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement)." + +## Changing your cookie preferences + +You can customize how non-essential cookies behave on any {% data variables.product.company_short %} enterprise marketing page. + +1. Navigate to the {% data variables.product.company_short %} enterprise marketing page where you'd like to change your cookie preferences. For example, navigate to [{% data variables.product.company_short %} Resources](https://resources.github.com/). +1. Scroll to the bottom of the page, then click **Manage Cookies**. + + ![Screenshot of button to manage cookie settings.](/assets/images/help/settings/cookie-settings-manage.png) + +1. Under "Manage cookie preferences," to accept or reject each non-essential cookie, click **Accept** or **Reject**. + + ![Screenshot of radio buttons to choose "Accept" or "Reject" for non-essential cookies.](/assets/images/help/settings/cookie-settings-accept-or-reject.png) + +1. Haz clic en **Guardar cambios**. + + ![Screenshot of button to save changes.](/assets/images/help/settings/cookie-settings-save.png) diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md similarity index 96% rename from translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md rename to translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md index 43c747822e..14c1b83cfd 100644 --- a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/best-practices-for-leaving-your-company - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company versions: fpt: '*' ghec: '*' diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md similarity index 95% rename from translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md rename to translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md index c2c41a63e6..57ad4ace23 100644 --- a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization intro: Puedes convertir tu cuenta personal en una organización. Esto permite que haya más permisos granulares para repositorios que pertenecen a la organización. versions: fpt: '*' @@ -66,5 +67,5 @@ También puedes convertir tu cuenta personal directamente en una organización. ## Leer más - "[Configurar equipos](/articles/setting-up-teams)" -{% ifversion fpt or ghec %}- "[Invitar usuarios a unirse a tu organización](/articles/inviting-users-to-join-your-organization)"{% endif %} +{% ifversion fpt or ghec %}- "[Invitar usuarios para que se unan a tu organización](/articles/inviting-users-to-join-your-organization)"{% endif %} - "[Acceder a una organización](/articles/accessing-an-organization)" diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md similarity index 59% rename from translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md rename to translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md index 23d646bd21..0757d38da6 100644 --- a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md @@ -1,39 +1,53 @@ --- title: Deleting your personal account -intro: 'Puedes borrar tu cuenta personal de {% data variables.product.product_name %} en cualquier momento.' +intro: 'Puedes borrar tu cuenta personal de {% data variables.product.product_location %} en cualquier momento.' redirect_from: - /articles/deleting-a-user-account - /articles/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account versions: fpt: '*' ghes: '*' ghec: '*' topics: - Accounts -shortTitle: Borrar tu cuenta personal +shortTitle: Delete your account --- -El borrar tu cuenta personal elimina todos los repositorios, bifurcaciones de repositorios privados, wikis, propuestas, solicitudes de cambios y páginas que pertenecen a tu cuenta. {% ifversion fpt or ghec %}No se eliminarán las propuestas ni las solicitudes de extracción que hayas creado ni los comentarios que hayas hecho en repositorios que sean propiedad de otros usuarios. En lugar de eliminarlos, se los asociará con nuestro [Usuario fantasma](https://github.com/ghost).{% else %}No se eliminarán las propuestas ni las solicitudes de extracción que hayas creado ni los comentarios que hayas hecho en repositorios que sean propiedad de otros usuarios.{% endif %} +## About deletion of your personal account -{% ifversion fpt or ghec %} Dejaremos de cobrarte cuando borras tu cuenta. La dirección asociada con la cuenta se hace disponible para utilizarse con una cuenta diferente en {% data variables.product.product_location %}. Después de 90 días, el nombre de cuenta también pone disponible para que cualquiera con una cuenta nueva lo utilice. {% endif %} +El borrar tu cuenta personal elimina todos los repositorios, bifurcaciones de repositorios privados, wikis, propuestas, solicitudes de cambios y páginas que pertenecen a tu cuenta. {% 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. Your resources and comments will become associated with the [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 %} -Si eres el único propietario de una organización, deberás transferir la propiedad a otra persona o borrar la organización antes de que puedas borrar tu cuenta personal. Si existen otros propietarios en la organización, debes eliminarte de ella antes de que puedas borrar tu cuenta personal. +{% ifversion ghec %} + +{% note %} + +**Note**: If your enterprise manages your account and you sign into {% data variables.product.product_location %} through your company's identity provider (IdP), you cannot delete your account. Para obtener más información, consulta la sección "[Acerca de {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users)". + +{% endnote %} + +{% endif %} + +{% ifversion fpt or ghec %}When you delete your account we stop billing you. La dirección asociada con la cuenta se hace disponible para utilizarse con una cuenta diferente en {% data variables.product.product_location %}. Después de 90 días, el nombre de cuenta también pone disponible para que cualquiera con una cuenta nueva lo utilice. {% 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 personal account. Si existen otros propietarios en la organización, debes eliminarte de ella antes de que puedas borrar tu cuenta personal. + +Para obtener más información, consulta los siguientes artículos. -Para obtener más información, consulta: - "[Transferir la propiedad de la organización](/articles/transferring-organization-ownership)" - "[Eliminar una cuenta de la organización](/articles/deleting-an-organization-account)" - "[Eliminarte de una organización](/articles/removing-yourself-from-an-organization/)" ## Copias de seguridad de los datos de tu cuenta -Antes de que borres tu cuenta personal, haz una copia de todos los repositorios, bifurcaciones privadas, wikis, propuestas y solicitudes de cambios que le pertenezcan a tu cuenta. +Antes de que borres tu cuenta personal, haz una copia de todos los repositorios, bifurcaciones privadas, wikis, propuestas y solicitudes de cambios que le pertenezcan a tu cuenta. For more information, see "[Backing up a repository](/repositories/archiving-a-github-repository/backing-up-a-repository)." {% warning %} -**Advertencia** Una vez que tu cuenta personal se haya borrado, GitHub no podrá restablecer tu contenido. +**Warning:** Once your personal account has been deleted, {% ifversion fpt or ghec %}{% data variables.product.company_short %}{% elsif ghes or ghae %}an enterprise owner{% endif %} cannot restore your content. {% endwarning %} diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md new file mode 100644 index 0000000000..ab1c7a9394 --- /dev/null +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md @@ -0,0 +1,19 @@ +--- +title: Managing your personal account +intro: 'You can manage your personal account on {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}. For example, you can {% ifversion fpt or ghec %}manage multiple accounts, {% endif %}convert an account to an organization{% ifversion fpt or ghec or ghes %}, or delete an account{% endif %}.' +shortTitle: Manage personal account +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +children: + - /managing-multiple-accounts + - /merging-multiple-personal-accounts + - /converting-a-user-into-an-organization + - /best-practices-for-leaving-your-company + - /deleting-your-personal-account +--- + diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md new file mode 100644 index 0000000000..9af9d7d083 --- /dev/null +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md @@ -0,0 +1,105 @@ +--- +title: Managing multiple accounts +intro: 'If you use one workstation to contribute to projects for more than one account on {% data variables.product.product_location %}, you can modify your Git configuration to simplify the contribution process.' +versions: + feature: multiple-accounts-one-workstation +topics: + - Accounts + - Git + - GitHub +shortTitle: Manage multiple accounts +--- + +## About management of multiple accounts + +In some cases, you may need to use multiple accounts on {% data variables.product.product_location %}. For example, you may have a personal account for open source contributions, and your employer may also create and manage a user account for you within an enterprise. + +You cannot use your {% data variables.product.prodname_managed_user %} to contribute to public projects on {% data variables.product.product_location %}, so you must contribute to those resources using your personal account. Para obtener más información, consulta la sección "[Acerca de {% data variables.product.prodname_emus %}]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts){% ifversion fpt %}" en la documentación de {% data variables.product.prodname_ghe_cloud %}.{% elsif ghec %}".{% endif %} + +If you want to use one workstation to contribute from both accounts, you can simplify contribution with Git by using a mixture of protocols to access repository data, or by using credentials on a per-repository basis. + +{% warning %} + +**Warning**: Be mindful when you use one workstation to contribute to two separate accounts. Management of two or more accounts can increase the chance of mistakenly leaking internal code to the public. + +{% endwarning %} + +If you aren't required to use a {% data variables.product.prodname_managed_user %}, {% data variables.product.company_short %} recommends that you use one personal account for all your work on {% data variables.product.product_location %}. With a single personal account, you can contribute to a combination of personal, open source, or professional projects using one identity. Other people can invite the account to contribute to both individual repositories and repositories owned by an organization, and the account can be a member of multiple organizations or enterprises. + +## Contributing to two accounts using HTTPS and SSH + +If you contribute with two accounts from one workstation, you can access repositories by using a different protocol and credentials for each account. + +Git can use either the HTTPS or SSH protocol to access and update data in repositories on {% data variables.product.product_location %}. The protocol you use to clone a repository determines which credentials your workstation will use to authenticate when you access the repository. With this approach to account management, you store the credentials for one account to use for HTTPS connections and upload an SSH key to the other account to use for SSH connections. + +You can find both the HTTPS or an SSH URLs for cloning a repository on {% data variables.product.product_name %}. Para obtener más información, consulta "[Clonar un repositorio](/repositories/creating-and-managing-repositories/cloning-a-repository)". + +For more information about the use of SSH to access repositories on {% data variables.product.product_name %}, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/authentication/connecting-to-github-with-ssh)." + +## Contributing to multiple accounts using HTTPS and PATs + +Alternatively, if you want to use the HTTPS protocol for both accounts, you can use different personal access tokens (PAT) for each account by configuring Git to store different credentials for each repository. + +{% mac %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + - If the output is `osxkeychain`, you're using the macOS keychain. To clear the credentials, enter the following command. + + ```shell{:copy} + git credential-osxkeychain erase https://github.com + ``` + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endmac %} + +{% windows %} + +1. Abre Git Bash. +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} + - If the output is `wincred`, you're using the Windows Credential Manager. To clear the credentials, enter the following command. + + ```shell{:copy} + cmdkey /delete:LegacyGeneric:target=git:https://github.com + ``` +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endwindows %} + +{% linux %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endlinux %} + +## Contributing to multiple accounts using SSH and `GIT_SSH_COMMAND` + +If you want to use the SSH protocol for both accounts, you can use different SSH keys for each account. For more information about using SSH, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/authentication/connecting-to-github-with-ssh)." + +To use a different SSH key for different repositories that you clone to your workstation, you must write a shell wrapper function for Git operations. The function should perform the following steps. +1. Determine the repository's full name with owner, using a command such as `git config --get remote.origin.url`. +2. Choose the correct SSH key for authentication. +3. Modify `GIT_SSH_COMMAND` accordingly. For more information about `GIT_SSH_COMMAND`, see [Environment Variables](https://git-scm.com/docs/git#Documentation/git.txt-codeGITSSHCOMMANDcode) in the Git documentation. + +Por ejemplo, el siguiente comando configura la variable de ambiente `GIT_SSH_COMMAND` para que especifique un comando SSH que utiliza el archivo de llave privada en **_PATH/TO/KEY/FILE_** para autenticación para clonar el repositorio que se llama **_OWNER_**/**_REPOSITORY_** en {% data variables.product.product_location %}. + +
+GIT_SSH_COMMAND='ssh -i PATH/TO/KEY/FILE -o IdentitiesOnly=yes' git clone git@github.com:OWNER/REPOSITORY
+
diff --git a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md similarity index 85% rename from translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md rename to translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md index e4c08c19a7..46520223f7 100644 --- a/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md +++ b/translations/es-ES/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md @@ -8,12 +8,13 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/merging-multiple-user-accounts - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts versions: fpt: '*' ghec: '*' topics: - Accounts -shortTitle: Fusionar cuentas personales múltiples +shortTitle: Merge multiple accounts --- {% tip %} @@ -41,7 +42,7 @@ shortTitle: Fusionar cuentas personales múltiples 1. [Transfiere cualquier repositorio](/articles/how-to-transfer-a-repository) desde la cuenta que deseas eliminar a la cuenta que deseas mantener. También se transfieren propuestas, solicitudes de extracción y wikis. Verifica que los repositorios existan en la cuenta que deseas mantener. 2. [Actualiza las URL remotas](/github/getting-started-with-github/managing-remote-repositories) en cualquier clon local de los repositorios que se movieron. 3. [Elimina la cuenta](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account) que ya no deseas utilizar. -4. Para atribuir las confirmaciones pasadas a la cuenta nueva, agrega la dirección de correo electrónico que utilizaste para crear dichas confirmaciones a la cuenta que vas a conservar. Para obtener más información, consulta"[¿Por qué mis contribuciones no se muestran en mi perfil?](/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#your-local-git-commit-email-isnt-connected-to-your-account)" +4. Para atribuir las confirmaciones pasadas a la cuenta nueva, agrega la dirección de correo electrónico que utilizaste para crear dichas confirmaciones a la cuenta que vas a conservar. Para obtener más información, consulta "[¿Por qué mis contribuciones no se están mostrando en mi perfil?](/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#your-local-git-commit-email-isnt-connected-to-your-account)" ## Leer más diff --git a/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md b/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md index 0e5e9f0b68..f3eecc8858 100644 --- a/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md +++ b/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md @@ -73,6 +73,7 @@ The following example OIDC token uses a subject (`sub`) that references a job en "repository": "octo-org/octo-repo", "repository_owner": "octo-org", "actor_id": "12", + "repo_visibility": private, "repository_id": "74", "repository_owner_id": "65", "run_id": "example-run-id", @@ -128,6 +129,7 @@ The token also includes custom claims provided by {% data variables.product.prod | `job_workflow_ref`| This is the ref path to the reusable workflow used by this job. For more information, see "["Using OpenID Connect with reusable workflows"](/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows)." | | `ref`| _(Reference)_ The git ref that triggered the workflow run. | | `ref_type`| The type of `ref`, for example: "branch". | +| `repo_visibility` | The visibility of the repository where the workflow is running. Accepts the following values: `internal`, `private`, or `public`. | | `repository`| The repository from where the workflow is running. | | `repository_id`| The ID of the repository from where the workflow is running. | | `repository_owner`| The name of the organization in which the `repository` is stored. | @@ -143,11 +145,11 @@ With OIDC, a {% data variables.product.prodname_actions %} workflow requires a t Audience and Subject claims are typically used in combination while setting conditions on the cloud role/resources to scope its access to the GitHub workflows. - **Audience**: By default, this value uses the URL of the organization or repository owner. This can be used to set a condition that only the workflows in the specific organization can access the cloud role. -- **Subject**: Has a predefined format and is a concatenation of some of the key metadata about the workflow, such as the {% data variables.product.prodname_dotcom %} organization, repository, branch, or associated [`job`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) environment. See "[Example subject claims](#example-subject-claims)" to see how the subject claim is assembled from concatenated metadata. +- **Subject**: By default, has a predefined format and is a concatenation of some of the key metadata about the workflow, such as the {% data variables.product.prodname_dotcom %} organization, repository, branch, or associated [`job`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) environment. See "[Example subject claims](#example-subject-claims)" to see how the subject claim is assembled from concatenated metadata. -There are also many additional claims supported in the OIDC token that can also be used for setting these conditions. +If you need more granular trust conditions, you can customize the issuer (`iss`) and subject (`sub`) claims that are included with the JWT. For more information, see "[Customizing the token claims](#customizing-the-token-claims)". -In addition, your cloud provider could allow you to assign a role to the access tokens, letting you specify even more granular permissions. +There are also many additional claims supported in the OIDC token that can be used for setting these conditions. In addition, your cloud provider could allow you to assign a role to the access tokens, letting you specify even more granular permissions. {% note %} @@ -238,6 +240,198 @@ curl -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" "$ACTIONS_ID_TOK {% data reusables.actions.oidc-permissions-token %} +{% ifversion actions-oidc-hardening-config %} +## Customizing the token claims + +You can security harden your OIDC configuration by customizing the claims that are included with the JWT. These customisations allow you to define more granular trust conditions on your cloud roles when allowing your workflows to access resources hosted in the cloud: + +{% ifversion ghec %} - For an additional layer of security, you can append the `issuer` url with your enterprise slug. This lets you set conditions on the issuer (`iss`) claim, configuring it to only accept JWT tokens from a unique `issuer` URL that must include your enterprise slug.{% endif %} +- You can standardize your OIDC configuration by setting conditions on the subject (`sub`) claim that require JWT tokens to originate from a specific repository, reusable workflow, or other source. +- You can define granular OIDC policies by using additional OIDC token claims, such as `repository_id` and `repo_visibility`. For more information, see "[Understanding the OIDC token](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#understanding-the-oidc-token)". + +To customize these claim formats, organization and repository admins can use the REST API endpoints described in the following sections. + +{% ifversion ghec %} + +### Switching to a unique token URL + +By default, the JWT is issued by {% data variables.product.prodname_dotcom %}'s OIDC provider at `https://token.actions.githubusercontent.com`. This path is presented to your cloud provider using the `iss` value in the JWT. + +Enterprise admins can security harden their OIDC configuration by configuring their enterprise to receive tokens from a unique URL at `https://api.github.com/enterprises//actions/oidc/customization/issuer`. Replace `` with the slug value of your enterprise. + +This configuration means that your enterprise will receive the OIDC token from a unique URL, and you can then configure your cloud provider to only accept tokens from that URL. This helps ensure that only the enterprise's repositories can access your cloud resources using OIDC. + +To activate this setting for your enterprise, an enterprise admin must use the `/enterprises/{enterprise}/actions/oidc/customization/issuer` endpoint and specify `"include_enterprise_slug": true` in the request body. For more information, see "[Set the {% data variables.product.prodname_actions %} OIDC custom issuer policy for an enterprise](/rest/actions/oidc#set-the-github-actions-oidc-custom-issuer-policy-for-an-enterprise)." + +After this setting is applied, the JWT will contain the updated `iss` value. In the following example, the `iss` key uses `octocat-inc` as its `enterpriseSlug` value: + +```json +{ + "jti": "6f4762ed-0758-4ccb-808d-ee3af5d723a8" + "sub": "repo:octocat-inc/private-server:ref:refs/heads/main" + "aud": "http://octocat-inc.example/octocat-inc" + "enterprise": "octocat-inc" + "iss": "https://api.github.com/enterprises/octocat-inc/actions/oidc/customization/issuer", + "bf": 1755350653, + "exp": 1755351553, + "iat": 1755351253 +} +``` + +{% endif %} + +### Customizing the subject claims for an organization + +To configure organization-wide security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)." + +Customizing the claims results in a new format for the entire `sub` claim, which replaces the default predefined `sub` format in the token described in "[Example subject claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims)." + +The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, organization admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim. {% data reusables.actions.use-request-body-api %} + +To customize your subject claims, you should first create a matching condition in your cloud provider's OIDC configuration, before customizing the configuration using the REST API. Once the configuration is completed, each time a new job runs, the OIDC token generated during that job will follow the new customization template. If the matching condition doesn't exist in the cloud provider's OIDC configuration before the job runs, the generated token might not be accepted by the cloud provider, since the cloud conditions may not be synchronized. + +{% note %} + +**Note**: When the organization template is applied, it will not affect any existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration. For more information, see "[Set the opt-in flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)." + +{% endnote %} + +#### Example: Allowing repository based on visibility and owner + +This example template allows the `sub` claim to have a new format, using `repository_owner` and `repository_visibility`: + +```json +{ + "include_claim_keys": [ + "repository_owner", + "repository_visibility" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repository_owner` and `repository_visibility`. For example: `"repository_owner: "monalisa":repository_visibility:private"`. The approach lets you restrict cloud role access to only private repositories within an organization or enterprise. + +#### Example: Allowing access to all repositories with a specific owner + +This example template enables the `sub` claim to have a new format with only the value of `repository_owner`. {% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repository_owner" + ] +} + +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include a specific value for `repository_owner`. For example: `"repository_owner: "monalisa""` + +#### Example: Requiring a reusable workflow + +This example template allows the `sub` claim to have a new format that contains the value of the `job_workflow_ref` claim. This enables an enterprise to use [reusable workflows](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims) to enforce consistent deployments across its organizations and repositories. + +{% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "job_workflow_ref" + ] + } +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include a specific value for `job_workflow_ref`. For example: `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. + +#### Example: Requiring a reusable workflow and other claims + +The following example template combines the requirement of a specific reusable workflow with additional claims. {% data reusables.actions.use-request-body-api %} + +This example also demonstrates how to use `"context"` to define your conditions. This is the part that follows the repository in the [default `sub` format](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims). For example, when the job references an environment, the context contains: `environment:`. + +```json +{ + "include_claim_keys": [ + "repo", + "context", + "job_workflow_ref" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repo`, `context`, and `job_workflow_ref`. + +This customization template requires that the `sub` uses the following format: `repo::environment::job_workflow_ref:`. +For example: `"sub": "repo:octo-org/octo-repo:environment:prod:job_workflow_ref:octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main"` + +#### Example: Granting access to a specific repository + +This example template lets you grant cloud access to all the workflows in a specific repository, across all branches/tags and environments. To help improve security, combine this template with the custom issuer URL described in "[Customizing the token URL for an enterprise](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-url-for-an-enterprise)." + +{% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repo" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repo` claim that matches the required value. + +#### Example: Using system-generated GUIDs + +This example template enables predictable OIDC claims with system-generated GUIDs that do not change between renames of entities (such as renaming a repository). {% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "repository_id" + ] + } +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repository_id` claim that matches the required value. + +or: + +```json +{ + "include_claim_keys": [ + "repository_owner_id" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repository_owner_id` claim that matches the required value. + +#### Resetting your customizations + +This example template resets the subject claims to the default format. {% data reusables.actions.use-request-body-api %} This template effectively opts out of any organization-level customization policy. + +```json +{ + "include_claim_keys": [ + "repo", + "context" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repo` and `context`. + +#### Using the default subject claims + +For repositories that can receive a subject claim policy from their organization, the repository owner can later choose to opt-out and instead use the default `sub` claim format. To configure this, the repository admin must use the REST API endpoint at "[Set the opt-out flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-out-flag-of-an-oidc-subject-claim-customization-for-a-repository)" with the following request body: + +```json +{ + "use_default": true +} +``` + +{% endif %} + ## Updating your workflows for OIDC You can now update your YAML workflows to use OIDC access tokens instead of secrets. Popular cloud providers have published their official login actions that make it easy for you to get started with OIDC. For more information about updating your workflows, see the cloud-specific guides listed below in "[Enabling OpenID Connect for your cloud provider](#enabling-openid-connect-for-your-cloud-provider)." diff --git a/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md b/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md index decbb3fdfb..99523f9764 100644 --- a/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md +++ b/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md @@ -32,10 +32,52 @@ Esta guía te proporciona un resumen de cómo configurar HashiCorp Vault para qu Para utilizar OIDC con HashiCorp Vault, necesitarás agregar una configuración de confianza para el proveedor de OIDC de {% data variables.product.prodname_dotcom %}. Para obtener más información, consulta la [documentación](https://www.vaultproject.io/docs/auth/jwt) de HashiCorp Vault. -Configura la bóveda para que acepte Tokens Web JSON (JWT) para la autenticación: -- Para el `oidc_discovery_url`, utiliza {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- Para `bound_issuer`, utiliza {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- Asegúrate de que `bound_subject` se defina correctamente para tus requisitos de seguridad. Para obtener más información, consulta la sección ["Configurar la confianza de OIDC con la nube"](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#configuring-the-oidc-trust-with-the-cloud) y [`hashicorp/vault-action`](https://github.com/hashicorp/vault-action). +Para configurar tu servidor de Vault para que acepte tokens web de JSON (JWT) para autenticación: + +1. Habilita el método `auth` del JWT y utiliza `write` para aplicar la configuración a tu bóveda. Para los parámetros de `oidc_discovery_url` y `bound_issuer`, utiliza {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %}. Los parámetros permiten que el servidor de Vault verifique los tokens web de JSON (JWT) durante el proceso de autenticación. + + ```sh{:copy} + vault auth enable jwt + ``` + + ```sh{:copy} + vault write auth/jwt/config \ + bound_issuer="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" \ + oidc_discovery_url="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" + ``` +2. Configura una política que solo otorgue acceso a las rutas específicas que utilizarán tus flujos de trabajo para recuperar los secretos. Para obtener más políticas avanzadas, consulta la [documentación de las políticas](https://www.vaultproject.io/docs/concepts/policies) de HashiCorp Vault. + + ```sh{:copy} + vault policy write myproject-production - <`: Reemplaza esto con la URL de tu HashiCorp Vault. +- ``: Reemplaza esto con el designador de nombre que configuraste en HashiCorp Vault. Por ejemplo: `admin`. - ``: Reemplaza esto con el rol que configuraste en la relación de confianza de HashiCorp Vault. -- ``: Reemplaza esto con la audiencia que definiste en la relación de confianza de HashiCorp Vault. -- ``: Reemplaza esto con la ruta al secreto que estás recuperando desde HashiCorp Vault. Por ejemplo: `secret/data/ci npmToken`. +- ``: Reemplaza esto con la ruta al secreto que estás recuperando desde HashiCorp Vault. Por ejemplo: `secret/data/production/ci npmToken`. ```yaml{:copy} jobs: - retrieve-secret: - steps: - - name: Retrieve secret from Vault - uses: hashicorp/vault-action@v2.4.0 - with: - url: - role: - method: jwt - jwtGithubAudience: - secrets: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + method: jwt + url: + namespace: + role: + secrets: - - name: Use secret from Vault - run: | - # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. +``` + +{% note %} + +**Nota**: + +- Si no se puede acceder a tu servidor de Vault desde la red pública, considera utilizar un ejecutor auto-hospedado con otros [métodos de autenticación](https://www.vaultproject.io/docs/auth) de Vault disponibles. Para obtener más información, consulta "[Acerca de los ejecutores autoalojados](/actions/hosting-your-own-runners/about-self-hosted-runners)." +- `` debe configurarse para el despliegue de una empresa de Vault (incluyendo a HCP Vault). Para obtener más información, consulta la sección [designador de nombre de Vault](https://www.vaultproject.io/docs/enterprise/namespaces). + +{% endnote %} + +### Revocar el token de acceso + +Predeterminadamente, el servidor de Vault revocará automáticamente los tokens de acceso cuando su TTL expire para que no tengas que revocarlos manualmente. Sin embargo, si quieres revocarlos de inmediato después de que tu job se haya completado o haya fallado, puedes revocar manualmente el token emitido utilizando la [API de Vault](https://www.vaultproject.io/api/auth/token#revoke-a-token-self). + +1. Configura la opción `exportToken` en `true` (predeterminado: `false`). Esto exporta el token de acceso emitido de Vault como una variable de ambiente: `VAULT_TOKEN`. +2. Agrega un paso para llamar a la API de Vault [Revocar un token (auto)](https://www.vaultproject.io/api/auth/token#revoke-a-token-self) para revocar el token de acceso. + +```yaml{:copy} +jobs: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + exportToken: true + method: jwt + url: + role: + secrets: + + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + + - name: Revoke token + # This step always runs at the end regardless of the previous steps result + if: always() + run: | + curl -X POST -sv -H "X-Vault-Token: {% raw %}${{ env.VAULT_TOKEN }}{% endraw %}" \ + /v1/auth/token/revoke-self ``` diff --git a/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md b/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md index 1fb177d065..25ba9d8db0 100644 --- a/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md +++ b/translations/es-ES/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md @@ -23,11 +23,18 @@ topics: Rather than copying and pasting deployment jobs from one workflow to another, you can create a reusable workflow that performs the deployment steps. A reusable workflow can be used by another workflow if it meets one of the access requirements described in "[Reusing workflows](/actions/learn-github-actions/reusing-workflows#access-to-reusable-workflows)." -When combined with OpenID Connect (OIDC), reusable workflows let you enforce consistent deployments across your repository, organization, or enterprise. You can do this by defining trust conditions on cloud roles based on reusable workflows. +You should be familiar with the concepts described in "[Reusing workflows](/actions/learn-github-actions/reusing-workflows" and "[About security hardening with OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)." -In order to create trust conditions based on reusable workflows, your cloud provider must support custom claims for `job_workflow_ref`. This allows your cloud provider to identify which repository the job originally came from. If your cloud provider only supports the standard claims (_audience_ and _subject_), it will not be able to determine that the job originated from the reusable workflow repository. Cloud providers that support `job_workflow_ref` include Google Cloud Platform and HashiCorp Vault. +## Defining the trust conditions -Before proceeding, you should be familiar with the concepts of [reusable workflows](/actions/learn-github-actions/reusing-workflows) and [OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect). +When combined with OpenID Connect (OIDC), reusable workflows let you enforce consistent deployments across your repository, organization, or enterprise. You can do this by defining trust conditions on cloud roles based on reusable workflows. The available options will vary depending on your cloud provider: + +- **Using `job_workflow_ref`**: + - To create trust conditions based on reusable workflows, your cloud provider must support custom claims for `job_workflow_ref`. This allows your cloud provider to identify which repository the job originally came from. + - For clouds that only support the standard claims (audience (`aud`) and subject (`sub`)), you can use the API to customize the `sub` claim to include `job_workflow_ref`. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". Support for custom claims is currently available for Google Cloud Platform and HashiCorp Vault. + +- **Customizing the token claims**: + - You can configure more granular trust conditions by customizing the issuer (`iss`) and subject (`sub`) claims included with the JWT. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". ## How the token works with reusable workflows diff --git a/translations/es-ES/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md b/translations/es-ES/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md index 33df75d7fe..6e76788770 100644 --- a/translations/es-ES/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md +++ b/translations/es-ES/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md @@ -71,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.organizations.settings-sidebar-actions-runners %} -1. Click **New runner**. +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {% elsif ghae or ghes < 3.4 %} {% data reusables.organizations.navigate-to-org %} diff --git a/translations/es-ES/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md b/translations/es-ES/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md index d1601bbd6d..b536f5aca8 100644 --- a/translations/es-ES/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md +++ b/translations/es-ES/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md @@ -18,15 +18,23 @@ shortTitle: Ejecutar la app del ejecutor al inicio {% capture service_first_step %}1. Detén la aplicación del ejecutor autoalojado si se está ejecutando actualmente.{% endcapture %} {% capture service_non_windows_intro_shell %}En la máquina del ejecutor, abre un shell en el directorio en el que instalaste la aplicación del ejecutor autoalojado. Usa los comandos que se indican a continuación para instalar y administrar el servicio de ejecutor autoalojado.{% endcapture %} -{% capture service_nonwindows_intro %} Debes agregar un ejecutor a {% data variables.product.product_name %} antes de que puedas configurar la aplicación del ejecutor auto-hospedado como servicio. Para obtener más información, consulta "[Agregar ejecutores autoalojados](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)."{% endcapture %} -{% capture service_win_name %}actions.runner.*{% endcapture %} +{% capture service_nonwindows_intro %} + +{% note %} + +**Nota:** Debes agregar un ejecutor a {% data variables.product.product_name %} antes de que puedas configurar la aplicación de ejecutor auto-hospedado como servicio. Para obtener más información, consulta "[Agregar ejecutores autoalojados](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)". + +{% endnote %} +{% endcapture %} + +{% capture service_win_name %}actions.runner.*{% endcapture %} {% linux %} {{ service_nonwindows_intro }} -Para los sistemas Linux que usan `systemd`, puedes usar el script `svc.sh` distribuido con la aplicación del ejecutor autoalojado para instalar y administrar el uso de la aplicación como un servicio. +Para los sistemas Linux que utilizan `systemd`, puedes utilizar el script de `svc.sh` que se creó después de agregar el ejecutor con éxito para instala y administrar utilizando la aplicación como servicio. {{ service_non_windows_intro_shell }} diff --git a/translations/es-ES/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md b/translations/es-ES/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md index f9996a90b0..0b19b5e58c 100644 --- a/translations/es-ES/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md +++ b/translations/es-ES/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md @@ -9,215 +9,65 @@ versions: ghae: '*' ghec: '*' type: tutorial -shortTitle: Administrar el acceso a los ejecutores +shortTitle: Using runner groups --- {% data reusables.actions.enterprise-beta %} {% data reusables.actions.enterprise-github-hosted-runners %} -## Acerca de los grupos de ejecutores auto-hospedados +## About runner groups -{% ifversion fpt %} -{% note %} - -**Nota:** Todas las organizaciones tienen un solo grupo de ejecutores auto-hospedados predeterminado. Solo las cuentas empresariales y las organizaciones que pretenezcan a estas pueden crear y administrar grupos de ejecutores auto-hospedados adicionales. - -{% endnote %} - -Los grupos de ejecutores auto-hospedados se utilizan para controlar el acceso a los ejecutores auto-hospedados. Los administradores de las organizaciones pueden configurar políticas de acceso que controlen qué repositorios en una organización tienen acceso al grupo de ejecutores. -Si utilizas - -{% data variables.product.prodname_ghe_cloud %}, puedes crear grupos de ejecutores adicionales; los administradores empresariales pueden configurar políticas de acceso que controlen qué organizaciones dentro de una empresa pueden acceder al grupo de ejecutores y los administradores organizacionales pueden asignar políticas de acceso granulares de repositorio para el grupo de ejecutores empresarial. Para obtener más información, consulta la [documentación de {% data variables.product.prodname_ghe_cloud %}](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups). -{% endif %} +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups).{% endif %} {% ifversion ghec or ghes or ghae %} -Los grupos de ejecutores auto-hospedados se utilizan para controlar el acceso a los ejecutores auto-hospedados a nivel de empresas y organizaciones. Los propietarios de empresas pueden configurar políticas de acceso que controlan qué organizaciones -{% ifversion restrict-groups-to-workflows %}y flujos de trabajo {% endif %}en una empresa tienen acceso al grupo de ejecutores. Los propietarios de las organizaciones pueden configurar las políticas de acceso que controlan qué repositorios{% ifversion restrict-groups-to-workflows %} y flujos de trabajo{% endif %} en una organización tienen aceso al grupo de ejecutores. - -Cuando un propietario de empresa otorga un acceso organizacional a un grupo de ejecutores, los propietarios de organizaciones pueden verlo listado en los ajustes del ejecutor auto-hospedado de la organización. Los propietarios organizacionales pueden entonces asignar políticas de acceso adicionales y granulares para los repositorios{% ifversion restrict-groups-to-workflows %} y flujos de trabajo{% endif %} al grupo ejecutor de la empresa. - -Cuando se crean nuevos ejecutores, se asignan automáticamente al grupo predeterminado. Los ejecutores solo pueden estar en un grupo a la vez. Puedes mover los ejecutores del grupo predeterminado a otro grupo. Para obtener más información, consulta la sección "[Mover un ejecutor auto-hospedado a un grupo](#moving-a-self-hosted-runner-to-a-group)". ## Crear un grupo de ejecutores auto-hospedados para una organización -Todas las organizaciones tienen un solo grupo predeterminado de ejecutores auto-hospedados. Las organizaciones dentro de una cuenta empresarial pueden crear grupos auto-hospedados adicionales. Los administradores de la organización pueden permitir el acceso de los repositorios individuales a un grupo de ejecutores. Para obtener más información sobre cómo crear un grupo de ejecutores auto-hospedados con la API de REST, consulta la sección "[Grupos de ejecutores auto-hospedados](/rest/reference/actions#self-hosted-runner-groups)". +{%- ifversion ghec or ghes %} -Los ejecutores auto-hospedados se asignan automáticamente al grupo predeterminado cuando se crean y solo pueden ser mimebros de un grupo a la vez. Puedes mover un ejecutor del grupo predeterminado a cualquier grupo que crees. +{% data reusables.actions.self-hosted-runner-security-admonition %} -Cuando creas un grupo, debes elegir la política que define qué reositorios{% ifversion restrict-groups-to-workflows %} y flujos de trabajo{% endif %} tienen acceso al grupo ejecutor. +{%- endif %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. En la sección de "Grupos de ejecutores", haz clic en **Grupo de ejecutores nuevo**. -1. Ingresa un nombre para tu grupo ejecutor. - {% data reusables.actions.runner-group-assign-policy-repo %} - - {% warning %} - - **Advertencia**: {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obtener más información, consulta "[Acerca de los ejecutores autoalojados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} -{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %}Los grupos ejecutores que pertenecen a las organizaciones no pueden acceder a los flujos de trabajo de una organización diferente en la empresa. En vez de esto, debes crear un grupo de ejecutores que pertenezca a la empresa.{% endif %} -{% data reusables.actions.self-hosted-runner-create-group %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. Debajo de {% ifversion ghes or ghae %}"Ejecutores"{% endif %}, haz clic en **Agregar nuevo** y luego en **Grupo nuevo**. - - ![Agregar un grupo de ejecutores](/assets/images/help/settings/actions-org-add-runner-group.png) -1. Ingresa un nombre para tu grupo de ejecutores y asigna una política para el acceso al repositorio. - - Puedes configurar un grupo de ejecutores para que sea accesible a una lista específica de repositorios o a todos ellos en la organización.{% ifversion ghec or ghes %} Predeterminadamente, solo los repositorios privados pueden acceder a los ejecutores en un grupo ejecutor. Pero esto se puede anular. Esta configuración no puede anularse si se configura un grupo ejecutor de la organización que haya compartido una empresa.{% endif %} - - {%- ifversion ghes %} - {% warning %} - - **Advertencia**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obtener más información, consulta "[Acerca de los ejecutores autoalojados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} - - ![Agregar opciones de un grupo de ejecutores](/assets/images/help/settings/actions-org-add-runner-group-options.png) -1. Da clic en **Guardar grupo** para crear el grupo y aplicar la política. -{% endif %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} ## Crear un grupo de ejecutores auto-hospedados para una empresa -Las empresas pueden agregar sus ejecutores auto-hospedados a grupos para su administración de accesos. Las empresas pueden crear grupos de ejecutores auto-hospedados que son accesibles para organizaciones específicas en la cuenta empresarial{% ifversion restrict-groups-to-workflows %} o para flujos de trabajo específicos{% endif %}. Los propietarios de organizaciones pueden entonces asignar políticas de acceso adicionales y granulares para los repositorios{% ifversion restrict-groups-to-workflows %} o flujos de trabajo{% endif %} a los grupos de ejecutores empresariales. Para obtener más información sobre cómo crear un grupo de ejecutores auto-hospedados con la API de REST, consulta las terminales empresariales en la [API de REST de {% data variables.product.prodname_actions %}](/rest/reference/actions#self-hosted-runner-groups). + {%- ifversion ghec or ghes %} -Los ejecutores auto-hospedados se asignan automáticamente al grupo predeterminado cuando se crean y solo pueden ser mimebros de un grupo a la vez. Puedes asignar el ejecutor a un grupo específico durante el proceso de registro o puedes moverlo después desde el grupo predeterminado a un grupo personalizado. +{% data reusables.actions.self-hosted-runner-security-admonition %} -Cuando creas un grupo, debes elegir la política que defina qué organizaciones tienen acceso al grupo de ejecutores. +{%- endif %} -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} -1. Para elegir una política para el acceso organizacional, selecciona el menú desplegable **Acceso organizacional** y haz clic en una política. Puedes configurar un grupo de ejecutores para que sea accesible a una lista de organizaciones específica o a todas las organizaciones en la empresa.{% ifversion ghes %} Predeterminadamente, solo los repositorios privados pueden acceder a los ejecutores en un grupo, pero esto se puede anular.{% endif %} - - {%- ifversion ghec or ghes %} - {% warning %} - - **Advertencia**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obtener más información, consulta "[Acerca de los ejecutores autoalojados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} - {%- ifversion ghec or ghes %} - - ![Agregar opciones de un grupo de ejecutores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) - {%- elsif ghae %} - - ![Agregar opciones de un grupo de ejecutores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) - {%- endif %} -{% data reusables.actions.runner-group-assign-policy-workflow %} -1. Da clic en **Guardar grupo** para crear el grupo y aplicar la política. +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} {% endif %} ## Cambiar la política de acceso de un grupo de ejecutores auto-hospedados -En el caso de los grupos de ejecutores en una empresa, puedes cambiar qué organizaciones dentro de ella pueden acceder a un grupo de ejecutores{% ifversion restrict-groups-to-workflows %} o restringir qué flujos de trabajo puede ejecutar un grupo de ejecutores{% endif %}. En el caso de los grupos de ejecutores en una organización, puedes cambiar qué repositorios en ella pueden acceder a un grupo de ejecutores{% ifversion restrict-groups-to-workflows %} o restringir qué flujos de trabajo puede ejecutar un grupo de ejecutores{% endif %}. +{%- ifversion fpt or ghec or ghes %} -### Cambiar qué organizaciones o repositorios pueden acceder a un grupo de ejecutores +{% data reusables.actions.self-hosted-runner-security-admonition %} -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. En el caso de los grupos de ejecutores en una empresa, debajo de **Acceso organizacional**, modifica qué organizaciones pueden acceder al grupo de ejecutores. En el caso de los grupos de ejecutores en una organización, debajo de **Acceso al repositorio**, modifica aquellos a los que puede acceder este grupo. +{%- endif %} - {%- ifversion fpt or ghec or ghes %} - {% warning %} - - **Advertencia**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obtener más información, consulta "[Acerca de los ejecutores autoalojados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group-access %} -{% endif %} - -{% ifversion restrict-groups-to-workflows %} -### Cambiar los flujos de trabajo a los cuales puede acceder un grupo de ejecutores -Puedes configurar un grupo de ejecutores auto-hospedado para que ejecute ya sea flujos selectos o todos ellos. Por ejemplo, podrías utilizar este ajuste para proteger secretos almacenados en los ejecutores auto-hospedados o estandarizar los flujos de trabajo de despliegue restringiendo un grupo de ellos para que ejecute solo un flujo de trabajo reutilizable específico. Este ajuste no se puede anular si estás configurando un grupo de ejecutores de una organización que haya compartido una empresa. -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Debajo de **Acceso al flujo de trabajo**, selecciona el menú desplegable y haz clic en **Flujos de trabajo selectos**. -1. Da clic en {% octicon "gear" aria-label="the gear icon" %}. -1. Ingresa una lista separada por comas de los flujos de trabajo que pueden acceder al grupo de ejecutores. Utiliza la ruta completa, incluyendo el nombre y propietario del repositorio. Fija el flujo de trabajo a una rama, etiqueta o SHA completo. Por ejemplo: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`. - - Solo los jobs que se definan directamente dentro de los flujos de trabajo seleccionados tendrán acceso al grupo de ejecutores. - - Los grupos de ejecutores que pertenecen a la organización no pueden acceder a los flujos de trabajo de otra organización de la empresa; en vez de esto, debes crear un grupo de ejecutores que pertenezca a la empresa. - -1. Haz clic en **Save ** (guardar). - -{% endif %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} ## Cambiar el nombre de un grupo de ejectuores -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Cambia el nombre del grupo de ejecutores. - -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group %} -1. Cambia el nombre del grupo de ejecutores. -{% endif %} +{% data reusables.actions.changing-the-name-of-a-runner-group %} {% ifversion ghec or ghes or ghae %} ## Agregar ejecutores auto-hospedados a un grupo automáticamente -Puedes utilizar el script de configuración para agregar automáticamente un ejecutor auto-hospedado nuevo a un grupo. Por ejemplo, este comando registra un ejecutor auto-hospedado nuevo y utiliza el parámetro `--runnergroup` para agregarlo a un grupo llamado `rg-runnergroup`. - -```sh -./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup -``` - -El comando fallará si el grupo de ejecutores no existe: - -``` -Could not find any self-hosted runner group named "rg-runnergroup". -``` +{% data reusables.actions.automatically-adding-a-runner-to-a-group %} ## Mover un ejecutor auto-hospedado a un grupo -Si no especificas un grupo de ejecutores durante el proceso de registro, tus ejecutores auto-hospedados nuevos se asignarán automáticamente al grupo predeterminado y después se moverán a otro grupo. - -{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -1. En la lista de "Ejecutores", haz clic en aquél que quieras configurar. -2. Selecciona el menú desplegable de **Grupo de ejecutores**. -3. En "Mover el ejecutor al grupo", elige un grupo destino para el ejecutor. -{% elsif ghae or ghes < 3.4 %} -1. En la sección {% ifversion ghes or ghae %}"Grupos de ejecutores"{% endif %} de la página de ajustes, ubica el grupo actual del ejecutor que quieras mover y expande la lista de miembros del grupo. ![Ver los miembros de un grupo de ejecutores](/assets/images/help/settings/actions-org-runner-group-members.png) -2. Selecciona la casilla junto al ejecutor auto-hospedado y da clic en **Mover a grupo** para ver los destinos disponibles. ![Mover a un miembro de un grupo de ejecutores](/assets/images/help/settings/actions-org-runner-group-member-move.png) -3. Para mover el ejecutor, da clic en el grupo de destino. ![Mover a un miembro de un grupo de ejecutores](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) -{% endif %} +{% data reusables.actions.moving-a-runner-to-a-group %} ## Eliminar un grupo de ejecutores auto-hospedados -Los ejecutores auto-hospedados se devuelven automáticamente al grupo predeterminado cuando su grupo se elimina. - -{% ifversion ghes or ghae or ghec %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -1. En la lista de grupos, a la derecha del grupo que quieras borrar, haz clic en {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}. -2. Para eliminar el grupo, da clic en **Eliminar grupo**. -3. Revisa el mensaje de confirmación y da clic en **Eliminar este grupo de ejecutores**. +{% data reusables.actions.removing-a-runner-group %} {% endif %} -{% endif %} diff --git a/translations/es-ES/content/actions/learn-github-actions/contexts.md b/translations/es-ES/content/actions/learn-github-actions/contexts.md index 7a93d901be..a8abf6ce7e 100644 --- a/translations/es-ES/content/actions/learn-github-actions/contexts.md +++ b/translations/es-ES/content/actions/learn-github-actions/contexts.md @@ -38,6 +38,8 @@ You can access contexts using the expression syntax. For more information, see " | `github` | `object` | Information about the workflow run. For more information, see [`github` context](#github-context). | | `env` | `object` | Contains environment variables set in a workflow, job, or step. For more information, see [`env` context](#env-context). | | `job` | `object` | Information about the currently running job. For more information, see [`job` context](#job-context). | +{%- ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} +| `jobs` | `object` | For reusable workflows only, contains outputs of jobs from the reusable workflow. For more information, see [`jobs` context](#jobs-context). |{% endif %} | `steps` | `object` | Information about the steps that have been run in the current job. For more information, see [`steps` context](#steps-context). | | `runner` | `object` | Information about the runner that is running the current job. For more information, see [`runner` context](#runner-context). | | `secrets` | `object` | Contains the names and values of secrets that are available to a workflow run. For more information, see [`secrets` context](#secrets-context). | @@ -404,6 +406,72 @@ jobs: - run: ./run-tests ``` +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} + +## `jobs` context + +The `jobs` context is only available in reusable workflows, and can only be used to set outputs for a reusable workflow. For more information, see "[Reusing workflows](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)." + +| Property name | Type | Description | +|---------------|------|-------------| +| `jobs` | `object` | This is only available in reusable workflows, and can only be used to set outputs for a reusable workflow. This object contains all the properties listed below. +| `jobs..result` | `string` | The result of a job in the reusable workflow. Possible values are `success`, `failure`, `cancelled`, or `skipped`. | +| `jobs..outputs` | `object` | The set of outputs of a job in a reusable workflow. | +| `jobs..outputs.` | `string` | The value of a specific output for a job in a reusable workflow. | + +### Example contents of the `jobs` context + +This example `jobs` context contains the result and outputs of a job from a reusable workflow run. + +```json +{ + example_job: { + result: success, + outputs: { + output1: hello, + output2: world + } + } +} +``` + +### Example usage of the `jobs` context + +This example reusable workflow uses the `jobs` context to set outputs for the reusable workflow. Note how the outputs flow up from the steps, to the job, then to the `workflow_call` trigger. For more information, see "[Reusing workflows](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)." + +{% raw %} +```yaml{:copy} +name: Reusable workflow + +on: + workflow_call: + # Map the workflow outputs to job outputs + outputs: + firstword: + description: "The first output string" + value: ${{ jobs.example_job.outputs.output1 }} + secondword: + description: "The second output string" + value: ${{ jobs.example_job.outputs.output2 }} + +jobs: + example_job: + name: Generate output + runs-on: ubuntu-latest + # Map the job outputs to step outputs + outputs: + output1: ${{ steps.step1.outputs.firstword }} + output2: ${{ steps.step2.outputs.secondword }} + steps: + - id: step1 + run: echo "::set-output name=firstword::hello" + - id: step2 + run: echo "::set-output name=secondword::world" +``` +{% endraw %} + +{% endif %} + ## `steps` context The `steps` context contains information about the steps in the current job that have an [`id`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepsid) specified and have already run. diff --git a/translations/es-ES/content/actions/learn-github-actions/expressions.md b/translations/es-ES/content/actions/learn-github-actions/expressions.md index df7fc1511c..f0522a65bc 100644 --- a/translations/es-ES/content/actions/learn-github-actions/expressions.md +++ b/translations/es-ES/content/actions/learn-github-actions/expressions.md @@ -129,17 +129,17 @@ Arroja `true` si `search` contiene `item`. Si `search` es una matriz, esta funci `contains('Hello world', 'llo')` arroja `true`. -#### Example using an object filter +#### Ejemplo utilizando un filtro de objeto `contains(github.event.issue.labels.*.name, 'bug')` returns `true` if the issue related to the event has a label "bug". -For more information, see "[Object filters](#object-filters)." +Para obtener más información, consulta la sección "[Filtros de objeto](#object-filters)". -#### Example matching an array of strings +#### Ejemplo empatando un arreglo de secuencias -Instead of writing `github.event_name == "push" || github.event_name == "pull_request"`, you can use `contains()` with `fromJson()` to check if an array of strings contains an `item`. +En vez de escribir `github.event_name == "push" || github.event_name == "pull_request"`, puedes utilizar `contains()` con `fromJson()` para verificar si un arreglo de secuencias contiene un `item`. -For example, `contains(fromJson('["push", "pull_request"]'), github.event_name)` returns `true` if `github.event_name` is "push" or "pull_request". +Por ejemplo, `contains(fromJson('["push", "pull_request"]'), github.event_name)` devuelve `true` si `github.event_name` es "push" o "pull_request". ### startsWith diff --git a/translations/es-ES/content/actions/learn-github-actions/understanding-github-actions.md b/translations/es-ES/content/actions/learn-github-actions/understanding-github-actions.md index e269783393..cbadb6cb60 100644 --- a/translations/es-ES/content/actions/learn-github-actions/understanding-github-actions.md +++ b/translations/es-ES/content/actions/learn-github-actions/understanding-github-actions.md @@ -2,6 +2,7 @@ title: Entender las GitHub Actions shortTitle: Entendiendo las GitHub Actions intro: 'Aprende lo básico de las {% data variables.product.prodname_actions %}, incluyendo los conceptos nucleares y la terminología esencial.' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/automating-your-workflow-with-github-actions/core-concepts-for-github-actions - /actions/automating-your-workflow-with-github-actions/core-concepts-for-github-actions @@ -82,7 +83,7 @@ Para obtener más información, consulta la sección "[Crear acciones](/actions/ ### Ejecutores -{% data reusables.actions.about-runners %} Cada ejecutor puede ejecutar un job individual a la vez. {% ifversion ghes or ghae %} Debes hospedar tus propios ejecutores para {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} proporciona ejecutores de Ubuntu Linux, Microsoft Windows y macOS para ejecutar tus flujos de trabajo; cada flujo de trabajo se ejecuta en una máquina virtual nueva y recién aprovisionada. Si necesitas un sistema operativo diferente o si requieres una configuración de hardware específica, puedes hospedar tus propios ejecutores.{% endif %} Para obtener más información{% ifversion fpt or ghec %} sobre los ejecutores auto-hospedados{% endif %}, consulta la sección "[Hospedar tus propios ejecutores](/actions/hosting-your-own-runners)". +{% data reusables.actions.about-runners %} Cada ejecutor puede ejecutar un job individual a la vez. {% ifversion ghes or ghae %} Debes hospedar tus propios ejecutores para {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} proporciona ejecutores de Ubuntu Linux, Microsoft Windows y macOS para ejecutar tus flujos de trabajo; cada flujo de trabajo se ejecuta en una máquina virtual nueva y recién aprovisionada. {% ifversion actions-hosted-runners %} {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." {% endif %}If you need a different operating system or require a specific hardware configuration, you can host your own runners.{% endif %} For more information{% ifversion fpt or ghec %} about self-hosted runners{% endif %}, see "[Hosting your own runners](/actions/hosting-your-own-runners)." {% data reusables.actions.workflow-basic-example-and-explanation %} @@ -93,7 +94,7 @@ Para obtener más información, consulta la sección "[Crear acciones](/actions/ - Para seguir aprendiendo sobre las {% data variables.product.prodname_actions %}, consulta la sección "[Encontrar y personalizar las acciones](/actions/learn-github-actions/finding-and-customizing-actions)". {% ifversion fpt or ghec or ghes %} -- Para entender cómo funciona la facturación de las {% data variables.product.prodname_actions %}, consulta la sección "[Acerca de la facturación para las {% data variables.product.prodname_actions %}](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)". +- Para entender cómo funciona la facturación de las {% data variables.product.prodname_actions %}, consulta la sección "[Acerca de la facturación para las {% data variables.product.prodname_actions %}](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)." {% endif %} ## Contactar con soporte técnico diff --git a/translations/es-ES/content/actions/publishing-packages/publishing-nodejs-packages.md b/translations/es-ES/content/actions/publishing-packages/publishing-nodejs-packages.md index bb16664970..2c2330de27 100644 --- a/translations/es-ES/content/actions/publishing-packages/publishing-nodejs-packages.md +++ b/translations/es-ES/content/actions/publishing-packages/publishing-nodejs-packages.md @@ -98,9 +98,9 @@ Cada vez que creas un lanzamiento nuevo, puedes desencadenar un flujo de trabajo ### Configurar el repositorio de destino -Si no proporcionas la clave del `repository` en tu archivo *package.json*, entonces el {% data variables.product.prodname_registry %} publicará un paquete en el repositorio de {% data variables.product.prodname_dotcom %} que especifiques en el campo `name` del archivo *package.json*. Por ejemplo, un paquete denominado `@my-org/test` se publicará en el repositorio `my-org/test` de {% data variables.product.prodname_dotcom %}. +Linking your package to {% data variables.product.prodname_registry %} using the `repository` key is optional. If you choose not to provide the `repository` key in your *package.json* file, then {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the `name` field of the *package.json* file. Por ejemplo, un paquete denominado `@my-org/test` se publicará en el repositorio `my-org/test` de {% data variables.product.prodname_dotcom %}. If the `url` specified in the `repository` key is invalid, your package may still be published however it won't be linked to the repository source as intended. -Sin embargo, si no proporcionas la clave del `repository`, entonces el repositorio en esa clave se utilizará como el registro de npm de destino para el {% data variables.product.prodname_registry %}. Por ejemplo, el publicar el siguiente *package.json* dará como resultado un paquete denominado `my-amazing-package` que se publicará en el repositorio `octocat/my-other-repo` de {% data variables.product.prodname_dotcom %}. +If you do provide the `repository` key in your *package.json* file, then the repository in that key is used as the destination npm registry for {% data variables.product.prodname_registry %}. Por ejemplo, el publicar el siguiente *package.json* dará como resultado un paquete denominado `my-amazing-package` que se publicará en el repositorio `octocat/my-other-repo` de {% data variables.product.prodname_dotcom %}. Once published, only the repository source is updated, and the package doesn't inherit any permissions from the destination repository. ```json { diff --git a/translations/es-ES/content/actions/using-github-hosted-runners/about-github-hosted-runners.md b/translations/es-ES/content/actions/using-github-hosted-runners/about-github-hosted-runners.md index dcfa57bf9b..62fe7d964c 100644 --- a/translations/es-ES/content/actions/using-github-hosted-runners/about-github-hosted-runners.md +++ b/translations/es-ES/content/actions/using-github-hosted-runners/about-github-hosted-runners.md @@ -86,6 +86,15 @@ While the job runs, the logs and output can be viewed in the {% data variables.p ## Supported runners and hardware resources +{% ifversion actions-hosted-runners %} + +{% note %} + +**Note**: {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." + +{% endnote %} +{% endif %} + Hardware specification for Windows and Linux virtual machines: - 2-core CPU (x86_64) - 7 GB of RAM diff --git a/translations/es-ES/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md b/translations/es-ES/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md new file mode 100644 index 0000000000..187cf4b81a --- /dev/null +++ b/translations/es-ES/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md @@ -0,0 +1,50 @@ +--- +title: Controlling access to larger runners +intro: 'Puedes utilizar políticas para limitar el acceso a los {% data variables.actions.hosted_runner %} que se hayan agregado a una organización o empresa.' +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: actions-hosted-runners +type: tutorial +shortTitle: 'Controlling access to {% data variables.actions.hosted_runner %}s' +--- + +{% data reusables.actions.enterprise-beta %} +{% data reusables.actions.enterprise-github-hosted-runners %} + +## About runner groups + +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/using-github-hosted-runners/controlling-access-to-larger-runners).{% endif %} + +{% ifversion ghec or ghes or ghae %} + +## Creating a runner group for an organization + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} + +## Creating a runner group for an enterprise + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} + +{% endif %} + +## Changing the access policy of a runner group + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} + +## Cambiar el nombre de un grupo de ejectuores + +{% data reusables.actions.changing-the-name-of-a-runner-group %} + +{% ifversion ghec or ghes or ghae %} +## Moving a runner to a group + +{% data reusables.actions.moving-a-runner-to-a-group %} + +## Removing a runner group + +{% data reusables.actions.removing-a-runner-group %} + +{% endif %} diff --git a/translations/es-ES/content/actions/using-github-hosted-runners/index.md b/translations/es-ES/content/actions/using-github-hosted-runners/index.md index 07f6d827cf..d8b2fd9f02 100644 --- a/translations/es-ES/content/actions/using-github-hosted-runners/index.md +++ b/translations/es-ES/content/actions/using-github-hosted-runners/index.md @@ -7,6 +7,8 @@ versions: ghes: '*' children: - /about-github-hosted-runners + - /using-larger-runners + - /controlling-access-to-larger-runners - /monitoring-your-current-jobs - /customizing-github-hosted-runners - /connecting-to-a-private-network diff --git a/translations/es-ES/content/actions/using-github-hosted-runners/using-larger-runners.md b/translations/es-ES/content/actions/using-github-hosted-runners/using-larger-runners.md new file mode 100644 index 0000000000..22ea007919 --- /dev/null +++ b/translations/es-ES/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -0,0 +1,135 @@ +--- +title: Using larger runners +intro: '{% data variables.product.prodname_dotcom %} offers larger runners with more RAM and CPU.' +miniTocMaxHeadingLevel: 3 +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: 'actions-hosted-runners' +shortTitle: Using {% data variables.actions.hosted_runner %}s +--- + +## Overview of {% data variables.actions.hosted_runner %}s + +In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. + +When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. + +## Architectural overview of {% data variables.actions.hosted_runner %}s + +The {% data variables.actions.hosted_runner %}s are managed at the organization level, where they are arranged into groups that can contain multiple instances of the runner. They can also be created at the enterprise level and shared with organizations in the hierarchy. Once you've created a group, you can then add a runner to the group and update your workflows to target the label assigned to the {% data variables.actions.hosted_runner %}. You can also control which repositories are permitted to send jobs to the group for processing. For more information about groups, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +In the following diagram, a class of hosted runner named `ubuntu-20.04-16core` has been defined with customized hardware and operating system configuration. + +![Diagram explaining {% data variables.actions.hosted_runner %}](/assets/images/hosted-runner.png) + +1. Instances of this runner are automatically created and added to a group called `ubuntu-20.04-16core`. +2. The runners have been assigned the label `ubuntu-20.04-16core`. +3. Workflow jobs use the `ubuntu-20.04-16core` label in their `runs-on` key to indicate the type of runner they need to execute the job. +4. {% data variables.product.prodname_actions %} checks the runner group to see if your repository is authorized to send jobs to the runner. +5. The job runs on the next available instance of the `ubuntu-20.04-16core` runner. + +## Autoscaling {% data variables.actions.hosted_runner %}s + +Your {% data variables.actions.hosted_runner %}s can be configured to automatically scale to suit your needs. When jobs are submitted for processing, more machines can be automatically provisioned to run the jobs, until reaching a pre-defined maximum limit. Each machine only handles one job at a time, so these settings effectively determine the number of jobs that can be run concurrently. + +During the runner deployment process, you can configure the _Max_ option, which allows you to control your costs by setting the maximum parallel number of machines that are created in this set. A higher value here can help avoid workflows being blocked due to parallelism. + +## Networking for {% data variables.actions.hosted_runner %}s + +By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive a static IP address from {% data variables.product.prodname_dotcom %}'s IP address pool. When enabled, instances of the {% data variables.actions.hosted_runner %} will receive an address from a range that is unique to the runner, allowing you to use this range to configure a firewall allowlist. You can use up to 10 static IP address ranges in total across all your {% data variables.actions.hosted_runner %}s. + +{% note %} + +**Note**: If runners are unused for more than 30 days, their IP address ranges are automatically removed and cannot be recovered. + +{% endnote %} + +## Planning for {% data variables.actions.hosted_runner %}s + +### Create a runner group + +Runner groups are used to collect sets of virtual machines and create a security boundary around them. You can then decide which organizations or repositories are permitted to run jobs on those sets of machines. During the {% data variables.actions.hosted_runner %} deployment process, the runner can be added to an existing group, or otherwise it will join a default group. You can create a group by following the steps in "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +### Understanding billing + +Compared to standard {% data variables.product.prodname_dotcom %}-hosted runners, {% data variables.actions.hosted_runner %}s are billed differently. For more information, see "[Per-minute rates](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)". + +## Adding a {% data variables.actions.hosted_runner %} to an enterprise + +You can add {% data variables.actions.hosted_runner %}s to an enterprise, where they can be assigned to multiple organizations. The organization admins can then control which repositories can use the runners. To add a {% data variables.actions.hosted_runner %} to an enterprise, you must be an enterprise owner. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.enterprise-accounts.actions-runners-tab %} +{% data reusables.actions.add-hosted-runner %} +1. To allow organizations to access your {% data variables.actions.hosted_runner %}s, you specify the list of organizations that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Adding a {% data variables.actions.hosted_runner %} to an organization + +You can add a {% data variables.actions.hosted_runner %} to an organization, where the organization admins can control which repositories can use it. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runners %} +{% data reusables.actions.add-hosted-runner %} +1. To allow repositories to access your {% data variables.actions.hosted_runner %}s, add them to the list of repositories that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Running jobs on your runner + +Once your runner type has been been defined, you can update your workflows to send jobs to the runner instances for processing. In this example, a runner group is populated with Ubuntu 16-core runners, which have been assigned the label `ubuntu-20.04-16core`. If you have a runner matching this label, the `check-bats-version` job then uses the `runs-on` key to target that runner whenever the job is run: + +```yaml +name: learn-github-actions +on: [push] +jobs: + check-bats-version: + runs-on: ubuntu-20.04-16core + steps: + - uses: {% data reusables.actions.action-checkout %} + - uses:{% data reusables.actions.action-setup-node %} + with: + node-version: '14' + - run: npm install -g bats + - run: bats -v +``` + +## Managing access to your runners + +{% note %} + +**Note**: Before your workflows can send jobs to {% data variables.actions.hosted_runner %}s, you must first configure permissions for the runner group. See the following sections for more information. + +{% endnote %} + +Runner groups are used to control which repositories can run jobs on your {% data variables.actions.hosted_runner %}s. You must grant access to the group from each level of the management hierarchy, depending on where you've defined the {% data variables.actions.hosted_runner %}: + +- **Runners at the enterprise level**: Configure the runner group to grant access to all the required organizations. In addition, for each organization, you must configure the group to specify which repositories are allowed access. +- **Runners at the organization level**: Configure the runner group by specifying which repositories are allowed access. + +For example, the following diagram has a runner group named `grp-ubuntu-20.04-16core` at the enterprise level. Before the repository named `octo-repo` can use the runners in the group, you must first configure the group at the enterprise level to allow access from the `octo-org` organization; you must then configure the group at the organization level to allow access from `octo-repo`: + +![Diagram explaining {% data variables.actions.hosted_runner %} groups](/assets/images/hosted-runner-mgmt.png) + +### Allowing repositories to access a runner group + +This procedure demonstrates how to configure group permissions at the enterprise and organization levels: + +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} + - For runner groups in an enterprise: under **Organization access**, modify which organizations can access the runner group. + - For runner groups in an organization: under **Repository access**, modify which repositories can access the runner group. + +{% warning %} + +**Warning**: + +{% data reusables.actions.hosted-runner-security %} + +For more information, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +{% endwarning %} diff --git a/translations/es-ES/content/actions/using-workflows/about-workflows.md b/translations/es-ES/content/actions/using-workflows/about-workflows.md index 4706a7fb4a..d86a02068f 100644 --- a/translations/es-ES/content/actions/using-workflows/about-workflows.md +++ b/translations/es-ES/content/actions/using-workflows/about-workflows.md @@ -1,7 +1,7 @@ --- title: Acerca de los flujos de trabajo shortTitle: Acerca de los flujos de trabajo -intro: 'Get a high level overview {% data variables.product.prodname_actions %} workflows, including triggers, syntax, and advanced features.' +intro: 'Obtén flujos de trabajo de {% data variables.product.prodname_actions %} de resumen de alto nivel, incluyendo activadores, sintaxis y características avanzadas.' versions: fpt: '*' ghes: '*' @@ -20,15 +20,15 @@ miniTocMaxHeadingLevel: 3 {% data reusables.actions.about-workflows-long %} -## Workflow basics +## Puntos básicos de los flujos de trabajo -A workflow must contain the following basic components: +Un flujo de trabajo debe contener los siguientes componentes básicos: -1. One or more _events_ that will trigger the workflow. -1. One or more _jobs_, each of which will execute on a _runner_ machine and run a series of one or more _steps_. -1. Each step can either run a script that you define or run an action, which is a reusable extension that can simplify your workflow. +1. Uno o más _eventos_ que activarán el flujo de trabajo. +1. Uno o más _jobs_, cada uno de los cuales se ejecutará en una máquina _ejecutora_ y ejecutará una serie de uno o más _pasos_. +1. Cada paso puede ya sea ejecutar un script que defines o ejecutar una acción, la cual es una extensión reutilizable que puede simplificar tu flujo de trabajo. -For more information on these basic components, see "[Understanding GitHub Actions](/actions/learn-github-actions/understanding-github-actions#the-components-of-github-actions)." +Para obtener más información sobre estos componentes básicos, consulta la sección "[Entender las GitHub Actions](/actions/learn-github-actions/understanding-github-actions#the-components-of-github-actions)". ![Resumen del flujo de trabajo](/assets/images/help/images/overview-actions-simple.png) @@ -36,32 +36,32 @@ For more information on these basic components, see "[Understanding GitHub Actio {% data reusables.actions.about-triggers %} -For more information, see "[Triggering a workflow](/actions/using-workflows/triggering-a-workflow)", and for a full list of events, see "[Events that trigger workflows](/actions/using-workflows/events-that-trigger-workflows)." +Para obtener más información, consulta la sección "[Activar un flujo de trabajo](/actions/using-workflows/triggering-a-workflow)" y para encontrar una lista completa de eventos, consulta la sección "[Eventos que activan flujos de trabajo](/actions/using-workflows/events-that-trigger-workflows)". ## Sintaxis de flujos de trabajo -Workflow are defined using YAML. For the full reference of the YAML syntax for authoring workflows, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#about-yaml-syntax-for-workflows)." +Los flujos de trabajo se definen utilizando YAML. Para encontrar una referencia completa de la sintaxis de YAML para flujos de trabajo de creación, consulta la sección "[Sintaxis de fluljo de trabajo para GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#about-yaml-syntax-for-workflows)". {% data reusables.actions.workflow-basic-example-and-explanation %} -For more on managing workflow runs, such as re-running, cancelling, or deleting a workflow run, see "[Managing workflow runs](/actions/managing-workflow-runs)." +Para ver más información sobre cómo manejar las ejecuciones de flujo de trabajo tales como re-ejecutar, cancelar o borrar una ejecución de flujo de trabajo, consulta la sección "[Administrar las ejecuciones de flujo de trabajo](/actions/managing-workflow-runs)". ## Utilizar flujos de trabajo iniciales {% data reusables.actions.workflow-template-overview %} -For more information on using and creating starter workflows, see "[Using starter workflows](/actions/using-workflows/using-starter-workflows)" and "[Creating starter workflows for your organization](/actions/using-workflows/creating-starter-workflows-for-your-organization)." +Para obtener más información sobre cómo utilizar y crear flujos de trabajo iniciales, consulta las secciones "[Utilizar flujos de trabajo iniciales](/actions/using-workflows/using-starter-workflows)" y "[Crear flujos de trabajo iniciales para tu organización](/actions/using-workflows/creating-starter-workflows-for-your-organization)". ## Características avanzadas de los flujos de trabajo -This section briefly describes some of the advanced features of {% data variables.product.prodname_actions %} that help you create more complex workflows. +Esta sección describe brevemente algunas de las características avanzadas de {% data variables.product.prodname_actions %} que te ayudan a crear flujos de trabajo más complejos. ### Almacenar secretos -Si tus flujos de trabajo utilizan datos sensibles tales como contraseñas o certificados, puedes guardarlos en {% data variables.product.prodname_dotcom %} como _secretos_ y luego usarlos en tus flujos de trabajo como variables de ambiente. This means that you will be able to create and share workflows without having to embed sensitive values directly in the workflow's YAML source. +Si tus flujos de trabajo utilizan datos sensibles tales como contraseñas o certificados, puedes guardarlos en {% data variables.product.prodname_dotcom %} como _secretos_ y luego usarlos en tus flujos de trabajo como variables de ambiente. Esto significa que podrás crear y compartir flujos de trabajo sin tener que embeber valores sensibles directamente en la fuente de YAML del flujo de trabajo. -This example job demonstrates how to reference an existing secret as an environment variable, and send it as a parameter to an example command. +Este job de ejemplo demuestra como referenciar un secreto existente como una variable de ambiente y enviarlo como un parámetro a un comando de ejemplo. {% raw %} ```yaml @@ -81,7 +81,7 @@ Para obtener más información, consulta la sección "[Secretos cifrados](/actio ### Crear jobs dependientes -Predeterminadamente, los jobs en tu flujo de trabajo se ejecutan todos en paralelo y al mismo tiempo. If you have a job that must only run after another job has completed, you can use the `needs` keyword to create this dependency. If one of the jobs fails, all dependent jobs are skipped; however, if you need the jobs to continue, you can define this using the `if` conditional statement. +Predeterminadamente, los jobs en tu flujo de trabajo se ejecutan todos en paralelo y al mismo tiempo. Si tienes un job que solo se debe ejecutar después de que se complete otro, puedes utilizar la palabra clave `needs` para crear esta dependencia. Si uno de los jobs falla, todos los jobs dependientes se omiten; sin embargo, si necesites que estos continúen, puedes definir esto utilizando la declaración condicional `if`. En este ejemplo, los jobs de `setup`, `build`, y `test` se ejecutan en serie, y `build` y `test` son dependientes de que el job que las precede se complete con éxito: @@ -107,7 +107,7 @@ Para obtener más información, consulta la sección "[Definir los jobs de prerr ### Utilizar una matriz -{% data reusables.actions.jobs.about-matrix-strategy %} The matrix is created using the `strategy` keyword, which receives the build options as an array. For example, this matrix will run the job multiple times, using different versions of Node.js: +{% data reusables.actions.jobs.about-matrix-strategy %} La matriz se crea utilizando la palabra clave `strategy`, la cual recibe las opciones de compilación como un arreglo. Por ejemplo, esta matriz ejecutará el job varias veces, utilizando versiones diferentes de Node.js: ```yaml jobs: @@ -127,7 +127,7 @@ Para obtener más información, consulta la sección "[Utilizar una matriz para {% ifversion actions-caching %} ### Almacenar dependencias en caché -If your jobs regularly reuse dependencies, you can consider caching these files to help improve performance. Una vez que se crea el caché, estará disponible para todos los flujos de trabajo en el mismo repositorio. +Si tus jobs utilizan dependencias con frecuencia, puedes considerar almacenar estos archivos en caché para ayudar a mejorar el desempeño. Una vez que se crea el caché, estará disponible para todos los flujos de trabajo en el mismo repositorio. Este ejemplo ilustra cómo almacenar el directorio `~/.npm` en el caché: @@ -173,7 +173,7 @@ jobs: POSTGRES_PORT: 5432 ``` -For more information, see "[Using containerized services](/actions/using-containerized-services)." +Para obtener más información, consulta la sección "[Utilizar servicios en contenedores](/actions/using-containerized-services)". ### Utilizar etiquetas para enrutar los flujos de trabajo @@ -187,12 +187,12 @@ jobs: runs-on: [self-hosted, linux, x64, gpu] ``` -Un flujo de trabajo solo se ejecutará en un ejecutor que tenga todas las etiquetas en el arreglo `runs-on`. El job irá preferencialmente a un ejecutor auto-hospedado inactivo con las etiquetas especificadas. {% ifversion fpt or ghec %}If none are available and a {% data variables.product.prodname_dotcom %}-hosted runner with the specified labels exists, the job will go to a {% data variables.product.prodname_dotcom %}-hosted runner.{% endif %} +Un flujo de trabajo solo se ejecutará en un ejecutor que tenga todas las etiquetas en el arreglo `runs-on`. El job irá preferencialmente a un ejecutor auto-hospedado inactivo con las etiquetas especificadas. {% ifversion fpt or ghec %}Si ninguno está disponible y existe un ejecutor hospedado en {% data variables.product.prodname_dotcom %} con las etiquetes especificadas, el job irá al ejecutor hospedado en {% data variables.product.prodname_dotcom %}.{% endif %} -To learn more about self-hosted runner labels, see "[Using labels with self-hosted runners](/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners)." +Para aprender más sobre las etiquetas de ejecución auto-hospedadas, consulta la sección "[Utilizar etiquetas con los ejecutores auto-hospedados](/actions/hosting-your-own-runners/using-labels-with-self-hosted-runners)". {% ifversion fpt or ghec %} -To learn more about {% data variables.product.prodname_dotcom %}-hosted runner labels, see "[Supported runners and hardware resources](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources)." +Para aprender más sobre las etiquetas de ejecutores hospedados en {% data variables.product.prodname_dotcom %}, consulta la sección "[Recursos de hardware y ejecutores compatibles](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources)". {% endif %} {% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} @@ -202,4 +202,4 @@ To learn more about {% data variables.product.prodname_dotcom %}-hosted runner l ### Utilizar ambientes -You can configure environments with protection rules and secrets to control the execution of jobs in a workflow. Cad job en un flujo de trabajo puede referenciar un solo ambiente. Cualquier regla de protección que se configure para el ambiente debe pasar antes de que un job que referencia al ambiente se envíe a un ejecutor. Para obtener más información, consulta la sección "[Utilizar ambientes para despliegue](/actions/deployment/using-environments-for-deployment)". +Puedes configurar ambientes con reglas de protección y secretos para controlar la ejecución de jobs en un flujo de trabajo. Cad job en un flujo de trabajo puede referenciar un solo ambiente. Cualquier regla de protección que se configure para el ambiente debe pasar antes de que un job que referencia al ambiente se envíe a un ejecutor. Para obtener más información, consulta la sección "[Utilizar ambientes para despliegue](/actions/deployment/using-environments-for-deployment)". diff --git a/translations/es-ES/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/translations/es-ES/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index c70e2ec695..d353ce0f33 100644 --- a/translations/es-ES/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/translations/es-ES/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -51,7 +51,7 @@ Para obtener más información sobre los artefactos de ejecución de flujos de t Un flujo de trabajo puede acceder y restaurar una caché creada en la rama actual, la rama base (incluidas las ramas base de los repositorios bifurcados) o la rama predeterminada (por lo general `main`). Por ejemplo, un caché creado en la rama predeterminada sería accesible desde cualquier solicitud de cambios. También, si la rama `feature-b` tiene la rama base `feature-a`, un flujo de trabajo activado en `feature-b` tendría acceso a las cachés creadas en la rama predeterminada (`main`), `feature-a` y `feature-b`. -Las restricciones de acceso proporcionan aislamiento y seguridad de caché al crear una frontera lógica entre las ramas diferentes. Por ejemplo, una solicitud de cambios para la rama `feature-c` (con la base `main`) no podría acceder a un caché que se creó para la rama `feature-a` (con la base `main`). +Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. Por ejemplo, una solicitud de cambios para la rama `feature-c` (con la base `main`) no podría acceder a un caché que se creó para la rama `feature-a` (con la base `main`). On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`). Los flujos de trabajo múltiples dentro de un repositorio comparten entradas de caché. Puede accederse a un caché que se crea para una rama dentro de un flujo de trabajo y se puede establecer desde otro flujo de trabajo para el mismo repositorio y rama. diff --git a/translations/es-ES/content/actions/using-workflows/reusing-workflows.md b/translations/es-ES/content/actions/using-workflows/reusing-workflows.md index 7fbf626fd9..0678815493 100644 --- a/translations/es-ES/content/actions/using-workflows/reusing-workflows.md +++ b/translations/es-ES/content/actions/using-workflows/reusing-workflows.md @@ -23,7 +23,7 @@ topics: En vez de copiar y pegar desde un flujo de trabajo hacia otro, puedes hacer flujos de trabajo reutilizables. Tú y cualquiera que tenga acceso a un flujo de trabajo reutilizable pueden entonces llamarlo desde otro flujo. -El reutilizar flujos de trabajo evita la duplicación. Esto hace que los flujos de trabajo se puedan mantener más fácilmente y te permite crear flujos de trabajo nuevos más fácilmente compilando sobre el trabajo de los demás, tal como lo haces con las acciones. La reutilización de flujos de trabajo también promueve las mejores prácticas al ayudarte a utilizar los flujos de trabajo que están bien diseñados, que ya se han probado y cuya efectividad ya se comprobó. Tu organización puede crear una librería de flujos de trabajo reutilizables que puede mantenerse centralmente. +El reutilizar flujos de trabajo evita la duplicación. Esto hace que los flujos de trabajo se puedan mantener más fácilmente y te permite crear flujos de trabajo nuevos más fácilmente compilando sobre el trabajo de los demás, tal como lo haces con las acciones. Workflow reuse also promotes best practice by helping you to use workflows that are well designed, have already been tested, and have been proven to be effective. Tu organización puede crear una librería de flujos de trabajo reutilizables que puede mantenerse centralmente. El siguiente diagrama muestra tres jobs de compilación en la parte izquierda del mismo. Después de que cada uno de estos jobs se complete con éxito, se ejecutará un job dependiente llamado "Deploy". Este job crea un flujo de trabajo reutilizable que contiene tres jobs: "Staging", "Review" y "Production". El job de despliegue "Production" solo se ejecuta después de que el job "Staging" se haya completado con éxito. El utilizar un flujo de trabajo reutilizable para ejecutar jobs de despliegue te permite ejecutarlos para cada compilación sin duplicar el código en los flujos de trabajo. @@ -127,7 +127,7 @@ Puedes definir entradas y secretos, las cuales pueden pasarse desde el flujo de runs-on: ubuntu-latest environment: production steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.envPAT }} @@ -168,12 +168,13 @@ jobs: name: Pass input and secrets to my-action runs-on: ubuntu-latest steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.token }} ``` {% endraw %} + {% ifversion actions-reusable-workflow-matrix %} ## Utilizar una estrategia de matriz con un flujo de trabajo reutilizable diff --git a/translations/es-ES/content/admin/configuration/configuring-github-connect/about-github-connect.md b/translations/es-ES/content/admin/configuration/configuring-github-connect/about-github-connect.md index ca217cd8a9..fa2ab3e4f8 100644 --- a/translations/es-ES/content/admin/configuration/configuring-github-connect/about-github-connect.md +++ b/translations/es-ES/content/admin/configuration/configuring-github-connect/about-github-connect.md @@ -8,6 +8,7 @@ type: overview topics: - Enterprise - GitHub Connect +miniTocMaxHeadingLevel: 3 --- ## Acerca de {% data variables.product.prodname_github_connect %} @@ -37,6 +38,16 @@ Después de que configuras la conexión entre {% data variables.product.product_ ## Transmisión de datos para {% data variables.product.prodname_github_connect %} +When {% data variables.product.prodname_github_connect %} is enabled, a record on {% data variables.product.prodname_ghe_cloud %} stores information about the connection. If you enable individual features of {% data variables.product.prodname_github_connect %}, additional data is transmitted. + +{% note %} + +**Nota:** Jamás se transmitirán repositorios, propuestas o solicitudes de cambios desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_dotcom_the_website %} mediante {% data variables.product.prodname_github_connect %}. + +{% endnote %} + +### Data transmitted when {% data variables.product.prodname_github_connect %} is enabled + Cuando habilitas {% data variables.product.prodname_github_connect %} o características específicas de {% data variables.product.prodname_github_connect %}, un registro en las tiendas de {% data variables.product.prodname_ghe_cloud %} almacena la siguiente información sobre la conexión. {% ifversion ghes %} - La parte pública de la clave de tu licencia {% data variables.product.prodname_ghe_server %} @@ -54,23 +65,19 @@ Cuando habilitas {% data variables.product.prodname_github_connect %} o caracter {% data variables.product.prodname_github_connect %} sincroniza los datos de conexión anteriores entre {% data variables.product.product_location %}y {% data variables.product.prodname_ghe_cloud %} semanalmente, desde el día y hora aproximada en que se habilitó {% data variables.product.prodname_github_connect %}. -{% note %} - -**Nota:** Jamás se transmitirán repositorios, propuestas o solicitudes de cambios desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_dotcom_the_website %} mediante {% data variables.product.prodname_github_connect %}. - -{% endnote %} +### Data transmitted by individual features of {% data variables.product.prodname_github_connect %} Los datos adicionales se transmiten si habilitas las características individuales de {% data variables.product.prodname_github_connect %}. -| Característica | Datos | ¿De qué forma fluyen los datos? | ¿Dónde se utilizan los datos? | -| ---------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- |{% ifversion ghes %} -| Sincronización automática de licencias de usuario | Cada ID de usuario y dirección de correo electrónico de un usuario de {% data variables.product.product_name %} | Desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %} |{% endif %}{% ifversion ghes or ghae %} -| {% data variables.product.prodname_dependabot_alerts %} | Alertas de vulnerabilidades | Desde {% data variables.product.prodname_dotcom_the_website %} hasta {% data variables.product.product_name %} | {% data variables.product.product_name %} |{% endif %}{% ifversion dependabot-updates-github-connect %} -| {% data variables.product.prodname_dependabot_updates %} | Las dependencias y los metadatos de cada repositorio de una dependencia

Si una dependencia se almacena en un repositorio privado de {% data variables.product.prodname_dotcom_the_website %}, los datos solo se transmitirán si el {% data variables.product.prodname_dependabot %} se configura y se autoriza su acceso a dicho repositorio. | Desde {% data variables.product.prodname_dotcom_the_website %} hasta {% data variables.product.product_name %} | {% data variables.product.product_name %} {% endif %} -| Acciones de {% data variables.product.prodname_dotcom_the_website %} | Nombre de la acción, acción (archivo YAML de {% data variables.product.prodname_marketplace %}) | De {% data variables.product.prodname_dotcom_the_website %} a {% data variables.product.product_name %}

De {% data variables.product.product_name %} a {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %}{% ifversion server-statistics %} -| {% data variables.product.prodname_server_statistics %} | Métricas de uso agregadas de {% data variables.product.prodname_ghe_server %}
Para la lista de métricas agregadas recolectadas, consulta la sección "[Datos recolectados de {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)". | Desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} -| Búsqueda unificada | Términos de búsqueda, resultados de búsqueda | De {% data variables.product.prodname_dotcom_the_website %} a {% data variables.product.product_name %}

De {% data variables.product.product_name %} a {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %} -| Contribuciones unificadas | Conteo de contribuciones | Desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.prodname_dotcom_the_website %} +| Característica | Datos | ¿De qué forma fluyen los datos? | ¿Dónde se utilizan los datos? | +| ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- |{% ifversion ghes %} +| Sincronización automática de licencias de usuario | Cada ID de usuario y dirección de correo electrónico de un usuario de {% data variables.product.product_name %} | Desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %} |{% endif %}{% ifversion ghes or ghae %} +| {% data variables.product.prodname_dependabot_alerts %} | Alertas de vulnerabilidades | Desde {% data variables.product.prodname_dotcom_the_website %} hasta {% data variables.product.product_name %} | {% data variables.product.product_name %} |{% endif %}{% ifversion dependabot-updates-github-connect %} +| {% data variables.product.prodname_dependabot_updates %} | Las dependencias y los metadatos de cada repositorio de una dependencia

Si una dependencia se almacena en un repositorio privado de {% data variables.product.prodname_dotcom_the_website %}, los datos solo se transmitirán si el {% data variables.product.prodname_dependabot %} se configura y se autoriza su acceso a dicho repositorio. | Desde {% data variables.product.prodname_dotcom_the_website %} hasta {% data variables.product.product_name %} | {% data variables.product.product_name %} {% endif %} +| Acciones de {% data variables.product.prodname_dotcom_the_website %} | Nombre de la acción, acción (archivo YAML de {% data variables.product.prodname_marketplace %}) | De {% data variables.product.prodname_dotcom_the_website %} a {% data variables.product.product_name %}

De {% data variables.product.product_name %} a {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %}{% ifversion server-statistics %} +| {% data variables.product.prodname_server_statistics %} | Aggregate metrics about your usage of {% data variables.product.prodname_ghe_server %}. For the complete list of metrics, see "[About {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." | Desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} +| Búsqueda unificada | Términos de búsqueda, resultados de búsqueda | De {% data variables.product.prodname_dotcom_the_website %} a {% data variables.product.product_name %}

De {% data variables.product.product_name %} a {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %} +| Contribuciones unificadas | Conteo de contribuciones | Desde {% data variables.product.product_name %} hacia {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.prodname_dotcom_the_website %} ## Leer más diff --git a/translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md b/translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md index a9c9b79a9a..13d6b1583a 100644 --- a/translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md +++ b/translations/es-ES/content/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise.md @@ -12,9 +12,9 @@ shortTitle: Estadísticas del servidor ## Acerca de las {% data variables.product.prodname_server_statistics %} -{% data variables.product.prodname_server_statistics %} collects aggregate usage data from {% data variables.product.product_location %}, which you can use to better anticipate the needs of your organization, understand how your team works, and show the value you get from {% data variables.product.prodname_ghe_server %}. +{% data variables.product.prodname_server_statistics %} recopila los datos de uso agregado de {% data variables.product.product_location %}, lo que te permite anticipar las necesidades de tu organización de una forma mejor, entender cómo trabaja tu equipo y mostrar el valor que obtienes de {% data variables.product.prodname_ghe_server %}. -{% data variables.product.prodname_server_statistics %} only collects certain aggregate metrics on repositories, issues, pull requests, and other features.{% data variables.product.prodname_dotcom %} content, such as code, issues, comments, or pull request content, is not collected. Para obtener más información, consulta la sección "[Acerca de {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics)". +{% data variables.product.prodname_server_statistics %} solo recopila ciertas métricas agregadas en los repositorios, propuestas, solicitudes de cambio y otras características. No se recopila el contenido de {% data variables.product.prodname_dotcom %} tal como el código, las propuestas, los comentarios o el contenido de las solicitudes de cambio. Para obtener más información, consulta la sección "[Acerca de {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics)". By enabling {% data variables.product.prodname_server_statistics %}, you are also helping to improve {% data variables.product.company_short %}. The aggregated data you will provide helps us understand how our customers are using {% data variables.product.prodname_dotcom %}, and make better and more informed product decisions, ultimately benefiting you. diff --git a/translations/es-ES/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md b/translations/es-ES/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md index ebc92a5935..aef1dcf2fd 100644 --- a/translations/es-ES/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md +++ b/translations/es-ES/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md @@ -19,6 +19,8 @@ Si configuras un nombre del host en lugar de una dirección IP codificada de for La configuración del nombre de host en la {% data variables.enterprise.management_console %} debe ajustarse a un nombre de dominio adecuado y que cumpla con todos los requisitos (FQDN) el cual se pueda resolver en la internet o dentro de tu red interna. Por ejemplo, tu ajuste de nombre de host podría ser `github.companyname.com.` Las solicitudes web y de la API se redireccionarán automáticamente al nombre de host que se configuró en la {% data variables.enterprise.management_console %}. Toma en cuenta que `localhost` no es un ajuste válido de nombre de host. +Hostnames must be less than 63 characters in length per [Section 2.3.4 of the Domain Names Specification RFC](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4). + Después de que configuras un nombre de host, puedes habilitar el aislamiento de subdominios para incrementar la seguridad de {% data variables.product.product_location %} aún más. Para obtener más información, consulta "[Habilitar el aislamiento de subdominio](/enterprise/admin/guides/installation/enabling-subdomain-isolation/)." Para obtener más información sobre los tipos de nombres de host compatibles, consulta la [Sección 2.1 del RFC de HTTP](https://tools.ietf.org/html/rfc1123#section-2). diff --git a/translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md b/translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md index d910032fec..002671e9ef 100644 --- a/translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md +++ b/translations/es-ES/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md @@ -78,6 +78,14 @@ Los propietarios de las empresas pueden configurar los correos electrónicos par Puedes requerir el cifrado de TLS para todas las conexiones entrantes de SMTP, lo cual puede ayudar a satisfacer un requisito de certificación ISO-27017. +{%- ifversion ghes = 3.6 %} +{% note %} + +**Note**: Enforcement of TLS for SMTP connections is unavailable in {% data variables.product.product_name %} 3.6.0. The feature will be available in an upcoming release. + +{% endnote %} +{%- endif %} + {% data reusables.enterprise_site_admin_settings.email-settings %} 1. Debajo de "Autenticación", selecciona **requerir la autenticación con TLS (recomendado)**. diff --git a/translations/es-ES/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md b/translations/es-ES/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md index 3471576d3e..75f1ca9141 100644 --- a/translations/es-ES/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md +++ b/translations/es-ES/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md @@ -31,12 +31,15 @@ Para las restricciones a nivel de instancia que utilizan los NSG de Azure, conta ## Agregar una dirección IP permitida +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## Permitir el acceso mediante {% data variables.product.prodname_github_apps %} @@ -44,6 +47,8 @@ Para las restricciones a nivel de instancia que utilizan los NSG de Azure, conta ## Habilitar direcciones IP permitidas +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -52,6 +57,8 @@ Para las restricciones a nivel de instancia que utilizan los NSG de Azure, conta ## Editar una dirección IP permitida +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -59,6 +66,18 @@ Para las restricciones a nivel de instancia que utilizan los NSG de Azure, conta {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. Da clic en **Actualizar**. +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Verificar si se permite una dirección IP + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## Eliminar una dirección IP permitida diff --git a/translations/es-ES/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md b/translations/es-ES/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md index e074b64fd8..5bd322dcae 100644 --- a/translations/es-ES/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md +++ b/translations/es-ES/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md @@ -131,46 +131,49 @@ Key | Description {% ifversion ghes %} ## Indexing -GitHub's [code search][] features are powered by [ElasticSearch][]. This section of the site admin dashboard shows you the current status of your ElasticSearch cluster and provides you with several tools to control the behavior of searching and indexing. These tools are split into the following three categories. +GitHub's search features are powered by Elasticsearch. This section of the site admin dashboard shows you the current status of your Elasticsearch cluster and provides you with several tools to control search and index behavior. - [Code Search]: https://github.com/blog/1381-a-whole-new-code-search - [ElasticSearch]: http://www.elasticsearch.org/ +For more information about code search, see "[Searching for information on {% data variables.product.prodname_dotcom %}](/search-github)." For more information about Elasticsearch, see the [Elasticsearch website](https://elastic.co). + +{% note %} + +**Note**: In normal use, site administrators do not need to create new indices or schedule repair jobs. For troubleshooting or other support purposes, {% data variables.contact.github_support %} may instruct you to run a repair job. + +{% endnote %} + +### Index management + +{% data variables.product.product_name %} reconciles the state of the search index with data on the instance automatically and regularly. + +- Issues, pull requests, repositories, and users in the database +- Git repositories (source code) on disk + +Your instance uses repair jobs to reconcile the data, and schedules a repair job in the background when the following events occur. + +- A new search index is created. +- Missing data needs to be backfilled. +- Old search data needs to be updated. + +You can create a new index, or you can click on an existing index in the list to manage the index. You can perform the following operations on an index. + +- Make the index searchable. +- Make the index writable. +- Update the index. +- Delete the index +- Reset the index repair state. +- Start a new index repair job. +- Enable or disable index repair jobs. + +A progress bar shows the current status of a repair job across background workers. The bar is the percentage difference of the repair offset with the highest record ID in the database. You can ignore the value shown in the progress bar after a repair job has completed. The progress bar shows the difference between the repair offset and the highest record ID in the database, and will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. + +To minimize the effects on I/O performance and reduce the chances of operations timing out, run the repair job during off-peak hours. As the job reconciles the search index with database and Git repository data, one CPU will be used. Monitor your system's load averages and CPU usage with a utility like `top`. If you don't notice any significant increase in resource consumption, it should also be safe to run an index repair job during peak hours. + +Repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. ### Code search This allows you to enable or disable both search and index operations on source code. -### Code search index repair - -This controls how the code search index is repaired. You can - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state - -{% data variables.product.prodname_enterprise %} uses repair jobs to reconcile the state of the search index with data stored in a database (issues, pull requests, repositories, and users) and data stored in Git repositories (source code). This happens when - -- a new search index is created; -- missing data needs to be backfilled; or -- old search data needs to be updated. - -In other words, repair jobs are started as needed and run in the background—they are not scheduled by site admins in any way. - -Furthermore, repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. - -A progress bar shows the current status of a repair job across all of its background workers. It is the percentage difference of the repair offset with the highest record ID in the database. Don't worry about the value shown in the progress bar after a repair job has completed: because it shows the difference between the repair offset and the highest record ID in the database, it will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. - -You can start a new code-search index repair job at any time. It will use a single CPU as it reconciles the search index with database and Git repository data. To minimize the effects this will have on I/O performance and reduce the chances of operations timing out, try to run a repair job during off-peak hours first. Monitor your system's load averages and CPU usage with a utility like `top`; if you don't notice any significant changes, it should be safe to run an index repair job during peak hours, as well. - -### Issues index repair - -This controls how the [Issues][] index is repaired. You can - - [Issues]: https://github.com/blog/831-issues-2-0-the-next-generation - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state {% endif %} ## Reserved logins diff --git a/translations/es-ES/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md b/translations/es-ES/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md index 7d0fbc474c..65b1926312 100644 --- a/translations/es-ES/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md +++ b/translations/es-ES/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md @@ -83,7 +83,7 @@ Puedes crear un grupo de ejecutores para administrar el acceso al ejecutor que a {% data variables.product.product_name %} agrega a todos los ejecutores nuevos a un grupo. Los ejecutores pueden estar en solo un grupo a la vez. Predeterminadamente, {% data variables.product.product_name %} agrega ejecutores nuevos al grupo "Predeterminado". -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} 1. Para elegir una política para el acceso de la organización, debajo de "Acceso de la organización", selecciona el menú desplegable **Acceso de la organización** y haz clic en **Organizaciones selectas**. 1. A la derecha del menú desplegable con la política de acceso de la organización, haz clic en {% octicon "gear" aria-label="The Gear icon" %}. 1. Selecciona las organizaciones a las cuales te gustaría otorgar acceso al grupo de ejecutores. @@ -100,7 +100,7 @@ Puedes crear un grupo de ejecutores para administrar el acceso al ejecutor que a {% endwarning %} {%- endif %} -{% data reusables.actions.self-hosted-runner-create-group %} +{% data reusables.actions.create-runner-group %} {%- ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} 1. Haz clic en la pestaña de "Ejecutores". 1. En la lista de ejecutores, haz clic en aquél que hayas desplegado en la sección previa. diff --git a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md index ed71174e55..0582e6ab1c 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md +++ b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md @@ -82,7 +82,11 @@ Estas restricciones no son aceptables para algunas empresas. Para determinar si ### ¿Tus desarrolladores confían en la colaboración fuera de tu empresa? -{% data variables.product.prodname_managed_users_caps %} solo puede contribuir con los repositorios dentro de tu empresa. Si tus desarrolladores necesitan colaborar en repositorios externos a tu empresa, incluso si estos son privados, para completar su trabajo, {% data variables.product.prodname_emus %} podría no ser lo correcto para tu empresa y el SSO de SAML podría ser una mejor solución. +{% data variables.product.prodname_managed_users_caps %} solo puede contribuir con los repositorios dentro de tu empresa. Si tus desarrolladores deben contribuir con ambos repositorios dentro y fuera de tu empresa, incluyendo a los repositorios privados, {% data variables.product.prodname_emus %} podría no ser lo correcto para tu empresa. El SSO de SAML podría ser una mejor solución. + +Algunas empresas mantienen repositorios dentro de una empresa existente utilizando el SSO de SAML en {% data variables.product.product_location %} y también crean una {% data variables.product.prodname_emu_enterprise %}. Los desarrolladores que contribuyen con los repositorios que le pertenecen a ambas empresas desde una estación de trabajo única deben cambiar entre las cuentas de {% data variables.product.product_location %} dentro de un solo buscador o utilizar un buscador diferente para cada cuenta. El desarrollador también podría necesitar personalizar la configuración de Git de la estación de trabajo para acomodar las dos cuentas. La complejidad de este flujo de trabajo puede incrementar el riesgo de filtrar el código interno al público por accidente. + +Si decides crear una {% data variables.product.prodname_emu_enterprise %} pero necesitas que los desarrolladores contribuyan con los recursos fuera de la empresa desde una sola estación de trabajo, puedes proporcionar compatibilidad para cambiar entre las cuentas de una configuración local de Git del desarrollador. Para obtener más información, consulta la sección "[Acerca de {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#supporting-developers-with-multiple-user-accounts-on-githubcom)". ### ¿Tu empresa depende de colaboradores externos? diff --git a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md index cf63cbeb21..c43aea77bd 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md +++ b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/changing-authentication-methods.md @@ -40,4 +40,4 @@ Otras cuestiones que deberías tener en cuenta son las siguientes: * **Autenticación de dos factores:** {% data reusables.enterprise_user_management.external_auth_disables_2fa %} -* **Fallback authentication for users with no account on your external authentication provider:** You can invite users to authenticate to {% data variables.product.product_location %} without adding them to your identity provider. For more information, see "[Allowing built-in authentication for users outside your provider](/admin/identity-and-access-management/managing-iam-for-your-enterprise/allowing-built-in-authentication-for-users-outside-your-provider)." +* **Autenticación de segunda opción para los usuarios que no tienen una cuenta en tu proveedor de autenticación externa:** Puedes invitar a los usuarios para que se autentiquen en {% data variables.product.product_location %} sin agregarlos a tu proveedor de identidad. Para obtener más información, consulta la sección "[Permitir la autenticación integrada para los usuarios fuera de tu proveedor](/admin/identity-and-access-management/managing-iam-for-your-enterprise/allowing-built-in-authentication-for-users-outside-your-provider)". diff --git a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/troubleshooting-identity-and-access-management-for-your-enterprise.md b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/troubleshooting-identity-and-access-management-for-your-enterprise.md index 8a0bc59ed1..1ffcbea270 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/troubleshooting-identity-and-access-management-for-your-enterprise.md +++ b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/troubleshooting-identity-and-access-management-for-your-enterprise.md @@ -23,7 +23,7 @@ topics: {% ifversion ghec %} ## Errors when switching authentication configurations -If you're experiencing problems while switching between different authentication configurations, such as changing your SAML SSO configuration from an organization to an enterprise account or migrating from SAML to OIDC for {% data variables.product.prodname_emus %}, ensure you're following our best practices for the change. +Si estás teniendo problemas al cambiar entre las diferentes configuraciones de autenticación, tales como cambiar tu configuración del SSO de SAML de una organización a una cuenta empresarial o migrándote de SAML a OIDC para las {% data variables.product.prodname_emus %}, asegúrate de estar siguiendo nuestras mejores prácticas para dicho cambio. - "[Switching your SAML configuration from an organization to an enterprise account](/admin/identity-and-access-management/using-saml-for-enterprise-iam/switching-your-saml-configuration-from-an-organization-to-an-enterprise-account)" - "[Migrating from SAML to OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)" diff --git a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md index 467df68ece..0e5cba2071 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md +++ b/translations/es-ES/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication.md @@ -1,6 +1,6 @@ --- -title: Username considerations for external authentication -shortTitle: Username considerations +title: Consideraciones de nombre de usuario para la autenticación externa +shortTitle: Consideraciones de nombre de usuario intro: '{% ifversion ghes or ghec %}Cuando utilizas {% ifversion ghes %}CAS, LDAP o SAML para la autenticación{% elsif ghec %}{% data variables.product.prodname_emus %}{% endif %}, {% endif %}{% data variables.product.product_name %} sigue reglas específicas para determinar el nombre de usuario de cada cuenta de usuario {% ifversion ghec or ghae %}en tu empresa{% elsif ghes %}en tu instancia{% endif %}.' miniTocMaxHeadingLevel: 3 versions: @@ -19,62 +19,62 @@ topics: {% ifversion ghec %} {% note %} -**Note:** This article only applies to {% data variables.product.prodname_emus %}. If you use {% data variables.product.prodname_ghe_cloud %} without {% data variables.product.prodname_emus %}, usernames are created by users, not {% data variables.product.prodname_dotcom %}. +**Nota:** Este artículo solo aplica a {% data variables.product.prodname_emus %}. Si tuilizas {% data variables.product.prodname_ghe_cloud %} sin {% data variables.product.prodname_emus %}, los usuarios crearán sus nombres de usuario y no {% data variables.product.prodname_dotcom %}. {% endnote %} {% endif %} -## About usernames with external authentication +## Acerca de los nombres de usuario con autenticación externa {% ifversion ghes %} -You can configure external authentication for {% data variables.product.product_name %} using CAS, LDAP, or SAML. Para obtener más información, consulta la sección "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)". +Puedes configurar la autenticación externa para {% data variables.product.product_name %} utilizando CAS, LDAP o SAML. Para obtener más información, consulta la sección "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)". -When you use external authentication, {% data variables.product.product_location %} automatically creates a username for each person when the person signs into {% data variables.product.product_location %} through your external authentication system for the first time. +Cuando utilizas autenticación externa, {% data variables.product.product_location %} crea automáticamente un nombre de usuario para cada persona cuando inician sesión en {% data variables.product.product_location %} mediante tu sistema de autenticación externa para la primera ocasión. {% elsif ghec %} -If you use an enterprise with {% data variables.product.prodname_emus %}, members of your enterprise authenticate to access {% data variables.product.prodname_dotcom %} through your SAML identity provider (IdP). Para obtener más información, consulta las secciones"[Acerca de las {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" y "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)". +Si utilizas una empresa con {% data variables.product.prodname_emus %}, los miembros de tu empresa se autentican para acceder a {% data variables.product.prodname_dotcom %} mediante tu proveedor de identidad (IdP) de SAML. Para obtener más información, consulta las secciones"[Acerca de las {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)" y "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#authentication-methods-for-github-enterprise-server)". -{% data variables.product.product_name %} automatically creates a username for each person when their user account is provisioned via SCIM, by normalizing an identifier provided by your IdP. If multiple identifiers are normalized into the same username, a username conflict occurs, and only the first user account is created. You can resolve username conflicts by making a change in your IdP so that the normalized usernames will be unique. +{% data variables.product.product_name %} crea automáticamente un nombre de usuario para cada persona cuando su cuenta de usuario se aprovisiona a través de SCIM mediante la normalización de un identificador que proporciona tu IdP. Si se normalizan identificadores múltiples en el mismo nombre de usuario, ocurrirá un conflicto de nombre de usuario y solo se creará la primera cuenta de usuario. Puedes resolver conflictos de nombre de usuario haciendo un cambio en tu IdP para que los nombres de usuario normalizados sean únicos. {% elsif ghae %} -{% data variables.product.product_name %} uses SAML SSO for authentication, and automatically creates a username for each person when the person signs in through your identity provider (IdP) for the first time. +{% data variables.product.product_name %} utiliza el SSO de SAML para la autenticación y crea automáticamente un nombre de usuario para cada persona cuando esta inicia sesión mediante tu proveedor de identidad (IdP) por primera vez. {% endif %} {% ifversion ghec %} -## About usernames for {% data variables.product.prodname_managed_users %} +## Acerca de los nombres de usuario para {% data variables.product.prodname_managed_users %} -When your {% data variables.product.prodname_emu_enterprise %} is created, you will choose a short code that will be used as the suffix for your enterprise members' usernames. {% data reusables.enterprise-accounts.emu-shortcode %} El usuario de configuración que configure el SSO de SAML tendrá un nombre de usuario en el formato **@SHORT-CODE_admin**. +Cuando se crea tu {% data variables.product.prodname_emu_enterprise %}, debes elegir un código corto que se utilizará como el sufijo para los nombres de usuario de los miembros de tu empresa. {% data reusables.enterprise-accounts.emu-shortcode %} El usuario de configuración que configure el SSO de SAML tendrá un nombre de usuario en el formato **@SHORT-CODE_admin**. -Cuando aprovisionas un usuario nuevo desde tu proveedor de identidad, el {% data variables.product.prodname_managed_user %} nuevo tendrá un nombre de usuario de {% data variables.product.prodname_dotcom %} en el formato de **@IDP-USERNAME_SHORT-CODE**. The IDP-USERNAME component is formed by normalizing the SCIM `userName` attribute value sent from the IdP. +Cuando aprovisionas un usuario nuevo desde tu proveedor de identidad, el {% data variables.product.prodname_managed_user %} nuevo tendrá un nombre de usuario de {% data variables.product.prodname_dotcom %} en el formato de **@IDP-USERNAME_SHORT-CODE**. El componente IDP-USERNAME se forma normalizando el valor de atributo de SCIM `userName` que se envía desde el IdP. | Proveedor de identidad | Nombre de usuario de {% data variables.product.prodname_dotcom %} -| --------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Azure Active Directory (Azure AD) | _IDP-USERNAME_ is formed by normalizing the characters preceding the `@` character in the UPN (User Principal Name), which does not include the `#EXT#` for guest accounts. | -| Okta | _IDP-USERNAME_ is the normalized username attribute provided by the IdP. | +| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Azure Active Directory (Azure AD) | _IDP-USERNAME_ se conforma al normalizar los caracteres que preceden al carácter `@` en el UPN (Nombre Principal de Usuario), el cual no incluye el `#EXT#` para las cuentas de invitado. | +| Okta | _IDP-USERNAME_ es el atributo de nombre de usuario normalizado que proporciona el IdP. | -These rules may result in your IdP providing the same _IDP-USERNAME_ for multiple users. For example, for Azure AD, the following UPNs will result in the same username: +Estas reglas podrían dar como resultado que tu IdP proporcione la misma _IDP-USERNAME_ para varios usuarios. Por ejemplo, para Azure AD, las siguientes UPN darán como resultado el mismo nombre de usuario: - `bob@contoso.com` - `bob@fabrikam.com` - `bob#EXT#fabrikamcom@contoso.com` -This will cause a username conflict, and only the first user will be provisioned. For more information, see "[Resolving username conflicts](#resolving-username-conflicts)." +Esto ocasionará un conflicto de nombre de usuario y solo el primero se aprovisionará. Para obtener más información, consulta la sección "[Resolver conflictos de nombre de usuario](#resolving-username-conflicts)". {% endif %} -Usernames{% ifversion ghec %}, including underscore and short code,{% endif %} must not exceed 39 characters. +Los nombres de usuario{% ifversion ghec %}, incluyendo los guiones bajos y el código corto,{% endif %} no deben ser de más de 39 caracteres. -## About username normalization +## Acerca de la normalización de nombres de usuario Usernames for user accounts on {% ifversion ghes or ghae %}{% data variables.product.product_name %}{% elsif ghec %}{% data variables.product.prodname_dotcom_the_website %}{% endif %} can only contain alphanumeric characters and dashes (`-`). {% ifversion ghec %} When you configure SAML authentication, {% data variables.product.product_name %} uses the SCIM `userName` attribute value sent from the IdP to determine the username for the corresponding user account on {% data variables.product.prodname_dotcom_the_website %}. If this value includes unsupported characters, {% data variables.product.product_name %} will normalize the username per the following rules. {% elsif ghes %} -When you configure CAS, LDAP, or SAML authentication, {% data variables.product.product_name %} uses an identifier from the user account on your external authentication provider to determine the username for the corresponding user account on {% data variables.product.product_name %}. If the identifier includes unsupported characters, {% data variables.product.product_name %} will normalize the username per the following rules. +Cuando configuras la autenticación de CAS, LDAP o SAML, {% data variables.product.product_name %} utiliza un identificador de la cuenta de usuario en tu proveedor de autenticación externo para determinar el nombre de usuario de la cuenta de usuario correspondiente en {% data variables.product.product_name %}. If the identifier includes unsupported characters, {% data variables.product.product_name %} will normalize the username per the following rules. {% elsif ghae %} When you configure SAML authentication, {% data variables.product.product_name %} uses an identifier from the user account on your IdP to determine the username for the corresponding user account on {% data variables.product.product_name %}. Si el identificador incluye caracteres no compatibles, {% data variables.product.product_name %} normalizará el nombre de usuario de acuerdo con las siguientes reglas. {% endif %} @@ -100,7 +100,7 @@ When you configure SAML authentication, {% data variables.product.product_name % {% ifversion not ghec %} ### About username normalization with SAML -{% ifversion ghes %}If you configure SAML authentication for {% data variables.product.product_location %}, {% endif %}{% data variables.product.product_name %} determines each person's username by one of the following assertions in the SAML response, ordered by descending priority. +{% ifversion ghes %}Si configuras la autenticación de SAML para {% data variables.product.product_location %}, {% endif %}{% data variables.product.product_name %} determina el nombre de cada persona mediante una de las siguientes aserciones en la respuesta de SAML, ordenado por prioridad de forma descendente. 1. The custom `username` attribute, if defined and present 1. Una aserción `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name`, si hay una. @@ -153,5 +153,5 @@ To resolve username conflicts in Okta, update the attribute mapping settings for 1. In Okta, open the {% data variables.product.prodname_emu_idp_application %} application. 1. Haz clic en **Iniciar sesión**. 1. In the "Settings" section, click **Edit**. -1. Update the "Application username format." +1. Actualiza el "formato de aplicación de nombre de usuario". {% endif %} diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-cas-for-enterprise-iam/using-cas.md b/translations/es-ES/content/admin/identity-and-access-management/using-cas-for-enterprise-iam/using-cas.md index 0743a56c7f..d33d0b7be0 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-cas-for-enterprise-iam/using-cas.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-cas-for-enterprise-iam/using-cas.md @@ -8,7 +8,7 @@ redirect_from: - /admin/authentication/using-cas - /enterprise/admin/authentication/authenticating-users-for-your-github-enterprise-server-instance/using-cas - /admin/identity-and-access-management/authenticating-users-for-your-github-enterprise-server-instance/using-cas -intro: 'If you use Central Authentication Service (CAS) to centralize access to multiple web applications, you can integrate {% data variables.product.product_name %} by configuring CAS authentication for your instance.' +intro: 'Si utilizas el Servicio de Autenticación Central (CAS) para centralizar el acceso a diversas aplicaciones web, puedes integrar a {% data variables.product.product_name %} configurando la autenticación de CAS para tu instancia.' versions: ghes: '*' type: how_to @@ -20,13 +20,13 @@ topics: - SSO --- -## About CAS authentication for {% data variables.product.product_name %} +## Acerca de la autenticación de CAS para {% data variables.product.product_name %} -CAS is a single sign-on (SSO) protocol that centralizes authentication to multiple web applications. For more information, see "[Central Authentication Service](https://en.wikipedia.org/wiki/Central_Authentication_Service)" on Wikipedia. +CAS es un protocolo de inicio de sesión única (SSO) que centraliza la autenticación a varias aplicaciones web. Para obtener más información, consulta "[Central Authentication Service](https://en.wikipedia.org/wiki/Central_Authentication_Service)" en Wikipedia. -After you configure CAS, people who use {% data variables.product.product_location %} must use a personal access token to authenticate API or Git requests over HTTP(S). CAS credentials cannot be used to authenticate these requests. Para obtener más información, consulta la sección "[Crear un token de acceso personal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)". +Después de que configuras CAS, las personas que utilizan {% data variables.product.product_location %} debe utilizar un token de acceso personal para autenticar la API o las solicitudes de Git sobre HTTP(S). Las credenciales de CAS no pueden utilizarse para autenticar estas solicitudes. Para obtener más información, consulta la sección "[Crear un token de acceso personal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)". -If you configure CAS, people with accounts on your identity provider (IdP) do not consume a user license until the person signs into {% data variables.product.product_location %}. +Si configuras CAS, las personas con cuentas en tu proveedor de identidad (IdP) no consumen una licencia de usuario sino hasta que la persona inicie sesión en {% data variables.product.product_location %}. {% data reusables.enterprise_user_management.built-in-authentication %} @@ -49,8 +49,8 @@ Están disponibles los siguientes atributos. {% data reusables.enterprise_management_console.authentication %} 3. Selecciona **CAS**. - ![Screenshot of selection of CAS for authentication](/assets/images/enterprise/management-console/cas-select.png) + ![Captura de pantalla de la selección de CAS para la autenticación](/assets/images/enterprise/management-console/cas-select.png) 4. {% data reusables.enterprise_user_management.built-in-authentication-option %} - ![Screenshot of of fallback built-in authentication option for CAS](/assets/images/enterprise/management-console/cas-built-in-authentication.png) + ![Captura de pantalla de segunda opción de autenticación integrada para CAS](/assets/images/enterprise/management-console/cas-built-in-authentication.png) 5. En el campo **URL del servidor**, escribe la URL completa de tu servidor CAS. Si tu servidor CAS usa un certificado que no puede ser validado por {% data variables.product.prodname_ghe_server %}, puedes usar el comando `ghe-ssl-ca-certificate-install` para instalarlo como un certificado de confianza. Para obtener más información, consulta la sección "[Utilidades de línea de comandos](/admin/configuration/configuring-your-enterprise/command-line-utilities#ghe-ssl-ca-certificate-install)". diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 392f7da3ca..b24cbb3525 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -36,15 +36,13 @@ Puedes otorgar acceso a los {% data variables.product.prodname_managed_users %}, El nombre de usuario de los {% data variables.product.prodname_managed_users %} de tu empresa y su información de perfil, tal como los nombres y direcciones de correo electrónico que se muestran, se configuran mediante tu IdP y no pueden cambiarlos los mismos usuarios. Para obtener más información, consulta la sección "[Nombres de usuario e información de perfil](#usernames-and-profile-information)". -{% data reusables.enterprise-accounts.emu-forks %} - Los propietarios de las empresas pueden auditar todas las acciones de los {% data variables.product.prodname_managed_users %} en {% data variables.product.prodname_dotcom %}. For more information, see "[Audit log events for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise#about-audit-log-events-for-your-enterprise)." Para utilizar los {% data variables.product.prodname_emus %}, necesitas un tipo separado de cuenta empresarial con {% data variables.product.prodname_emus %} habilitados. Para obtener más información sobre cómo crear esta cuenta, consulta la sección "[Acerca de las empresas con usuarios administrados](#about-enterprises-with-managed-users)". {% note %} -**Note:** There are multiple options for identity and access management with {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_emus %} is not the best solution for every customer. For more information about whether {% data variables.product.prodname_emus %} is right for your enterprise, see "[About authentication for your enterprise](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#identifying-the-best-authentication-method-for-your-enterprise)." +**Note:** There are multiple options for identity and access management with {% data variables.product.prodname_ghe_cloud %}, and {% data variables.product.prodname_emus %} is not the best solution for every customer. Para obtener más información sobre si las {% data variables.product.prodname_emus %} son correctas para tu empresa, consulta la sección "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise#identifying-the-best-authentication-method-for-your-enterprise)". {% endnote %} @@ -75,7 +73,8 @@ Los {% data variables.product.prodname_managed_users_caps %} solo pueden colabor * Los {% data variables.product.prodname_managed_users_caps %} no pueden crear gists o comentar en ellos. * Los {% data variables.product.prodname_managed_users_caps %} no pueden instalar {% data variables.product.prodname_github_apps %} en sus cuentas de usuario. * Otros usuarios de {% data variables.product.prodname_dotcom %} no pueden ver, mencionar o invitar a {% data variables.product.prodname_managed_user %} para colaborar. -* Los {% data variables.product.prodname_managed_users_caps %} solo pueden ser propietarios de repositorios privados y los {% data variables.product.prodname_managed_users %} solo pueden invitar a otros miembros de la empresa para que colaboren con sus propios repositorios. +* You can choose whether {% data variables.product.prodname_managed_users %} are able to create repositories owned by their user accounts. Para obtener más información, consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-repository-creation)". +* If you allow {% data variables.product.prodname_managed_users %} to create repositories owned by their user accounts, they can only own private repositories and can only invite other enterprise members to collaborate on their user-owned repositories. * {% data reusables.enterprise-accounts.emu-forks %} * Solo se pueden crear repositorios internos y privados en las organizaciones que pertenezcan a una {% data variables.product.prodname_emu_enterprise %}, dependiendo de los ajustes de visibilidad del repositorio o empresa. * {% data variables.product.prodname_managed_users_caps %} are limited in their use of {% data variables.product.prodname_pages %}. Para obtener más información, consulta la sección "[Acerca de {% data variables.product.prodname_pages %}](/pages/getting-started-with-github-pages/about-github-pages#limitations-for-enterprise-managed-users)". @@ -113,6 +112,8 @@ Before your developers can use {% data variables.product.prodname_ghe_cloud %} w 5. Once authentication and provisioning are configured, you can start provisioning members and managing teams. Para obtener más información, consulta la sección "[Administrar las membrecías de equipo con los grupos de proveedor de identidades](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups)". +If members of your enterprise must use one workstation to contribute to repositories on {% data variables.product.product_location %} from both a {% data variables.product.prodname_managed_user %} and a personal account, you can provide support. For more information, see "[Supporting developers with multiple user accounts on {% data variables.product.prodname_dotcom_the_website %}](#supporting-developers-with-multiple-user-accounts-on-githubcom)." + ## Autenticarse como una {% data variables.product.prodname_managed_user %} Los {% data variables.product.prodname_managed_users_caps %} se deben autenticar mediante su proveedor de identidad. Para autenticarse, un {% data variables.product.prodname_managed_user %} puede visitar su portal de aplicación IdP o utilizar una página de inicio de sesión en {% data variables.product.prodname_dotcom_the_website %}. @@ -132,3 +133,9 @@ Los {% data variables.product.prodname_managed_users_caps %} se deben autenticar A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)." El nombre de perfil y dirección de correo electrónico de un {% data variables.product.prodname_managed_user %} también lo proporciona el IdP. {% data variables.product.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address. + +## Supporting developers with multiple user accounts on {% data variables.product.product_location %} + +People on your team may need to contribute to resources on {% data variables.product.product_location %} that are outside of your {% data variables.product.prodname_emu_enterprise %}. For example, you may wish to maintain a separate enterprise for your company's open source projects. Because a {% data variables.product.prodname_managed_user %} cannot contribute to public resources, users will need to maintain a separate, personal account for this work. + +People who must contribute from two user accounts on {% data variables.product.product_location %} using one workstation can configure Git to simplify the process. For more information, see "[Managing multiple accounts](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts)." diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md b/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md index 22baa3473e..e2c8a03c3e 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md @@ -22,9 +22,11 @@ CAP support is enabled automatically for any {% data variables.product.prodname_ Para obtener más información sobre cómo utilizar OIDC con {% data variables.product.prodname_emus %}, consulta las secciones "[Configurar OIDC para los usuarios empresariales administrados](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users) y "[Migrarse de SAML a OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)". -## About using CAP with IP allow lists +{% note %} -We recommend disabling your enterprise account's IP allow list and relying on your IdP's CAP. If you enable IP allow lists for your enterprise and also make use of your IdP's CAP, both the IP allow list and CAP will be enforced. If either restriction rejects a user's IP address, the request fails. Para obtener más información sobre las listas de IP permitidas, consulta la sección "[Requerir políticas para la configuración de seguridad en tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)". +**Note:** If you use Conditional Access (CA) network location policies in your Azure AD tenant, do not use the IP allow list feature on {% data variables.product.prodname_dotcom_the_website %}, with your enterprise account or with any of the organizations owned by the enterprise. Using both is unsupported and can result in the wrong policy applying. Para obtener más información acerca de las listas de direcciones IP permitidas, consulta las secciones "[Requerir ajustes de seguridad en tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)" y "[Administrar direcciones IP permitidas en tu organización](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)". + +{% endnote %} ## Considerations for integrations and automations diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md b/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md index 494cb14c8b..bc479a0b8b 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md @@ -1,5 +1,5 @@ --- -title: Migrating from SAML to OIDC +title: Migrarte de SAML a OIDC shortTitle: Migrarte de SAML a OIDC intro: 'If you''re using SAML to authenticate members in your {% data variables.product.prodname_emu_enterprise %}, you can migrate to OpenID Connect (OIDC) and benefit from support for your IdP''s Conditional Access Policy.' product: '{% data reusables.gated-features.emus %}' @@ -26,11 +26,12 @@ If you're new to {% data variables.product.prodname_emus %} and haven't yet conf {% note %} -**Note:** To sign in as the setup user, you will need a recovery code. If you do not already have your recovery codes, you can access the codes while signed in as an enterprise owner. For more information, see "[Downloading your enterprise account's single sign-on recovery codes](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)." +**Note:** To sign in as the setup user, you will need a recovery code. If you do not already have your recovery codes, you can access the codes while signed in as an enterprise owner. Para obtener más información, consulta la sección "[Descargar los códigos de recuperación de inicio de sesión único de tu cuenta empresarial](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)". {% endnote %} 1. Before you begin the migration, sign in to Azure and disable provisioning in the existing {% data variables.product.prodname_emu_idp_application %} application. +1. Si utilizas [Políticas de ubicación de red con Acceso Condicional (CA)](https://docs.microsoft.com/en-us/azure/active-directory/conditional-access/location-condition) en Azure AD y actualmente utilizas una lista de direcciones IP permitidas con tu cuenta empresarial o con cualquier organización que le pertenezca a la cuenta empresarial en {% data variables.product.prodname_dotcom_the_website %}, inhabilita las listas de direcciones IP permitidas. Para obtener más información, consulta las secciones "[Requerir ajustes de seguridad en tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)" y "[Administrar direcciones IP permitidas en tu organización](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)". 1. Sign into {% data variables.product.prodname_dotcom_the_website %} as the setup user for your enterprise with the username **@SHORT-CODE_admin**. 1. When prompted to continue to your identity provider, click **Use a recovery code** and sign in using one of your enterprise's recovery codes. {% data reusables.enterprise-accounts.access-enterprise %} diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-authentication-and-provisioning-for-your-enterprise-using-azure-ad.md b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-authentication-and-provisioning-for-your-enterprise-using-azure-ad.md index c846099ee0..38178d2800 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-authentication-and-provisioning-for-your-enterprise-using-azure-ad.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-authentication-and-provisioning-for-your-enterprise-using-azure-ad.md @@ -1,6 +1,6 @@ --- title: Configurar la autenticación y el aprovisionamiento para tu empresa utilizando Azure AD -shortTitle: Configure with Azure AD +shortTitle: Configurar con Azure AD intro: 'Puedes utilizar un inquilino en Azure Active Directory (Azure AD) como proveedor de identidad (IdP) para administrar centralmente la autenticación y el aprovisionamiento de usuarios para {% data variables.product.product_location %}.' permissions: 'Enterprise owners can configure authentication and provisioning for an enterprise on {% data variables.product.product_name %}.' versions: diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-user-provisioning-for-your-enterprise.md b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-user-provisioning-for-your-enterprise.md index 7800bccfd9..1f7a1307b8 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-user-provisioning-for-your-enterprise.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/configuring-user-provisioning-for-your-enterprise.md @@ -1,6 +1,6 @@ --- title: Configurar el aprovisionamiento de usuarios para tu empresa -shortTitle: Configure user provisioning +shortTitle: Configurar el aprovisionamiento de usuarios intro: 'Puedes configurar el Sistema para la Administración de Identidad entre Dominios (SCIM) para tu empresa, el cual aprovisiona las cuentas de usuario automáticamente en {% data variables.product.product_location %} cuando asignas la aplicación para {% data variables.product.product_location %} a un usuario en tu proveedor de identidad (IdP).' permissions: 'Enterprise owners can configure user provisioning for an enterprise on {% data variables.product.product_name %}.' versions: @@ -21,9 +21,9 @@ redirect_from: {% data reusables.saml.ae-uses-saml-sso %} Para obtener más información, consulta la sección "[Configurar el incio de sesión único de SAML para tu empresa](/admin/authentication/configuring-saml-single-sign-on-for-your-enterprise)". -You can configure user provisioning with SCIM to automatically create or suspend user accounts and grant access for {% data variables.product.product_name %} when you assign or unassign the application on your IdP. For more information about SCIM, see [System for Cross-domain Identity Management: Protocol (RFC 7644)](https://tools.ietf.org/html/rfc7644) on the IETF website. +Puedes configurar el aprovisionamiento de usuarios con SCIM para crear o suspender cuentas de usuario automáticamente y obetner acceso para {% data variables.product.product_name %} cuando asignes o desasignes la aplicación en tu IdP. Para obtener más información sobre el SCIM, consulta [System for Cross-domain Identity Management: Protocol (RFC 7644)](https://tools.ietf.org/html/rfc7644) en el sitio web de IETF. -If you do not configure user provisioning with SCIM, your IdP will not communicate with {% data variables.product.product_name %} automatically when you assign or unassign the application to a user. Without SCIM, {% data variables.product.product_name %} creates a user account using SAML Just-in-Time (JIT) provisioning the first time someone navigates to {% data variables.product.product_name %} and signs in by authenticating through your IdP. +Si no configuras el aprovisionamiento de usuarios con SCIM, tu IdP no se comunicará automáticamente con {% data variables.product.product_name %} cuando asignes o desasignes la aplicación a un usuario. Sin SCIM, {% data variables.product.product_name %} crea una cuenta de usuario utilizando el aprovisionamiento SAML Just-in-Time (JIT) la primera vez que alguien navegue a {% data variables.product.product_name %} e inicie sesión autenticándose a través de tu IdP. Configurar el aprovisionamiento le permite a tu IdP comunicarse con {% data variables.product.product_location %} cuando asignas o desasignas la aplicación para {% data variables.product.product_name %} a un usuario en tu IdP. Cuando asignas la aplicación, tu IdP pedirá que {% data variables.product.product_location %} cree una cuenta y enviará un correo electrónico de incorporación al usuario. Cuando desasignas la aplicación, tu IdP se comunicará con {% data variables.product.product_name %} para invalidad cualquier sesión de SAML e inhabilitar la cuenta del miembro. diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/mapping-okta-groups-to-teams.md b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/mapping-okta-groups-to-teams.md index 4d05b3a42a..572265309c 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/mapping-okta-groups-to-teams.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/mapping-okta-groups-to-teams.md @@ -1,7 +1,7 @@ --- -title: Mapping Okta groups to teams -shortTitle: Map Okta groups to teams -intro: 'You can map your Okta groups to teams on {% data variables.product.prodname_ghe_managed %} to automatically add and remove team members.' +title: Mapear los grupos de Okta a los equipos +shortTitle: Mapear los grupos de Okta a los equipos +intro: 'Puedes mapear tus grupos de Okta a los equipos en {% data variables.product.prodname_ghe_managed %} para que agreguen y eliminen a los miembros automáticamente.' permissions: 'Enterprise owners can configure authentication and provisioning for {% data variables.product.prodname_ghe_managed %}.' versions: ghae: '*' @@ -19,9 +19,9 @@ topics: {% data reusables.saml.okta-ae-sso-beta %} -## About team mapping +## Acerca del mapeo de equipos -If you use Okta as your IdP, you can map your Okta group to a team in {% data variables.product.prodname_ghe_managed %}. Members of the Okta group will automatically become members of the mapped {% data variables.product.prodname_ghe_managed %} team. To configure this mapping, you can configure the Okta "GitHub AE" app to push the group and its members to {% data variables.product.prodname_ghe_managed %}. You can then choose which team in {% data variables.product.prodname_ghe_managed %} will be mapped to the Okta group. +Si utilizas Okta como tu IdP, puedes mapear tu grupo de Okta a un equipo en {% data variables.product.prodname_ghe_managed %}. Members of the Okta group will automatically become members of the mapped {% data variables.product.prodname_ghe_managed %} team. To configure this mapping, you can configure the Okta "GitHub AE" app to push the group and its members to {% data variables.product.prodname_ghe_managed %}. You can then choose which team in {% data variables.product.prodname_ghe_managed %} will be mapped to the Okta group. ## Prerrequisitos diff --git a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md index be369be988..26ada0fd5c 100644 --- a/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md +++ b/translations/es-ES/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md @@ -75,10 +75,12 @@ The SP metadata for your enterprise on {% data variables.product.product_name %} The following SAML attributes are available for {% data variables.product.product_name %}.{% ifversion ghes %} You can change the attribute names in the management console, with the exception of the `administrator` attribute. For more information, see "[Accessing the management console](/admin/configuration/configuring-your-enterprise/accessing-the-management-console)."{% endif %} -| Nombre | Required? | Descripción | -|:--------------------- |:--------- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `ID del nombre` | Sí | Un identificador de usuario persistente. Se puede usar cualquier formato de identificador de nombre persistente. {% ifversion ghec %}If you use an enterprise with {% data variables.product.prodname_emus %}, {% endif %}{% data variables.product.product_name %} will normalize the `NameID` element to use as a username unless one of the alternative assertions is provided. Para obtener más información, consulta la sección "[Consideraciones de nombre de usuario para la autenticación externa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)". | -| `SessionNotOnOrAfter` | No | The date that {% data variables.product.product_name %} invalidates the associated session. After invalidation, the person must authenticate once again to access {% ifversion ghec or ghae %}your enterprise's resources{% elsif ghes %}{% data variables.product.product_location %}{% endif %}. For more information, see "[Session duration and timeout](#session-duration-and-timeout)." | +| Nombre | Required? | Descripción | +|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:--------- |:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `ID del nombre` | Sí | Un identificador de usuario persistente. Se puede usar cualquier formato de identificador de nombre persistente. | +| {% ifversion ghec %}If you use an enterprise with {% data variables.product.prodname_emus %}, {% endif %}{% data variables.product.product_name %} will normalize the `NameID` element to use as a username unless one of the alternative assertions is provided. Para obtener más información, consulta la sección "[Consideraciones de nombre de usuario para la autenticación externa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)".

{% note %}**Nota:** Es importante utilizar un identificador persistente y legible para humanos. Using a transient identifier format like `urn:oasis:names:tc:SAML:2.0:nameid-format:transient` will result in re-linking of accounts on every sign-in, which can be detrimental to authorization management.{% endnote %} | | | +| | | | +| `SessionNotOnOrAfter` | No | The date that {% data variables.product.product_name %} invalidates the associated session. After invalidation, the person must authenticate once again to access {% ifversion ghec or ghae %}your enterprise's resources{% elsif ghes %}{% data variables.product.product_location %}{% endif %}. For more information, see "[Session duration and timeout](#session-duration-and-timeout)." | {%- ifversion ghes or ghae %} | `administrator` | No | When the value is `true`, {% data variables.product.product_name %} will automatically promote the user to be a {% ifversion ghes %}site administrator{% elsif ghae %}enterprise owner{% endif %}. Setting this attribute to anything but `true` will result in demotion, as long as the value is not blank. Omitting this attribute or leaving the value blank will not change the role of the user. | | `username` | No | The username for {% data variables.product.product_location %}. | {%- endif %} diff --git a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md index bf573eb516..7408d37941 100644 --- a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md +++ b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics.md @@ -1,6 +1,6 @@ --- -title: About Server Statistics -intro: 'You can use {% data variables.product.prodname_server_statistics %} to analyze your own aggregate data from {% data variables.product.prodname_ghe_server %}, and help us improve {% data variables.product.company_short %} products.' +title: Acerca de las estadísitcas del servidor +intro: 'Puedes utilizar {% data variables.product.prodname_server_statistics %} para analizar tus propios datos agregados de {% data variables.product.prodname_ghe_server %} y ayudarnos a mejorar los productos de {% data variables.product.company_short %}.' versions: feature: server-statistics permissions: 'Enterprise owners can enable {% data variables.product.prodname_server_statistics %}.' @@ -10,11 +10,11 @@ topics: - Enterprise --- -## About the benefits of {% data variables.product.prodname_server_statistics %} +## Acerca de los beneficios de las {% data variables.product.prodname_server_statistics %} -{% data variables.product.prodname_server_statistics %} can help you anticipate the needs of your organization, understand how your team works, and show the value you get from {% data variables.product.prodname_ghe_server %}. +Las {% data variables.product.prodname_server_statistics %} pueden ayudarte a anticipar las necesidades de tu organización, entender cómo funciona tu equipo y mostrarte el valor que obtienes de {% data variables.product.prodname_ghe_server %}. -Once enabled, {% data variables.product.prodname_server_statistics %} collects aggregate data on how much certain features are used on your instance over time. Unlike other [Admin Stats API](/rest/reference/enterprise-admin#admin-stats) endpoints, which only return data for the last day, {% data variables.product.prodname_server_statistics %} provides historical data of all {% data variables.product.prodname_server_statistics %} metrics collected since the day you enabled the feature. Para obtener más información, consulta la sección "[Habilitar la {% data variables.product.prodname_server_statistics %} en tu empresa](/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise)". +Once enabled, {% data variables.product.prodname_server_statistics %} collects aggregate data on how much certain features are used on your instance over time. A diferencia de otras terminales de la [API de estadísticas administrativas](/rest/reference/enterprise-admin#admin-stats), las cuales solo devuelven datos del último día, {% data variables.product.prodname_server_statistics %} proporciona datos históricos de todas las métricas de {% data variables.product.prodname_server_statistics %} desde el día en el que habilitaste la característica. Para obtener más información, consulta la sección "[Habilitar la {% data variables.product.prodname_server_statistics %} en tu empresa](/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise)". When you enable {% data variables.product.prodname_server_statistics %}, you're helping to build a better {% data variables.product.prodname_dotcom %}. The aggregated data you'll provide gives us insights into how {% data variables.product.prodname_dotcom %} adds value to our customers. This information allows {% data variables.product.company_short %} to make better and more informed product decisions, ultimately benefiting you. @@ -34,7 +34,7 @@ For a better understanding of how we store and secure {% data variables.product. ### About data retention and deletion -{% data variables.product.company_short %} collects {% data variables.product.prodname_server_statistics %} data for as long as your {% data variables.product.prodname_ghe_server %} license is active and the {% data variables.product.prodname_server_statistics %} feature is enabled. +{% data variables.product.company_short %} recopila datos de {% data variables.product.prodname_server_statistics %} durante todo el tiempo en el que tu licencia de {% data variables.product.prodname_ghe_server %} esté activa y la característica de {% data variables.product.prodname_server_statistics %} esté habilitada. If you would like to delete your data, you may do so by contacting GitHub Support, your {% data variables.product.prodname_dotcom %} account representative, or your Customer Success Manager. Generally, we delete data in the timeframe specified in our privacy statement. For more information, see [{% data variables.product.company_short %}'s privacy statement](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement#data-retention-and-deletion-of-data) in the {% data variables.product.prodname_dotcom_the_website %} documentation. diff --git a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/requesting-server-statistics-using-the-rest-api.md b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/requesting-server-statistics-using-the-rest-api.md index 12e72822cf..8c045d76e0 100644 --- a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/requesting-server-statistics-using-the-rest-api.md +++ b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/requesting-server-statistics-using-the-rest-api.md @@ -8,8 +8,8 @@ redirect_from: - /early-access/github/analyze-how-your-team-works-with-server-statistics/requesting-server-statistics-using-the-rest-api --- -You can request up to 365 days of metrics in a single {% data variables.product.prodname_server_statistics %} REST API request. Estos datos, los cuales incluyen métricas agregadas en los repositorios, propuestas y solicitudes de cambio pueden ayudarte a anticipar las necesidades de tu organización, entender cómo funciona tu equipo y mostrarte el valor que obtienes de {% data variables.product.prodname_ghe_server %}. For a list of the metrics collected, see "[{% data variables.product.prodname_server_statistics %} data collected](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." +You can request up to 365 days of metrics in a single {% data variables.product.prodname_server_statistics %} REST API request. Estos datos, los cuales incluyen métricas agregadas en los repositorios, propuestas y solicitudes de cambio pueden ayudarte a anticipar las necesidades de tu organización, entender cómo funciona tu equipo y mostrarte el valor que obtienes de {% data variables.product.prodname_ghe_server %}. Para encontrar una lista de las métricas recopiladas, consulta la sección "[Datos de {% data variables.product.prodname_server_statistics %} recopilados](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)". Before you can use the {% data variables.product.prodname_server_statistics %} REST API, you must enable {% data variables.product.prodname_server_statistics %}. Para obtener más información, consulta la sección "[Habilitar la {% data variables.product.prodname_server_statistics %} en tu empresa](/admin/configuration/configuring-github-connect/enabling-server-statistics-for-your-enterprise)". -For more information about using the REST API to request server statistics, see "[Get {% data variables.product.prodname_ghe_server %} statistics](/enterprise-cloud@latest/rest/enterprise-admin/admin-stats#get-github-enterprise-server-statistics)" in the {% data variables.product.prodname_ghe_cloud %} REST API documentation. +Para obtener más información sobre cómo utilizar la API de REST para solicitar estadísticas de servidor, consulta la sección "[Obtener estadísticas de {% data variables.product.prodname_ghe_server %}](/enterprise-cloud@latest/rest/enterprise-admin/admin-stats#get-github-enterprise-server-statistics)" en la documentación de la API de REST de {% data variables.product.prodname_ghe_cloud %}. diff --git a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md index 3167eec355..cbefb7dcff 100644 --- a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md +++ b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md @@ -256,57 +256,57 @@ El alcance de los eventos que se muestran en la bitácora de auditoría de tu em | -------------------- | ----------------------------- | | `discussion.destroy` | Se borró un debate de equipo. | -## `discussion_comment` category actions +## Acciones de la categoría `discussion_comment` -| Acción | Descripción | -| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `discussion_comment.destroy` | A [comment on a team discussion post was deleted](/communities/moderating-comments-and-conversations/managing-disruptive-comments#deleting-a-comment). | -| `discussion_comment.update` | A [comment on a team discussion post was edited](/communities/moderating-comments-and-conversations/managing-disruptive-comments#editing-a-comment). | +| Acción | Descripción | +| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `discussion_comment.destroy` | [Se borró un comentario en una publicación de debate de equipo](/communities/moderating-comments-and-conversations/managing-disruptive-comments#deleting-a-comment). | +| `discussion_comment.update` | [Se editó un comentario en una publicación de debate de equipo](/communities/moderating-comments-and-conversations/managing-disruptive-comments#editing-a-comment). | ## acciones de la categoría `discussion_post` -| Acción | Descripción | -| ------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -| `discussion_post.destroy` | A [team discussion post was deleted](/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion). | -| `discussion_post.update` | A [team discussion post was edited](/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion). | +| Acción | Descripción | +| ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `discussion_post.destroy` | [Se borró una publicación de debate de equipo](/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion). | +| `discussion_post.update` | [Se editó una publicación de debate de equipo](/organizations/collaborating-with-your-team/editing-or-deleting-a-team-discussion). | ## acciones de la categoría `discussion_post_reply` -| Acción | Descripción | -| ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -| `discussion_post_reply.destroy` | A [reply to a team discussion post was deleted](/communities/moderating-comments-and-conversations/managing-disruptive-comments#deleting-a-comment). | -| `discussion_post_reply.update` | A [reply to a team discussion post was edited](/communities/moderating-comments-and-conversations/managing-disruptive-comments#editing-a-comment). | +| Acción | Descripción | +| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `discussion_post_reply.destroy` | [Se borró una respuesta a una publicación de debate de equipo](/communities/moderating-comments-and-conversations/managing-disruptive-comments#deleting-a-comment). | +| `discussion_post_reply.update` | [Se editó una respuesta a una publicación de debate de equipo](/communities/moderating-comments-and-conversations/managing-disruptive-comments#editing-a-comment). | {%- endif %} {%- ifversion ghec or ghes %} -## `dotcom_connection` category actions +## Acciones de la categoría `dotcom_connection` -| Acción | Descripción | -| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `dotcom_connection.create` | A {% data variables.product.prodname_github_connect %} connection to {% data variables.product.prodname_dotcom_the_website %} was created. | -| `dotcom_connection.destroy` | A {% data variables.product.prodname_github_connect %} connection to {% data variables.product.prodname_dotcom_the_website %} was deleted. | -| `dotcom_connection.token_updated` | The {% data variables.product.prodname_github_connect %} connection token for {% data variables.product.prodname_dotcom_the_website %} was updated. | -| `dotcom_connection.upload_license_usage` | {% data variables.product.prodname_ghe_server %} license usage was manually uploaded to {% data variables.product.prodname_ghe_cloud %}. | -| `dotcom_connection.upload_usage_metrics` | {% data variables.product.prodname_ghe_server %} usage metrics were uploaded to {% data variables.product.prodname_dotcom_the_website %}. | +| Acción | Descripción | +| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `dotcom_connection.create` | Se creó una conexión de {% data variables.product.prodname_github_connect %} al {% data variables.product.prodname_dotcom_the_website %}. | +| `dotcom_connection.destroy` | Se borró una conexión de {% data variables.product.prodname_github_connect %} al {% data variables.product.prodname_dotcom_the_website %}. | +| `dotcom_connection.token_updated` | Se actualizó el token de conexión de {% data variables.product.prodname_github_connect %} para {% data variables.product.prodname_dotcom_the_website %}. | +| `dotcom_connection.upload_license_usage` | El uso de la licencia de {% data variables.product.prodname_ghe_server %} se cargó manualmente a {% data variables.product.prodname_ghe_cloud %}. | +| `dotcom_connection.upload_usage_metrics` | Las métricas de uso de {% data variables.product.prodname_ghe_server %} se cargaron a {% data variables.product.prodname_dotcom_the_website %}. | {%- endif %} ## acciones de la categoría `enterprise` -| Acción | Descripción | -| ------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `enterprise.config.disable_anonymous_git_access` | An enterprise owner{% ifversion ghes %} or site administrator{% endif %} disabled anonymous Git read access for repositories in the enterprise. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | -| `enterprise.config.enable_anonymous_git_access` | An enterprise owner{% ifversion ghes %} or site administrator{% endif %} enabled anonymous Git read access for repositories in the enterprise. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | -| `enterprise.config.lock_anonymous_git_access` | An enterprise owner{% ifversion ghes %} or site administrator{% endif %} locked anonymous Git read access to prevent repository admins from changing existing anonymous Git read access settings for repositories in the enterprise. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | -| `enterprise.config.unlock_anonymous_git_access` | An enterprise owner{% ifversion ghes %} or site administrator{% endif %} unlocked anonymous Git read access to allow repository admins to change existing anonymous Git read access settings for repositories in the enterprise. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | -| `enterprise.register_self_hosted_runner` | A new {% data variables.product.prodname_actions %} self-hosted runner was registered. Para obtener más información, consulta la sección "[Agregar un ejecutor auto-hospedado a un repositorio](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository)". | -| `enterprise.remove_self_hosted_runner` | A {% data variables.product.prodname_actions %} self-hosted runner was removed. Para obtener más información, consulta la sección "[Eliminar a un ejecutor de un repositorio](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)". | -| `enterprise.runner_group_created` | A {% data variables.product.prodname_actions %} self-hosted runner group was created. Para obtener más información, consulta la sección "[Crear un grupo de ejecutores auto-hospedados para una organización](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization)". | -| `enterprise.runner_group_removed` | A {% data variables.product.prodname_actions %} self-hosted runner group was removed. Para obtener más información, consulta la sección "[Eliminar un grupo de ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)". | -| `enterprise.runner_group_renamed` | A {% data variables.product.prodname_actions %} self-hosted runner group was renamed. Para obtener más información, consulta la sección "[Cambiar la política de acceso para un grupo de ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)". | -| `enterprise.runner_group_updated` | The configuration of a {% data variables.product.prodname_actions %} self-hosted runner group was changed. Para obtener más información, consulta la sección "[Cambiar la política de acceso para un grupo de ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)". | -| `enterprise.runner_group_runner_removed` | The REST API was used to remove a {% data variables.product.prodname_actions %} self-hosted runner from a group. Para obtener más información, consulta la sección "[Eliminar un ejecutor auto-hospedado de un grupo en una organización](/rest/reference/actions#remove-a-self-hosted-runner-from-a-group-for-an-organization)". | -| `enterprise.runner_group_runners_added` | A {% data variables.product.prodname_actions %} self-hosted runner was added to a group. Para obtener más información, consulta la sección [Mover un ejecutor auto-hospedado a un grupo](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group). | -| `enterprise.runner_group_runners_updated` | Se actualizó una lista de miembros de un grupo de ejecutores de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Configurar ejecutores auto-hospedados en un grupo para una organización](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)". | +| Acción | Descripción | +| ------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `enterprise.config.disable_anonymous_git_access` | Un propietario de empresa{% ifversion ghes %} o administrador de sitio{% endif %} inhabilitó el acceso de lectura anónima de Git para los repositorios en la empresa. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | +| `enterprise.config.enable_anonymous_git_access` | Un propietario de empresa{% ifversion ghes %} o administrador de sitio{% endif %} habilitó el acceso de lectura anónima de Git para los repositorios en la empresa. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | +| `enterprise.config.lock_anonymous_git_access` | Un propietario de empresa{% ifversion ghes %} o administrador de sitio{% endif %} bloqueó el acceso de lectura anónima de Git para prevenir que los administradores de repositorios cambien los ajustes existentes del acceso de lectura anónima de Git para los repositorios en la empresa. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | +| `enterprise.config.unlock_anonymous_git_access` | Un propietario de empresa{% ifversion ghes %} o administrador de sitio{% endif %} desbloqueó el acceso de lectura anónima de Git para permitir que los administradores de repositorio cambien los ajustes de acceso de lectura anónima de Git para los repositorios de la empresa. Para obtener más información consulta la sección "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)". | +| `enterprise.register_self_hosted_runner` | Se registró un nuevo ejecutor auto-hospedado de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Agregar un ejecutor auto-hospedado a un repositorio](/actions/hosting-your-own-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository)". | +| `enterprise.remove_self_hosted_runner` | Se eliminó un ejecutor auto-hospedado de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Eliminar a un ejecutor de un repositorio](/actions/hosting-your-own-runners/removing-self-hosted-runners#removing-a-runner-from-a-repository)". | +| `enterprise.runner_group_created` | Se creó un grupo de ejecutores auto-hospedados de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Crear un grupo de ejecutores auto-hospedados para una organización](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#creating-a-self-hosted-runner-group-for-an-organization)". | +| `enterprise.runner_group_removed` | Se eliminó un grupo de ejecutores auto-hospedados de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Eliminar un grupo de ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#removing-a-self-hosted-runner-group)". | +| `enterprise.runner_group_renamed` | Se renombró a un grupo de ejecutores auto-hospedados de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Cambiar la política de acceso para un grupo de ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)". | +| `enterprise.runner_group_updated` | Se cambió la configuración de un grupo de ejecutores auto-hospedados de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Cambiar la política de acceso para un grupo de ejecutores auto-hospedados](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#changing-the-access-policy-of-a-self-hosted-runner-group)". | +| `enterprise.runner_group_runner_removed` | Se utilizó la API de REST para eliminar a un ejecutor auto-hospedado de {% data variables.product.prodname_actions %} de un grupo. Para obtener más información, consulta la sección "[Eliminar un ejecutor auto-hospedado de un grupo en una organización](/rest/reference/actions#remove-a-self-hosted-runner-from-a-group-for-an-organization)". | +| `enterprise.runner_group_runners_added` | A {% data variables.product.prodname_actions %} self-hosted runner was added to a group. Para obtener más información, consulta la sección [Mover un ejecutor auto-hospedado a un grupo](/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups#moving-a-self-hosted-runner-to-a-group). | +| `enterprise.runner_group_runners_updated` | Se actualizó una lista de miembros de un grupo de ejecutores de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Configurar ejecutores auto-hospedados en un grupo para una organización](/rest/reference/actions#set-self-hosted-runners-in-a-group-for-an-organization)". | {%- ifversion ghec %} | `enterprise.runner_group_visiblity_updated` | Se actualizó la visibilidad de un grupo de ejecutores auto hospedados de {% data variables.product.prodname_actions %} a través de la API de REST. Para obtener más información, consulta la sección "[Actualizar un grupo de ejecutores auto-hospedados para una organización](/rest/reference/actions#update-a-self-hosted-runner-group-for-an-organization)". {%- endif %} @@ -882,10 +882,10 @@ Before you'll see `git` category actions, you must enable Git events in the audi | `pull_request.merge` | A pull request was merged. Para obtener más información, consulta "[Fusionar una solicitud de extracción](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request)". | | `pull_request.ready_for_review` | A pull request was marked as ready for review. Para obtener más información, consulta la sección "[Cambiar el estado de una solicitud de extracción](/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request#marking-a-pull-request-as-ready-for-review)". | | `pull_request.remove_review_request` | A review request was removed from a pull request. Para obtener más información, consulta la sección "[Acerca de las revisiones de las solicitudes de extracción](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews)". | -| `pull_request.reopen` | A pull request was reopened after previously being closed. | +| `pull_request.reopen` | Se volvió a abrir una solicitud de cambios después de que se había cerrado. | | `pull_request_review.delete` | Se borró una revisión en una solicitud de cambios. | | `pull_request_review.dismiss` | Se descartó una revisión de una solicitud de cambios. Para obtener más información, consulta "[Descartar una revisión de solicitud de extracción](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/dismissing-a-pull-request-review)". | -| `pull_request_review.submit` | A review was submitted for a pull request. Para obtener más información, consulta la sección "[Acerca de las revisiones de las solicitudes de extracción](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews)". | +| `pull_request_review.submit` | Se emitió una revisión para una solicitud de cambios. Para obtener más información, consulta la sección "[Acerca de las revisiones de las solicitudes de extracción](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews)". | ## Acciones de la categoría `pull_request_review` @@ -1004,108 +1004,108 @@ Before you'll see `git` category actions, you must enable Git events in the audi | Acción | Descripción | | -------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `repository_secret_scanning_custom_pattern.create` | Se publicó un patrón personalizado para el escaneo de secretos en un repositorio. Para obtener más información, consulta la sección "[Definir los patrones personalizados para el escaneo de secretos](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning#defining-a-custom-pattern-for-a-repository)". | -| `repository_secret_scanning_custom_pattern.delete` | A custom pattern is removed from secret scanning in a repository. Para obtener más información, consulta la sección "[Definir los patrones personalizados para el escaneo de secretos](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning#removing-a-custom-pattern)". | -| `repository_secret_scanning_custom_pattern.update` | Changes to a custom pattern are saved for secret scanning in a repository. Para obtener más información, consulta la sección "[Definir los patrones personalizados para el escaneo de secretos](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning#editing-a-custom-pattern)". | +| `repository_secret_scanning_custom_pattern.delete` | Se eliminó un patrón personalizado del escaneo de secretos en un repositorio. Para obtener más información, consulta la sección "[Definir los patrones personalizados para el escaneo de secretos](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning#removing-a-custom-pattern)". | +| `repository_secret_scanning_custom_pattern.update` | Se guardan cambios a un patrón personalizado para el escaneo de secretos en un repositorio. Para obtener más información, consulta la sección "[Definir los patrones personalizados para el escaneo de secretos](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning#editing-a-custom-pattern)". | ## Acciones de la categoría `repository_secret_scanning_push_protection` -| Acción | Descripción | -| ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `repository_secret_scanning_push_protection.disable` | A repository owner or administrator disabled secret scanning for a repository. Para obtener más información, consulta la sección "[Proteger las subidas de información con el escaneo de secretos](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)". | -| `repository_secret_scanning_push_protection.enable` | A repository owner or administrator enabled secret scanning for a repository. Para obtener más información, consulta la sección "[Proteger las subidas de información con el escaneo de secretos](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)". | +| Acción | Descripción | +| ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `repository_secret_scanning_push_protection.disable` | Un propietario o administrador de repositorio inhabilitó el escaneo de secretos para un repositorio. Para obtener más información, consulta la sección "[Proteger las subidas de información con el escaneo de secretos](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)". | +| `repository_secret_scanning_push_protection.enable` | Un propietario o administrador de repositorio habilitó el escaneo de secretos para un repositorio. Para obtener más información, consulta la sección "[Proteger las subidas de información con el escaneo de secretos](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)". | {%- endif %} -## `repository_visibility_change` category actions +## Acciones de la categoría `repository_visibility_change` -| Acción | Descripción | -| -------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `repository_visibility_change.clear` | The repository visibility change setting was cleared for an organization or enterprise. Para obtener más información, consulta las secciones "[restringir los cambios de visibilidad de los repositorios en tu organización](/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization)" y "[requerir una política para los cambios en la visibilidad de un repositorio](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-changes-to-repository-visibility) para una empresa". | -| `repository_visibility_change.disable` | The ability for enterprise members to update a repository's visibility was disabled. Members are unable to change repository visibilities in an organization, or all organizations in an enterprise. | -| `repository_visibility_change.enable` | The ability for enterprise members to update a repository's visibility was enabled. Members are able to change repository visibilities in an organization, or all organizations in an enterprise. | +| Acción | Descripción | +| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `repository_visibility_change.clear` | El ajuste de cambio de visibilidad de repositorio se autorizó para una organización o empresa. Para obtener más información, consulta las secciones "[restringir los cambios de visibilidad de los repositorios en tu organización](/organizations/managing-organization-settings/restricting-repository-visibility-changes-in-your-organization)" y "[requerir una política para los cambios en la visibilidad de un repositorio](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-changes-to-repository-visibility) para una empresa". | +| `repository_visibility_change.disable` | Se inhabilitó la capacidad para que los miembros de la empresa actualicen la visibilidad de un repositorio. Los miembros no pueden cambiar las visibilidades de los repositorios en una organización o en todas las organizaciones de una empresa. | +| `repository_visibility_change.enable` | Se habilitó la capacidad de los miembros de una empresa para actualizar la visibilidad de un repositorio. Los miembros pueden cambiar las visibilidades de un repositorio en una organización o en todas las organizaciones de una empresa. | ## acciones de la categoría `repository_vulnerability_alert` | Acción | Descripción | | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `repository_vulnerability_alert.create` | {% data variables.product.product_name %} created a {% data variables.product.prodname_dependabot %} alert for a repository that uses an insecure dependency. Para obtener más información, consulta la sección "[Acerca de las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)". | -| `repository_vulnerability_alert.dismiss` | An organization owner or repository administrator dismissed a {% data variables.product.prodname_dependabot %} alert about a vulnerable dependency{% ifversion GH-advisory-db-supports-malware %} or malware{% endif %}. | -| `repository_vulnerability_alert.resolve` | Someone with write access to a repository pushed changes to update and resolve a {% data variables.product.prodname_dependabot %} alert in a project dependency. | +| `repository_vulnerability_alert.create` | {% data variables.product.product_name %} creó una {% data variables.product.prodname_dependabot %} para un repositorio que utiliza una dependencia insegura. Para obtener más información, consulta la sección "[Acerca de las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)". | +| `repository_vulnerability_alert.dismiss` | Un propietario de organización o administrador de repositorio descartó una alerta de {% data variables.product.prodname_dependabot %} sobre una dependencia vulnerable{% ifversion GH-advisory-db-supports-malware %} o malware{% endif %}. | +| `repository_vulnerability_alert.resolve` | Alguien con acceso de escritura a un repositorio subió cambios para actualizar y resolver una alerta de {% data variables.product.prodname_dependabot %} en una dependencia de proyecto. | {%- ifversion fpt or ghec %} ## acciones de la categoría `repository_vulnerability_alerts` -| Acción | Descripción | -| -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `repository_vulnerability_alerts.authorized_users_teams` | An organization owner or repository administrator updated the list of people or teams authorized to receive {% data variables.product.prodname_dependabot_alerts %} for the repository. Para obtener más información, consulta la sección "[Administrar la configuración de seguridad y análisis para tu repositorio](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)". | -| `repository_vulnerability_alerts.disable` | A repository owner or repository administrator disabled {% data variables.product.prodname_dependabot_alerts %}. | -| `repository_vulnerability_alerts.enable` | A repository owner or repository administrator enabled {% data variables.product.prodname_dependabot_alerts %}. | +| Acción | Descripción | +| -------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `repository_vulnerability_alerts.authorized_users_teams` | Un propietario de organización o administrador de repositorio actualizó la lista de personas o equipos autorizados para recibir {% data variables.product.prodname_dependabot_alerts %} para el repositorio. Para obtener más información, consulta la sección "[Administrar la configuración de seguridad y análisis para tu repositorio](/github/administering-a-repository/managing-security-and-analysis-settings-for-your-repository#granting-access-to-security-alerts)". | +| `repository_vulnerability_alerts.disable` | Un propietario o administrador de repositorio inhabilitó las {% data variables.product.prodname_dependabot_alerts %}. | +| `repository_vulnerability_alerts.enable` | Un propietario o administrador de repositorio habilitó las {% data variables.product.prodname_dependabot_alerts %}. | {%- endif %} -## `required_status_check` category actions +## Acciones de la categoría `required_status_check` -| Acción | Descripción | -| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `required_status_check.create` | A status check was marked as required for a protected branch. Para obtener más información, consulta la sección "[Requerir verificaciones de estado antes de la fusión](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-status-checks-before-merging)". | -| `required_status_check.destroy` | A status check was no longer marked as required for a protected branch. Para obtener más información, consulta la sección "[Requerir verificaciones de estado antes de la fusión](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-status-checks-before-merging)". | +| Acción | Descripción | +| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `required_status_check.create` | Se marcó una verificación de estado como requerida para una rama potencial. Para obtener más información, consulta la sección "[Requerir verificaciones de estado antes de la fusión](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-status-checks-before-merging)". | +| `required_status_check.destroy` | Se dejó de marcar una verificación de estado como requerida para una rama protegida. Para obtener más información, consulta la sección "[Requerir verificaciones de estado antes de la fusión](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-status-checks-before-merging)". | {%- ifversion ghec or ghes %} -## `restrict_notification_delivery` category actions +## Acciones de la categoría `restrict_notification_delivery` -| Acción | Descripción | -| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `restrict_notification_delivery.enable` | Email notification restrictions for an organization or enterprise were enabled. Para obtener más información, consulta las secciones "[Restringir las notificaciones de correo electrónico de tu organización](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/restricting-email-notifications-for-your-organization)" y "[Restringir las notificaciones de correo electrónico para tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)". | -| `restrict_notification_delivery.disable` | Email notification restrictions for an organization or enterprise were disabled. Para obtener más información, consulta las secciones "[Restringir las notificaciones de correo electrónico de tu organización](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/restricting-email-notifications-for-your-organization)" y "[Restringir las notificaciones de correo electrónico para tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)". | +| Acción | Descripción | +| ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `restrict_notification_delivery.enable` | Se habilitaron las restricciones para las notificaciones de correo electrónico para una organización o empresa. Para obtener más información, consulta las secciones "[Restringir las notificaciones de correo electrónico de tu organización](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/restricting-email-notifications-for-your-organization)" y "[Restringir las notificaciones de correo electrónico para tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)". | +| `restrict_notification_delivery.disable` | Se inhabilitaron las restricciones de notificación por correo electrónico para una organización o empresa. Para obtener más información, consulta las secciones "[Restringir las notificaciones de correo electrónico de tu organización](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/restricting-email-notifications-for-your-organization)" y "[Restringir las notificaciones de correo electrónico para tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/restricting-email-notifications-for-your-enterprise)". | {%- endif %} {%- ifversion custom-repository-roles %} ## Acciones de la categoría `role` -| Acción | Descripción | -| -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `create (crear)` | An organization owner created a new custom repository role. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | -| `destroy (destruir)` | An organization owner deleted a custom repository role. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | -| `actualización` | An organization owner edited an existing custom repository role. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | +| Acción | Descripción | +| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `create (crear)` | El propietario de una organización creó un nuevo rol personalizado para un repositorio. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | +| `destroy (destruir)` | Un propietario de organización borró un rol de repositorio personalizado. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | +| `actualización` | Un propietario de organización editó un rol personalizado de un repositorio existente. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | {%- endif %} {%- ifversion ghec or ghes or ghae %} ## Acciones de la categoría `secret_scanning` -| Acción | Descripción | -| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `secret_scanning.disable` | An organization owner disabled secret scanning for all existing{% ifversion ghec %} private or internal{% endif %} repositories. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). | -| `secret_scanning.enable` | An organization owner enabled secret scanning for all existing{% ifversion ghec %} private or internal{% endif %} repositories. | +| Acción | Descripción | +| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `secret_scanning.disable` | Un propietario de organización inhabilitó el escaneo de secretos para todos los repositorios {% ifversion ghec %} privados o internos{% endif %} existentes. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). | +| `secret_scanning.enable` | Un propietario de una organización habilitó el escaneo de secretos para todos los repositorios {% ifversion ghec %} privados o internos{% endif %}. | {% ifversion secret-scanning-alert-audit-log %} ## Acciones de la categoría `secret_scanning_alert` -| Acción | Descripción | -| ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `secret_scanning_alert.create` | {% data variables.product.prodname_dotcom %} detected a secret and created a {% data variables.product.prodname_secret_scanning %} alert. Para obtener más información, consulta la sección "[Administrar las alertas de {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/managing-alerts-from-secret-scanning)". | -| `secret_scanning_alert.reopen` | A user reopened a {% data variables.product.prodname_secret_scanning %} alert. | -| `secret_scanning_alert.resolve` | A user resolved a {% data variables.product.prodname_secret_scanning %} alert. | +| Acción | Descripción | +| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `secret_scanning_alert.create` | {% data variables.product.prodname_dotcom %} detectó un secreto y creó una alerta del {% data variables.product.prodname_secret_scanning %}. Para obtener más información, consulta la sección "[Administrar las alertas de {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/managing-alerts-from-secret-scanning)". | +| `secret_scanning_alert.reopen` | Un usuario volvió a abrir una alerta del {% data variables.product.prodname_secret_scanning %}. | +| `secret_scanning_alert.resolve` | Un usuario resolvió una alerta del {% data variables.product.prodname_secret_scanning %}. | {% endif %} ## Acciones de la categoría `secret_scanning_new_repos` -| Acción | Descripción | -| ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `secret_scanning_new_repos.disable` | An organization owner disabled secret scanning for all new{% ifversion ghec %} private or internal{% endif %} repositories. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). | -| `secret_scanning_new_repos.enable` | An organization owner enabled secret scanning for all new{% ifversion ghec %} private or internal{% endif %} repositories. | +| Acción | Descripción | +| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `secret_scanning_new_repos.disable` | Un propietario de organización inhabilitó el escaneo de secretos para todos los repositorios {% ifversion ghec %} privados o internos{% endif %} existentes. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). | +| `secret_scanning_new_repos.enable` | Un propietario de organización habilitó el escaneo de secretos para todos los repositorios {% ifversion ghec %} privados o internos{% endif %} nuevos. | {%- endif %} {% ifversion secret-scanning-push-protection-bypasses %} ## Acciones de la categoría `secret_scanning_push_protection` -| Acción | Descripción | -| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `bypass` | Se activa cuando un usuario omite la protección de subida en un secreto que detectó el escaneo de secretos. For more information, see "[Bypassing push protection for a secret](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)."{% endif %} +| Acción | Descripción | +| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `bypass` | Se activa cuando un usuario omite la protección de subida en un secreto que detectó el escaneo de secretos. Para obtener más información, consulta la sección "[Omitir la protección contra subida de información para un secreto](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)".{% endif %} {%- ifversion ghec or ghes or ghae %} -## `security_key` category actions +## Acciones de la categoría `security_key` -| Acción | Descripción | -| ----------------------- | ------------------------------------------------ | -| `security_key.register` | A security key was registered for an account. | -| `security_key.remove` | Se eliminó una llave de seguridad de una cuenta. | +| Acción | Descripción | +| ----------------------- | --------------------------------------------------- | +| `security_key.register` | Se registró una llave de seguridad para una cuenta. | +| `security_key.remove` | Se eliminó una llave de seguridad de una cuenta. | {%- endif %} {%- ifversion fpt or ghec %} @@ -1186,24 +1186,24 @@ Before you'll see `git` category actions, you must enable Git events in the audi {%- ifversion ghec or ghes or ghae %} | `team.demote_maintainer` | Se bajó de categoría a un usuario de mantenedor de equipo a miembro de equipo. | `team.promote_maintainer` | Se promovió a un usuario de miembro a mantenedor de equipo. Para obtener más información, consulta la sección "[Promover a un miembro de la organización a mantenedor de equipo](/organizations/organizing-members-into-teams/assigning-the-team-maintainer-role-to-a-team-member#promoting-an-organization-member-to-team-maintainer)". {%- endif %} -| `team.remove_member` | Se eliminó a un miembro de una organización de un equipo. For more information, see "[Removing organization members from a team](/organizations/organizing-members-into-teams/removing-organization-members-from-a-team)." | `team.remove_repository` | A repository was no longer under a team's control. | `team.rename` | A team's name was changed. | `team.update_permission` | A team's access was changed. | `team.update_repository_permission` | A team's permission to a repository was changed. +| `team.remove_member` | Se eliminó a un miembro de una organización de un equipo. Para obtener más información, consulta la sección "[Eliminar miembros organizacionales de un equipo](/organizations/organizing-members-into-teams/removing-organization-members-from-a-team)". | `team.remove_repository` | Un repositorio dejó de estar bajo el control de un equipo. | `team.rename` | Se cambió el nombre de un equipo. | `team.update_permission` | Se cambió el acceso de un equipo. | `team.update_repository_permission` | Se cambió el permiso de un equipo para un repositorio. ## acciones de la categoría `team_discussions` -| Acción | Descripción | -| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `team_discussions.clear` | An organization owner cleared the setting to allow team discussions for an organization or enterprise. | -| `team_discussions.disable` | An organization owner disabled team discussions for an organization. Para obtener más información, consulta "[Desactivar los debates del equipo para tu organización](/organizations/organizing-members-into-teams/disabling-team-discussions-for-your-organization)". | -| `team_discussions.enable` | An organization owner enabled team discussions for an organization. | +| Acción | Descripción | +| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `team_discussions.clear` | Un propietario de una organización autorizó el ajuste para permitir debates de equipo para una organización o empresa. | +| `team_discussions.disable` | Un propietario de organización inhabilitó los debates de equipo para una organización. Para obtener más información, consulta "[Desactivar los debates del equipo para tu organización](/organizations/organizing-members-into-teams/disabling-team-discussions-for-your-organization)". | +| `team_discussions.enable` | Un propietario de organización habilitó los debates de equipo para una organización. | {%- ifversion ghec %} -## `team_sync_tenant` category actions +## Acciones de la categoría `team_sync_tenant` -| Acción | Descripción | -| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `team_sync_tenant.disabled` | Team synchronization with a tenant was disabled. Para obtener más información, consulta las secciones "[Administrar la sincronización de equipos para tu organización](/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization)" y "[Administrar la sincronización de equipos para las organizaciones en tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)". | -| `team_sync_tenant.enabled` | Team synchronization with a tenant was enabled. Para obtener más información, consulta las secciones "[Administrar la sincronización de equipos para tu organización](/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization)" y "[Administrar la sincronización de equipos para las organizaciones en tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)". | -| `team_sync_tenant.update_okta_credentials` | The Okta credentials for team synchronization with a tenant were changed. | +| Acción | Descripción | +| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `team_sync_tenant.disabled` | Se inhabilitó la sincronización de equipos con un inquilino. Para obtener más información, consulta las secciones "[Administrar la sincronización de equipos para tu organización](/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization)" y "[Administrar la sincronización de equipos para las organizaciones en tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)". | +| `team_sync_tenant.enabled` | Team synchronization with a tenant was enabled. Para obtener más información, consulta las secciones "[Administrar la sincronización de equipos para tu organización](/organizations/managing-saml-single-sign-on-for-your-organization/managing-team-synchronization-for-your-organization)" y "[Administrar la sincronización de equipos para las organizaciones en tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/managing-team-synchronization-for-organizations-in-your-enterprise)". | +| `team_sync_tenant.update_okta_credentials` | The Okta credentials for team synchronization with a tenant were changed. | {%- endif %} {%- ifversion fpt or ghes %} diff --git a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/displaying-ip-addresses-in-the-audit-log-for-your-enterprise.md b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/displaying-ip-addresses-in-the-audit-log-for-your-enterprise.md index 558a5cb068..cda38b616c 100644 --- a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/displaying-ip-addresses-in-the-audit-log-for-your-enterprise.md +++ b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/displaying-ip-addresses-in-the-audit-log-for-your-enterprise.md @@ -24,7 +24,7 @@ If you choose to display IP addresses, the IP addresses only appear in your ente You can display IP addresses in the audit log regardless of which authentication method you use for your enterprise on {% data variables.product.product_location %}. Para obtener más información, consulta la sección "[Acerca de la autenticación para tu empresa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise)". -When anyone creates an account on {% data variables.product.product_location %}, the person agrees to {% data variables.product.company_short %}'s collection of basic information about connections to {% data variables.product.company_short %}'s services, including source IP address. For more information, see "[GitHub Privacy Statement](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement#usage-information)." +Cuando alguien crea una cuenta en {% data variables.product.product_location %}, la persona está de acuerdo en que {% data variables.product.company_short %} recopile información básica sobre las conexiones con los servicios de {% data variables.product.company_short %}, incluyendo las direcciones IP de origen. For more information, see "[GitHub Privacy Statement](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement#usage-information)." ## Events that display IP addresses in the audit log diff --git a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md index 9c829d511b..0ecc3ec98d 100644 --- a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md +++ b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md @@ -44,7 +44,8 @@ Puedes configurar la transmisión de bitácoras de auditoría en {% data variabl - [Amazon S3](#setting-up-streaming-to-amazon-s3) - [Almacenamiento de Blobs de Azure](#setting-up-streaming-to-azure-blob-storage) -- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs) +- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs){% ifversion streaming-datadog %} +- [Datadog](#setting-up-streaming-to-datadog){% endif %} - [Google Cloud Storage](#setting-up-streaming-to-google-cloud-storage) - [Splunk](#setting-up-streaming-to-splunk) @@ -60,7 +61,7 @@ Puedes configurar la transmisión de S3 con claves de acceso o, para evitar el a #### Configurar la transmisión a S3 con llaves de acceso {% endif %} -Para transmitir bitácoras de auditoría a la terminal de Amazon S3, debes tener un bucket y llaves de acceso. Para obtener más información, consulta la sección [Crear, configurar y trabajar con los buckets de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) en la documentación de AWS. Asegúrate de bloquear el acceso público al bucket para proteger la información de tu bitácora de auditoría. +Para transmitir bitácoras de auditoría a la terminal de Amazon S3, debes tener un bucket y llaves de acceso. Para obtener más información, consulta la sección "[Crear, configurar y trabajar con buckets de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) en la documentación de AWS. Asegúrate de bloquear el acceso público al bucket para proteger la información de tu bitácora de auditoría. Para configurar la transmisión de bitácora de auditoría desde {% data variables.product.prodname_dotcom %}, necesitarás: * El nombrede tu bucket de Amazon S3 @@ -87,7 +88,7 @@ Para obtener más información sobre cómo crear o acceder a tu ID de llave de a {% note %} -**Note:** Streaming to Amazon S3 with OpenID Connect is currently in beta and subject to change. +**Nota:** La transmisión a Amazon S3 con OpenID Connect se encuentra actualmente en beta y está sujeta a cambios. {% endnote %} @@ -231,6 +232,32 @@ Necesitas dos partes de información sobre tu concentrador de eventos: su nombre {% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +{% ifversion streaming-datadog %} +### Setting up streaming to Datadog + +To set up streaming to Datadog, you must create a client token or an API key in Datadog, then configure audit log streaming in {% data variables.product.product_name %} using the token for authentication. You do not need to create a bucket or other storage container in Datadog. + +After you set up streaming to Datadog, you can see your audit log data by filtering by "github.audit.streaming." For more information, see [Log Management](https://docs.datadoghq.com/logs/). + +1. If you don't already have a Datadog account, create one. +1. In Datadog, generate a client token or an API key, then click **Copy key**. For more information, see [API and Application Keys](https://docs.datadoghq.com/account_management/api-app-keys/) in Datadog Docs. +{% data reusables.enterprise.navigate-to-log-streaming-tab %} +1. Select the **Configure stream** dropdown menu and click **Datadog**. + + ![Screenshot of the "Configure stream" dropdown menu with "Datadog" highlighted](/assets/images/help/enterprises/audit-stream-choice-datadog.png) +1. Under "Token", paste the token you copied earlier. + + ![Screenshot of the "Token" field](/assets/images/help/enterprises/audit-stream-datadog-token.png) +1. Select the "Site" dropdown menu and click your Datadog site. To determine your Datadog site, compare your Datadog URL to the table in [Datadog sites](https://docs.datadoghq.com/getting_started/site/) in Datadog Docs. + + ![Screenshot of the "Site" dropdown menu](/assets/images/help/enterprises/audit-stream-datadog-site.png) +1. To verify that {% data variables.product.prodname_dotcom %} can connect and write to the Datadog endpoint, click **Check endpoint**. + + ![Verificar la terminal](/assets/images/help/enterprises/audit-stream-check.png) +{% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +1. After a few minutes, confirm that audit log data is appearing on the **Logs** tab in Datadog. If audit log data is not appearing, confirm that your token and site are correct in {% data variables.product.prodname_dotcom %}. +{% endif %} + ### Configurar la transmisión para Google Cloud Storage Para configurar la transmisión al Almacenamiento de Google Cloud, debes crear una cuenta de servicio en Google Cloud con las credenciales y permisos adecuados y luego configurar la transmisión de bitácoras de auditoría en {% data variables.product.product_name %} utilizando las credenciales de la cuenta de servicio para la autenticación. @@ -265,7 +292,7 @@ Para transmitir bitácoras de auditoría a la terminal del Recolector de Eventos {% data reusables.enterprise.navigate-to-log-streaming-tab %} 1. Haz clic en **Configurar transmisión** y selecciona **Splunk**. - ![Elige Splunk desde el menú desplegable](/assets/images/help/enterprises/audit-stream-choice-splunk.png) + ![Elegir Splunk del menú desplegable](/assets/images/help/enterprises/audit-stream-choice-splunk.png) 1. En la página de configuración, ingresa: * El dominio en el cual se hospeda la aplicación que quieres transmitir. @@ -291,6 +318,10 @@ Para transmitir bitácoras de auditoría a la terminal del Recolector de Eventos El pausar la transmisión te permite realizar el mantenimiento de la aplicación receptora sin perder datos de auditoría. Las bitácoras de auditoría se almacenan por hasta siete días en {% data variables.product.product_location %} y luego se exportan cuando dejas de pausar la transmisión. +{% ifversion streaming-datadog %} +Datadog only accepts logs from up to 18 hours in the past. If you pause a stream to a Datadog endpoint for more than 18 hours, you risk losing logs that Datadog won't accept after you resume streaming. +{% endif %} + {% data reusables.enterprise.navigate-to-log-streaming-tab %} 1. Haz clic en **Pausar transmisión**. diff --git a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md index bef9fa7faf..88353b1292 100644 --- a/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md +++ b/translations/es-ES/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md @@ -121,7 +121,7 @@ Para obtener más información sobre la API de REST de la bitácora de auditorí La siguiente consulta busca los eventos de la bitácora de auditoría que se crearon el 1 de enero de 2022 en la empresa `avocado-corp` y devolvió la primera página con un máximo de 100 elementos por página utilizando la [Paginación de la API de REST](/rest/overview/resources-in-the-rest-api#pagination): ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&page=1&per_page=100" ``` @@ -133,7 +133,7 @@ Puedes especificar frases de búsqueda múltiples, tales como `created` y `actor La siguiente consulta busca los eventos de bitácora de auditoría para las solicitudes de cambios, en donde el evento ocurrió en o después del 1 de enero de 2022 en la empresa `avocado-corp` y el usuario `octocat` realizó la acción: ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat" ``` diff --git a/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md b/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md index b1ed91a0ce..75b2044c67 100644 --- a/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md +++ b/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md @@ -79,12 +79,17 @@ You can also configure allowed IP addresses for an individual organization. For ### Adding an allowed IP address +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ### Allowing access by {% data variables.product.prodname_github_apps %} @@ -92,6 +97,8 @@ You can also configure allowed IP addresses for an individual organization. For ### Enabling allowed IP addresses +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -101,6 +108,8 @@ You can also configure allowed IP addresses for an individual organization. For ### Editing an allowed IP address +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -108,6 +117,18 @@ You can also configure allowed IP addresses for an individual organization. For {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. Click **Update**. +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +### Checking if an IP address is permitted + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ### Deleting an allowed IP address diff --git a/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md b/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md index 9907694777..ebe7c2bde5 100644 --- a/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md +++ b/translations/es-ES/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md @@ -71,24 +71,28 @@ Si un propietario de empresa deja de permitir que los miembros de ésta creen ci {% endif %} -## Requerir una política para los permisos {% ifversion ghec or ghes or ghae %}base{% else %}predeterminados{% endif %} del repositorio +## Enforcing a policy for base repository permissions -En todas las organizaciones que pertenezcan a tu empresa, puedes configurar un nivel de permisos {% ifversion ghec or ghes or ghae %}base{% else %}predeterminado{% endif %} de los repositorios (ninguno, lectura, escritura o administración) para los miembros organizacionales o permitir que los propietarios administren el ajuste a nivel de organización. +Across all organizations owned by your enterprise, 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 %} {% data reusables.enterprise-accounts.repositories-tab %} -4. Debajo de "permisos {% ifversion ghec or ghes or ghae %}base{% else %}predeterminados{% endif %}", revisa la información sobre cómo cambiar el ajuste. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Debajo de "Permisos{% ifversion ghec or ghes or ghae %}base{% else %}predeterminados{% endif %}", utiliza el menú desplegable y elige una política. - {% ifversion ghec or ghes or ghae %} - ![Menú desplegable con opciones de políticas de permisos de repositorios](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) - {% else %} - ![Menú desplegable con opciones de políticas de permisos de repositorios](/assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png) - {% endif %} +4. Under "Base permissions", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. En "Permisos base", usa el menú desplegable y elige una política. ![Menú desplegable con opciones de políticas de permisos de repositorios](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) + ## Requerir una política para la creación de repositorios -En todas las organizaciones que le pertenecen a tu empresa, puedes permitir que los miembros creen repositorios, restringir la creación de repositorios para los propietarios de la organización o permitir que los propietarios administren los ajustes en el nivel de la organización. Si permites que los miembros creen repositorios, puedes decidir si pueden crear cualquier combinación de repositorios públicos, privados e internos. {% data reusables.repositories.internal-repo-default %} Para obtener más información acerca de los repositorios internos, consulta "[Crear un repositorio interno](/articles/creating-an-internal-repository)". +En todas las organizaciones que le pertenecen a tu empresa, puedes permitir que los miembros creen repositorios, restringir la creación de repositorios para los propietarios de la organización o permitir que los propietarios administren los ajustes en el nivel de la organización. + +If you allow members to create repositories in your organizations, you can choose which types of repositories (public, private, and internal) that members can create. + +{% ifversion enterprise-namespace-repo-setting %} +{% ifversion ghec %}If your enterprise uses {% data variables.product.prodname_emus %}, you{% else %}You{% endif %} can also prevent users from creating repositories owned by their user accounts. +{% endif %} + +{% data reusables.repositories.internal-repo-default %} Para obtener más información acerca de los repositorios internos, consulta "[Crear un repositorio interno](/articles/creating-an-internal-repository)". {% data reusables.organizations.repo-creation-constants %} @@ -96,33 +100,32 @@ En todas las organizaciones que le pertenecen a tu empresa, puedes permitir que {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} 5. En "Creación de repositorio", revisa la información sobre cómo modificar los parámetros. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -{% ifversion ghes or ghae or ghec %} {% data reusables.enterprise-accounts.repo-creation-policy %} -{% data reusables.enterprise-accounts.repo-creation-types %} -{% else %} -6. En "Creación de repositorios", usa el menú desplegable y elige una política. - - ![Menú desplegable con políticas para creación de repositorio](/assets/images/enterprise/site-admin-settings/repository-creation-drop-down.png) -{% endif %} +{% data reusables.enterprise-accounts.repo-creation-types %}{% ifversion enterprise-namespace-repo-setting %} +1. Optionally, {% ifversion ghec %}if your enterprise uses {% data variables.product.prodname_emus %} and you want {% endif %}to prevent enterprise members from creating repositories owned by their user accounts, select **Block the creation of user namespace repositories**. ![Screenshot showing the list of disabled options from forking policy](/assets/images/help/business-accounts/restrict-personal-namespace-enabled-setting.png){% endif %} ## Requerir una política para bifurcar repositorios privados o internos En todas las organizaciones que pertenezcan a tu empresa, puedes permitir o prohibir la bifurcación de un repositorio privado o interno o permitir a los propietarios administrar la configuración a nivel organizacional para todos los que tengan acceso a éstos. +{% ifversion enterprise-namespace-repo-setting %} +{% note %} + +**Nota:** Si {% ifversion ghec %}tu empresa utiliza {% data variables.product.prodname_emus %} y {% endif %} tu política de "Creación de repositorios" previene que los miembros de las empresas creen repositorios que le pertenezcan a sus cuentas de usuario, no se permitirá que dichos miembros bifurquen un repositorio en sus cuentas de usuario, sin importar tu política de "Bifurcación de repositorios". + +{% endnote %} +{% endif %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} 3. Debajo de "Bifurcación de repositorios", revisa la información sobre cómo cambiar el ajuste. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} 4. En "Bifurcación de repositorios", usa el menú desplegable y elige una política. - ![Menú desplegable con opciones de políticas de bifurcación de repositorios](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png) - -{% ifversion innersource-fork-policies %} + ![Menú desplegable con opciones de políticas de bifurcación de repositorios](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png){% ifversion innersource-fork-policies %} 5. Si se habilita la bifurcación, puedes especificar en dónde se permite que los usuarios bifurquen repositorios. Revisa la información sobre cómo cambiar el ajuste y elige una política. - ![Captura de pantalla que muestra la lista de opciones de políticas para bifurcar repositorios](/assets/images/help/business-accounts/repository-forking-policy-settings.png) -{% endif %} - + ![Captura de pantalla que muestra la lista de opciones de políticas para bifurcar repositorios](/assets/images/help/business-accounts/repository-forking-policy-settings.png){% endif %} ## Requerir una política para invitar colaboradores{% ifversion ghec %} externos{% endif %} a los repositorios @@ -140,8 +143,6 @@ En todas las organizaciones que pertenezcan a tu empresa, puedes permitir que lo ![Menú desplegable con opciones de política de invitación](/assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png) {% endif %} -{% ifversion ghec or ghes or ghae %} - ## Requerir una política para el nombre de rama predeterminada Puedes configurar el nombre de rama predeterminada para cualquier repositorio miembro que creen los miembros en todas las organizaciones que pertenezcan a tu empresa. Puedes elegir el requerir un nombre de rama predeterminado a través de todas las organizaciones o permitir a algunas configurar un nombre diferente. @@ -152,8 +153,6 @@ Puedes configurar el nombre de rama predeterminada para cualquier repositorio mi 4. Opcionalmente, para requerir el nombre de rama predeterminado para todas las organizaciones en la empresa, selecciona **Requerir en toda la empresa**. ![Casilla de requerir](/assets/images/help/business-accounts/default-branch-name-enforce.png) 5. Da clic en **Actualizar**. ![Botón de actualizar](/assets/images/help/business-accounts/default-branch-name-update.png) -{% endif %} - ## Requerir una política para los cambios a la visibilidad del repositorio En todas las organizaciones que pertenezcan a tu empresa, puedes permitir que los miembros con acceso administrativo cambien la visibilidad de un repositorio, restrinjan los cambios de visibilidad del mismo a los propietarios de la organización o que permitan que los propietarios administren el ajuste a nivel organizacional. Cuando no permites que los miembros cambien la visibilidad del repositroio, únicamente los propietarios de la empresa podrán hacerlo. @@ -163,9 +162,8 @@ Si un propietario de empresa restringió la creación de repositorios en la mism {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} -5. En "Modificar visibilidad del repositorio", revisa la información sobre cómo modificar los parámetros. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} - -{% data reusables.enterprise-accounts.repository-visibility-policy %} +1. En "Modificar visibilidad del repositorio", revisa la información sobre cómo modificar los parámetros. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +1. Debajo de "Repository visibility change" (Cambio de visibilidad de repositorios), usa el menú desplegable y elige una política. ![Menú desplegable con opciones de políticas de visibilidad de repositorios](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) ## Requerir una política para el borrado y transferencia de repositorios diff --git a/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md b/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md index 77c7fffea0..d3757186db 100644 --- a/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md +++ b/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md @@ -44,7 +44,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * A [list of the repositories](/free-pro-team@latest/rest/repos#list-organization-repositories) you want to migrate: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X POST \ -H "Accept: application/vnd.github+json" \ -d'{"lock_repositories":true,"repositories":["orgname/reponame", "orgname/reponame"]}' \ @@ -59,7 +59,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id ``` @@ -74,7 +74,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ -L -o migration_archive.tar.gz \ https://api.github.com/orgs/orgname/migrations/id/archive @@ -84,7 +84,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X DELETE \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id/archive diff --git a/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md b/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md index cc184c3ab8..2e0d4117ff 100644 --- a/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md +++ b/translations/es-ES/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md @@ -134,7 +134,7 @@ Para desbloquear los repositorios en una organización{% data variables.product. * El `id` único de la migración * El nombre del repositorio a desbloquear ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ -H "Accept: application/vnd.github.wyandotte-preview+json" \ https://api.github.com/orgs/orgname/migrations/id/repos/repo_name/lock ``` @@ -143,7 +143,7 @@ curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ Después de desbloquear los repositorios de organización de {% data variables.product.prodname_dotcom_the_website %} deberás borrar todos los repositorios que migraste previamente utilizando [la terminal de borrado de repositorios](/rest/repos/#delete-a-repository). Necesitarás tu token de acceso para la autenticación: ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ https://api.github.com/repos/orgname/repo_name ``` diff --git a/translations/es-ES/content/authentication/connecting-to-github-with-ssh/about-ssh.md b/translations/es-ES/content/authentication/connecting-to-github-with-ssh/about-ssh.md index 55caa8e709..1a3f28d82a 100644 --- a/translations/es-ES/content/authentication/connecting-to-github-with-ssh/about-ssh.md +++ b/translations/es-ES/content/authentication/connecting-to-github-with-ssh/about-ssh.md @@ -1,6 +1,6 @@ --- title: Acerca de SSH -intro: 'Usando el protocolo SSH, te puedes conectar y autenticar con servicios y servidores remotos. Con las llaves SSH puedes conectarte a {% data variables.product.product_name %} sin proporcionar tu nombre de usuario y token de acceso personal en cada visita.' +intro: 'Usando el protocolo SSH, te puedes conectar y autenticar con servicios y servidores remotos. With SSH keys, you can connect to {% data variables.product.product_name %} without supplying your username and personal access token at each visit.{% ifversion ssh-commit-verification %} You can also use an SSH key to sign commits.{% endif %}' redirect_from: - /articles/about-ssh - /github/authenticating-to-github/about-ssh @@ -16,7 +16,7 @@ topics: {% data reusables.ssh.about-ssh %} Para obtener más información sobre SSH, consulta la página de [Secure Shell](https://en.wikipedia.org/wiki/Secure_Shell) en Wikipedia. -Cuando configuras SSH, necesitarás generar una llave SSH privada nueva y agregarla al agente SSH. También debes agregar la llave SSH pública a tu cuenta en {% data variables.product.product_name %} antes de que utilices la llave para autenticarte. Para obtener más información, consulta las secciones "[Generar una llave SSH nueva y agregarla al ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)" y "[Agregar una llave SSH nueva a tu cuenta de {% data variables.product.prodname_dotcom %}](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)". +Cuando configuras SSH, necesitarás generar una llave SSH privada nueva y agregarla al agente SSH. You must also add the public SSH key to your account on {% data variables.product.product_name %} before you use the key to authenticate{% ifversion ssh-commit-verification %} or sign commits{% endif %}. Para obtener más información, consulta las secciones "[Generar una llave SSH nueva y agregarla al ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)"{% ifversion ssh-commit-verification %}, {% else %}y{% endif %} "[Agregar una llave SSH nueva a tu cuenta de {% data variables.product.prodname_dotcom %}](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account){% ifversion ssh-commit-verification %}" y "[Acerca de la verificación de firmas de confirmación](/articles/about-commit-signature-verification){% endif %}". Puedes asegurar tu llave SSH aún más si utilizas una llave de seguridad de hardware, la cual requiere que esta última se conecte físicamente a tu computadora cuando se utilice el par de llaves para autenticarte con SSH. También puedes asegurar tu llave SSH si la agregas al ssh-agent y utiliza una contraseña. Para obtener más información, consulta la sección "[Trabajar con frases de acceso con llave SSH](/github/authenticating-to-github/working-with-ssh-key-passphrases)". @@ -33,7 +33,6 @@ Las organizaciones que utilizan {% data variables.product.prodname_ghe_cloud %} {% else ghec or ghes or ghae %} Si eres miembro de una organización que provee certificados SSH, puedes usar tu certificado para acceder a los repositorios de esa organización sin agregar el certificado a tu cuenta de {% data variables.product.product_name %}. No puedes utilizar tu certificado para acceder a las bifurcaciones de los repositorios de la organización si estas bifurcaciones le pertenecen a tu cuenta personal. Para obtener más información, consulta la sección [Acerca de las autoridades de certificados SSH](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)". {% endif %} - ## Leer más - "[Solucionar problemas de SSH](/articles/troubleshooting-ssh)" diff --git a/translations/es-ES/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md b/translations/es-ES/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md index 0d0d83bc2c..a4569d589d 100644 --- a/translations/es-ES/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md +++ b/translations/es-ES/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md @@ -19,6 +19,8 @@ shortTitle: Add a new SSH key {% data reusables.ssh.about-ssh %} For more information, see "[About SSH](/authentication/connecting-to-github-with-ssh/about-ssh)." +{% ifversion ssh-commit-verification %}You can also use SSH to sign commits and tags. For more information about commit signing, see "[About commit signature verification](/articles/about-commit-signature-verification)."{% endif %} + After you generate an SSH key pair, you must add the public key to {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} to enable SSH access for your account. ## Prerequisites @@ -30,120 +32,46 @@ Before adding a new SSH key to your account on {% ifversion ghae %}{% data varia ## Adding a new SSH key to your account -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)." +After adding a new SSH authentication 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 %} -{% mac %} - {% webui %} -1. Copy the SSH public key to your clipboard. - - If your SSH public key file has a different name than the example code, modify the filename to match your current setup. When copying your key, don't add any newlines or whitespace. - - ```shell - $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **Tip:** If `pbcopy` isn't working, you can locate the hidden `.ssh` folder, open the file in your favorite text editor, and copy it to your clipboard. - - {% endtip %} - +{% data reusables.gpg.copy-ssh-public-key %} {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.ssh %} 4. Click **New SSH key** or **Add SSH key**. +{% ifversion ssh-commit-verification %} + ![SSH Key button](/assets/images/help/settings/ssh-add-ssh-key-with-auth.png) +{% else %} ![SSH Key button](/assets/images/help/settings/ssh-add-ssh-key.png) -5. In the "Title" field, add a descriptive label for the new key. For example, if you're using a personal Mac, you might call this key "Personal MacBook Air". -6. Paste your key into the "Key" field. +{% endif %} +5. In the "Title" field, add a descriptive label for the new key. For example, if you're using a personal laptop, you might call this key "Personal laptop". +{% ifversion ssh-commit-verification %} +6. Select the type of key, either authentication or signing. For more information about commit signing, see "[About commit signature verification](/articles/about-commit-signature-verification)." +{% endif %} +7. Paste your key into the "Key" field. +{% ifversion ssh-commit-verification %} + ![The key field](/assets/images/help/settings/ssh-key-paste-with-type.png) +{% else %} ![The key field](/assets/images/help/settings/ssh-key-paste.png) -7. Click **Add SSH key**. +{% endif %} +8. Click **Add SSH key**. ![The Add key button](/assets/images/help/settings/ssh-add-key.png) {% data reusables.user-settings.sudo-mode-popup %} {% endwebui %} -{% endmac %} - -{% windows %} - -{% webui %} - -1. Copy the SSH public key to your clipboard. - - If your SSH public key file has a different name than the example code, modify the filename to match your current setup. When copying your key, don't add any newlines or whitespace. - - ```shell - $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **Tip:** If `clip` isn't working, you can locate the hidden `.ssh` folder, open the file in your favorite text editor, and copy it to your clipboard. - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. Click **New SSH key** or **Add SSH key**. - ![SSH Key button](/assets/images/help/settings/ssh-add-ssh-key.png) -5. In the "Title" field, add a descriptive label for the new key. For example, if you're using a personal Mac, you might call this key "Personal MacBook Air". -6. Paste your key into the "Key" field. - ![The key field](/assets/images/help/settings/ssh-key-paste.png) -7. Click **Add SSH key**. - ![The Add key button](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endwindows %} - -{% linux %} - -{% webui %} - -1. Copy the SSH public key to your clipboard. - - If your SSH public key file has a different name than the example code, modify the filename to match your current setup. When copying your key, don't add any newlines or whitespace. - - ```shell - $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Then select and copy the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file - # displayed in the terminal to your clipboard - ``` - - {% tip %} - - **Tip:** Alternatively, you can locate the hidden `.ssh` folder, open the file in your favorite text editor, and copy it to your clipboard. - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. Click **New SSH key** or **Add SSH key**. - ![SSH Key button](/assets/images/help/settings/ssh-add-ssh-key.png) -5. In the "Title" field, add a descriptive label for the new key. For example, if you're using a personal Mac, you might call this key "Personal MacBook Air". -6. Paste your key into the "Key" field. - ![The key field](/assets/images/help/settings/ssh-key-paste.png) -7. Click **Add SSH key**. - ![The Add key button](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endlinux %} - {% cli %} {% data reusables.cli.cli-learn-more %} Before you can use the {% data variables.product.prodname_cli %} to add an SSH key to your account, you must authenticate to the {% data variables.product.prodname_cli %}. For more information, see [`gh auth login`](https://cli.github.com/manual/gh_auth_login) in the {% data variables.product.prodname_cli %} documentation. -To add an SSH key to your GitHub account, use the `ssh-key add` subcommand, specifying your public key. +{% ifversion ssh-commit-verification %}At present, you can only use {% data variables.product.prodname_cli %} to add SSH authentication keys, you cannot add SSH signing keys.{% endif %} + +To add an SSH authentication key to your GitHub account, use the `ssh-key add` subcommand, specifying your public key. ```shell gh ssh-key add key-file diff --git a/translations/es-ES/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md b/translations/es-ES/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md index adb05a61f9..b2287d3a5e 100644 --- a/translations/es-ES/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md +++ b/translations/es-ES/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md @@ -1,6 +1,6 @@ --- title: About commit signature verification -intro: 'Using GPG or S/MIME, you can sign tags and commits locally. These tags or commits are marked as verified on {% data variables.product.product_name %} so other people can be confident that the changes come from a trusted source.' +intro: 'Using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME, you can sign tags and commits locally. These tags or commits are marked as verified on {% data variables.product.product_name %} so other people can be confident that the changes come from a trusted source.' redirect_from: - /articles/about-gpg-commit-and-tag-signatures - /articles/about-gpg @@ -19,10 +19,18 @@ 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 or ghec %}"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{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME signature that is cryptographically verifiable, {% data variables.product.product_name %} 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 ghes or ghae %} +If a commit or tag has a signature that can't be verified, {% data variables.product.product_name %} marks the commit or tag "Unverified." +{% endif %} + +{% ifversion ssh-commit-verification %} +For most individual users, GPG or SSH will be the best choice for signing commits. S/MIME signatures are usually required in the context of a larger organization. SSH signatures are the simplest to generate. You can even upload your existing authentication key to {% data variables.product.product_name %} to also use as a signing key. Generating a GPG signing key is more involved than generating an SSH key, but GPG has features that SSH does not. A GPG key can expire or be revoked when no longer used. {% data variables.product.product_name %} shows commits that were signed with such a key as "Verified" unless the key was marked as compromised. SSH keys don't have this capability. +{% endif %} + {% 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)." @@ -47,10 +55,9 @@ For more information, see "[Rebasing and merging your commits](/repositories/con {% data reusables.identity-and-permissions.vigilant-mode-verification-statuses %} -{% else %} -If a commit or tag has a signature that can't be verified, {% data variables.product.product_name %} marks the commit or tag "Unverified." {% endif %} + Repository administrators can enforce required commit signing on a branch to block all commits that are not signed and verified. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches#require-signed-commits)." {% data reusables.identity-and-permissions.verification-status-check %} @@ -59,7 +66,7 @@ Repository administrators can enforce required commit signing on a branch to blo {% ifversion ghes %}If a site administrator has enabled web commit signing, {% data variables.product.product_name %} will automatically use GPG to sign commits you make using the web interface. Commits signed by {% data variables.product.product_name %} will have a verified status. You can verify the signature locally using the public key available at `https://HOSTNAME/web-flow.gpg`. For more information, see "[Configuring web commit signing](/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing)." {% else %}{% data variables.product.prodname_dotcom %} will automatically use GPG to sign commits you make using the web interface. Commits signed by {% data variables.product.prodname_dotcom %} will have a verified status. 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.prodname_dotcom %} sign commits you make in {% data variables.product.prodname_github_codespaces %}. For more information about enabling GPG verification for your codespaces, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} +You can optionally choose to have {% data variables.product.prodname_dotcom %} GPG sign commits you make in {% data variables.product.prodname_github_codespaces %}. For more information about enabling GPG verification for your codespaces, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} {% endif %} ## GPG commit signature verification @@ -77,6 +84,26 @@ To sign commits using GPG and have those commits verified on {% data variables.p 5. [Sign commits](/articles/signing-commits) 6. [Sign tags](/articles/signing-tags) +{% ifversion ssh-commit-verification %} +## SSH commit signature verification + +You can use SSH to sign commits with an SSH public key that you generate yourself. If you already use an SSH key to authenticate with {% data variables.product.product_name %}, +you can also upload that same key again for use as a signing key. There's no limit on the number of signing keys you can add to your account. + +{% data variables.product.product_name %} uses [ssh_data](https://github.com/github/ssh_data), an open source Ruby library, 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 %}. + +{% data reusables.gpg.ssh-git-version %} + +To sign commits using SSH and have those commits verified on {% data variables.product.product_name %}, follow these steps: + +1. [Check for existing SSH keys](/articles/checking-for-existing-ssh-keys) +2. [Generate a new SSH key](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) +3. [Add a SSH signing key to your GitHub account](/articles/adding-a-new-ssh-key-to-your-github-account) +4. [Tell Git about your signing key](/articles/telling-git-about-your-signing-key) +5. [Sign commits](/articles/signing-commits) +6. [Sign tags](/articles/signing-tags) + +{% endif %} ## S/MIME commit signature verification You can use S/MIME to sign commits with an X.509 key issued by your organization. diff --git a/translations/es-ES/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md b/translations/es-ES/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md index 27205863ec..3e6af65879 100644 --- a/translations/es-ES/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md +++ b/translations/es-ES/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md @@ -19,7 +19,7 @@ redirect_from: Cuando trabajas localmente en tu computadora, Git te permite configurar el autor de tus cambios y la identidad del confirmante. Esto, potencialmente, dificulta que otras personas tengan la confimansa de que realmente hayas creado tus etiquetas y confirmaciones. Para ayudarte a resolver este problema, puedes firmar tus confirmaciones y etiquetas. Para obtener más información, consulta la sección "[Firmar confirmaciones](/github/authenticating-to-github/signing-commits)" y "[Firmar etiquetas](/github/authenticating-to-github/signing-tags)". {% data variables.product.prodname_dotcom %} marca las etiquetas y confirmaciones firmadas con un estado de verificación. -Predeterminadamente, las confirmaciones y etiquetas se marcan como "Verificadas" si se firman con una llave GPG o S/MIME que se verificó con éxito. Si una confirmación o etiqueta tiene una firma que no puede verificar {% data variables.product.prodname_dotcom %}, la marcaremos como "No verificada". En el resto de los casos, no se muestra un estado de verificación. +By default commits and tags are marked "Verified" if they are signed with a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME key that was successfully verified. Si una confirmación o etiqueta tiene una firma que no puede verificar {% data variables.product.prodname_dotcom %}, la marcaremos como "No verificada". En el resto de los casos, no se muestra un estado de verificación. Sin embargo, puedes proporcionar aún más confianza a otros usuarios sobre la identidad que se atribuye a tus confirmaciones y etiquetas si habilitas el modo vigilanten en tu configuración de {% data variables.product.prodname_dotcom %}. Cuando tienes habilitado el modo vigilante, todas tus confirmaciones y etiquetas se marcan con uno de tres estados de verificación. diff --git a/translations/es-ES/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md b/translations/es-ES/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md index 63ddd127e8..e86df4c351 100644 --- a/translations/es-ES/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md +++ b/translations/es-ES/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md @@ -29,11 +29,11 @@ topics: {% data reusables.command_line.open_the_multi_os_terminal %} 3. Genera un par de la llave GPG. Ya que existen varias versiones de GPG, puede que necesites consultar la [_página man_](https://en.wikipedia.org/wiki/Man_page) relevante para encontrar el comando adecuado para la generación de llaves. Tu llave debe utilizar RSA. - Si estás usando una versión 2.1.17 o superior, copia el siguiente texto para generar un par de la llave GPG. - ```shell + ```shell{:copy} $ gpg --full-generate-key ``` - Si no estás usando la versión 2.1.17 ni una superior, el comando `gpg --full-generate-key` no funciona. Copia el siguiente texto y continúa con el paso 6. - ```shell + ```shell{:copy} $ gpg --default-new-key-algo rsa4096 --gen-key ``` 4. En el prompt, especifica la clase de llave que quieres, o presiona `Enter` para aceptar lo predeterminado. @@ -52,10 +52,10 @@ topics: {% data reusables.gpg.list-keys-with-note %} {% data reusables.gpg.copy-gpg-key-id %} 10. Pega el siguiente texto sustituyendo el ID de la llave GPG que deseas usar. En este ejemplo, el ID de la llave GPG es `3AA5C34371567BD2`: - ```shell - $ gpg --armor --export 3AA5C34371567BD2 - # Prints the GPG key ID, in ASCII armor format - ``` + ```shell{:copy} + $ gpg --armor --export 3AA5C34371567BD2 + # Prints the GPG key ID, in ASCII armor format + ``` 11. Copia tu llave GPG, comenzando con `-----BEGIN PGP PUBLIC KEY BLOCK-----` y terminando con `-----END PGP PUBLIC KEY BLOCK-----`. 12. [Agrega la llave GPG a tu cuenta de GitHub](/articles/adding-a-gpg-key-to-your-github-account). diff --git a/translations/es-ES/content/authentication/managing-commit-signature-verification/index.md b/translations/es-ES/content/authentication/managing-commit-signature-verification/index.md index cc874bcb11..f081788d36 100644 --- a/translations/es-ES/content/authentication/managing-commit-signature-verification/index.md +++ b/translations/es-ES/content/authentication/managing-commit-signature-verification/index.md @@ -1,6 +1,6 @@ --- title: Administrar la verificación de firma de confirmación de cambios -intro: 'Puedes firmar tu trabajo localmente utilizando GPG o S/MIME. {% data variables.product.product_name %} verificará estas firmas para que otras personas sepan que tus confirmaciones de cambios provienen de una fuente confiable.{% ifversion fpt %} {% data variables.product.product_name %} firmará de forma automática las confirmaciones de cambios que realices utilizando la interfaz web {% data variables.product.product_name %}.{% endif %}' +intro: '{% data variables.product.product_name %} verificará las firmas GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} o S/MIME para que otras personas sepan que tus confirmaciones vienen de una fuente confiable.{% ifversion fpt %} {% data variables.product.product_name %} firmará automáticamente las confirmaciones que realices utilizando la interfaz web de {% data variables.product.product_name %}.{% endif %}' redirect_from: - /articles/generating-a-gpg-key - /articles/signing-commits-with-gpg diff --git a/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-commits.md b/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-commits.md index 912baf0ee2..e3f02babc3 100644 --- a/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-commits.md +++ b/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-commits.md @@ -1,6 +1,6 @@ --- title: Firmar confirmaciones -intro: Puedes firmar las confirmaciones localmente utilizando GPG o S/MIME. +intro: 'Puedes firmar las confirmaciones localmente utilizando GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} o S/MIME.' redirect_from: - /articles/signing-commits-and-tags-using-gpg - /articles/signing-commits-using-gpg @@ -52,9 +52,5 @@ Si tienes múltiples llaves o estás intentando firmar confirmaciones o etiqueta ## Leer más -* "[Comprobar llaves GPG existentes](/articles/checking-for-existing-gpg-keys)" -* "[Generar una llave GPG nueva](/articles/generating-a-new-gpg-key)" -* "[Agregar una llave GPG a tu cuenta de GitHub](/articles/adding-a-gpg-key-to-your-github-account)" * "[Informar a Git sobre tu llave de firma](/articles/telling-git-about-your-signing-key)" -* "[Asociar un correo electrónico con tu llave GPG](/articles/associating-an-email-with-your-gpg-key)" * "[Firmar etiquetas](/articles/signing-tags)" diff --git a/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-tags.md b/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-tags.md index cafb07beec..576223480e 100644 --- a/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-tags.md +++ b/translations/es-ES/content/authentication/managing-commit-signature-verification/signing-tags.md @@ -1,6 +1,6 @@ --- title: Firmar etiquetas -intro: Puedes firmar las etiquetas localmente utilizando GPG o S/MIME. +intro: 'You can sign tags locally using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME.' redirect_from: - /articles/signing-tags-using-gpg - /articles/signing-tags @@ -32,9 +32,6 @@ topics: ## Leer más - [Ver las etiquetas de tu repositorio](/articles/viewing-your-repositorys-tags)" -- "[Comprobar llaves GPG existentes](/articles/checking-for-existing-gpg-keys)" -- "[Generar una llave GPG nueva](/articles/generating-a-new-gpg-key)" -- "[Agregar una llave GPG a tu cuenta de GitHub](/articles/adding-a-gpg-key-to-your-github-account)" - "[Informar a Git sobre tu llave de firma](/articles/telling-git-about-your-signing-key)" - "[Asociar un correo electrónico con tu llave GPG](/articles/associating-an-email-with-your-gpg-key)" - "[Firmar confirmaciones](/articles/signing-commits)" diff --git a/translations/es-ES/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md b/translations/es-ES/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md index 426c771f8d..6fd5e87f3b 100644 --- a/translations/es-ES/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md +++ b/translations/es-ES/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md @@ -1,6 +1,6 @@ --- title: Informarle a Git acerca de tu clave de firma -intro: 'Para firmar las confirmaciones localmente, necesitas informar a Git que hay una llave de GPG o X.509 que quieres utilizar.' +intro: 'To sign commits locally, you need to inform Git that there''s a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or X.509 key you''d like to use.' redirect_from: - /articles/telling-git-about-your-gpg-key - /articles/telling-git-about-your-signing-key @@ -52,8 +52,6 @@ Si tienes múltiples llaves GPG, le debes decir a Git cuál utilizar. $ killall gpg-agent ``` -{% data reusables.gpg.x-509-key %} - {% endmac %} {% windows %} @@ -75,8 +73,6 @@ Si tienes múltiples llaves GPG, le debes decir a Git cuál utilizar. {% data reusables.gpg.copy-gpg-key-id %} {% data reusables.gpg.paste-gpg-key-id %} -{% data reusables.gpg.x-509-key %} - {% endwindows %} {% linux %} @@ -101,15 +97,25 @@ Si tienes múltiples llaves GPG, le debes decir a Git cuál utilizar. ```bash $ [ -f ~/.bashrc ] && echo 'export GPG_TTY=$(tty)' >> ~/.bashrc ``` - {% endlinux %} +{% ifversion ssh-commit-verification %} +## Telling Git about your SSH key + +You can use an existing SSH key to sign commits and tags, or generate a new one specifically for signing. Para obtener más información, consulta "[Generar una nueva llave SSH y agregarla a ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)." + +{% data reusables.gpg.ssh-git-version %} + +{% data reusables.command_line.open_the_multi_os_terminal %} +{% data reusables.gpg.configure-ssh-signing %} +{% data reusables.gpg.copy-ssh-public-key %} +{% data reusables.gpg.paste-ssh-public-key %} + +{% endif %} + +{% data reusables.gpg.x-509-key %} ## Leer más -- "[Comprobar llaves GPG existentes](/articles/checking-for-existing-gpg-keys)" -- "[Generar una llave GPG nueva](/articles/generating-a-new-gpg-key)" -- "[Utilizar una dirección de correo electrónico verificada en tu llave GPG](/articles/using-a-verified-email-address-in-your-gpg-key)" -- "[Agregar una llave GPG a tu cuenta de GitHub](/articles/adding-a-gpg-key-to-your-github-account)" -- "[Asociar un correo electrónico con tu llave GPG](/articles/associating-an-email-with-your-gpg-key)" +- "[Adding a new SSH key to your GitHub account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)." - "[Firmar confirmaciones](/articles/signing-commits)" - "[Firmar etiquetas](/articles/signing-tags)" diff --git a/translations/es-ES/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md b/translations/es-ES/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md index 93de4440ac..9902de28a0 100644 --- a/translations/es-ES/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md +++ b/translations/es-ES/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md @@ -22,7 +22,10 @@ shortTitle: Verificar el estado de verificación 1. En {% data variables.product.product_name %}, desplázate hasta la solicitud de extracción. {% data reusables.repositories.review-pr-commits %} 3. Junto al hash de confirmación abreviado de tu confirmación, hay una casilla que te muestra si tu firma de confirmación se verificó{% ifversion fpt or ghec %}, se verificó parcialmente,{% endif %} o si no se verificó. ![Confirmación firmada](/assets/images/help/commits/gpg-signed-commit-verified-without-details.png) -4. Para ver información más detallada sobre la firma de confirmación, haz clic en **Verificada**{% ifversion fpt or ghec %}, **Verificada parcialmente**,{% endif %} o **Sin verificar**. ![Confirmación firmada verificada](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +4. Para ver información más detallada sobre la firma de confirmación, haz clic en **Verificada**{% ifversion fpt or ghec %}, **Verificada parcialmente**,{% endif %} o **Sin verificar**. GPG signed commits will show the ID of the key that was used. ![Verified GPG signed commit](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +{% ifversion ssh-commit-verification %} + SSH signed commits will show the signature of the public key that was used. ![Verified SSH signed commit](/assets/images/help/commits/ssh-signed-commit-verified-details.png) +{% endif %} ## Comprobar el estado de verificación de firma de la etiqueta diff --git a/translations/es-ES/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md b/translations/es-ES/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md index 4f0b2f52b6..6c59e90b4f 100644 --- a/translations/es-ES/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md +++ b/translations/es-ES/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md @@ -1,6 +1,7 @@ --- title: Acerca de la facturación para GitHub Actions intro: 'Si quieres utilizar {% data variables.product.prodname_actions %} con más almacenamiento o minutos de los que se incluyen en tu cuenta, se te cobrará por estos recursos adicionales.' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-actions - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/about-billing-for-github-actions @@ -28,6 +29,13 @@ Los minutos se restablecen cada mes, pero no es el caso para el uso de almacenam ### Minutos y almacenamiento incluídos +{% ifversion actions-hosted-runners %} +{% note %} + +**Note**: Entitlement minutes cannot be used for Windows and Ubuntu runners over 2-cores. These runners will always be charged for, including in public repos. For more information, see "[Per-minute rates for runners](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)." + +{% endnote %} +{% endif %} | Producto | Almacenamiento | Minutos (por mes) | | --------------------------------------------------------------------- | -------------- | ----------------- | | {% data variables.product.prodname_free_user %} | 500 MB | 2,000 | @@ -58,15 +66,15 @@ El almacenamiento que utilza un repositorio es el total del almacenamiento utili ### Tasas por minuto -| Sistema operativo | Tasa por minuto (USD) | -| ----------------- | --------------------- | -| Linux | $0.008 | -| macOS | $0.08 | -| Windows | $0.016 | +{% data reusables.billing.billing-standard-runners %} +{% ifversion actions-hosted-runners %}{% data reusables.billing.billing-hosted-runners %}{% endif %} -La cantidad de jobs que puedes ejecutar simultáneamente a través de todos los repositorios que pertenezcan a tu cuenta de usuario u organización dependerá de tu plan de GitHub. Para obtener más información, consulta la sección "[Facturación y límites de uso](/actions/reference/usage-limits-billing-and-administration)" para los ejecutores hospedados en {% data variables.product.prodname_dotcom %} y la sección "[Acerca de los ejecutores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)" para los límites de uso de los ejecutores auto-hospedados. - -{% data reusables.user-settings.context_switcher %} +- La cantidad de jobs que puedes ejecutar simultáneamente a través de todos los repositorios que pertenezcan a tu cuenta de usuario u organización dependerá de tu plan de GitHub. Para obtener más información, consulta la sección "[Facturación y límites de uso](/actions/reference/usage-limits-billing-and-administration)" para los ejecutores hospedados en {% data variables.product.prodname_dotcom %} y la sección "[Acerca de los ejecutores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)" para los límites de uso de los ejecutores auto-hospedados. +- {% data reusables.user-settings.context_switcher %} +{% ifversion actions-hosted-runners %} +- For {% data variables.actions.hosted_runner %}s, there is no additional cost for configurations that assign public static IP addresses to a {% data variables.actions.hosted_runner %}. For more information on {% data variables.actions.hosted_runner %}s, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." +- Entitlement minutes cannot be used for {% data variables.actions.hosted_runner %}s. +{% endif %} ## Calcular los gastos por minuto y por almacenamiento diff --git a/translations/es-ES/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md b/translations/es-ES/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md index 9722449988..816c27b417 100644 --- a/translations/es-ES/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md +++ b/translations/es-ES/content/billing/managing-billing-for-github-copilot/about-billing-for-github-copilot.md @@ -18,4 +18,4 @@ Before starting a paid subscription, you can set up a one-time 60-day trial to e The {% data variables.product.prodname_copilot %} subscription is available on a monthly or yearly cycle. If you choose a monthly billing cycle, you will be billed $10 per calendar month. If you choose a yearly billing cycle, you will be billed $100 per year. You can modify your billing cycle at any time, and the modification will be reflected from the start of your next billing cycle. -A free subscription for {% data variables.product.prodname_copilot %} is available to verified students, and maintainers of popular open-source repositories on {% data variables.product.company_short %}. If you meet the criteria as an open source maintainer, you will be automatically notified when you visit the {% data variables.product.prodname_copilot %} subscription page. As a student, if you currently receive the {% data variables.product.prodname_student_pack %}, you will also be offered a free subscription when you visit the {% data variables.product.prodname_copilot %} subscription page. For more information about the {% data variables.product.prodname_student_pack %}, see "[Apply to {% data variables.product.prodname_global_campus %} as a student](/free-pro-team@latest/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student)." +A free subscription for {% data variables.product.prodname_copilot %} is available to verified students, and maintainers of popular open-source repositories on {% data variables.product.company_short %}. If you meet the criteria as an open source maintainer, you will be automatically notified when you visit the {% data variables.product.prodname_copilot %} subscription page. As a student, if you currently receive the {% data variables.product.prodname_student_pack %}, you will also be offered a free subscription when you visit the {% data variables.product.prodname_copilot %} subscription page. Para obtener más información sobre el {% data variables.product.prodname_student_pack %}, consulta la sección "[Solicitar ingresar al {% data variables.product.prodname_global_campus %} como alumno](/free-pro-team@latest/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student)". diff --git a/translations/es-ES/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md b/translations/es-ES/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md index 7dbda8a14b..0a0aa5a1df 100644 --- a/translations/es-ES/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md +++ b/translations/es-ES/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md @@ -50,9 +50,9 @@ Todos los datos de transferencia saliente, cuando se desencadenan mediante {% da El uso de almacenamiento se comparte con los artefactos de compilación que produce {% data variables.product.prodname_actions %} para los repositorios que pertenecen a tu cuenta. Para obtener más información, consulta "[Acerca de la facturación para {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)". -{% data variables.product.prodname_dotcom %} cobra el uso a la cuenta a la que pertenece el repositorio en donde se publica el paquete. Si tu uso de cuenta sobrepasa estos límites y configuraste un límite de gastos mayor a $0 USD, pagarás $0.25 USD por GB de almacenamiento por día y $0.50 USD por GB de transferencia de datos. +{% data variables.product.prodname_dotcom %} cobra el uso a la cuenta a la que pertenece el repositorio en donde se publica el paquete. Si tu uso de cuenta sobrepasa estos límites y configuraste un límite de gastos mayor a $0 USD, pagarás $0.008 USD por GB de almacenamiento por día y $0.50 USD por GB de transferencia de datos. -Por ejemplo, si tu organización utiliza {% data variables.product.prodname_team %}, permite los gastos ilimitados, utiliza 150GB de almacenamiento, y tiene 50GB de transferencia de datos durante un mes, ésta tendrá un excedente de 148GB en el almacenamiento y de 40GB en transferencia de datos para ese mes. El excedente de almacenamiento costaría $0.25 USD por GB por día o $37 USD. El excedente para transferencia de datos costaría $0.50 USD por GB, o $20 USD. +Por ejemplo, si tu organización utiliza {% data variables.product.prodname_team %}, permite los gastos ilimitados, utiliza 150GB de almacenamiento, y tiene 50GB de transferencia de datos durante un mes, ésta tendrá un excedente de 148GB en el almacenamiento y de 40GB en transferencia de datos para ese mes. El almacenamiento excedente costaría $0.008 USD por GB por día o, aproximadamente, $37 USD por un mes de 31 días. El excedente para transferencia de datos costaría $0.50 USD por GB, o $20 USD. {% data reusables.dotcom_billing.pricing_calculator.pricing_cal_packages %} diff --git a/translations/es-ES/content/billing/managing-your-license-for-github-enterprise/troubleshooting-license-usage-for-github-enterprise.md b/translations/es-ES/content/billing/managing-your-license-for-github-enterprise/troubleshooting-license-usage-for-github-enterprise.md index 3d0dd9028a..3e14720e63 100644 --- a/translations/es-ES/content/billing/managing-your-license-for-github-enterprise/troubleshooting-license-usage-for-github-enterprise.md +++ b/translations/es-ES/content/billing/managing-your-license-for-github-enterprise/troubleshooting-license-usage-for-github-enterprise.md @@ -1,6 +1,6 @@ --- -title: Troubleshooting license usage for GitHub Enterprise -intro: You can troubleshoot license usage for your enterprise by auditing license reports. +title: Solucionar problemas de uso de licencia para GitHub Enterprise +intro: Puedes solucionar los problemas con el uso de licencia para tu empresa si auditas los reportes de licencia. permissions: 'Enterprise owners can review license usage for {% data variables.product.prodname_enterprise %}.' versions: ghec: '*' @@ -9,26 +9,26 @@ type: how_to topics: - Enterprise - Licensing -shortTitle: Troubleshoot license usage +shortTitle: Solucionar el uso de licencia --- -## About unexpected license usage +## Acerca del uso de licencia inesperado -If the number of consumed licenses for your enterprise is unexpected, you can review your consumed license report to audit your license usage across all your enterprise deployments and subscriptions. For more information, see "[Viewing license usage for GitHub Enterprise](/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise)" and "[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)." +Si la cantidad de licencias consumidas para tu empresa es inesperada, puedes revisar tu reporte de licencias consumidas para auditar tu uso de licencia en todos los despliegues y suscripciones de tu empresa. Para obtener más información, consulta la sección "[Ver el uso de licencia para GitHub Enterprise](/billing/managing-your-license-for-github-enterprise/viewing-license-usage-for-github-enterprise)" y "[Ver la suscripción y el uso de tu cuenta empresarial](/billing/managing-billing-for-your-github-account/viewing-the-subscription-and-usage-for-your-enterprise-account)". -If you find errors, you can try troubleshooting steps. +Si encuentras errores, puedes intentar solucionar los problemas de los pasos. -For privacy reasons, enterprise owners cannot directly access the details of user accounts unless you use {% data variables.product.prodname_emus %}. +Por razones de privacidad, los propietarios de las empresas no pueden acceder directamente a los detalles de las cuentas de usuario a menos de que utilices {% data variables.product.prodname_emus %}. -## About the calculation of consumed licenses +## Acerca del cálculo de licencias consumidas -{% data variables.product.company_short %} bills for each person who uses deployments of {% data variables.product.prodname_ghe_server %}, is a member of one of your organizations on {% data variables.product.prodname_ghe_cloud %}, or is a {% data variables.product.prodname_vs_subscriber %}. For more information about the people in your enterprise who consume a license, see "[About per-user pricing](/billing/managing-billing-for-your-github-account/about-per-user-pricing)." +{% data variables.product.company_short %} factura por cada persona que utilice despliegues de {% data variables.product.prodname_ghe_server %}, que sea miembro de una de tus organizaciones en {% data variables.product.prodname_ghe_cloud %} o que sea un {% data variables.product.prodname_vs_subscriber %}. Para obtener más información sobre las personas de tu empresa que consumen licencias, consulta la sección "[Acerca de los precios por usuario](/billing/managing-billing-for-your-github-account/about-per-user-pricing)". -For each user to consume a single seat regardless of how many deployments they use, you must synchronize license usage between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %}. Para obtener más información, consulta la sección "[Sincronizar el uso de licencia entre {% data variables.product.prodname_ghe_server %} y {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)". +Para que cada usuario consuma una sola plaza sin importar cuántos despliegues utilicen, debes sincronizar el uso de licencias entre {% data variables.product.prodname_ghe_server %} y {% data variables.product.prodname_ghe_cloud %}. Para obtener más información, consulta la sección "[Sincronizar el uso de licencia entre {% data variables.product.prodname_ghe_server %} y {% data variables.product.prodname_ghe_cloud %}](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)". -After you synchronize license usage, {% data variables.product.prodname_dotcom %} matches user accounts on {% data variables.product.prodname_ghe_server %} with user accounts on {% data variables.product.prodname_ghe_cloud %} by email address. +Después de que sincronizas el uso de licencia, {% data variables.product.prodname_dotcom %} empata las cuentas de usuario en {% data variables.product.prodname_ghe_server %} con las cuentas de usuario en {% data variables.product.prodname_ghe_cloud %} por dirección de correo electrónico. -First, we first check the primary email address of each user on {% data variables.product.prodname_ghe_server %}. Then, we attempt to match that address with the email address for a user account on {% data variables.product.prodname_ghe_cloud %}. If your enterprise uses SAML SSO, we first check the following SAML attributes for email addresses. +Primero, revisa la dirección de correo electrónico principal de cada usuario en {% data variables.product.prodname_ghe_server %}. Después, intenta empatar dicha dirección con la de correo electrónico para una cuenta de usuario de {% data variables.product.prodname_ghe_cloud %}. Si tu empresa utiliza el SSO de SAML, primero hay que verificar los siguientes atributos de SAML para las direcciones de correo electrónco. - `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name` - `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress` @@ -36,64 +36,64 @@ First, we first check the primary email address of each user on {% data variable - `ID del nombre` - `emails` -If no email addresses found in these attributes match the primary email address on {% data variables.product.prodname_ghe_server %}, or if your enterprise doesn't use SAML SSO, we then check each of the user's verified email addresses on {% data variables.product.prodname_ghe_cloud %}. Para obtener más información sobre la verificación de las direcciones de correo electrónico de {% data variables.product.prodname_dotcom_the_website %}, consulta la sección "[Verificar tu dirección de correo electrónico](/enterprise-cloud@latest/get-started/signing-up-for-github/verifying-your-email-address){% ifversion not ghec %}" en la documentación de {% data variables.product.prodname_ghe_cloud %}.{% else %}".{% endif %} +Si no hay ninguna dirección de correo electrónico en estos atributos que empate con la dirección primaria en {% data variables.product.prodname_ghe_server %} o si tu empresa no utiliza el SSO de SAML, entonces podemos verificar cada una de las direcciones de correo electrónico verificadas de los usuarios en {% data variables.product.prodname_ghe_cloud %}. Para obtener más información sobre la verificación de las direcciones de correo electrónico de {% data variables.product.prodname_dotcom_the_website %}, consulta la sección "[Verificar tu dirección de correo electrónico](/enterprise-cloud@latest/get-started/signing-up-for-github/verifying-your-email-address){% ifversion not ghec %}" en la documentación de {% data variables.product.prodname_ghe_cloud %}.{% else %}".{% endif %} -## Fields in the consumed license files +## Campos en los archivos de licencia consumidos -The {% data variables.product.prodname_dotcom_the_website %} license usage report and {% data variables.product.prodname_ghe_server %} exported license usage file include a variety of fields to help you troubleshoot license usage for your enterprise. +El reporte de uso de licencia en {% data variables.product.prodname_dotcom_the_website %} y el archivo de uso de licencia exportado de {% data variables.product.prodname_ghe_server %} incluyen varios campos para ayudarte a solucionar los problemas de uso de licencia para tu empresa. -### {% data variables.product.prodname_dotcom_the_website %} license usage report (CSV file) +### Reporte de uso de licencia de {% data variables.product.prodname_dotcom_the_website %} (archivo CSV) -The license usage report for your enterprise is a CSV file that contains the following information about members of your enterprise. Some fields are specific to your {% data variables.product.prodname_ghe_cloud %} (GHEC) deployment, {% data variables.product.prodname_ghe_server %} (GHES) connected environments, or your {% data variables.product.prodname_vs %} subscriptions (VSS) with GitHub Enterprise. +El reporte de uso de licencia para tu empresa es un archivo CSV que contiene la siguiente información sobre los miembros de tu empresa. Algunos campos son específicos para tu despliegue de {% data variables.product.prodname_ghe_cloud %} (GHEC), ambientes conectados de {% data variables.product.prodname_ghe_server %} (GHES) o para tus suscripciones de {% data variables.product.prodname_vs %} (VSS) con GitHub Enterprise. -| Campo | Descripción | -| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| github_com_login | The username for the user's GHEC account | -| github_com_name | The display name for the user's GHEC account | -| github_com_profile | The URL for the user's profile page on GHEC | -| github_com_user | Whether or not the user has an account on GHEC | -| github_com_member_roles | For each of the organizations the user belongs to on GHEC, the organization name and the user's role in that organization (`Owner` or `Member`) separated by a colon

Organizations delimited by commas | -| github_com_enterprise_role | Can be one of: `Owner`, `Member`, or `Outside collaborator` | -| github_com_verified_domain_emails | All email addresses associated with the user's GHEC account that match your enterprise's verified domains | -| github_com_saml_name_id | The SAML username | -| github_com_orgs_with_pending_invites | All pending invitations for the user's GHEC account to join organizations within your enterprise | -| license_type | Can be one of: `Visual Studio subscription` or `Enterprise` | -| enterprise_server_user | Whether or not the user has at least one account on GHES | -| enterprise_server_primary_emails | The primary email addresses associated with each of the user's GHES accounts | -| enterprise_server_user_ids | For each of the user's GHES accounts, the account's user ID | -| total_user_accounts | The total number of accounts the person has across both GHEC and GHES | -| visual_studio_subscription_user | Whether or not the user is a {% data variables.product.prodname_vs_subscriber %} -| visual_studio_subscription_email | The email address associated with the user's VSS | -| visual_studio_license_status | Whether the Visual Studio license has been matched to a {% data variables.product.company_short %} user | +| Campo | Descripción | +| ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| github_com_login | El nombre de usuario para la cuenta de GHEC del usuario | +| github_com_name | El nombre para mostrar de la cuenta de GHEC del usuario | +| github_com_profile | La URL para la página de perfil del usuario en GHEC | +| github_com_user | Si el usuario tiene una cuenta en GHEC o no | +| github_com_member_roles | Para cada una de las organizaciones a las cuales pertenece el usuario en GHEC, el nombre de organización y el rol del usuario en dicha organización (`Owner` o `Member`) separado por dos puntos

Las organizaciones se delimitan con comas | +| github_com_enterprise_role | Puede ser una de entre: `Owner`, `Member`, o `Outside collaborator` | +| github_com_verified_domain_emails | Todas las direcciones de correo electrónico asociadas con la cuenta de GHEC del usuario que empaten con los dominios verificados de tu empresa | +| github_com_saml_name_id | El nombre de usuario de SAML | +| github_com_orgs_with_pending_invites | Todas las invitaciones pendientes para que la cuenta de GHEC del usuario se una a organizaciones dentro de tu empresa | +| license_type | Puede ser una de entre: `Visual Studio subscription` o `Enterprise` | +| enterprise_server_user | Si el usuario tiene por lo menos una cuenta en GHES o no | +| enterprise_server_primary_emails | Las direcciones de correo electrónico principales asociadas con cada una de las cuentas de GHES del usuario | +| enterprise_server_user_ids | La ID de usuario de cada una de las cuentas de GHES del usuario | +| total_user_accounts | La cantidad total de cuentas que tiene la persona tanto en GHEC como en GHES | +| visual_studio_subscription_user | Si el usuario es un {% data variables.product.prodname_vs_subscriber %} o no | +| visual_studio_subscription_email | La dirección de correo electrónico asociada con el VSS del usuario | +| visual_studio_license_status | Si la licencia de Visual Studio empató con un usuario de {% data variables.product.company_short %} o no | -{% data variables.product.prodname_vs_subscriber %}s who are not yet members of at least one organization in your enterprise will be included in the report with a pending invitation status, and will be missing values for the "Name" or "Profile link" field. +Los {% data variables.product.prodname_vs_subscriber %}es que aún no son miembros de por lo menos una organización en tu empresa se incluirán en el reporte con un estado de invitación pendiente y serán valores faltantes para el campo de "Nombre" o "Enlace de perfil". -### {% data variables.product.prodname_ghe_server %} exported license usage (JSON file) +### Uso de licencia de {% data variables.product.prodname_ghe_server %} exportada (archivo JSON) -Your {% data variables.product.prodname_ghe_server %} license usage is a JSON file that is typically used when performing a manual sync of user licenses between {% data variables.product.prodname_ghe_server %} and {% data variables.product.prodname_ghe_cloud %} deployments. The file contains the following information specific to your {% data variables.product.prodname_ghe_server %} environment. +Tu uso de licencia de {% data variables.product.prodname_ghe_server %} es un archivo de JSON que se utiliza habitualmente al realizar una sincronización manual de licencias de usuario entre despliegues de {% data variables.product.prodname_ghe_server %} y de {% data variables.product.prodname_ghe_cloud %}. El archivo contiene la siguiente información específica para tu ambiente de {% data variables.product.prodname_ghe_server %}. -| Campo | Descripción | -| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Características | The {% data variables.product.prodname_github_connect %} features that are enabled on your {% data variables.product.prodname_ghe_server %} instance, and the date and time of enablement. | -| Host name | The hostname of your {% data variables.product.prodname_ghe_server %} instance. | -| HTTP only | Whether Transport Layer Security (TLS) is enabled and configured on your {% data variables.product.prodname_ghe_server %} instance. Can be one of: `True` or `False`. | -| Licencia | Un hash de tu licencia {% data variables.product.prodname_ghe_server %}. | -| Public key | La parte pública de la clave de tu licencia {% data variables.product.prodname_ghe_server %}. | -| Server ID | UUID generated for your {% data variables.product.prodname_ghe_server %} instance. | -| Versión | The version of your {% data variables.product.prodname_ghe_server %} instance. | +| Campo | Descripción | +| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Características | Las características de {% data variables.product.prodname_github_connect %} que están habilitadas en tu instancia de {% data variables.product.prodname_ghe_server %} y la fecha y hora de la habilitación. | +| Host name | El nombre de host de tu instancia de {% data variables.product.prodname_ghe_server %}. | +| HTTP only | Si se habilitó y configuró la Seguridad de Capa de Transporte (TLS) en tu instancia de {% data variables.product.prodname_ghe_server %}. Puede ser uno de entre: `True` o `False`. | +| Licencia | Un hash de tu licencia {% data variables.product.prodname_ghe_server %}. | +| Public key | La parte pública de la clave de tu licencia {% data variables.product.prodname_ghe_server %}. | +| Server ID | La UUID generada para tu instancia de {% data variables.product.prodname_ghe_server %}. | +| Versión | La versión de tu instancia de {% data variables.product.prodname_ghe_server %}. | -## Troubleshooting consumed licenses +## Solucionar problemas de las licencias consumidas -To ensure that the each user is only consuming a single seat for different deployments and subscriptions, try the following troubleshooting steps. +Para garantizar que cada usuario solo consume una sola plaza para los diversos despliegues y suscripciones, intenta tomas los siguientes pasos. -1. To help identify users that are consuming multiple seats, if your enterprise uses verified domains for {% data variables.product.prodname_ghe_cloud %}, review the list of enterprise members who do not have an email address from a verified domain associated with their account on {% data variables.product.prodname_dotcom_the_website %}. Often, these are the users who erroneously consume more than one licensed seat. Para obtener más información, consulta la sección "[Ver a los miembros sin un a dirección de correo electrónico desde un dominio verificado](/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise#viewing-members-without-an-email-address-from-a-verified-domain)". +1. Para ayudar a identificar a los usuarios que están consumiendo varias plazas, si tu empresa utiliza los dominios verificados para {% data variables.product.prodname_ghe_cloud %}, revisa la lista de miembros empresariales que no tienen una dirección de correo electrónico de un dominio verificado y asociado con su cuenta en {% data variables.product.prodname_dotcom_the_website %}. A menudo, estos son los usuarios que consumen más de una plaza con licencia por error. Para obtener más información, consulta la sección "[Ver a los miembros sin un a dirección de correo electrónico desde un dominio verificado](/admin/user-management/managing-users-in-your-enterprise/viewing-people-in-your-enterprise#viewing-members-without-an-email-address-from-a-verified-domain)". {% note %} - **Note:** To make troubleshooting easier, we recommend using verified domains with your enterprise account on {% data variables.product.prodname_dotcom_the_website %}. Para obtener más información, consulta la sección "[Verificar o aprobar un dominio para tu empresa](/enterprise-cloud@latest/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)". + **Nota:** Para facilitar la solución de problemas, te recomendamos utilizar dominios verificados con tu cuenta empresarial en {% data variables.product.prodname_dotcom_the_website %}. Para obtener más información, consulta la sección "[Verificar o aprobar un dominio para tu empresa](/enterprise-cloud@latest/admin/configuration/configuring-your-enterprise/verifying-or-approving-a-domain-for-your-enterprise)". {% endnote %} -1. After you identify users who are consuming multiple seats, make sure that the same email address is associated with all of the user's accounts. For more information about which email addresses must match, see "[About the calculation of consumed licenses](#about-the-calculation-of-consumed-licenses)." -1. If an email address was recently updated or verified to correct a mismatch, view the timestamp of the last license sync job. If a job hasn't run since the correction was made, manually trigger a new job. For more information, see "[Syncing license usage between GitHub Enterprise Server and GitHub Enterprise Cloud](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)." +1. Después de que identifiques a los usuarios que están consumiendo varias plazas, asegúrate de que la misma dirección de correo electrónico esté asociada con todas las cuentas de usuario. Para obtener más información sobre qué direcciones de correo electrónico deben coincidir, consulta la sección "[Acerca del cálculo de las licencias consumidas](#about-the-calculation-of-consumed-licenses)". +1. Si se actualizó o verificó recientemente una dirección de correo electrónico para corregir un desajuste, ve la marca de tiempo del último job de sincronización de licencia. Si un job no se ha ejecutado desde que se realizó la corrección, activa un job nuevo manualmente. Para obtener más información, consulta la sección "[Sincronizar el uso de licencia entre GitHub Enterprise Server y GitHub Enterprise Cloud](/billing/managing-your-license-for-github-enterprise/syncing-license-usage-between-github-enterprise-server-and-github-enterprise-cloud)". -If you still have questions about your consumed licenses after reviewing the troubleshooting information above, you can contact {% data variables.contact.github_support %} through the {% data variables.contact.contact_enterprise_portal %}. +Si aún tienes preguntas sobre tus licencias consumidas después de revisar la información de solución de problemas anterior, puedes contactar a {% data variables.contact.github_support %} a través del {% data variables.contact.contact_enterprise_portal %}. diff --git a/translations/es-ES/content/code-security/adopting-github-advanced-security-at-scale/phase-5-rollout-and-scale-code-scanning.md b/translations/es-ES/content/code-security/adopting-github-advanced-security-at-scale/phase-5-rollout-and-scale-code-scanning.md index fa57403bd2..62c798ddf3 100644 --- a/translations/es-ES/content/code-security/adopting-github-advanced-security-at-scale/phase-5-rollout-and-scale-code-scanning.md +++ b/translations/es-ES/content/code-security/adopting-github-advanced-security-at-scale/phase-5-rollout-and-scale-code-scanning.md @@ -19,7 +19,7 @@ Este artículo es parte de una serie de cómo adoptar la {% data variables.produ ### Habilitar el escaneo de código -Using the data you collated in [Phase 2](/code-security/adopting-github-advanced-security-at-scale/phase-2-preparing-to-enable-at-scale), you can begin to enable GHAS and then {% data variables.product.prodname_code_scanning %} on your repositories, one language at a time. The step-by-step process for enabling GHAS should look like this: +Utilizando los datos que recolectaste en la [Fase 2](/code-security/adopting-github-advanced-security-at-scale/phase-2-preparing-to-enable-at-scale), puedes comenzar a habilitar la GHAS y luego el {% data variables.product.prodname_code_scanning %} en tus repositorios, un lenguaje a la vez. The step-by-step process for enabling GHAS should look like this: 1. Enable GHAS on the repository. Para obtener más información, consulta la sección "[Administrar la configuración de seguridad y análisis para tu repositorio](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)". 1. Create a pull request against the repository's default branch with a `codeql-analysis.yml` file containing an example of how to run CodeQL for that language. Para obtener más información, consulta la sección"[Crear una solicitud de extracción](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request)." diff --git a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md index 89a7a591d4..693aff8c64 100644 --- a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md +++ b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md @@ -359,7 +359,7 @@ In the following example, the `+` symbol ensures that the specified additional { ## Using a custom configuration file -A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries and to specify which directories to scan during analysis. +A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries{% ifversion code-scanning-exclude-queries-from-analysis %}, exclude or include specific queries,{% endif %} and to specify which directories to scan during analysis. In the workflow file, use the `config-file` parameter of the `init` action to specify the path to the configuration file you want to use. This example loads the configuration file _./.github/codeql/codeql-config.yml_. @@ -442,6 +442,41 @@ Optionally, you can give each array element a name, as shown in the example conf If you only want to run custom queries, you can disable the default security queries by using `disable-default-queries: true`. +{% ifversion code-scanning-exclude-queries-from-analysis %} +### Excluding specific queries from analysis + +You can add `exclude` and `include` filters to your custom configuration file, to specify the queries you want to exclude or include in the analysis. + +This is useful if you want to exclude, for example: +- Specific queries from the default suites (`security`, `security-extended` and `security-and-quality`). +- Specific queries whose results do not interest you. +- All the queries that generate warnings and recommendations. + +You can use `exclude` filters similar to those in the configuration file below to exclude queries that you want to remove from the default analysis. In the example of configuration file below, both the `js/redundant-assignment` and the `js/useless-assignment-to-local` queries are excluded from analysis. + +```yaml +query-filters: + - exclude: + id: js/redundant-assignment + - exclude: + id: js/useless-assignment-to-local +``` +To find the id of a query, you can click the alert in the list of alerts in the Security tab. This opens the alert details page. The `Rule ID` field contains the query id. For more information about the alert details page, see "[About {% data variables.product.prodname_code_scanning %} alerts](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-alerts#about-alert-details)." + +{% tip %} + +**Tips:** +- The order of the filters is important. The first filter instruction that appears after the instructions about the queries and query packs determines whether the queries are included or excluded by default. +- Subsequent instructions are executed in order and the instructions that appear later in the file take precedence over the earlier instructions. + +{% endtip %} + +You can find another example illustrating the use of these filters in the "[Example configuration files](#example-configuration-files)" section. + +For more information about using `exclude` and `include` filters in your custom configuration file, see "[Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/#filtering-the-queries-in-a-query-suite)." For information on the query metadata you can filter on, see "[Metadata for CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/metadata-for-codeql-queries/)." + +{% endif %} + ### Specifying directories to scan For the interpreted languages that {% data variables.product.prodname_codeql %} supports (Python{% ifversion fpt or ghes > 3.3 or ghae-issue-5017 %}, Ruby{% endif %} and JavaScript/TypeScript), you can restrict {% data variables.product.prodname_code_scanning %} to files in specific directories by adding a `paths` array to the configuration file. You can exclude the files in specific directories from analysis by adding a `paths-ignore` array. diff --git a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md index a5948aba46..23e20a25a3 100644 --- a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md +++ b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md @@ -43,8 +43,8 @@ By default, the code scanning alerts page is filtered to show alerts for the def ![Summary of alerts](/assets/images/help/repository/code-scanning-click-alert.png) {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} - {% data reusables.code-scanning.alert-default-branch %} - ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} + {% data reusables.code-scanning.alert-default-branch %} + ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} 1. Optionally, if the alert highlights a problem with data flow, click **Show paths** to display the path from the data source to the sink where it's used. {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} ![The "Show paths" link on an alert](/assets/images/help/repository/code-scanning-show-paths.png) diff --git a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md index a9fa55f11d..7cd2cdcc90 100644 --- a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md +++ b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md @@ -32,6 +32,12 @@ Si estás configurando el {% data variables.product.prodname_code_scanning %} pa Debes ejecutar a {% data variables.product.prodname_codeql %} dentro del mismo contenedor en el que compilaste tu código. Esto aplica a cuando utilizas el {% data variables.product.prodname_codeql_cli %}{% ifversion codeql-runner-supported %}, el {% data variables.product.prodname_codeql_runner %},{% endif %} o {% data variables.product.prodname_actions %}. Para el {% data variables.product.prodname_codeql_cli %} {% ifversion codeql-runner-supported %}o el {% data variables.product.prodname_codeql_runner %}{% endif %}, consulta la sección "[Instalar el {% data variables.product.prodname_codeql_cli %} en tu sistema de IC](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system)"{% ifversion codeql-runner-supported %} o "[Ejecutar el {% data variables.product.prodname_codeql_runner %} en tu sistema de IC](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)"{% endif %} para obtener más información. Si estás utilizando {% data variables.product.prodname_actions %}, configura tu flujo de trabajo para ejecutar todas las acciones en el mismo contenedor. Para obtener más información, consulta la sección "[Ejemplo de flujo de trabajo](#example-workflow)". +{% note %} + +**Nota:** {% data reusables.code-scanning.non-glibc-linux-support %} + +{% endnote %} + ## Dependencias Es posible que tengas alguna dificultad para ejecutar el {% data variables.product.prodname_code_scanning %} si el contenedor que estás utilizando carece de ciertas dependencias (Por ejemplo, Git debe instalarse y agregarse a la variable PATH). Si encuentras propuestas de dependencias, revisa la lista de software que habitualmente se incluye en las imágenes de los ejecutores de {% data variables.product.prodname_dotcom %}. Para obtener más información, consulta los archivos `readme` específicos de la versión en estas ubicaciones: diff --git a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md index 52e0b98fd3..32cea9db26 100644 --- a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md +++ b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md @@ -151,25 +151,29 @@ 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 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. +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. -{% ifversion fpt or ghes > 3.2 or ghae or ghec %} - ![Analysis not found for commit message](/assets/images/help/repository/code-scanning-analysis-not-found.png) +{% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-7095 %} + +{% elsif ghes < 3.5 or ghae %} +If you used a pull request to add {% data variables.product.prodname_code_scanning %} to the repository, you will initially see {% ifversion ghes > 3.2 or ghae %}an "Analysis not found"{% elsif ghes = 3.2 %}a "Missing analysis"{% endif %} message when you click **Details** on the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" check. + +{% ifversion ghes > 3.2 or ghae %} + ![Analysis not found for commit message](/assets/images/enterprise/3.4/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. For example, in the screenshot above, {% data variables.product.prodname_code_scanning %} found an analysis for the merge commit of the pull request, but no analysis for the head of the main branch. -{% else %} - ![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 or ghec %} ### Reasons for the "Analysis not found" message -{% else %} + +{% elsif ghes = 3.2 %} + ![Missing analysis for commit message](/assets/images/enterprise/3.2/repository/code-scanning-missing-analysis.png) + ### 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 or ghec %}"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 ghes > 3.2 or ghae %}"Analysis not found"{% elsif ghes = 3.2 %}"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: @@ -177,7 +181,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. -![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) + ![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) The solution in this situation is to add the name of the base branch to the `on:push` and `on:pull_request` specification in the {% data variables.product.prodname_code_scanning %} workflow on that branch and then make a change that updates the open pull request that you want to scan. @@ -189,6 +193,8 @@ There are other situations where there may be no analysis for the latest commit Merge a trivial change into the base branch to trigger {% data variables.product.prodname_code_scanning %} on this latest commit, then push a change to the pull request to retrigger {% data variables.product.prodname_code_scanning %}. +{% endif %} + ## Next steps After setting up {% data variables.product.prodname_code_scanning %}, and allowing its actions to complete, you can: diff --git a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md index c983e246ac..5cad113a82 100644 --- a/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md +++ b/translations/es-ES/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md @@ -33,8 +33,6 @@ In repositories where {% data variables.product.prodname_code_scanning %} is con - The **Conversation** tab of the pull request, as part of a pull request review {% endif %} - The **Files changed** tab of the pull request -{% ifversion code-scanning-pr-conversations-tab %} {% endif %} - 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 or ghec %} diff --git a/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md b/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md index daeb17e483..74df7049d2 100644 --- a/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md +++ b/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md @@ -45,9 +45,15 @@ If you upload a second SARIF file for a commit with the same category and from t If you're new to SARIF and want to learn more, see Microsoft's [`SARIF tutorials`](https://github.com/microsoft/sarif-tutorials) repository. -## Preventing duplicate alerts using fingerprints +## Providing data to track {% data variables.product.prodname_code_scanning %} alerts across runs -Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the right line of code when files are edited. +Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the correct line of code when files are edited. The `ruleID` for a result has to be the same across analysis. + +### Reporting consistent filepaths + +The filepath has to be consistent across the runs to enable a computation of a stable fingerprint. If the filepaths differ for the same result, each time there is a new analysis a new alert will be created, and the old one will be closed. This will cause having multiple alerts for the same result. + +### Including data for fingerprint generation {% data variables.product.prodname_dotcom %} uses the `partialFingerprints` property in the OASIS standard to detect when two results are logically identical. For more information, see the "[partialFingerprints property](https://docs.oasis-open.org/sarif/sarif/v2.1.0/cs01/sarif-v2.1.0-cs01.html#_Toc16012611)" entry in the OASIS documentation. @@ -77,6 +83,12 @@ You can check a SARIF file is compatible with {% data variables.product.prodname If you use a code analysis engine other than {% data variables.product.prodname_codeql %}, you can review the supported SARIF properties to optimize how your analysis results will appear on {% data variables.product.prodname_dotcom %}. +{% note %} + +**Note:** You must supply an explicit value for any property marked as "required". The empty string is not supported for required properties. + +{% endnote %} + Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.product.prodname_code_scanning %} will only use the following supported properties. ### `sarifLog` object @@ -138,7 +150,7 @@ Each `result` object contains details for one alert in the codebase. Within the | `level`| **Optional.** The severity of the result. This level overrides the default severity defined by the rule. {% data variables.product.prodname_code_scanning_capc %} uses the level to filter results by severity on {% data variables.product.prodname_dotcom %}. | `message.text`| **Required.** A message that describes the result. {% data variables.product.prodname_code_scanning_capc %} displays the message text as the title of the result. Only the first sentence of the message will be displayed when visible space is limited. | `locations[]`| **Required.** The set of locations where the result was detected up to a maximum of 10. Only one location should be included unless the problem can only be corrected by making a change at every specified location. **Note:** At least one location is required for {% data variables.product.prodname_code_scanning %} to display a result. {% data variables.product.prodname_code_scanning_capc %} will use this property to decide which file to annotate with the result. Only the first value of this array is used. All other values are ignored. -| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Preventing duplicate alerts using fingerprints](#preventing-duplicate-alerts-using-fingerprints)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. +| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Providing data to track code scanning alerts across runs](#providing-data-to-track-code-scanning-alerts-across-runs)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. | `codeFlows[].threadFlows[].locations[]`| **Optional.** An array of `location` objects for a `threadFlow` object, which describes the progress of a program through a thread of execution. A `codeFlow` object describes a pattern of code execution used to detect a result. If code flows are provided, {% data variables.product.prodname_code_scanning %} will expand code flows on {% data variables.product.prodname_dotcom %} for the relevant result. For more information, see the [`location` object](#location-object). | `relatedLocations[]`| A set of locations relevant to this result. {% data variables.product.prodname_code_scanning_capc %} will link to related locations when they are embedded in the result message. For more information, see the [`location` object](#location-object). @@ -204,7 +216,7 @@ These example SARIF output files show supported properties and example values. ### Example with minimum required properties -This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties or don't include values, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. +This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties, omit values, or use an empty string, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. ```json { diff --git a/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md b/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md index 1e03a239f3..193ee54f5a 100644 --- a/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md +++ b/translations/es-ES/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md @@ -58,7 +58,7 @@ For more information see the [`upload-sarif` action](https://github.com/github/c The `upload-sarif` action can be configured to run when the `push` and `scheduled` event occur. For more information about {% data variables.product.prodname_actions %} events, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)." -If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#preventing-duplicate-alerts-using-fingerprints)." +If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#providing-data-to-track-code-scanning-alerts-across-runs)." {% data reusables.code-scanning.upload-sarif-alert-limit %} diff --git a/translations/es-ES/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md b/translations/es-ES/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md index 54ca86d3af..a9c8d47e23 100644 --- a/translations/es-ES/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md +++ b/translations/es-ES/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md @@ -78,7 +78,8 @@ You can display the command-line help for any command using the `--help``--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. | | `--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). -| `--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. | +| `--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. |{% ifversion fpt or ghec or ghes > 3.2 or ghae %} +| `--codescanning-config` | | Optional (Advanced). Use if you have a configuration file that specifies how to create the {% data variables.product.prodname_codeql %} databases and what queries to run in later steps. For more information, see "[Using a custom configuration file](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-a-custom-configuration-file)" and "[database create](https://codeql.github.com/docs/codeql-cli/manual/database-create/#cmdoption-codeql-database-create-codescanning-config)." |{% endif %} 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 %}. diff --git a/translations/es-ES/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md b/translations/es-ES/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md index e4b621210d..983eb8443d 100644 --- a/translations/es-ES/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md +++ b/translations/es-ES/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md @@ -74,7 +74,7 @@ El {% data variables.product.prodname_dependabot %} no crea {% data variables.pr ## About information in security advisories -Each security advisory contains information about the vulnerability{% ifversion GH-advisory-db-supports-malware %} or malware,{% endif %} which may include the description, severity, affected package, package ecosystem, affected versions and patched versions, impact, and optional information such as references, workarounds, and credits. Adicionalmente, las asesorías de la National Vulnerability Database contiene un enlace al registro de CVE, en donde puedes leer más sobre los detalles de la vulnerabilidad, su puntuación de CVSS y su nivel de severidad cualitativo. Para obtener más información, consulta la "[National Vulnerability Database](https://nvd.nist.gov/)" del Instituto Nacional de Estándares y Tecnología. +Cada asesoría de seguridad contiene información sobre la vulnerabilidad{% ifversion GH-advisory-db-supports-malware %} o malware,{% endif %} lo cual podría incluir la descripción, gravedad, paquete afectado, ecosistema del paquete, versiones afectadas y parchadas, impacto e información opcional tal como las referencias, soluciones alternativas y créditos. Adicionalmente, las asesorías de la National Vulnerability Database contiene un enlace al registro de CVE, en donde puedes leer más sobre los detalles de la vulnerabilidad, su puntuación de CVSS y su nivel de severidad cualitativo. Para obtener más información, consulta la "[National Vulnerability Database](https://nvd.nist.gov/)" del Instituto Nacional de Estándares y Tecnología. El nivel de gravedad es uno de cuatro niveles posibles que se definen en el [Sistema de clasificación de vulnerabilidades comunes (CVSS), Sección 5](https://www.first.org/cvss/specification-document)". - Bajo diff --git a/translations/es-ES/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md b/translations/es-ES/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md index a717245b25..fadd3dd370 100644 --- a/translations/es-ES/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md +++ b/translations/es-ES/content/code-security/dependabot/dependabot-alerts/configuring-dependabot-alerts.md @@ -1,7 +1,7 @@ --- -title: Configuring Dependabot alerts -intro: 'Enable {% data variables.product.prodname_dependabot_alerts %} to be generated when a new vulnerable dependency {% ifversion GH-advisory-db-supports-malware %}or malware {% endif %}is found in one of your repositories.' -shortTitle: Configure Dependabot alerts +title: Configurar las alertas del Dependabot +intro: 'Habilita las {% data variables.product.prodname_dependabot_alerts %} para que se generen cuando una dependencia vulnerable nueva {% ifversion GH-advisory-db-supports-malware %}o malware {% endif %}se encuentre en uno de tus repositorios.' +shortTitle: Configurar las alertas del Dependabot versions: fpt: '*' ghes: '*' @@ -17,89 +17,89 @@ topics: - Repositories --- -## About {% data variables.product.prodname_dependabot_alerts %} for vulnerable dependencies{% ifversion GH-advisory-db-supports-malware %} and malware{% endif %} +## Acerca de las {% data variables.product.prodname_dependabot_alerts %} para las dependencias vulnerables{% ifversion GH-advisory-db-supports-malware %} y el malware{% endif %} {% data reusables.repositories.a-vulnerability-is %} -{% data variables.product.prodname_dependabot %} scans code when a new advisory is added to the {% data variables.product.prodname_advisory_database %} or the dependency graph for a repository changes. When vulnerable dependencies{% ifversion GH-advisory-db-supports-malware %} or malware{% endif %} are detected, {% data variables.product.prodname_dependabot_alerts %} are generated. Para obtener más información, consulta la sección "[Acerca de las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)". +{% data variables.product.prodname_dependabot %} escanea el código cuando una asesoría nueva se agrega a la {% data variables.product.prodname_advisory_database %} o a la gráfica de dependencias para los cambios a un repositorio. Cuando se detectan dependencias vulnerables{% ifversion GH-advisory-db-supports-malware %} o el malware{% endif %}, se generan {% data variables.product.prodname_dependabot_alerts %}. Para obtener más información, consulta la sección "[Acerca de las {% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)". -You can enable or disable {% data variables.product.prodname_dependabot_alerts %} for: -* Your personal account -* Your repository -* Your organization +Puedes habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para: +* Tu cuenta personal +* Tu repositorio +* Tu organización -## Managing {% data variables.product.prodname_dependabot_alerts %} for your personal account +## Adminsitrar las {% data variables.product.prodname_dependabot_alerts %} para tu cuenta personal {% ifversion fpt or ghec %} -You can enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories owned by your personal account. +Puedes habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para todos los repositorios que le pertenecen a tu cuenta personal. -### Enabling or disabling {% data variables.product.prodname_dependabot_alerts %} for existing repositories +### Habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para los repositorios existentes {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.security-analysis %} -3. Debajo de "Análisis y seguridad del código", a la derecha de las {% data variables.product.prodname_dependabot_alerts %}, haz clic en **Inhabilitar todas** o **Habilitar todas**. ![Screenshot of "Configure security and analysis" features with "Enable all" or "Disable all" buttons emphasized](/assets/images/help/dependabot/dependabot-alerts-disable-or-enable-all.png) -4. Optionally, enable {% data variables.product.prodname_dependabot_alerts %} by default for new repositories that you create. ![Screenshot of "Enable Dependabot alerts" with "Enable by default for new private repositories" checkbox emphasized](/assets/images/help/dependabot/dependabot-alerts-enable-by-default.png) -5. Click **Disable {% data variables.product.prodname_dependabot_alerts %}** or **Enable {% data variables.product.prodname_dependabot_alerts %}** to disable or enable {% data variables.product.prodname_dependabot_alerts %} for all the repositories you own. ![Screenshot of "Enable Dependabot alerts" with "Enable Dependabot alerts" button emphasized](/assets/images/help/dependabot/dependabot-alerts-enable-dependabot-alerts.png) +3. Debajo de "Análisis y seguridad del código", a la derecha de las {% data variables.product.prodname_dependabot_alerts %}, haz clic en **Inhabilitar todas** o **Habilitar todas**. ![Captura de pantalla de las características de "Configurar el análisis y la seguridad" con énfasis en los botones "Habilitar todo" o "Inhabilitar todo"](/assets/images/help/dependabot/dependabot-alerts-disable-or-enable-all.png) +4. Opcionalmente, habilita las {% data variables.product.prodname_dependabot_alerts %} predeterminadamente para los repositorios nuevos que crees. ![Captura de pantalla de "Habilitar las alertas del Dependabot" con énfasis en la casilla de verificación "Habilitar predeterminadamente para los repositorios privados nuevos"](/assets/images/help/dependabot/dependabot-alerts-enable-by-default.png) +5. Haz clic en **Inhabilitar las {% data variables.product.prodname_dependabot_alerts %}** o **Habilitar las {% data variables.product.prodname_dependabot_alerts %}** para inhabilitar o habilitar las {% data variables.product.prodname_dependabot_alerts %} para todos los repositorios que te pertenezcan. ![Captura de pantalla de "Habilitar las alertas del Dependabot" con énfasis en el botón "Habilitar las alertas del Dependabot"](/assets/images/help/dependabot/dependabot-alerts-enable-dependabot-alerts.png) -When you enable {% data variables.product.prodname_dependabot_alerts %} for existing repositories, you will see any results displayed on GitHub within minutes. +Cuando habilitas las {% data variables.product.prodname_dependabot_alerts %} para los repositorios existentes, verás todos los resultados mostrados en GitHub en cuestión de minutos. -### Enabling or disabling {% data variables.product.prodname_dependabot_alerts %} for new repositories +### Habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para los repositorios nuevos {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.security-analysis %} -3. Under "Code security and analysis", to the right of {% data variables.product.prodname_dependabot_alerts %}, enable or disable {% data variables.product.prodname_dependabot_alerts %} by default for new repositories that you create. ![Screenshot of "Configure security and analysis" with "Enable for all new private repositories" check emphasized](/assets/images/help/dependabot/dependabot-alerts-enable-for-all-new-repositories.png) +3. Debajo de "Análisis y seguridad del código", a la derecha de las {% data variables.product.prodname_dependabot_alerts %}, habilita o inhabilita las {% data variables.product.prodname_dependabot_alerts %} predeterminadas para los repositorios nuevos que crees. ![Captura de pantalla de "Configurar el análisis y la seguridad" con énfasis en la casilla de verificación "Habilitar para todos los repositorios privados nuevos"](/assets/images/help/dependabot/dependabot-alerts-enable-for-all-new-repositories.png) {% else %} -{% data variables.product.prodname_dependabot_alerts %} for your repositories can be enabled or disabled by your enterprise owner. Para obtener más información, consulta la sección "[Habilitar al Dependabot para tu empresa](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)". +Tu propietario de empresa puede habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para tus repositorios. Para obtener más información, consulta la sección "[Habilitar al Dependabot para tu empresa](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)". {% endif %} ## Administrar las {% data variables.product.prodname_dependabot_alerts %} para tu repositorio -{% ifversion fpt or ghec %}You can manage {% data variables.product.prodname_dependabot_alerts %} for your public, private or internal repository. +{% ifversion fpt or ghec %}Puedes adminsitrar las {% data variables.product.prodname_dependabot_alerts %} para tu repositorio público, privado o interno. -Predeterminadamente, notificamos a las personas con permisos administrativos en los repositorios afectados sobre las {% data variables.product.prodname_dependabot_alerts %} nuevas. {% data variables.product.product_name %} never publicly discloses insecure dependencies for any repository. También puedes hacer que las {% data variables.product.prodname_dependabot_alerts %} sean visibles para más personas o equipos que trabajen en los repositorios que te pertenecen o para los cuales tienes permisos administrativos. +Predeterminadamente, notificamos a las personas con permisos administrativos en los repositorios afectados sobre las {% data variables.product.prodname_dependabot_alerts %} nuevas. {% data variables.product.product_name %} jamás divulga públicamente las dependencias inseguras de ningún repositorio. También puedes hacer que las {% data variables.product.prodname_dependabot_alerts %} sean visibles para más personas o equipos que trabajen en los repositorios que te pertenecen o para los cuales tienes permisos administrativos. {% data reusables.security.security-and-analysis-features-enable-read-only %} -### Enabling or disabling {% data variables.product.prodname_dependabot_alerts %} for a repository +### Habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para un repositorio {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.repositories.navigate-to-code-security-and-analysis %} -1. Under "Code security and analysis", to the right of {% data variables.product.prodname_dependabot_alerts %}, click **Enable** to enable alerts or **Disable** to disable alerts. ![Screenshot of "Code security and analysis" section with button to enable {% data variables.product.prodname_dependabot_security_updates %}](/assets/images/help/repository/security-and-analysis-disable-or-enable-fpt-private.png) +1. Debajo de "Análisis y seguridad del código", a la derecha de las {% data variables.product.prodname_dependabot_alerts %}, haz clic en **Habilitar** para habilitar las alertas o en **Inhabilitar** para inhabilitarlas. ![Captura de pantalla de la sección "Análisis y seguridad del código" con el botón para habilitar las {% data variables.product.prodname_dependabot_security_updates %}](/assets/images/help/repository/security-and-analysis-disable-or-enable-fpt-private.png) {% endif %}{% ifversion ghes or ghae %} -{% data variables.product.prodname_dependabot_alerts %} for your repository can be enabled or disabled by your enterprise owner. Para obtener más información, consulta la sección "[Habilitar al Dependabot para tu empresa](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)". +Tu propietario de empresa puede habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para tu repositorio. Para obtener más información, consulta la sección "[Habilitar al Dependabot para tu empresa](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)". {% endif %} ## Administrar las {% data variables.product.prodname_dependabot_alerts %} para tu organización -{% ifversion fpt or ghec %}You can enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories owned by your organization. Your changes affect all repositories. +{% ifversion fpt or ghec %}Puedes habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para todos los repositorios que le pertenecen a tu organización. Tus cambios afectan a todos los repositorios. -### Enabling or disabling {% data variables.product.prodname_dependabot_alerts %} for all existing repositories +### Habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para todos los repositorios existentes {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security-and-analysis %} 2. Debajo de "Análisis y seguridad del código", a la derecha de las {% data variables.product.prodname_dependabot_alerts %}, haz clic en **Inhabilitar todas** o **Habilitar todas**. {% ifversion fpt or ghec %} - ![Screenshot of "Configure security and analysis" features with the "Enable all" or "Disable all" button emphasized for Dependabot alerts](/assets/images/help/dependabot/dependabot-alerts-disable-or-enable-fpt.png) + ![Captura de pantalla de las características de "Configurar el análisis y la seguridad" con énfasis en el botón "Habilitar todo" o "Inhabilitar todo" para las alertas del Dependabot](/assets/images/help/dependabot/dependabot-alerts-disable-or-enable-fpt.png) {% endif %} {% ifversion ghae %} ![Botón de "Habilitar todo" o "Inhabilitar todo" para las características de "Configurar la seguridad y el análisis"](/assets/images/enterprise/github-ae/organizations/security-and-analysis-disable-or-enable-all-ghae.png) {% endif %} {% ifversion fpt or ghec %} -3. Optionally, enable {% data variables.product.prodname_dependabot_alerts %} by default for new repositories in your organization. +3. Opcionalmente, habilita las {% data variables.product.prodname_dependabot_alerts %} predeterminadas para los repositorios en tu organización. {% ifversion fpt or ghec %} - ![Screenshot of "Enable by default" option for new repositories](/assets/images/help/dependabot/dependabot-alerts-enable-by-default-organizations.png) + ![Captura de pantalla de la opción "Habilitar predeterminadamente" para los repositorios nuevos](/assets/images/help/dependabot/dependabot-alerts-enable-by-default-organizations.png) {% endif %} {% endif %} {% ifversion fpt or ghec %} -4. Click **Disable {% data variables.product.prodname_dependabot_alerts %}** or **Enable {% data variables.product.prodname_dependabot_alerts %}** to disable or enable {% data variables.product.prodname_dependabot_alerts %} for all the repositories in your organization. +4. Haz clic en **Inhabilitar las {% data variables.product.prodname_dependabot_alerts %}** o **Habilitar las {% data variables.product.prodname_dependabot_alerts %}** para inhabilitar o habilitar las {% data variables.product.prodname_dependabot_alerts %} para todos los repositorios de tu organización. {% ifversion fpt or ghec %} - ![Screenshot of "Enable Dependabot alerts" modal with button to disable or enable feature emphasized](/assets/images/help/dependabot/dependabot-alerts-enable-dependabot-alerts-organizations.png) + ![Captura de pantalla del modal "Habilitar las alertas del dependabot" con énfasis en el botón de la característica de inhabilitar o habilitar](/assets/images/help/dependabot/dependabot-alerts-enable-dependabot-alerts-organizations.png) {% endif %}{% endif %}{% endif %}{% ifversion ghes or ghae %} -{% data variables.product.prodname_dependabot_alerts %} for your organization can be enabled or disabled by your enterprise owner. For more information, see "[About Dependabot for GitHub Enterprise Server](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)." +El propietario de tu empresa puede habilitar o inhabilitar las {% data variables.product.prodname_dependabot_alerts %} para tu organización. Para obtener más información, consulta la sección "[Acerca del Dependabot para GitHub Enterprise Server](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)". {% endif %} diff --git a/translations/es-ES/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md b/translations/es-ES/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md index 3e64fdf989..4a5b64cab5 100644 --- a/translations/es-ES/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md +++ b/translations/es-ES/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md @@ -164,9 +164,9 @@ Si programas mucho trabajo para actualizar una dependencias o decides que una al 1. Ver los detalles de una alerta. Para obtener más información, consulta la sección "[Ver las dependencias vulnerables](#viewing-dependabot-alerts)" (anteriormente). 1. Selecciona el menú desplegable de "Descartar" y haz clic en una razón para descartar la alerta.{% ifversion reopen-dependabot-alerts %} Las alertas descartadas sin fijar pueden volverse a abrir posteriormente.{% endif %} -{% ifversion dependabot-alerts-dismissal-comment %}1. Optionally, add a dismissal comment. The dismissal comment will be added to the alert timeline and can be used as justification during auditing and reporting. You can retrieve or set a comment by using the GraphQL API. The comment is contained in the `dismissComment` field. For more information, see "[{% data variables.product.prodname_dependabot_alerts %}](/graphql/reference/objects#repositoryvulnerabilityalert)" in the GraphQL API documentation. - ![Screenshot showing how to dismiss an alert via the "Dismiss" drop-down, with the option to add a dismissal comment](/assets/images/help/repository/dependabot-alerts-dismissal-comment.png) -1. Click **Dismiss alert**. +{% ifversion dependabot-alerts-dismissal-comment %}1. Optionally, add a dismissal comment. The dismissal comment will be added to the alert timeline and can be used as justification during auditing and reporting. You can retrieve or set a comment by using the GraphQL API. El comentario se contiene en el campo `dismissComment`. Para obtener más información, consulta la sección "[{% data variables.product.prodname_dependabot_alerts %}](/graphql/reference/objects#repositoryvulnerabilityalert)" en la documentación de la API de GraphQL. + ![Captura de pantalla que muestra cómo descartar una alerta a través del menú desplegable de "Descartar" con la opción para agregar un comentario de destitución](/assets/images/help/repository/dependabot-alerts-dismissal-comment.png) +1. Haz clic en **Descargar alerta**. {% else %} ![Elegir una razón para descartar la alerta a través del menú desplegable de "Descartar"](/assets/images/help/repository/dependabot-alert-dismiss-drop-down-ungrouped.png){% endif %} {% ifversion dependabot-bulk-alerts %} diff --git a/translations/es-ES/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/translations/es-ES/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 705eb03d2b..ff3e91456d 100644 --- a/translations/es-ES/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/translations/es-ES/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -416,7 +416,7 @@ updates: ### `open-pull-requests-limit` -Predeterminadamente, {% data variables.product.prodname_dependabot %} abre un máximo de cinco solicitudes de extracción para las actualizaciones de versión. Una vez que hayan cinco solicitudes de cambio abiertas, las solicitudes nuevas se bloquearán hasta que fusiones o cierres algunas de las sollicitudes abiertas, después de lo cual, las solicitudes de cambiso nuevas pueden abrirse en actualizaciones subsecuentes. Utiliza `open-pull-requests-limit` para cambiar este límite. Esto también proporciona una forma simple de inhabilitar temporalmente las actualizaciones de versión para un administrador de paquete. +Predeterminadamente, {% data variables.product.prodname_dependabot %} abre un máximo de cinco solicitudes de extracción para las actualizaciones de versión. Once there are five open pull requests from {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_dependabot %} will not open any new requests until some of those open requests are merged or closed. Utiliza `open-pull-requests-limit` para cambiar este límite. Esto también proporciona una forma simple de inhabilitar temporalmente las actualizaciones de versión para un administrador de paquete. Esta opción no tiene impacto en las actualizaciones de seguridad que tienen un límite separado e interno de diez solicitudes de extracción abiertas. diff --git a/translations/es-ES/content/code-security/secret-scanning/about-secret-scanning.md b/translations/es-ES/content/code-security/secret-scanning/about-secret-scanning.md index 481ec138e4..0110c45c23 100644 --- a/translations/es-ES/content/code-security/secret-scanning/about-secret-scanning.md +++ b/translations/es-ES/content/code-security/secret-scanning/about-secret-scanning.md @@ -39,7 +39,7 @@ Service providers can partner with {% data variables.product.company_short %} to {% ifversion secret-scanning-push-protection %} -You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." +You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. {% ifversion push-protection-custom-link-orgs %}Admins can also specify a custom link that is displayed to the contributor when a push is blocked; the link can contain resources specific to the organization to aid contributors. {% endif %}For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." {% endif %} diff --git a/translations/es-ES/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md b/translations/es-ES/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md index 2f2ed093ea..bfa80cfbc5 100644 --- a/translations/es-ES/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md +++ b/translations/es-ES/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md @@ -60,9 +60,21 @@ Los propietarios de las organizaciones, administradores de seguridad y administr Se mostrarán hasta cinco secretos detectados a la vez en la línea de comandos. Si ya se detectó un secreto en particular en el repositorio y la alerta ya existe, {% data variables.product.prodname_dotcom %} no lo bloqueará. +{% ifversion push-protection-custom-link-orgs %} + +Los administradores de las organizaciones pueden proporcionar un enlace personalizado que se mostrará cuando se bloquee una subida de información. Este enlace personalizado puede contener consejos y recursos específicos para la organización, tal como las instrucciones para utilizar una bóveda de secretos recomendada o a quién contactar para hacer preguntas relacionadas con el secreto bloqueado. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +![Captura de pantalla que muestra que una subida está bloqueada cuando un usuario intenta subir un secreto a un repositorio](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) + +{% else %} + ![Captura de pantalla que muestra que una subida está bloqueada cuando un usuario intenta subir un secreto a un repositorio](/assets/images/help/repository/secret-scanning-push-protection-with-link.png) -{% data reusables.secret-scanning.push-protection-remove-secret %} Para obtener más información sobre los secretos bloqueados de remediación, consulta la sección "[Subir una rama que se bloqueó por una protección contra subida](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)". +{% endif %} + +{% data reusables.secret-scanning.push-protection-remove-secret %} Para obtener más información sobre los secretos de remediación bloqueados, consulta la sección "[Subir una rama que se bloqueó por una protección contra subida](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)". Si confirmas que un secreto es real y que pretendes corregirlo después, debes intentar remediarlo tan pronto como sea posible. Por ejemplo, podrías revocar el secreto y eliminarlo del historial de confirmaciones del repositorio. Los secretos reales que se expusieron deben revocarse para evitar un acceso no autorizado. Podrías considerar rotar el secreto primero antes de revocarlo. Para obtener más información, consulta la sección "[Eliminar datos confidenciales de un repositorio](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)". @@ -88,6 +100,14 @@ Si {% data variables.product.prodname_dotcom %} bloquea un secreto que piensas s {% data variables.product.prodname_dotcom %} solo mostrará un secreto detectado a la vez en la IU web. Si ya se detectó un secreto en particular en el repositorio y la alerta ya existe, {% data variables.product.prodname_dotcom %} no lo bloqueará. +{% ifversion push-protection-custom-link-orgs %} + +Los administradores de las organizaciones pueden proporcionar un enlace personalizado que se mostrará cuando se bloquee una subida de información. Este enlace personalizado puede contener recursos y consejos específicos para tu organización. Por ejemplo, el enlace personalizado puede apuntar a un archivo README con información sobre la bóveda de secretos de la organización, a qué individuos y equipos escalar las preguntas o la política aprobada de la organización para trabajar con secretos y reescribir el historial de confirmaciones. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + Puedes eliminar el secreto del archivo utilizando la IU web. Una vez que elimines el secreto, el letrero en la parte superior de la página cambiará y te dirá que ahora puedes confirmar tus cambios. ![Captura de pantalla que muestra la confirmación en la Iu web después de que se corrigió un secreto](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png) diff --git a/translations/es-ES/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md b/translations/es-ES/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md index 14981705dd..1add514681 100644 --- a/translations/es-ES/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md +++ b/translations/es-ES/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md @@ -16,16 +16,24 @@ shortTitle: Push a blocked branch ## About push protection for {% data variables.product.prodname_secret_scanning %} -The push protection feature of {% data variables.product.prodname_secret_scanning %} helps to prevent security leaks by scanning for secrets before you push changes to your repository. {% data reusables.secret-scanning.push-protection-overview %} For information on the secrets and service providers supported for push protection, see "[{% data variables.product.prodname_secret_scanning_caps %} patterns](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)." +The push protection feature of {% data variables.product.prodname_secret_scanning %} helps to prevent security leaks by scanning for secrets before you push changes to your repository. {% data reusables.secret-scanning.push-protection-overview %} Para obtener más información sobre los secretos y proveedores de servicios compatibles para la protección contra subida de información, consulta la sección "[Patrones de los {% data variables.product.prodname_secret_scanning_caps %}](/code-security/secret-scanning/secret-scanning-patterns#supported-secrets-for-push-protection)". {% data reusables.secret-scanning.push-protection-remove-secret %} {% tip %} -**Tip** If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. For more information about bypassing push protection for a secret, see "[Allowing a blocked secret to be pushed](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#allowing-a-blocked-secret-to-be-pushed)" and "[Bypassing push protection for a secret](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)" for the command line and the web UI, respectively. +**Tip** If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. Para obtener más información sobre cómo omitir la protección contra subida de información para un secreto, consulta las secciones "[Permitir que se suba un secreto bloqueado](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#allowing-a-blocked-secret-to-be-pushed)" y "[Omitir la protección contra subida de información para un secreto](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)" para la línea de comandos y la IU web, respectivamente. {% endtip %} +{% ifversion push-protection-custom-link-orgs %} + +Organization admins can provide a custom link that will be included in the message from {% data variables.product.product_name %} when your push is blocked. This custom link can contain resources and advice specific to your organization and its policies. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + ## Resolving a blocked push on the command line {% data reusables.secret-scanning.push-protection-command-line-choice %} diff --git a/translations/es-ES/content/code-security/secret-scanning/secret-scanning-patterns.md b/translations/es-ES/content/code-security/secret-scanning/secret-scanning-patterns.md index d6797c26cd..793062014e 100644 --- a/translations/es-ES/content/code-security/secret-scanning/secret-scanning-patterns.md +++ b/translations/es-ES/content/code-security/secret-scanning/secret-scanning-patterns.md @@ -21,10 +21,10 @@ redirect_from: {% ifversion fpt or ghec %} ## Acerca de los patrones del {% data variables.product.prodname_secret_scanning %} -{% data variables.product.product_name %} maintains these different sets of {% data variables.product.prodname_secret_scanning %} patterns: +{% data variables.product.product_name %} mantiene estos diversos conjuntos de patrones del {% data variables.product.prodname_secret_scanning %}: 1. **Patrones socios.** Se utilizan para detectar secretos potenciales en todos los repositorios públicos. Para obtener más detalles, consulta la sección "[Secretos compatibles para los patrones asociados](#supported-secrets-for-partner-patterns)". -2. **Patrones de seguridad avanzada.** Se utilizan para detectar secretos potenciales en los repositorios que tienen habilitado el {% data variables.product.prodname_secret_scanning %}. {% ifversion ghec %} For details, see "[Supported secrets for advanced security](#supported-secrets-for-advanced-security)."{% endif %}{% ifversion secret-scanning-push-protection %} +2. **Patrones de seguridad avanzada.** Se utilizan para detectar secretos potenciales en los repositorios que tienen habilitado el {% data variables.product.prodname_secret_scanning %}. {% ifversion ghec %} Para obtener más detalles, consulta la sección "[Secretos compatibles para la seguridad avanzada](#supported-secrets-for-advanced-security)".{% endif %}{% ifversion secret-scanning-push-protection %} 3. **Push protection patterns.** Used to detect potential secrets in repositories with {% data variables.product.prodname_secret_scanning %} as a push protection enabled. For details, see "[Supported secrets for push protection](#supported-secrets-for-push-protection)."{% endif %} {% ifversion fpt %} diff --git a/translations/es-ES/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md b/translations/es-ES/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md index 679346062d..b8e4e66171 100644 --- a/translations/es-ES/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md +++ b/translations/es-ES/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md @@ -12,25 +12,25 @@ shortTitle: Registro de imagen privado ## Acerca de los registros de imagen y {% data variables.product.prodname_github_codespaces %} privados -Un registro es un espacio seguro para almacenar, administrar y recuperar imágenes de contenedor privadas. Puedes utilizar uno para almacenar una o más imágenes. Hay muchos ejemplos de registros, tales como el Registro de Contenedores de {% data variables.product.prodname_dotcom %}, Registro de Contenedores de Azure o DockerHub. +Un registro es un espacio seguro para almacenar, administrar y recuperar imágenes de contenedor privadas. Puedes utilizar uno para almacenar una o más imágenes. There are many examples of registries, such as {% data variables.product.prodname_container_registry %}, {% data variables.product.prodname_npm_registry %}, Azure Container Registry, or DockerHub. -El Registro de Contenedores de {% data variables.product.prodname_dotcom %} puede configurarse para extraer imágenes de contenedor sin problemas, sin tener que proporcionar credenciales de autenticación a {% data variables.product.prodname_github_codespaces %}. Para otros registros de imágenes, debes crear secretos en {% data variables.product.prodname_dotcom %} para almacenar los detalles de acceso, los cuales permitirán que los {% data variables.product.prodname_codespaces %} accedan a las imágenes almacenadas en dicho registro. +{% data variables.product.prodname_ghcr_and_npm_registry %} can be configured to allow container images to be pulled seamlessly into {% data variables.product.prodname_github_codespaces %} during codespace creation, without having to provide any authentication credentials. Para otros registros de imágenes, debes crear secretos en {% data variables.product.prodname_dotcom %} para almacenar los detalles de acceso, los cuales permitirán que los {% data variables.product.prodname_codespaces %} accedan a las imágenes almacenadas en dicho registro. -## Acceder a las imágenes almacenadas en el Registro de Contenedores de {% data variables.product.prodname_dotcom %} +## Accessing images stored in {% data variables.product.prodname_ghcr_and_npm_registry %} -El Registro de Contenedores de {% data variables.product.prodname_dotcom %} es la manera más fácil de que {% data variables.product.prodname_codespaces %} consuma imágenes de contenedor de devcontainer. +{% data variables.product.prodname_ghcr_and_npm_registry %} provide the easiest way for {% data variables.product.prodname_codespaces %} to consume dev container images. -Para obtener más información, consulta la sección "[Trabajar con el registro de contenedores](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)". +For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)" and "[Working with the npm registry](/packages/working-with-a-github-packages-registry/working-with-the-npm-registry)". ### Acceder a una imagen publicada en el mismo repositorio que el codespace -Si publicas una imagen de contenedor en el Registro de Contenedores de {% data variables.product.prodname_dotcom %} en el mismo repositorio que el codespace en el cuál se lanzará, automáticamente podrás recuperar esta imagen cuando crees el codespace. No tendrás que proporcionar credenciales adicionales, a menos de que la opción **heredar acceso del repositorio** se haya deseleccionado cuando se publique la imagen de contenedor. +If you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %} in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. No tendrás que proporcionar credenciales adicionales, a menos de que la opción **heredar acceso del repositorio** se haya deseleccionado cuando se publique la imagen de contenedor. #### Heredar el acceso del repositorio desde el cual se publicó la imagen -Predeterminadamente, cuando publicas una imagen de contenedor en el Registro de Contenedores de {% data variables.product.prodname_dotcom %}, esta hereda la configuración de acceso del repositorio desde el cual se publicó. Por ejemplo, si el repositorio es público, la imagen también es pública. Si el repositorio es privado, la imagen también es privada, pero es accesible desde el repositorio. +By default, when you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %}, the image inherits the access setting of the repository from which the image was published. Por ejemplo, si el repositorio es público, la imagen también es pública. Si el repositorio es privado, la imagen también es privada, pero es accesible desde el repositorio. -Este comportamiento se controla mediante la opción **heredar acceso desde el repositorio**. La opción **heredar acceso desde el repositorio** se encuentra seleccionada predeterminadamente cuando publicas a través de {% data variables.product.prodname_actions %}, pero no cuando se publica directamente al Registro de Contenedores de {% data variables.product.prodname_dotcom %} utilizando un token de acceso personal (PAT). +Este comportamiento se controla mediante la opción **heredar acceso desde el repositorio**. **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.product.prodname_ghcr_or_npm_registry %} using a Personal Access Token (PAT). Si la opción de **heredar acceso desde el repositorio** no se seleccionó cuando se publicó la imagen, puedes agregar el repositorio manualmente a los controles de acceso de la imagen del contenedor publicado. Para obtener más información, consulta la sección "[Configurar el control de accesos y la visibilidad de un paquete](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#inheriting-access-for-a-container-image-from-a-repository)". @@ -46,13 +46,13 @@ Si quieres permitir que un subconjunto de repositorios de una organización acce ### Publicar una imagen de contenedor desde un codespace -El acceso fácil desde un codespace hasta el Registrod de Contenedores de {% data variables.product.prodname_dotcom %} se limita a las imágenes de contenedor que se extraen. Si quieres publicar una imagen de contenedor desde dentro de un codespace, debes utilizar un token de acceso personal (PAT) con el alcance `write:packages`. +Seamless access from a codespace to {% data variables.product.prodname_ghcr_or_npm_registry %} is limited to pulling container images. Si quieres publicar una imagen de contenedor desde dentro de un codespace, debes utilizar un token de acceso personal (PAT) con el alcance `write:packages`. -Te recomendamos publicar imágenes a través de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Publicar imágenes de Docker](/actions/publishing-packages/publishing-docker-images)". +Te recomendamos publicar imágenes a través de {% data variables.product.prodname_actions %}. For more information, see "[Publishing Docker images](/actions/publishing-packages/publishing-docker-images)" and "[Publishing Node.js packages](/actions/publishing-packages/publishing-nodejs-packages)." ## Acceder a las imágenes almacenadas en otros registros de contenedor -Si estás accediendo a una imagen de contenedor desde un registro diferente al Registro de Contenedores de {% data variables.product.prodname_dotcom %}, {% data variables.product.prodname_codespaces %} verifica la presencia de tres secretos, los cuales definen el nombre del servidor, nombre de usuario y token de acceso personal (PAT) de un registro de contenedores. Si se encuentran estos secretos, {% data variables.product.prodname_github_codespaces %} hará que el registro esté disponible dentro de tu codespace. +If you are accessing a container image from a registry that isn't {% data variables.product.prodname_ghcr_or_npm_registry %}, {% data variables.product.prodname_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. Si se encuentran estos secretos, {% data variables.product.prodname_github_codespaces %} hará que el registro esté disponible dentro de tu codespace. - `<*>_CONTAINER_REGISTRY_SERVER` - `<*>_CONTAINER_REGISTRY_USER` diff --git a/translations/es-ES/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md b/translations/es-ES/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md index 5cc3e82a01..300d99c8d7 100644 --- a/translations/es-ES/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md +++ b/translations/es-ES/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md @@ -17,7 +17,7 @@ redirect_from: ## Acerca de {% data variables.product.prodname_vscode_command_palette %} -La paleta de comandos es una de las características focales de {% data variables.product.prodname_vscode %} y está disponible para que la utilices en {% data variables.product.prodname_github_codespaces %}. La {% data variables.product.prodname_vscode_command_palette %} te permite acceder a muchos comandos para {% data variables.product.prodname_codespaces %} y {% data variables.product.prodname_vscode_shortname %}. Para obtener más información sobre cómo utilizar la {% data variables.product.prodname_vscode_command_palette_shortname %}, consulta la sección "[Interfaz de usuario](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" en la documentación de {% data variables.product.prodname_vscode_shortname %}. +La paleta de comandos es una de las características focales de {% data variables.product.prodname_vscode %} y está disponible para que la utilices en {% data variables.product.prodname_github_codespaces %}. La paleta de comandos te permite acceder a muchos comandos para los {% data variables.product.prodname_codespaces %} y para {% data variables.product.prodname_vscode_shortname %}. Para obtener más información sobre cómo utilizar la {% data variables.product.prodname_vscode_command_palette_shortname %}, consulta la sección "[Interfaz de usuario](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" en la documentación de {% data variables.product.prodname_vscode_shortname %}. ## Acceder a la {% data variables.product.prodname_vscode_command_palette_shortname %} diff --git a/translations/es-ES/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md b/translations/es-ES/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md index 16f341be45..ffe2c1964a 100644 --- a/translations/es-ES/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md +++ b/translations/es-ES/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md @@ -88,8 +88,6 @@ Puedes agregar más scripts, preferencias o archivos de configuración a tu repo Si tu codespace no puede recoger los ajustes de configuración de los dotfiles, consulta la sección "[Solucionar problemas de dotfiles para {% data variables.product.prodname_codespaces %}](/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces)". -## Otros ajustes disponibles - También puedes personalizar los {% data variables.product.prodname_codespaces %} utilizando [ajustes de {% data variables.product.prodname_codespaces %}](https://github.com/settings/codespaces) adicionales: - Para habilitar la verificación de GPG, consulta la sección "[Administrar la verificación de GPG para los {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)". diff --git a/translations/es-ES/content/codespaces/developing-in-codespaces/creating-a-codespace.md b/translations/es-ES/content/codespaces/developing-in-codespaces/creating-a-codespace.md index 5e5378d571..f626933523 100644 --- a/translations/es-ES/content/codespaces/developing-in-codespaces/creating-a-codespace.md +++ b/translations/es-ES/content/codespaces/developing-in-codespaces/creating-a-codespace.md @@ -46,23 +46,20 @@ If you want to use Git hooks for your codespace, then you should set up hooks us When you have access to {% data variables.product.prodname_github_codespaces %}, you'll see a "Codespaces" tab within the **{% octicon "code" aria-label="The code icon" %} Code** drop-down menu when you view a repository. -You'll have access to codespaces under the following conditions: +You'll have access to {% data variables.product.prodname_github_codespaces %} under the following conditions: -* You are a member of an organization that has enabled {% data variables.product.prodname_codespaces %} and set a spending limit. -* An organization owner has granted you access to {% data variables.product.prodname_codespaces %}. -* The repository is owned by the organization that has enabled {% data variables.product.prodname_codespaces %}. +Either all of these are true: +* You are a member, or outside collaborator, of an organization that has enabled {% data variables.product.prodname_codespaces %} and set a spending limit. +* The organization owner has allowed you to create codespaces at the organization's expense. +* The repository for which you want to create a codespace is owned by this organization. -{% note %} - -**Note:** Individuals who have already joined the beta with their personal {% data variables.product.prodname_dotcom %} account will not lose access to {% data variables.product.prodname_codespaces %}, however {% data variables.product.prodname_codespaces %} for individuals will continue to remain in beta. - -{% endnote %} - -Organization owners can allow all members of the organization to create codespaces, limit codespace creation to selected organization members, or disable codespace creation. For more information about managing access to codespaces within your organization, see "[Enable Codespaces for users in your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#enable-codespaces-for-users-in-your-organization)." +Or both of these are true: +* You are participating in the beta of {% data variables.product.prodname_codespaces %} for individual users. +* Either you own the repository for which you want to create a codespace, or it is owned by an organization of which you are either a member or an outside collaborator. Before {% data variables.product.prodname_codespaces %} can be used in an organization, an owner or billing manager must have set a spending limit. For more information, see "[About spending limits for Codespaces](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces#about-spending-limits-for-codespaces)." -If you would like to create a codespace for a repository owned by your personal account or another user, and you have permission to create repositories in an organization that has enabled {% data variables.product.prodname_github_codespaces %}, you can fork user-owned repositories to that organization and then create a codespace for the fork. +Organization owners can specify who can create and use codespaces at the organization's expense. Organization owners can also prevent any codespace usage being charged to the organization. For more information, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." ## Creating a codespace diff --git a/translations/es-ES/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md b/translations/es-ES/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md new file mode 100644 index 0000000000..6c44720371 --- /dev/null +++ b/translations/es-ES/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md @@ -0,0 +1,120 @@ +--- +title: Getting started with GitHub Codespaces for machine learning +shortTitle: Machine learning +intro: 'Learn about working on machine learning projects with {% data variables.product.prodname_github_codespaces %} and its out-of-the-box tools.' +product: '{% data reusables.gated-features.codespaces %}' +versions: + fpt: '*' + ghec: '*' +type: tutorial +topics: + - Codespaces + - Developer +--- + +## Introducción + +This guide introduces you to machine learning with {% data variables.product.prodname_github_codespaces %}. You’ll build a simple image classifier, learn about some of the tools that come preinstalled in {% data variables.product.prodname_github_codespaces %}, configure your development environment for NVIDIA CUDA, and use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab. + +## Prerequisite + +You have access to {% data variables.product.prodname_github_codespaces %}. Para obtener más información, consulta la sección "[Crear un codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)". + +## Build a simple image classifier + +We'll use a Jupyter notebook to build a simple image classifier. + +Jupyter notebooks are sets of cells that you can execute one after another. The notebook we'll use includes a number of cells that build an image classifier using [PyTorch](https://pytorch.org/). Each cell is a different phase of that process: download a dataset, set up a neural network, train a model, and then test that model. + +We'll run all of the cells, in sequence, to perform all phases of building the image classifier. When we do this Jupyter saves the output back into the notebook so that you can examine the results. + +### Creating a repository and a codespace + +1. Go to the [github/codespaces-getting-started-ml](https://github.com/github/codespaces-getting-started-ml) template repository and click **Use this template**. +{% data reusables.codespaces.open-codespace-from-template-repo %} + + By default, a codespace for this repository opens in a web-based version of {% data variables.product.prodname_vscode %}. + +### Open the image classifier notebook + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes a set of machine learning libraries that are preinstalled in your codespace. For example, Numpy, pandas, SciPy, Matplotlib, seaborn, scikit-learn, TensorFlow, Keras, PyTorch, Requests, and Plotly. For more information about the default image, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)" and [the `devcontainers/images` repository](https://github.com/devcontainers/images/tree/main/src/codespaces#github-codespaces-default-linux-universal). + +1. In the {% data variables.product.prodname_vscode_shortname %} editor, close any "Get Started" tabs that are displayed. +1. Open the `image-classifier.ipynb` notebook file. +1. Click the Python kernel link at the top right of the editor. + + ![Screenshot of the Python kernal link](/assets/images/help/codespaces/jupyter-python-kernel-link.png) + +1. In the drop-down menu, choose the kernel in the directory `/opt/python/latest/bin/python`. + + ![Screenshot of the Python kernal drop-down menu](/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png) + +### Build the image classifier + +The image classifier notebook contains all the code you need to download a dataset, train a neural network, and evaluate its performance. + +1. Click **Run All** to execute all of the notebook’s cells. + + ![Screenshot of the Run All button](/assets/images/help/codespaces/jupyter-run-all.png) + +1. Scroll down to view the output of each cell. + + ![Screenshot of Step 3 in the editor](/assets/images/help/codespaces/jupyter-notebook-step3.png) + +## Configure NVIDIA CUDA for your codespace + +Some software, such as TensorFlow, requires you to install NVIDIA CUDA to use your codespace’s GPU. Where this is the case, you can create your own custom configuration, by using a `devcontainer.json` file, and specify that CUDA should be installed. For more information on creating a custom configuration, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#creating-a-custom-dev-container-configuration)." + +{% note %} + +**Note**: For full details of the script that's run when you add the `nvidia-cuda` feature, see [the devcontainers/features repository](https://github.com/devcontainers/features/tree/main/src/nvidia-cuda). + +{% endnote %} + +1. Within a codespace, open the `.devcontainer/devcontainer.json` file in the editor. +1. Add a top-level `features` object with the following contents: + + ```json{:copy} + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + ``` + + For more information about the `features` object, see the [development containers specification](https://containers.dev/implementors/features/#devcontainer-json-properties). + + If you are using the `devcontainer.json` file from the image classifier repository you created for this tutorial, your `devcontainer.json` file will now look like this: + + ``` + { + "customizations": { + "vscode": { + "extensions": [ + "ms-python.python", + "ms-toolsai.jupyter" + ] + } + }, + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + } + ``` + +1. Save the change. +{% data reusables.codespaces.rebuild-command %} + The codespace container will be rebuilt. This will take several minutes. When the rebuild is complete the codespace is automatically reopened. +1. Commit the change to the repository so that CUDA will be installed in any new codespaces you create from this repository in future. + +## Open your codespace in JupyterLab + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes JupyterLab, the web-based Jupyter IDE. You can use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab without having to install anything else on your codespace. + +1. In the terminal, enter the {% data variables.product.prodname_cli %} command `gh cs jupyter`. +1. Choose the codespace you want to open. + + ![Screenshot of opening a codespace from the terminal](/assets/images/help/codespaces/open-codespace-in-jupyter.png) + diff --git a/translations/es-ES/content/codespaces/developing-in-codespaces/index.md b/translations/es-ES/content/codespaces/developing-in-codespaces/index.md index e67f1aa1b7..c2468004c7 100644 --- a/translations/es-ES/content/codespaces/developing-in-codespaces/index.md +++ b/translations/es-ES/content/codespaces/developing-in-codespaces/index.md @@ -18,6 +18,7 @@ children: - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network + - /getting-started-with-github-codespaces-for-machine-learning - /using-github-codespaces-in-visual-studio-code - /using-github-codespaces-with-github-cli --- diff --git a/translations/es-ES/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/translations/es-ES/content/codespaces/developing-in-codespaces/renaming-a-codespace.md index 519f365f11..0f3f410883 100644 --- a/translations/es-ES/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ b/translations/es-ES/content/codespaces/developing-in-codespaces/renaming-a-codespace.md @@ -27,7 +27,9 @@ To find the display name of a codespace: ![Screenshot of the Remote Explorer in VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png) +{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %} - In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. + ### Permanent codespace names In addition to the display name, when you create a codespace, a permanent name is also assigned to the codespace. The name is a combination of your {% data variables.product.company_short %} handle, the repository name, and some random characters. Por ejemplo: `octocat-myrepo-gmc7`. You can't change this name. diff --git a/translations/es-ES/content/codespaces/getting-started/deep-dive.md b/translations/es-ES/content/codespaces/getting-started/deep-dive.md index f22981969a..b4afca5e51 100644 --- a/translations/es-ES/content/codespaces/getting-started/deep-dive.md +++ b/translations/es-ES/content/codespaces/getting-started/deep-dive.md @@ -73,7 +73,7 @@ As you develop in your codespace, it will save any changes to your files every f ### Closing or stopping your codespace -To stop your codespace you can [use the {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)). If you exit your codespace without running the stop command (for example, closing the browser tab), or if you leave the codespace running without interaction, the codespace and its running processes will continue until a window of inactivity occurs, after which the codespace will stop. By default, the window of inactivity is 30 minutes. +To stop your codespace you can [use the {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)). If you exit your codespace without running the stop command (for example, closing the browser tab), or if you leave the codespace running without interaction, the codespace and its running processes will continue until a window of inactivity occurs, after which the codespace will stop. By default, the window of inactivity is 30 minutes. When you close or stop your codespace, all uncommitted changes are preserved until you connect to the codespace again. diff --git a/translations/es-ES/content/codespaces/getting-started/quickstart.md b/translations/es-ES/content/codespaces/getting-started/quickstart.md index 098e969ac0..22e3c46b23 100644 --- a/translations/es-ES/content/codespaces/getting-started/quickstart.md +++ b/translations/es-ES/content/codespaces/getting-started/quickstart.md @@ -25,12 +25,7 @@ Para obtener más información sobre cómo funcionan los {% data variables.produ ## Crea tu codespace 1. Navega al [repositorio de plantilla](https://github.com/github/haikus-for-codespaces) y selecciona **Utilizar esta plantilla**. - -1. Elige un propietario para el repositorio nuevo, ingresa un nombre de repositorio, selecciona tu ajuste de privacidad preferido y haz clic en **Crear repositorio desde plantilla**. - -1. Navega a la página principal del repositorio recientemente creado. Debajo del nombre de repositorio, utiliza el menú desplegable **{% octicon "code" aria-label="The code icon" %} Código** y la pestaña de **Codespaces** y haz clic en **Crear codespace en rama principal**. - - ![Botón de codespace nuevo](/assets/images/help/codespaces/new-codespace-button.png) +{% data reusables.codespaces.open-codespace-from-template-repo %} ## Ejecutar la aplicación diff --git a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md index cf0f73c0a3..477aff088e 100644 --- a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md +++ b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md @@ -1,9 +1,9 @@ --- title: Enabling GitHub Codespaces for your organization -shortTitle: Habilitar Codespaces -intro: 'Puedes controlar qué usuarios de tu organización pueden utilizar {% data variables.product.prodname_github_codespaces %}.' +shortTitle: 'Habilitar el {% data variables.product.prodname_codespaces %}' +intro: 'You can control which users in your organization can use {% data variables.product.prodname_github_codespaces %} at the organization''s expense.' product: '{% data reusables.gated-features.codespaces %}' -permissions: 'To manage user permissions for {% data variables.product.prodname_github_codespaces %} for an organization, you must be an organization owner.' +permissions: 'To alter an organization''s billing settings, you must be an organization owner.' redirect_from: - /codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization - /codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization @@ -13,25 +13,23 @@ versions: type: how_to topics: - Codespaces - - Permissions + - Billing - Administrator --- - ## Acerca de cómo habilitar los {% data variables.product.prodname_github_codespaces %} para tu organización -Los propietarios de organización pueden controlar qué usuarios de tu organización pueden crear y utilizar codespaces. +Organization owners can control which users in your organization can create and use codespaces at the organization's expense. -Para utilizar codespaces en tu organización, debes hacer lo siguiente: +Only people who can clone a repository can create a codespace for that repository. To allow people to create codespaces for repositories owned by your organization, you must: + +- Ensure that users have at least write access to the repositories where they want to use a codespace. Para obtener más información, consulta la sección "[Administrar los equipos y personas con acceso a tu repositorio](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)". +- Asegúrate de que tu organización no tenga habilitada una lista de direcciones IP permitidas. Para obtener más información, consulta la sección "[Administrar las direcciones IP permitidas para tu organización](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization){% ifversion fpt %}" en la documentación de {% data variables.product.prodname_ghe_cloud %}.{% else %}".{% endif %} + +To allow people to create codespaces for which your organization will be billed, you must: -- Asegurarte de que los usuarios tengan [por lo menos acceso de escritura](/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization) en los repositorios en donde quieren utilizar un codespace. -- [Habilitar los {% data variables.product.prodname_github_codespaces %} para los usuarios en tu organización](#enable-codespaces-for-users-in-your-organization). Puedes elegir permitir los {% data variables.product.prodname_codespaces %} para los usuarios seleccionados o solo para algunos específicos. - [Configurar un límite de gastos](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces) -- Asegúrate de que tu organización no tenga habilitada una lista de direcciones IP permitidas. Para obtener más información, consulta la sección "[Administrar las direcciones IP permitidas para tu organización](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list){% ifversion fpt %}" en la documentación de {% data variables.product.prodname_ghe_cloud %}.{% else %}".{% endif %} - -Predeterminadamente, un codespace solo puede acceder al repositorio desde el cual se creó. Si quieres que los codespaces de tu organización puedan acceder a otros repositorios de organización a los que puede acceder el creador de dichos codespaces, consulta la sección "[Administrar el acceso y la seguridad de los {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)". - -## Habilitar los {% data variables.product.prodname_codespaces %} para los usuarios en tu organización +- [Choose who can create codespaces that are billed to your organization](#choose-who-can-create-codespaces-that-are-billed-to-your-organization) {% ifversion fpt %} {% note %} @@ -40,31 +38,44 @@ Predeterminadamente, un codespace solo puede acceder al repositorio desde el cua {% endnote %} {% endif %} + +Predeterminadamente, un codespace solo puede acceder al repositorio desde el cual se creó. Si quieres que los codesapces en tu organización puedan acceder a otros repositorios en ella a los cuales tenga acceso el creador del codespace, consulta la sección "[Administrar el acceso de los repositorios a los codespaces de tu organización](/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces)". + +## Choose who can create codespaces that are billed to your organization + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. Debajo de "Permisos de usuario", selecciona una de las siguientes opciones: +1. Under "Billing," select one of the following options: - * **Usuarios selectos** para seleccionar miembros específicos de la organización que puedan utilizar {% data variables.product.prodname_codespaces %}. - * **Permitir para todos los miembros** para permitir que todos los miembros de tu organización utilicen {% data variables.product.prodname_codespaces %}. - * **Permitir para todos los miembros y colaboradores externos** para permitir que todos los miembros de tu organización, así como los colaboradores externos, utilicen {% data variables.product.prodname_codespaces %}. + * **Disabled** - Your organization will not be charged for codespace usage. {% data variables.product.prodname_codespaces %} created for your organization's repositories will be billed to the individual users who create them. + * **Selected members** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by selected members will be billed to the organization. + * **All members** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by members of your organization will be billed to the organization. + * **All members and outside collaborators** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by organization members and outside collaborators will be billed to the organization. - ![Botones radiales de "Permisos de usuario"](/assets/images/help/codespaces/org-user-permission-settings-outside-collaborators.png) + ![Radio buttons for "Billing"](/assets/images/help/codespaces/codespaces-org-billing-settings.png) {% note %} - **Nota:** Cuando seleccionas **Permitir para todos los miembros y colaboradores externos**, todos los colaboradores externos que hayan agregado información a repositorios específicos podrán crear y utilizar {% data variables.product.prodname_codespaces %}. Se le facturará a tu organización por todo el uso en el que incurrieron los colaboradores externos. Para obtener más información sobre cómo administrar colaboradores externos, consulta la sección "[Acerca de los colaboradores externos](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)". + **Nota:** Cuando seleccionas **Todos los miembros y colaboradores externos**, todos los colaboradores externos que se hayan agregado a los repositorios específicos pueden crear y utilizar {% data variables.product.prodname_codespaces %} para dichos repositorios y se facturará a tu organización por dicho uso. Para obtener más información sobre cómo administrar colaboradores externos, consulta la sección "[Acerca de los colaboradores externos](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)". {% endnote %} 1. Haz clic en **Save ** (guardar). +1. If you chose **Selected members**, an input box is displayed for you to enter the names of users you want to select. + + ![Input box for selecting users](/assets/images/help/codespaces/codespaces-org-billing-add-users.png) ## Inhabilitar los {% data variables.product.prodname_codespaces %} para tu organización +You can prevent the creation and use of codespaces billable to your organization. + +{% data reusables.codespaces.codespaces-disabling-org-billing %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. Debajo de "Permisos de usuario", selecciona **Inhabilitado**. +1. Under "Billing," select **Disabled**. ## Configurar un límite de gastos diff --git a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md index 25a9ee47ce..e1870c7457 100644 --- a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md +++ b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md @@ -35,11 +35,15 @@ Puedes configurar el límite de uso de los codespaces en tu organización o repo ## Inhabilitar o limitar los {% data variables.product.prodname_codespaces %} -Puedes inhabilitar el uso de los {% data variables.product.prodname_codespaces %} en tu organización o repositorio. Para obtener más información, consulta la sección "[Administrar el acceso de un repositorio a los codespces de tu organización](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)". +You can disable all use of {% data variables.product.prodname_github_codespaces %} that would be billed to your organization. Alternatively, you can specify which organization members or collaborators can use {% data variables.product.prodname_codespaces %} at your organization's expense. Para obtener más información, consulta la sección "[Habilitar los {% data variables.product.prodname_github_codespaces %} para tu organización](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)". -También puedes limitar a los usuarios individuales que pueden utilizar {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta la sección "[Administrar los permisos de los usuarios para tu organización](/codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization)". +{% data reusables.codespaces.codespaces-disabling-org-billing %} -Puedes limitar la elección de tipos de máquina que se encuentra disponible para los repositorios que pertenecen a tu organización. Esto te permite prevenir que las personas utilicen máquinas con recursos excedidos para sus codespaces. Para obtener más información, consulta la sección "[Restringir el acceso a los tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)". +You can configure which repositories can be accessed from codespaces created for a particular repository. Si necesitas más información, consulta la sección "[Administrar el acceso a otros repositorios dentro de tu codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)". + +You can limit the choice of types of machine that are available for codespaces created from repositories owned by your organization. This allows you to prevent people using overly resourced machines for their codespaces, and incurring unnecessary charges. Para obtener más información, consulta la sección "[Restringir el acceso a los tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)". + +You can also restrict how long a codespace can remain unused before it is automatically deleted. This can help to reduce storage costs for {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta la sección "[Restringir el periodo de retención para codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)". ## Borrar los codespaces sin utilizar @@ -47,6 +51,6 @@ Tus usuarios pueden borrar sus codespaces en https://github.com/codespaces y des {% note %} -**Nota:** Solo la persona que creó un codespace podrá borrarlo. Actualmente no hay forma de que los propietarios de las organizaciones borren los codespaces que se crearon dentro de su organización. +**Note:** Codespaces are automatically deleted after they have been stopped and have remained inactive for a defined number of days. Para obtener más información, consulta la sección "[Restringir el periodo de retención para codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)". A codespace can only be manually deleted by the person who created the codespace. {% endnote %} diff --git a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md index 25cc68e82c..e64a1eeb9b 100644 --- a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md +++ b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md @@ -20,7 +20,7 @@ redirect_from: {% warning %} -**Aviso de obsolesencia**: El acceso y ajuste de seguridad que se describen anteriormente ahora son obsoletos y solo se documentan aquí como referencia. Para habilitar un acceso expandido a otros repositorios, agrega los permisos solicitados a tu definición de contenedor dev. Si necesitas más información, consulta la sección "[Administrar el acceso a otros repositorios dentro de tu codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)". +**Aviso de obsolesencia**: El acceso y ajuste de seguridad que se describen anteriormente ahora son obsoletos y solo se documentan aquí como referencia. Para habilitar el acceso expandido a otros repositorios, agrega los permisos solicitados a tu archivo de configuración de `devcontainer.json`. Si necesitas más información, consulta la sección "[Administrar el acceso a otros repositorios dentro de tu codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)". {% endwarning %} diff --git a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 44dfc3af19..2995884dcf 100644 --- a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -43,6 +43,8 @@ Por ejemplo, podrías crear una política en toda la organización, la cual rest Si agregas una política a nivel organizacional, deberías configurarla en la elección de tipos de máquina más grande que deberá estar disponible para cualquier repositorio de tu organización. Entonces podrás agregar las políticas específicas para los repositorios y así restringir aún más la elección. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Agregar una política para limitar los tipos de máquina disponibles {% data reusables.profile.access_org %} diff --git a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index 0423976756..bef735a58a 100644 --- a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -36,10 +36,12 @@ If someone sets the default idle timeout to 90 minutes in their personal setting ### Configurar políticas específicas para los repositorios y a lo largo de la organización -When you create a policy, you choose whether it applies to all repositories in your organization, or only to specified repositories. If you create an organization-wide policy with a timeout constraint, then the timeout constraints in any policies that are targeted at specific repositories must fall within the restriction configured for the entire organization. The shortest timeout period - in an organization-wide policy, a policy targeted at specified repositories, or in someone's personal settings - is applied. +Cuando creas una política, eliges si esta aplica a todos los repositorios de tu organización o solo a algunos específicos. If you create an organization-wide policy with a timeout constraint, then the timeout constraints in any policies that are targeted at specific repositories must fall within the restriction configured for the entire organization. The shortest timeout period - in an organization-wide policy, a policy targeted at specified repositories, or in someone's personal settings - is applied. If you add an organization-wide policy with a timeout constraint, you should set the timeout to the longest acceptable period. You can then add separate policies that set the maximum timeout to a shorter period for specific repositories in your organization. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adding a policy to set a maximum idle timeout period {% data reusables.profile.access_org %} @@ -51,7 +53,7 @@ If you add an organization-wide policy with a timeout constraint, you should set 1. Haz clic en {% octicon "pencil" aria-label="The edit icon" %} para editar la restricción. - ![Edit the timeout constraint](/assets/images/help/codespaces/edit-timeout-constraint.png) + ![Editar la restricción de tiempo de espera](/assets/images/help/codespaces/edit-timeout-constraint.png) 1. Enter the maximum number of minutes codespaces can remain inactive before they time out, then click **Save**. @@ -65,9 +67,9 @@ The policy will be applied to all new codespaces that are created, and to existi ## Editar una política -You can edit an existing policy. Por ejemplo, puede que quieras agregar o eliminar restricciones hacia o desde una política. +Puedes editar una política existente. Por ejemplo, puede que quieras agregar o eliminar restricciones hacia o desde una política. -1. Muestra la página de "Políticas del Codespace". For more information, see "[Adding a policy to set a maximum idle timeout period](#adding-a-policy-to-set-a-maximum-idle-timeout-period)." +1. Muestra la página de "Políticas del Codespace". Para obtener más información, consulta la sección "[Agregar una política para configurar un periodo de tiempo de inactividad máximo](#adding-a-policy-to-set-a-maximum-idle-timeout-period)". 1. Haz clic en el nombre de la política que quieres editar. 1. Haz los cambios requeridos y luego haz clic en **Guardar**. diff --git a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index 9cea136f11..9ba1e7cc4a 100644 --- a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -16,9 +16,9 @@ topics: {% data variables.product.prodname_codespaces %} are automatically deleted after they have been stopped and have remained inactive for a defined number of days. The retention period for each codespace is set when the codespace is created and does not change. -Everyone who has access to {% data variables.product.prodname_github_codespaces %} can configure a retention period for the codespaces they create. The initial setting for this default retention period is 30 days. Individual users can set this period within the range 0-30 days. For more information, see "[Configuring automatic deletion of your codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)." +Everyone who has access to {% data variables.product.prodname_github_codespaces %} can configure a retention period for the codespaces they create. The initial setting for this default retention period is 30 days. Individual users can set this period within the range 0-30 days. Para obtener más información, consulta la sección "[Configurar el borrado automático de tus codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)". -As an organization owner, you may want to configure constraints on the maximum retention period for codespaces created for the repositories owned by your organization. This can help you to limit the storage costs associated with codespaces that are stopped and then left unused until they are automatically deleted. For more information about storage charges, see "[About billing for {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#codespaces-pricing)." You can set a maximum retention period for all, or for specific, repositories owned by your organization. +As an organization owner, you may want to configure constraints on the maximum retention period for codespaces created for the repositories owned by your organization. This can help you to limit the storage costs associated with codespaces that are stopped and then left unused until they are automatically deleted. Para obtener más información sobre los cargos de almacenamiento, consulta la sección "[Acerca de la facturación para {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#codespaces-pricing)". You can set a maximum retention period for all, or for specific, repositories owned by your organization. ### Configurar políticas específicas para los repositorios y a lo largo de la organización @@ -26,6 +26,8 @@ Cuando creas una política, eliges si esta aplica a todos los repositorios de tu If you add an organization-wide policy with a retention constraint, you should set the retention period to the longest acceptable period. You can then add separate policies that set the maximum retention to a shorter period for specific repositories in your organization. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adding a policy to set a maximum codespace retention period {% data reusables.profile.access_org %} @@ -54,7 +56,7 @@ If you add an organization-wide policy with a retention constraint, you should s {% data reusables.codespaces.codespaces-policy-targets %} 1. Si quieres agregar otra restricción a la política, haz clic en **Agregar restricción** y elige otra de ellas. Para obtener información sobre otras restricciones, consulta las secciones "[Restringir el acceso a los tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)", "[Restringir la visibilidad de los puertos reenviados](/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports)" y "[Restringir el periodo de inactividad](/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period)". -1. After you've finished adding constraints to your policy, click **Save**. +1. Después de que termines de agregar restricciones a tu política, haz clic en **Guardar**. The policy will be applied to all new codespaces that are created. @@ -64,7 +66,7 @@ Puedes editar una política existente. Por ejemplo, puede que quieras agregar o The retention period constraint is only applied to codespaces when they are created. Editing a policy has no effect on existing codespaces. -1. Muestra la página de "Políticas del Codespace". For more information, see "[Adding a policy to set a maximum codespace retention period](#adding-a-policy-to-set-a-maximum-codespace-retention-period)." +1. Muestra la página de "Políticas del Codespace". Para obtener más información, consulta la sección "[Agregar una política para configurar un periodo de retención máximo de codespaces](#adding-a-policy-to-set-a-maximum-codespace-retention-period)". 1. Haz clic en el nombre de la política que quieres editar. 1. Haz los cambios requeridos y luego haz clic en **Guardar**. diff --git a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index c3d4d390f1..c44c93e3df 100644 --- a/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/translations/es-ES/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -36,6 +36,8 @@ Por ejemplo, podrías crear una política en toda la organización que restrinja Si agregas una política de toda la organización, deberías configurarla para que tenga la opción de visibilidad más indulgente disponible para cualquier repositorio en tu organización. Entonces podrás agregar las políticas específicas para los repositorios y así restringir aún más la elección. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Agregar una política para limitar las opciones de visibilidad de puerto {% data reusables.profile.access_org %} diff --git a/translations/es-ES/content/codespaces/prebuilding-your-codespaces/configuring-prebuilds.md b/translations/es-ES/content/codespaces/prebuilding-your-codespaces/configuring-prebuilds.md index 16112fefc9..13c69ceb0c 100644 --- a/translations/es-ES/content/codespaces/prebuilding-your-codespaces/configuring-prebuilds.md +++ b/translations/es-ES/content/codespaces/prebuilding-your-codespaces/configuring-prebuilds.md @@ -40,43 +40,43 @@ Antes de que configures las precompilaciones para tu proyecto, se debe cumplir c {% note %} - **Note**: Any branches created from a prebuild-enabled base branch will typically also get prebuilds for the same dev container configuration. For example, if you enable prebuilds for a dev container configuration file on the default branch of the repository, branches based on the default branch will, in most cases, also get prebuilds for the same dev container configuration. + **Nota**: Cualquier rama que se cree de una rama base habilitada para precompilaciones habitualmente también obtendrá precompilaciones para la misma configuración de contenedor dev. Por ejemplo, si habilitas precompilaciones para un archivo de configuración de contenedor dev en la rama predeterminada del repositorio, las ramas basadas en la predeterminada también obtendrán precompilaciones para la misma configuración del contenedor dev en la mayoría de los casos. {% endnote %} -1. Optionally, in the **Configuration file** drop-down menu that's displayed, choose the `devcontainer.json` configuration file that you want to use for this prebuild. Para obtener más información, consulta la sección "[Introducción a los contenedores dev](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#devcontainerjson)." +1. Opcionalmente, en el menú desplegable de **Archivo de configuración** que se muestra, elige el archivo de configuración `devcontainer.json` que quieras utilizar para esta precompilación. Para obtener más información, consulta la sección "[Introducción a los contenedores dev](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#devcontainerjson)." - ![The configuration file drop-down menu](/assets/images/help/codespaces/prebuilds-choose-configfile.png) + ![El menú desplegable de archivo de configuración](/assets/images/help/codespaces/prebuilds-choose-configfile.png) -1. Choose how you want to automatically trigger updates of the prebuild. +1. Elige cómo quieres activar actualizaciones automáticamente para la precompilación. - * **Cada subida** (el ajuste predeterminado) - Con este ajuste, las configuraciones de precompilación se actualizarán en cada subida que se haga a la rama predeterminada. This will ensure that codespaces generated from a prebuild always contain the latest codespace configuration, including any recently added or updated dependencies. - * **En el cambio de configuración** - Con este ajuste, as configuraciones de precompilación se actualizarán cada que lo hagan los archivos de configuración asociados para cada repositorio y rama en cuestión. This ensures that changes to the dev container configuration files for the repository are used when a codespace is generated from a prebuild. The Actions workflow that updates the prebuild will run less often, so this option will use fewer Actions minutes. Sin embargo, esta opción no garantiza que los cdespaces siempre incluyan dependencias recientemente actualizadas o agregadas, así que estas podrían tener que agregarse o actualizarse manualmente después de que un codespace se haya creado. + * **Cada subida** (el ajuste predeterminado) - Con este ajuste, las configuraciones de precompilación se actualizarán en cada subida que se haga a la rama predeterminada. Esto garantizará que los codespaces que se generen de una precompilación siempre contengan la configuración de codespace más reciente, incluyendo cualquier dependencia que se haya actualizado o agregado recientemente. + * **En el cambio de configuración** - Con este ajuste, as configuraciones de precompilación se actualizarán cada que lo hagan los archivos de configuración asociados para cada repositorio y rama en cuestión. Esto garantiza que los cambios a los archivos de configuración del contenedor dev para el repositorio se utilicen cuando se genera un codespace desde una precompilación. El flujo de trabajo de acciones que actualiza la precompilación se ejecutará con menor frecuencia, así que esta opción utilizará menos minutos de las acciones. Sin embargo, esta opción no garantiza que los cdespaces siempre incluyan dependencias recientemente actualizadas o agregadas, así que estas podrían tener que agregarse o actualizarse manualmente después de que un codespace se haya creado. * **Programado** - Con este ajuste, puedes hacer que tus configuraciones de precompilación se actualicen en un itinerario personalizado que tú defines. Esto puede reducir el consumo de minutos de acciones, sin embargo, con esta opción, pueden crearse codespaces que no utilicen los últimos cambios de configuración de contenedores dev. ![Las opciones de activación de precompilación](/assets/images/help/codespaces/prebuilds-triggers.png) -1. Optionally, select **Reduce prebuild available to only specific regions** to limit access to your prebuild, then select which regions you want it to be available in. Los desarrolladores solo pueden crear condespaces desde una precompilación si estos se ubican en una región que selecciones. By default, your prebuild is available to all regions where codespaces is available and storage costs apply for each region. +1. Opcionalmente, selecciona **reducir la precompilación disponible para solo las regiones específicas** para limitar el acceso a tu precompilación y luego selecciona en qué regiones quieres que esté disponible. Los desarrolladores solo pueden crear condespaces desde una precompilación si estos se ubican en una región que selecciones. Predeterminadamente, tu precompilación está disponible para todas las regiones en donde los codespaces estén disponibles y los costos de almacenamiento aplican para cada región. ![Las opciones de selección de región](/assets/images/help/codespaces/prebuilds-regions.png) {% note %} **Notas**: - * The prebuild for each region will incur individual charges. Por lo tanto, solo deberías habilitar las precompilaciones para las regiones en las que sabes que se utilizarán. Para obtener más información, consulta la sección "[Acerca de las precompilaciones de {% data variables.product.prodname_github_codespaces %}](/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds#about-billing-for-codespaces-prebuilds)". + * La precompilación para cada región incurrirá en cargos individuales. Por lo tanto, solo deberías habilitar las precompilaciones para las regiones en las que sabes que se utilizarán. Para obtener más información, consulta la sección "[Acerca de las precompilaciones de {% data variables.product.prodname_github_codespaces %}](/codespaces/prebuilding-your-codespaces/about-github-codespaces-prebuilds#about-billing-for-codespaces-prebuilds)". * Los desarrolladores pueden configurar su región predeterminada para {% data variables.product.prodname_codespaces %}, lo que te puede permitir habilitar las precompilaciones para menos regiones. Para obtener más información, consulta la sección "[Configurar tu región predeterminada para {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-region-for-github-codespaces)". {% endnote %} -1. Optionally, set the number of prebuild versions to be retained. Puedes ingresar cualquier número entre 1 y 5. La cantidad predeterminada de versiones guardadas es de 2, lo que significa que solo la versión de plantilla más reciente y la versión previa se guardan. +1. Opcionalmente, establezca el número de versiones de precompilación que se deban retener. Puedes ingresar cualquier número entre 1 y 5. La cantidad predeterminada de versiones guardadas es de 2, lo que significa que solo la versión de plantilla más reciente y la versión previa se guardan. - Depending on your prebuild trigger settings, your prebuild could change with each push or on each dev container configuration change. Retaining older versions of prebuilds enables you to create a prebuild from an older commit with a different dev container configuration than the current prebuild. Since there is a storage cost associated with retaining prebuild versions, you can choose the number of versions to be retained based on the needs of your team. Para obtener más información sobre la facturación, consulta la sección "[Acerca de la facturación para los {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#codespaces-pricing)". + Dependiendo de los ajustes de activación de la precompilación, esta podría cambiar con cada subida o en cada cambio de configuración de contenedor dev. El retener versiones anteriores de precompilaciones te permite crear una precompilación desde una confirmación más antigua con una configuración de contenedor dev diferente que la de la precompilación actual. Ya que existe un costo de almacenamiento asociado con la retención de versiones de precompilación, puedes elegir la cantidad de versiones a retener con base en las necesidades de tu equipo. Para obtener más información sobre la facturación, consulta la sección "[Acerca de la facturación para los {% data variables.product.prodname_github_codespaces %}](/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#codespaces-pricing)". - If you set the number of prebuild versions to save to 1, {% data variables.product.prodname_codespaces %} will only save the latest version of the prebuild and will delete the older version each time the template is updated. Esto significa que no obtendrás un codespace precompilado si regresas a una configuración de contenedor dev antigua. + Si configuras la cantidad de versiones de precompilación a guardar en 1, {% data variables.product.prodname_codespaces %} solo guardará la última versión de la precompilación y borrará la versión antigua cada que se actualice la plantilla. Esto significa que no obtendrás un codespace precompilado si regresas a una configuración de contenedor dev antigua. - ![The prebuild history setting](/assets/images/help/codespaces/prebuilds-template-history-setting.png) + ![El ajuste de historial de precompilación](/assets/images/help/codespaces/prebuilds-template-history-setting.png) -1. Optionally, add users or teams to notify when the prebuild workflow run fails for this configuration. Puedes comenzar a escribir un nombre de usuario, de equipo o nombre completo y luego hacer clic en el nombre una vez que aparezca para agregarlos a la lista. Los usuarios o equipos que agregues recibirán un correo electrónico cuando ocurran fallas en la precompilación, los cuales contienen un enlace a las bitácoras de ejecución de flujo de trabajo para ayudar con las investigaciones subsecuentes. +1. Opcionalmente, agrega usuarios o equipos para notificarles cuando una ejecución de flujo de trabajo de precompilación falle para esta configuración. Puedes comenzar a escribir un nombre de usuario, de equipo o nombre completo y luego hacer clic en el nombre una vez que aparezca para agregarlos a la lista. Los usuarios o equipos que agregues recibirán un correo electrónico cuando ocurran fallas en la precompilación, los cuales contienen un enlace a las bitácoras de ejecución de flujo de trabajo para ayudar con las investigaciones subsecuentes. ![El ajuste de notificación de falla de precompilación](/assets/images/help/codespaces/prebuilds-failure-notification-setting.png) @@ -84,27 +84,27 @@ Antes de que configures las precompilaciones para tu proyecto, se debe cumplir c {% data reusables.codespaces.prebuilds-permission-authorization %} -After you create a prebuild configuration it is listed on the {% data variables.product.prodname_codespaces %} page of your repository settings. A {% data variables.product.prodname_actions %} workflow is queued and then run to create prebuilds in the regions you specified, based on the branch and dev container configuration file you selected. +Después crear una configuración de precompilación, esta se lista en la página de {% data variables.product.prodname_codespaces %} de tus ajustes de repositorio. Un flujo de trabajo de {% data variables.product.prodname_actions %} se pone en cola y luego se ejecuta para crear precompilaciones en las regiones que especificaste, con base en la rama y archivo de configuración de contenedor dev que seleccionaste. -![Screenshot of the list of prebuild configurations](/assets/images/help/codespaces/prebuild-configs-list.png) +![Captura de pantalla de la lista de configuraciones de precompilación](/assets/images/help/codespaces/prebuild-configs-list.png) -For information about editing and deleting prebuild configurations, see "[Managing prebuilds](/codespaces/prebuilding-your-codespaces/managing-prebuilds)." +Para obtener más información sobre cómo editar y borrar configuraciones de precompilación, consulta la sección "[Administrar las precompilaciones](/codespaces/prebuilding-your-codespaces/managing-prebuilds)". ## Configurar variables de ambiente Para permitir que el proceso de precompilación acceda a las variables de ambiente que se requieren para crear tu ambiente de desarrollo, puedes configurarlas ya sea como secretos de repositorio de {% data variables.product.prodname_codespaces %} o como secretos de organización de {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta las secciones "[Agregar secretos para un repositorio](/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-github-codespaces#adding-secrets-for-a-repository)" y "[Agregar secretos para una organización](/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-github-codespaces#adding-secrets-for-an-organization)". -Secrets that you create in this way will be accessible by anyone who creates a codespace from this repository. Si no quieres esto, como alternativa, puedes configurar el secreto `CODESPACES_PREBUILD_TOKEN`. El secreto `CODESPACES_PREBUILD_TOKEN` solo se utiliza para precompilar y no se puede acceder a su valor en los codespaces de los usuarios. +Cualquiera que cree un codespace desde este repositorio podrá acceder a los secretos de que crees de esta forma. Si no quieres esto, como alternativa, puedes configurar el secreto `CODESPACES_PREBUILD_TOKEN`. El secreto `CODESPACES_PREBUILD_TOKEN` solo se utiliza para precompilar y no se puede acceder a su valor en los codespaces de los usuarios. -Prebuilds cannot use any user-level secrets while building your environment, because these are not available until after the codespace has been created. +Las precompilaciones no pueden utilizar secretos a nivel de usuario al compilar tu ambiente nuevo, ya que estos no están disponibles sino hasta después de que se haya creado el codespace. ## Configurar tareas que llevan mucho tiempo para que se incluyan en la precompilación -You can use the `onCreateCommand` and `updateContentCommand` commands in your `devcontainer.json` to include time-consuming processes as part of the prebuild creation. Para obtener más información, consulta la documentación de {% data variables.product.prodname_vscode %} "[referencia de devcontainer.json](https://code.visualstudio.com/docs/remote/devcontainerjson-reference#_lifecycle-scripts)". +Puedes utilizar los comandos `onCreateCommand` y `updateContentCommand` en tu `devcontainer.json` para incluir los procesos que llevan mucho tiempo como parte de la creación de la precompilación. Para obtener más información, consulta la documentación de {% data variables.product.prodname_vscode %} "[referencia de devcontainer.json](https://code.visualstudio.com/docs/remote/devcontainerjson-reference#_lifecycle-scripts)". -`onCreateCommand` is run only once, when the prebuild is created, whereas `updateContentCommand` is run at template creation and at subsequent template updates. Incremental builds should be included in `updateContentCommand` since they represent the source of your project and need to be included for every prebuild update. +`onCreateCommand` solo se ejecuta una vez, cuando se crea la precompilación, mientras que `updateContentCommand` se ejecuta cuando se crea la plantilla y en las actualizaciones de plantilla posteriores. Las compilaciones incrementales deben incluirse en `updateContentCommand`, ya que estas representan el origen de tu proyecto y necesitan incluirse para cada actualización de precompilación. ## Leer más -- "[Allowing a prebuild to access other repositories](/codespaces/prebuilding-your-codespaces/allowing-a-prebuild-to-access-other-repositories)" +- "[Permitir que una precompilación acceda a otros repositorios](/codespaces/prebuilding-your-codespaces/allowing-a-prebuild-to-access-other-repositories)" - "[Solucionar problemas de las compilaciones previas](/codespaces/troubleshooting/troubleshooting-prebuilds)" diff --git a/translations/es-ES/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md b/translations/es-ES/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md index 43418c6692..f76eb3e497 100644 --- a/translations/es-ES/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md +++ b/translations/es-ES/content/codespaces/prebuilding-your-codespaces/managing-prebuilds.md @@ -16,7 +16,7 @@ miniTocMaxHeadingLevel: 3 Las precompilaciones que configures para un repositorio se crean y actualizan utilizando un flujo de trabajo de {% data variables.product.prodname_actions %}, que administra el servicio de {% data variables.product.prodname_github_codespaces %}. -Depending on the settings in a prebuild configuration, the workflow to update the prebuild may be triggered by these events: +Dependiendo de los ajustes en una configuración de precompilación, el flujo de trabajo para actualizar la precompilación podría activarse con estos eventos: * Crear o actualizar la configuración de precompilación * Subir una confirmación o una solicitud de cambios a una rama que está configurada para tener precompilaciones @@ -24,7 +24,7 @@ Depending on the settings in a prebuild configuration, the workflow to update th * Un itinerario que definiste en la configuración de la precompilación * Activar el flujo de trabajo manualmente -The settings in the prebuild configuration determine which events automatically trigger an update of the prebuild. Para obtener más información, consulta la sección "[Configurar las precompilaciones](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)". +Los ajustes en la configuración de precompilación determinan qué eventos activan automáticamente una actualización de la precompilación. Para obtener más información, consulta la sección "[Configurar las precompilaciones](/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-a-prebuild)". Las personas con acceso administrativo a un repositorio pueden verificar el progreso de las precompilaciones, así como editar y borrar las configuraciones de estas. @@ -61,7 +61,7 @@ Esto muestra el historial de ejecución de flujo de trabajo para las precompilac ### Inhabilitar una configuración de precompilación -To pause the update of prebuilds for a configuration, you can disable workflow runs for the configuration. Disabling the workflow runs for a prebuild configuration does not delete any previously created prebuilds for that configuration and, as a result, codespaces will continue to be generated from an existing prebuild. +Para pausar la actualización de las precompilaciones de una configuración, puedes inhabilitar las ejecuciones de flujo de trabajo para dicha configuración. El inhabilitar las ejecuciones de flujo de trabajo para una configuración de precompilación no borra ninguna de estas que se haya creado anteriormente para dicha configuración y, como resultado, los codespaces seguirán generándose desde una precompilación existente. El inhabilitar las ejecuciones de flujos de trabajo para una configuración precompilada es útil si necesitas investigar los fallos en la creación de plantillas. @@ -74,7 +74,7 @@ El inhabilitar las ejecuciones de flujos de trabajo para una configuración prec ### Borrar una configuración de precompilación -Deleting a prebuild configuration also deletes all previously created prebuilds for that configuration. Como resultado, poco después de que borres una configuración, las precompilaciones generadas por dicha configuración ya no estarán disponibles cuando crees un codespace nuevo. +El borrar una configuración de preocmpilación también borrar todas las precompilaciones que se hayan creado previamente para dicha configuración. Como resultado, poco después de que borres una configuración, las precompilaciones generadas por dicha configuración ya no estarán disponibles cuando crees un codespace nuevo. Después de que borras una configuración de precompilación, todavía se ejecutarán las ejecuciones de flujo de trabajo de dicha configuración que se hayan puesto en cola o que hayan iniciado. Se listarán en el historial de ejecución de flujo de trabajo junto con las ejecuciones de flujo de trabajo que se hayan completado previamente. diff --git a/translations/es-ES/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/translations/es-ES/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 449d120e5d..6fc957533e 100644 --- a/translations/es-ES/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/translations/es-ES/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -53,7 +53,7 @@ Para obtener más información sobre cómo elegir tu configuración preferida de Es útil pensar que el archivo `devcontainer.json` sirve para proporcionar "adaptación" en vez de "personalización". Solo debes incluir las cosas que necesiten todos los que trabajan en tus codespaces como elementos estándar del ambiente de desarrollo, no las que son preferencias personales. Las cosas como los limpiadores son buenas para estandarizar y para requerir que todos las tengan instaladas, así que es bueno incluirlas en tu archivo `devcontainer.json`. Las cosas como los decoradores de interfaz de usuario o los temas son elecciones personales que no deberían ponerse en el archivo `devcontainer.json`. -Puedes personalizar tus codespaces utilizando dotfiles y la sincronización de ajustes. For more information, see "[Personalizing {% data variables.product.prodname_github_codespaces %} for your account](/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account)." +Puedes personalizar tus codespaces utilizando dotfiles y la sincronización de ajustes. Para obtener más información, consulta la sección "[Personalizar {% data variables.product.prodname_github_codespaces %} para tu cuenta](/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account)". ### Dockerfile @@ -114,7 +114,7 @@ Para obtener más información sobre cómo utilizar un Dockerfile en una configu ## Utilizar la configuración de contenedor dev predeterminada -Si no defines una configuración en tu repositorio, {% data variables.product.prodname_dotcom %} creará un codespace utilizando una imagen de Linux predeterminada. This Linux image includes a number of runtime versions for popular languages like Python, Node, PHP, Java, Go, C++, Ruby, and .NET Core/C#. The latest or LTS releases of these languages are used. There are also tools to support data science and machine learning, such as JupyterLab and Conda. The image also includes other developer tools and utilities like Git, GitHub CLI, yarn, openssh, and vim. Para ver todos los lenguajes, tiempos de ejecución y herramientas que se incluyen, utiliza el comando `devcontainer-info content-url` dentro de tu terminal del codespace y sigue la URL que este produce. +Si no defines una configuración en tu repositorio, {% data variables.product.prodname_dotcom %} creará un codespace utilizando una imagen de Linux predeterminada. La imagen de Linux incluye varias versiones de tiempo de ejecución para los lenguajes populares como Python, Node, PHP, Java, Go, C++ y .NET Core/C#. Se utilizan los lanzamientos más recientes o de LTS de estos lenguajes. También existen herramientas para apoyar la ciencia de datos y el aprendizaje automático, tal como JupyterLab y Conda. La imagen también incluye otras herramientas y utilidades de desarrollador como Git, el CLI de GitHub, yarn, openssh y vim. Para ver todos los lenguajes, tiempos de ejecución y herramientas que se incluyen, utiliza el comando `devcontainer-info content-url` dentro de tu terminal del codespace y sigue la URL que este produce. Como alternativa, para obtener más información sobre todo lo que incluye la imagen predeterminada de Linux, consulta el archivo más reciente del repositorio [`microsoft/vscode-dev-containers`](https://github.com/microsoft/vscode-dev-containers/tree/main/containers/codespaces-linux). @@ -155,17 +155,17 @@ Puedes agregar características a tu configuración predefinida de contenedor pa Puedes agregar algunas de las características más comunes seleccionándolas cuando configures tu contenedor predefinido. Para obtener más información sobre las características disponibles, consulta la [librería de scripts](https://github.com/microsoft/vscode-dev-containers/tree/main/script-library#scripts) en el repositorio `vscode-dev-containers`. -1. Accede a la paleta de comandos (`Shift + Command + P` / `Ctrl + Shift + P`) y luego comienza a teclear "configurar". Selecciona **Codespaces: configurar las características del devcontainer**. +1. Access the Command Palette (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "configure". Selecciona **Codespaces: configurar las características del devcontainer**. - ![El comando de configurar características del devcontainer en la paleta de comandos](/assets/images/help/codespaces/codespaces-configure-features.png) + ![The Configure Devcontainer Features command in the Command Palette](/assets/images/help/codespaces/codespaces-configure-features.png) 1. Actualiza tus selecciones de características y luego haz clic en **OK**. - ![The select additional features menu during container configuration](/assets/images/help/codespaces/select-additional-features.png) + ![El menú para seleccionar características adicionales durante la configuración del contenedor](/assets/images/help/codespaces/select-additional-features.png) 1. Para aplicar los cambios, en la esquina inferior derecha de la pantalla, haz clic en **Reconstruir ahora**. Para obtener más información sobre cómo reconstruir tu contenedor, consulta la sección "[Aplicar los cambios a tu configuración](#applying-configuration-changes-to-a-codespace)". - !["Codespaces: Reconstruir contenedor" en la paleta de comandos](/assets/images/help/codespaces/rebuild-prompt.png) + !["Codespaces: Rebuild Container" in the Command Palette](/assets/images/help/codespaces/rebuild-prompt.png) ## Crear una configuración de contenedor dev personalizada @@ -182,41 +182,41 @@ Si ninguna de las configuraciones predefinidas satisface tus necesidades, puedes Si se encuentran archivos `devcontainer.json` múltiples en el repositorio, estos se listarán en la página de opciones de creación de codespaces. Para obtener más información, consulta la sección "[Crear un codespace](/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)". - ![A choice of configuration files](/assets/images/help/codespaces/configuration-file-choice.png) + ![Una elección de archivos de configuración](/assets/images/help/codespaces/configuration-file-choice.png) ### Selección de configuración predeterminada durante la creación de codespaces Si existe el archivo `.devcontainer/devcontainer.json` o `.devcontainer.json`, este será la selección predeterminada en la lista de archivos de configuración disponibles cuando crees un codespace. Si no existe ninguno de ellos, se seleccionará la configuración de contenedor dev predefinida. -![The default configuration choice selected](/assets/images/help/codespaces/configuration-file-choice-default.png) +![La elección de configuración predeterminada seleccionada](/assets/images/help/codespaces/configuration-file-choice-default.png) ### Editar el archivo devcontainer.json -You can add and edit the supported configuration keys in the `devcontainer.json` file to specify aspects of the codespace's environment, like which {% data variables.product.prodname_vscode_shortname %} extensions will be installed. {% data reusables.codespaces.more-info-devcontainer %} +Puedes agregar y editar las llaves de configuración compatibles en el archivo `devcontainer.json` para especificar los aspectos del ambiente del codespace, como qué extensiones de {% data variables.product.prodname_vscode_shortname %} se instalarán. {% data reusables.codespaces.more-info-devcontainer %} -El archivo de `devcontainer.json` se escribe utilizando el formato JSONC. Esto te permite incluir comentarios dentro del archivo de configuración. For more information, see "[Editing JSON with {% data variables.product.prodname_vscode_shortname %}](https://code.visualstudio.com/docs/languages/json#_json-with-comments)" in the {% data variables.product.prodname_vscode_shortname %} documentation. +El archivo de `devcontainer.json` se escribe utilizando el formato JSONC. Esto te permite incluir comentarios dentro del archivo de configuración. Para obtener más información, consulta la sección "[Editar JSON con {% data variables.product.prodname_vscode_shortname %}](https://code.visualstudio.com/docs/languages/json#_json-with-comments)" en la documentación de {% data variables.product.prodname_vscode_shortname %}. {% note %} -**Note**: If you use a linter to validate the `devcontainer.json` file, make sure it is set to JSONC and not JSON or comments will be reported as errors. +**Nota**: Si utilizas un limpiador de código para validar el archivo `devcontainer.json`, asegúrate de que esté configurado en JSONC y no en JSON, de lo contrario, los comentarios se reportarán como errores. {% endnote %} -### Editor settings for {% data variables.product.prodname_vscode_shortname %} +### Ajustes de editor para {% data variables.product.prodname_vscode_shortname %} {% data reusables.codespaces.vscode-settings-order %} -You can define default editor settings for {% data variables.product.prodname_vscode_shortname %} in two places. +Puedes definir los ajustes de editor para {% data variables.product.prodname_vscode_shortname %} en dos lugares. -* Editor settings defined in the `.vscode/settings.json` file in your repository are applied as _Workspace_-scoped settings in the codespace. -* Editor settings defined in the `settings` key in the `devcontainer.json` file are applied as _Remote [Codespaces]_-scoped settings in the codespace. +* Los ajustes de editor que se definen en el archivo `.vscode/settings.json` de tu repositorio se aplican como ajustes con alcance de _Workspace_ en el codespace. +* Los ajustes de editor que se definen en la clave `settings` en el archivo `devcontainer.json` están aplicados como ajustes con alcance de _Remote [Codespaces]_ en el codespace. -## Applying configuration changes to a codespace +## Aplicar los cambios de configuración a un codespace {% data reusables.codespaces.apply-devcontainer-changes %} {% data reusables.codespaces.rebuild-command %} -1. {% data reusables.codespaces.recovery-mode %} Fix the errors in the configuration. +1. {% data reusables.codespaces.recovery-mode %} Corrige los errores en la configuración. ![Mensaje de error sobre el modo de recuperación](/assets/images/help/codespaces/recovery-mode-error-message.png) diff --git a/translations/es-ES/content/codespaces/troubleshooting/github-codespaces-logs.md b/translations/es-ES/content/codespaces/troubleshooting/github-codespaces-logs.md index 7ee468914a..c8497b8b57 100644 --- a/translations/es-ES/content/codespaces/troubleshooting/github-codespaces-logs.md +++ b/translations/es-ES/content/codespaces/troubleshooting/github-codespaces-logs.md @@ -28,7 +28,7 @@ Estas bitácoras contienen información detallada sobre los codespaces, el conte {% webui %} 1. Si estás utilizando {% data variables.product.prodname_codespaces %} en el buscador, asegúrate de que estés conectado al codespace que quieres depurar. -1. Abre la paleta de comandos de {% data variables.product.prodname_vscode %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) y teclea **Exportar bitácoras**. Selecciona **Codespaces: Exportar Bitácoras** de la lista para descargar las bitácoras. +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. Selecciona **Codespaces: Exportar Bitácoras** de la lista para descargar las bitácoras. 1. Define dónde guardar el archivo zip de las bitácoras y luego haz clic en **Guardar** (escritorio) o en **OK** (web). 1. Si estás utilizando {% data variables.product.prodname_codespaces %} en el buscador, haz clic derecho en el archivo zip de las bitácoras desde la vista de explorador y selecciona **Download…** para descargarlas en tu máquina local. @@ -36,7 +36,7 @@ Estas bitácoras contienen información detallada sobre los codespaces, el conte {% vscode %} -1. Abre la paleta de comandos de {% data variables.product.prodname_vscode %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) y teclea **Exportar bitácoras**. Selecciona **Codespaces: Exportar Bitácoras** de la lista para descargar las bitácoras. +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. Selecciona **Codespaces: Exportar Bitácoras** de la lista para descargar las bitácoras. 1. Define dónde guardar el archivo zip de las bitácoras y luego haz clic en **Guardar** (escritorio) o en **OK** (web). {% endvscode %} @@ -55,7 +55,7 @@ Estas bitácoras contienen información sobre el contenedor, el contenedor dev y {% webui %} 1. Conéctate al codespace que quieras depurar. -2. Abre la {% data variables.product.prodname_vscode_command_palette %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) y teclea **Creation logs**. Selecciona **Codespaces: View Creation Log** de la lista para abrir el archivo `creation.log`. +2. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. Selecciona **Codespaces: View Creation Log** de la lista para abrir el archivo `creation.log`. Si quieres compartir la bitácora con soporte, puedes copiar el texto de la bitácora de creación en un editor de texto y guardar el archivo localmente. @@ -63,7 +63,7 @@ Si quieres compartir la bitácora con soporte, puedes copiar el texto de la bit {% vscode %} -Abre la paleta de comandos (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) y teclea **Creation logs**. Selecciona **Codespaces: View Creation Log** de la lista para abrir el archivo `creation.log`. +Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. Selecciona **Codespaces: View Creation Log** de la lista para abrir el archivo `creation.log`. Si quieres compartir la bitácora con soporte, puedes copiar el texto de la bitácora de creación en un editor de texto y guardar el archivo localmente. diff --git a/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md b/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md index cc3838df1d..65d8b21063 100644 --- a/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md +++ b/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md @@ -1,5 +1,5 @@ --- -title: Solucionar problemas de creación y borrado de Codespaces +title: Troubleshooting creation and deletion of codespaces intro: 'Este artículo te muestra los pasos para la solución de problemas comunes que podrías experimentar al crear o borrar un codespace, incluyendo los de almacenamiento y configuración.' product: '{% data reusables.gated-features.codespaces %}' versions: @@ -16,6 +16,8 @@ shortTitle: Creación y borrado ### Sin acceso para crear un codespace Los {% data variables.product.prodname_codespaces %} no están disponibles para todos los repositorios. Si no se muestra el botón de "Abrir con Codespaces", {% data variables.product.prodname_github_codespaces %} podría no estar disponible para dicho repositorio. Para obtener más información, consulta la sección "[Crear un codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces)". +You can't create a codespace for a private repository that is owned by an organization, unless you have write access to the repository or the organization has enabled forking for it. + Si crees que tu organización sí [habilitó los {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#about-enabling-codespaces-for-your-organization), asegúrate de que un propietario de la organización o gerente de facturación haya configurado el límite de gastos para los {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta la sección "[Administrar tu límite de gastos para {% data variables.product.prodname_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces)". ### El Codespace no abre cuando se crea diff --git a/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md b/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md index 1169217c6f..3b0fa5c6f0 100644 --- a/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md +++ b/translations/es-ES/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md @@ -18,7 +18,7 @@ redirect_from: Los codespaces están configurados para detenerse después de pasar 30 minutos sin actividad. Si intentas interactuar con un codespace después de que se detuvo, podrías ver un error de tipo `503 service unavailable`. - Si se muestra un botón de **Inicio** en {% data variables.product.prodname_vscode %} o en tu ventana de buscador, haz clic en **Inicio** para volverte a conectar al codespace. -- Restablece tu codespace volviendo a cargar la ventana. Desde la [paleta de comandos](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) en {% data variables.product.prodname_vscode %}, haz clic en **Desarrollador: Recargar Ventana**. +- Restablece tu codespace volviendo a cargar la ventana. From the [Command Palette](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) in {% data variables.product.prodname_vscode %}, click **Developer: Reload Window**. ## El buscador no se puede conectar diff --git a/translations/es-ES/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md b/translations/es-ES/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md index 032e738980..20e456106e 100644 --- a/translations/es-ES/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md +++ b/translations/es-ES/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md @@ -31,6 +31,7 @@ El nombre del codespace también se incluye en muchos otros archivos de bitácor Cada codespace también tiene un ID (identificador). Este no se muestra predeterminadamente en {% data variables.product.prodname_vscode %}, así que podrías tener que actualizar los ajustes para la extensión de {% data variables.product.prodname_github_codespaces %} antes de que puedas acceder a la ID. 1. En {% data variables.product.prodname_vscode %}, ya sea la versión de buscador o de escritorio, en la barra de actividad a la izquierda, haz clic en **Explorador remoto** para que se muestren los detalles del codespace. -2. Si la barra lateral incluye una sección de "Rendimiento del Codespace", pasa el puntero del mouse sobre "ID del Codespace" y haz clic en el icono de portapapeles para copiar la ID. -3. Si no se muestra la información, haz clic en {% octicon "gear" aria-label="The gear icon" %} en la esquina inferior izquierda de la barra de actividad para mostrar la pestaña de "Ajustes". -4. Expande las **Extensiones** y haz clic en **{% data variables.product.prodname_github_codespaces %}** para mostrar los ajustes de la extensión. Entonces, habilita el **Explorador para mostrar el rendmiento** para mostrar la sección de "Rendimiento del Codespace" en la barra lateral. ![ID y ajustes del codespace requeridos para mostrar la información de rendimiento](/assets/images/help/codespaces/find-codespace-id.png) +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} +1. Si la barra lateral incluye una sección de "Rendimiento del Codespace", pasa el puntero del mouse sobre "ID del Codespace" y haz clic en el icono de portapapeles para copiar la ID. +1. Si no se muestra la información, haz clic en {% octicon "gear" aria-label="The gear icon" %} en la esquina inferior izquierda de la barra de actividad para mostrar la pestaña de "Ajustes". +1. Expande las **Extensiones** y haz clic en **{% data variables.product.prodname_github_codespaces %}** para mostrar los ajustes de la extensión. Entonces, habilita el **Explorador para mostrar el rendmiento** para mostrar la sección de "Rendimiento del Codespace" en la barra lateral. ![ID y ajustes del codespace requeridos para mostrar la información de rendimiento](/assets/images/help/codespaces/find-codespace-id.png) diff --git a/translations/es-ES/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md b/translations/es-ES/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md index a4246b9192..694a347d89 100644 --- a/translations/es-ES/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md +++ b/translations/es-ES/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md @@ -633,7 +633,7 @@ body: The template body `key:value` pair can not be empty. For more information about which top-level keys are required, see "[Syntax for issue forms](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms#top-level-syntax)." -The error can be fixed by adding the `body:` section. +El error se puede corregir agregando la sección `body:`. ### Ejemplo @@ -647,7 +647,7 @@ body: label: "What's wrong?" ``` -In this example, the error can be fixed by deleting the `---` (document separator) between the headers and the `body` section. +En este ejemplo, el error se puede corregir borrando el `---` (separador de documentos) entre los encabezados y la sección `body`. ```yaml name: Support Request diff --git a/translations/es-ES/content/copilot/overview-of-github-copilot/about-github-copilot.md b/translations/es-ES/content/copilot/overview-of-github-copilot/about-github-copilot.md index 3e905ad422..d91817fa96 100644 --- a/translations/es-ES/content/copilot/overview-of-github-copilot/about-github-copilot.md +++ b/translations/es-ES/content/copilot/overview-of-github-copilot/about-github-copilot.md @@ -22,7 +22,7 @@ You can see real-world examples of {% data variables.product.prodname_copilot %} GitHub Copilot offers suggestions from a model that OpenAI built from billions of lines of open source code. As a result, the training set for {% data variables.product.prodname_copilot %} may contain insecure coding patterns, bugs, or references to outdated APIs or idioms. When {% data variables.product.prodname_copilot %} produces suggestions based on this training data, those suggestions may also contain undesirable patterns. -You are responsible for ensuring the security and quality of your code. We recommend you take the same precautions when using code generated by {% data variables.product.prodname_copilot %} that you would when using any code you didn't write yourself. These precautions include rigorous testing, IP scanning, and tracking for security vulnerabilities. {% data variables.product.company_short %} provides a number of features to help you monitor and improve code quality, such as {% data variables.product.prodname_actions %}, {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_codeql %} and {% data variables.product.prodname_code_scanning %}. All these features are free to use in public repositories. For more information, see "[Understanding {% data variables.product.prodname_actions %}](/actions/learn-github-actions/understanding-github-actions)" and "[{% data variables.product.company_short %} security features](/code-security/getting-started/github-security-features)." +You are responsible for ensuring the security and quality of your code. We recommend you take the same precautions when using code generated by {% data variables.product.prodname_copilot %} that you would when using any code you didn't write yourself. These precautions include rigorous testing, IP scanning, and tracking for security vulnerabilities. {% data variables.product.company_short %} proporciona varias características para ayudarte a monitorear y mejorar la calidad del código, tales como las {% data variables.product.prodname_actions %}, el {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_codeql %} y el {% data variables.product.prodname_code_scanning %}. All these features are free to use in public repositories. For more information, see "[Understanding {% data variables.product.prodname_actions %}](/actions/learn-github-actions/understanding-github-actions)" and "[{% data variables.product.company_short %} security features](/code-security/getting-started/github-security-features)." {% data variables.product.prodname_copilot %} uses filters to block offensive words in the prompts and avoid producing suggestions in sensitive contexts. We are committed to constantly improving the filter system to more intelligently detect and remove offensive suggestions generated by {% data variables.product.prodname_copilot %}, including biased, discriminatory, or abusive outputs. If you see an offensive suggestion generated by {% data variables.product.prodname_copilot %}, please report the suggestion directly to copilot-safety@github.com so that we can improve our safeguards. diff --git a/translations/es-ES/content/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md b/translations/es-ES/content/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md index c143eadd38..eceb516fc6 100644 --- a/translations/es-ES/content/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md +++ b/translations/es-ES/content/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/viewing-and-re-running-checks-in-github-desktop.md @@ -10,7 +10,7 @@ versions: {% data variables.product.prodname_desktop %} displays the status of checks that have run in your pull request branches. The checks badge next to the branch name will display the *pending, passing,* or *failing* state of the checks. You can also re-run all, failed, or individual checks when viewing the status of the checks in {% data variables.product.prodname_desktop %}. For more information on setting up checks in your repository, see "[About status checks](/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)." -{% data variables.product.prodname_desktop %} will also show a system notification when checks fail. For more information on enabling notifications, see "[Configuring notifications in GitHub Desktop](/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/configuring-notifications-in-github-desktop)." +{% data variables.product.prodname_desktop %} will also show a system notification when checks fail. Para obtener más información sobre cómo habilitar las notificaciones, consulta la sección "[Configurar las notificaciones en GitHub Desktop](/desktop/contributing-and-collaborating-using-github-desktop/working-with-your-remote-repository-on-github-or-github-enterprise/configuring-notifications-in-github-desktop)". ## Ver y volver a ejecutar las verificaciones diff --git a/translations/es-ES/content/developers/apps/building-github-apps/authenticating-with-github-apps.md b/translations/es-ES/content/developers/apps/building-github-apps/authenticating-with-github-apps.md index 069906e9a2..8c7af75f81 100644 --- a/translations/es-ES/content/developers/apps/building-github-apps/authenticating-with-github-apps.md +++ b/translations/es-ES/content/developers/apps/building-github-apps/authenticating-with-github-apps.md @@ -147,18 +147,24 @@ Para autenticarte con un token de acceso de instalación, inclúyela en el encab ```shell $ curl -i \ --H "Authorization: token YOUR_INSTALLATION_ACCESS_TOKEN" \ +-H "Authorization: Bearer YOUR_INSTALLATION_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ {% data variables.product.api_url_pre %}/installation/repositories ``` `YOUR_INSTALLATION_ACCESS_TOKEN` es el valor que debes reemplazar. +{% note %} + +**Nota:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + ## Acceder a las terminales de la API como una instalación Para encontrar un listado de las terminales de la API de REST disponibles para utilizarse con las {% data variables.product.prodname_github_apps %} utilizando un token de acceso de instalación, consulta la sección "[Terminales Disponibles](/rest/overview/endpoints-available-for-github-apps)". -Para encontrar un listad de terminales relacionado con las instalaciones, consulta la sección "[Instalaciones](/rest/reference/apps#installations)". +For a list of endpoints related to installations, see "[Installations](/rest/reference/apps#installations)." ## Acceso a Git basado en HTTP mediante una instalación diff --git a/translations/es-ES/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md b/translations/es-ES/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md index 30ef65cf5b..512d700508 100644 --- a/translations/es-ES/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md +++ b/translations/es-ES/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md @@ -108,13 +108,13 @@ Predeterminadametne, la respuesta lleva el siguiente formato. Los parámetros de El token de acceso del usuario permite que la GitHub App haga solicitudes a la API a nombre del usuario. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user Por ejemplo, en curl, puedes configurar el encabezado de autorización de la siguiente manera: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## Flujo de dispositivos @@ -133,12 +133,12 @@ Este flujo de dispositivos te permite autorizar usuarios para una app sin encabe Ya que tengas un token de OAuth para un usuario, puedes revisar a qué instalaciones puede acceder. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations También puedes verificar qué repositorios se encuentran accesibles para un usuario para una instalación. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations/:installation_id/repositories Puedes encontrar más detalles en: [Listar instalaciones de app accesibles para el token de acceso del usuario](/rest/apps#list-app-installations-accessible-to-the-user-access-token) y [Listar repositorios accesibles para el token de acceso del usuario](/rest/apps#list-repositories-accessible-to-the-user-access-token). diff --git a/translations/es-ES/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md b/translations/es-ES/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md index 829fd77ed8..ea9fca1b45 100644 --- a/translations/es-ES/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md +++ b/translations/es-ES/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md @@ -23,6 +23,8 @@ Cuando una organización tiene una lista de direcciones permitidas, se negará e ## Agrega una lista de direcciones IP permitidas a una {% data variables.product.prodname_github_app %} +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.apps.settings-step %} {% data reusables.user-settings.developer_settings %} {% data reusables.user-settings.github_apps %} diff --git a/translations/es-ES/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md b/translations/es-ES/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md index badb34d08c..b367c46466 100644 --- a/translations/es-ES/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md +++ b/translations/es-ES/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md @@ -47,7 +47,7 @@ Las {% data variables.product.prodname_github_apps %} que hagan solicitudes de s {% ifversion fpt or ghec %} -Las {% data variables.product.prodname_github_apps %} que se instalan en una organización o repositrio dentro de una empresa en {% data variables.product.product_location %} están sujetas a un límite de 15,000 solicitudes por hora. +{% data variables.product.prodname_github_apps %} that are installed on an organization within an enterprise on {% data variables.product.product_location %} are subject to a limit of 15,000 requests per hour per organization that has installed the app. {% endif %} diff --git a/translations/es-ES/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md b/translations/es-ES/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md index dbf27e9745..14e7bf26d4 100644 --- a/translations/es-ES/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md +++ b/translations/es-ES/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md @@ -107,13 +107,13 @@ Accept: application/xml El token de acceso te permite hacer solicitudes a la API a nombre de un usuario. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user Por ejemplo, en curl, puedes configurar el encabezado de autorización de la siguiente manera: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## Flujo de dispositivos diff --git a/translations/es-ES/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md b/translations/es-ES/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md index f7b42c35d6..32e7965f32 100644 --- a/translations/es-ES/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md +++ b/translations/es-ES/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md @@ -28,7 +28,7 @@ Si tu {% data variables.product.prodname_oauth_app %} no tiene acceso a un busca Verifica los encabezados para ver qué alcances de OAuth tienes, y cuáles acepta la acción de la API: ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I HTTP/2 200 X-OAuth-Scopes: repo, user X-Accepted-OAuth-Scopes: user diff --git a/translations/es-ES/content/developers/overview/about-githubs-apis.md b/translations/es-ES/content/developers/overview/about-githubs-apis.md index 7bf834d9c7..7393f32fea 100644 --- a/translations/es-ES/content/developers/overview/about-githubs-apis.md +++ b/translations/es-ES/content/developers/overview/about-githubs-apis.md @@ -15,17 +15,3 @@ topics: --- Hay dos versiones estables de la API de GitHub: la [API de REST](/rest) y la [API de GraphQL](/graphql). - -## Versiones obsoletas - -### beta - -Se hizo obsoleta la API beta el 22 de abril de 2014. - -### v2 - -Eliminamos el soporte para la API v2 en el 12 de junio de 2012. - -### v1 - -Eliminamos el soporte para la API v1 en el 12 de junio de 2012. diff --git a/translations/es-ES/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md b/translations/es-ES/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md index 53b6f12b04..d9452630a0 100644 --- a/translations/es-ES/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md +++ b/translations/es-ES/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md @@ -37,12 +37,12 @@ $ export SECRET_TOKEN=your_token ## Validar cargas útiles de GitHub -Cuando se configura tu token secreto, {% data variables.product.product_name %} lo utiliza para crear una firma de hash con cada carga útil. Esta firma de hash se incluye con los encabezados de cada solicitud como `X-Hub-Signature-256`. +Cuando se configura tu token secreto, {% data variables.product.product_name %} lo utiliza para crear una firma de hash con cada carga útil. This hash signature is included with the headers of each request as `x-hub-signature-256`. {% ifversion fpt or ghes or ghec %} {% note %} -**Nota:** Para tener compatibilidad en versiones anteriores, también incluimos el encabezado `X-Hub-Signature` que se genera utilizando la función de hash SHA-1. De ser posible, te recomendamos que utilices el encabezado de `X-Hub-Signature-256` para mejorar la seguridad. El ejemplo siguiente demuestra cómo utilizar el encabezado `X-Hub-Signature-256`. +**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. {% endnote %} {% endif %} diff --git a/translations/es-ES/content/education/contribute-with-github-community-exchange/getting-started-with-github-community-exchange.md b/translations/es-ES/content/education/contribute-with-github-community-exchange/getting-started-with-github-community-exchange.md index 96cd5b3478..da0d92b40a 100644 --- a/translations/es-ES/content/education/contribute-with-github-community-exchange/getting-started-with-github-community-exchange.md +++ b/translations/es-ES/content/education/contribute-with-github-community-exchange/getting-started-with-github-community-exchange.md @@ -10,7 +10,7 @@ versions: {% data reusables.education.about-github-community-exchange-intro %} {% data variables.product.prodname_community_exchange %} can help you make your first open source contribution or grow your own open source project. -For more information about how {% data variables.product.prodname_community_exchange %} can help you as a student, see "[About {% data variables.product.prodname_community_exchange %}](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-for-your-schoolwork/about-github-community-exchange)." +Para obtener más información sobre cómo {% data variables.product.prodname_community_exchange %} puede ayudarte como alumno, consulta la sección "[Acerca de {% data variables.product.prodname_community_exchange %}](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/use-github-for-your-schoolwork/about-github-community-exchange)". ## Accessing {% data variables.product.prodname_community_exchange %} @@ -38,7 +38,7 @@ To star a repository: Go to your {% data variables.product.prodname_community_ex The {% data variables.product.prodname_community_exchange %} community moderates repository submissions. You can report abusive repositories, spammy, or disruptive content at any time. -To report an abusive repository: Go to your {% data variables.product.prodname_community_exchange %} home page, find the repository you want to report, click the {% octicon "kebab-horizontal" aria-label="The edit icon" %} drop-down right by its name, then click {% octicon "report" aria-label="The report symbol" %} **Report abuse**. +Para reportar un repositorio ofensivo: Dirígete a tu página principal de {% data variables.product.prodname_community_exchange %}, encuentra el repositorio que quieras reportar, haz clic en el menú desplegable de {% octicon "kebab-horizontal" aria-label="The edit icon" %} justo en su nombre y luego haz clic en {% octicon "report" aria-label="The report symbol" %} **Reportar abuso**. ## Leer más diff --git a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md index 2021ebcd36..4633256b83 100644 --- a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md +++ b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md @@ -14,11 +14,11 @@ shortTitle: Para alumnos Usar {% data variables.product.prodname_dotcom %} para tus proyectos escolares es un modo práctico de colaborar con otros y crear un portfolio que exhiba experiencia práctica. -Cualquiera con una cuenta de {% data variables.product.prodname_dotcom %} puede colaborar en repositorios públicos y privados ilimitados con {% data variables.product.prodname_free_user %}. As a student, you can also apply for {% data variables.product.prodname_education %} student benefits. Your {% data variables.product.prodname_education %} student benefits and resources are all included in {% data variables.product.prodname_global_campus %}, a portal that allows you to access your education benefits, all in one place. For more information, see "[Apply to GitHub Global Campus as a student](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student)" and [{% data variables.product.prodname_education %}](https://education.github.com/). +Cualquiera con una cuenta de {% data variables.product.prodname_dotcom %} puede colaborar en repositorios públicos y privados ilimitados con {% data variables.product.prodname_free_user %}. As a student, you can also apply for {% data variables.product.prodname_education %} student benefits. Your {% data variables.product.prodname_education %} student benefits and resources are all included in {% data variables.product.prodname_global_campus %}, a portal that allows you to access your education benefits, all in one place. Para obtener más información, consulta las secciones "[Solicitar entrar a GitHub Global Campus como alumno](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student)" y [{% data variables.product.prodname_education %}](https://education.github.com/). Before applying for Global Campus, check if your learning community is already partnered with us as a {% data variables.product.prodname_campus_program %} school. Para obtener más información, consulta la sección "[Acerca de la {% data variables.product.prodname_campus_program %}](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/about-github-campus-program)". -If you're a member of a school club, a teacher can apply for {% data variables.product.prodname_global_campus %} so your team can collaborate using {% data variables.product.prodname_team %}, which allows unlimited users and private repositories, for free. For more information, see "[Apply to {% data variables.product.prodname_global_campus %} as a teacher](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)." +If you're a member of a school club, a teacher can apply for {% data variables.product.prodname_global_campus %} so your team can collaborate using {% data variables.product.prodname_team %}, which allows unlimited users and private repositories, for free. Para obtener más información, consulta la sección "[Solicitar ingresar al {% data variables.product.prodname_global_campus %} como docente](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)". Once you are a verified {% data variables.product.prodname_global_campus %} student, you can access {% data variables.product.prodname_global_campus %} anytime by going to the [{% data variables.product.prodname_education %} website](https://education.github.com). diff --git a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student.md b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student.md index 067bb88907..1bffa421f5 100644 --- a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student.md +++ b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student.md @@ -32,7 +32,7 @@ Es posible que se te pida periódicamente que vuelvas a verificar tu estado acad {% endnote %} -For information about renewing your {% data variables.product.prodname_global_campus %} access, see "[Expiration and renewals](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student/#expiration-and-renewals)." +Para obtener información sobre cómo renovar tu acceso al {% data variables.product.prodname_global_campus %}, consulta la sección "[Vencimiento y renovaciones](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student/#expiration-and-renewals)". ## Applying to {% data variables.product.prodname_global_campus %} diff --git a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md index 29c16366bd..1e920fcaa4 100644 --- a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md +++ b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md @@ -25,7 +25,7 @@ Antes de solicitar un descuento individual, comprueba si tu comunidad de aprendi {% data variables.product.prodname_global_campus %} is a portal from which you can access your {% data variables.product.prodname_education %} benefits and resources, all in one place. On the {% data variables.product.prodname_global_campus %} portal, teachers of all levels can: {% data reusables.education.apply-for-team %} - View an overview of your active [{% data variables.product.prodname_classroom %}](https://classroom.github.com), including recent assignments and your class's progress at a glance, as well as links to {% data variables.product.prodname_classroom %}. - - View and interact with [{% data variables.product.prodname_discussions %}](https://github.com/orgs/community/discussions/categories/github-education) posted by your peers from around the world to discuss current trends in technology education, and see the latest posts from our [{% data variables.product.prodname_education %} blog](https://github.blog/category/education/). + - Ve e interactúa con los [{% data variables.product.prodname_discussions %}](https://github.com/orgs/community/discussions/categories/github-education) que publican tus compañeros de todo el mundo para debatir las tendencias actuales en la educación tecnológica y mira las publicaciones más recientes de nuestro [blog de {% data variables.product.prodname_education %}](https://github.blog/category/education/). - See student events curated by {% data variables.product.prodname_education %} and student leaders. - Stay in the know on what the student community is interested in by rewatching recent [Campus TV](https://www.twitch.tv/githubeducation) episodes. Campus TV is created by {% data variables.product.prodname_dotcom %} and student community leaders and can be watched live or on demand. - Request a {% data variables.product.prodname_dotcom %} swag bag with educational materials and goodies for your students. diff --git a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md index 7f26718d4f..d0a7ad8682 100644 --- a/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md +++ b/translations/es-ES/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md @@ -9,8 +9,8 @@ redirect_from: versions: fpt: '*' children: - - /use-github-at-your-educational-institution - /github-global-campus-for-students - /github-global-campus-for-teachers + - /use-github-at-your-educational-institution --- diff --git a/translations/es-ES/content/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/using-github-codespaces-with-github-classroom.md b/translations/es-ES/content/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/using-github-codespaces-with-github-classroom.md index b8d58ab579..a5ac6d80f7 100644 --- a/translations/es-ES/content/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/using-github-codespaces-with-github-classroom.md +++ b/translations/es-ES/content/education/manage-coursework-with-github-classroom/integrate-github-classroom-with-an-ide/using-github-codespaces-with-github-classroom.md @@ -30,7 +30,7 @@ The {% data variables.product.prodname_codespaces %} Education benefit gives ver {% data reusables.classroom.free-limited-codespaces-for-verified-teachers-beta-note %} -To become a verified teacher, you need to be approved for an educator or teacher benefit. For more information, see "[Apply to {% data variables.product.prodname_global_campus %} as a teacher](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)." +To become a verified teacher, you need to be approved for an educator or teacher benefit. Para obtener más información, consulta la sección "[Solicitar ingresar al {% data variables.product.prodname_global_campus %} como docente](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)". After you have confirmation that you are a verified teacher, visit [{% data variables.product.prodname_global_campus %} for Teachers](https://education.github.com/globalcampus/teacher) to upgrade the organization to GitHub Team. For more information, see [GitHub's products](/get-started/learning-about-github/githubs-products#github-team). diff --git a/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md b/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md index ca03572759..1b80c3756a 100644 --- a/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md +++ b/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md @@ -24,23 +24,22 @@ To configure an LMS to connect to {% data variables.product.prodname_classroom % ## Supported LMSes -{% data variables.product.prodname_classroom %} supports import of roster data from LMSes that implement Learning Tools Interoperability (LTI) standards. +{% note %} -- LTI version 1.0 and/or 1.1 -- LTI Names and Roles Provisioning 1.X +**Note:** {% data variables.product.prodname_classroom %} previously supported import of roster data from LMSes that implement Learning Tools Interoperability (LTI) versions 1.0 and 1.1. On June 30, 2022, the Instructional Management System (IMS) Global Learning Consortium [ended support for LTI versions 1.0 and 1.1](https://www.imsglobal.org/lti-security-announcement-and-deprecation-schedule). In the interest of keeping sensitive student information safe and secure, {% data variables.product.company_short %} has temporarily disabled importing roster data from LTI-compliant LMSes.

-Using LTI helps keep your information safe and secure. LTI is an industry-standard protocol and GitHub Classroom's use of LTI is certified by the Instructional Management System (IMS) Global Learning Consortium. For more information, see [Learning Tools Interoperability](https://www.imsglobal.org/activity/learning-tools-interoperability) and [About IMS Global Learning Consortium](http://www.imsglobal.org/aboutims.html) on the IMS Global Learning Consortium website. +Support for the latest version of Learning Tools Interoperability, [LTI 1.3](https://www.imsglobal.org/activity/learning-tools-interoperability), is currently being worked on and will be made available in {% data variables.product.prodname_classroom %} very soon. + +{% endnote %} + +LTI is an industry-standard protocol and GitHub Classroom's use of LTI is certified by the Instructional Management System (IMS) Global Learning Consortium. For more information, see [Learning Tools Interoperability](https://www.imsglobal.org/activity/learning-tools-interoperability) and [About IMS Global Learning Consortium](http://www.imsglobal.org/aboutims.html) on the IMS Global Learning Consortium website. {% data variables.product.company_short %} has tested import of roster data from the following LMSes into {% data variables.product.prodname_classroom %}. -- Canvas - Google Classroom -- Moodle -- Sakai -Currently, {% data variables.product.prodname_classroom %} doesn't support import of roster data from Blackboard or Brightspace. -## Generating configuration credentials for your classroom +## Connecting to Google Classroom {% data reusables.classroom.sign-into-github-classroom %} {% data reusables.classroom.click-classroom-in-list %} @@ -48,90 +47,16 @@ Currently, {% data variables.product.prodname_classroom %} doesn't support impor 1. If your classroom already has a roster, you can either update the roster or delete the roster and create a new roster. - For more information about deleting and creating a roster, see "[Deleting a roster for a classroom](/education/manage-coursework-with-github-classroom/manage-classrooms#deleting-a-roster-for-a-classroom)" and "[Creating a roster for your classroom](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." - For more information about updating a roster, see "[Adding students to the roster for your classroom](/education/manage-coursework-with-github-classroom/manage-classrooms#adding-students-to-the-roster-for-your-classroom)." -1. In the list of LMSes, click your LMS. If your LMS is not supported, click **Other LMS**. - ![List of LMSes](/assets/images/help/classroom/classroom-settings-click-lms.png) -1. Read about connecting your LMS, then click **Connect to _LMS_**. -1. Copy the "Consumer Key", "Shared Secret", and "Launch URL" for the connection to the classroom. - ![Copy credentials](/assets/images/help/classroom/classroom-copy-credentials.png) +1. In the list of LMSes, click Google Classroom. + ![Google Classroom](/assets/images/help/classroom/classroom-settings-click-google-classroom.png) +1. Sign in to Google, then select the Classroom to link to. -## Configuring a generic LMS -You must configure the privacy settings for your LMS to allow external tools to receive roster information. +## Connecting to Canvas, Moodle, Sakai, and other LMSes -1. Navigate to your LMS. -1. Configure an external tool. -1. Provide the configuration credentials you generated in {% data variables.product.prodname_classroom %}. - - Consumer key - - Shared secret - - Launch URL (sometimes called "tool URL" or similar) +Connecting to other LMSes is temporarily unavailable as {% data variables.product.company_short %} updates to Learning Tools Interoperability (LTI) version 1.3. For more information, see "[Supported LMSes](#supported-lmses)." -## Configuring Canvas - -You can configure {% data variables.product.prodname_classroom %} as an external app for Canvas to import roster data into your classroom. For more information about Canvas, see the [Canvas website](https://www.instructure.com/canvas/). - -1. Sign into [Canvas](https://www.instructure.com/canvas/#login). -1. Select the Canvas course to integrate with {% data variables.product.prodname_classroom %}. -1. In the left sidebar, click **Settings**. -1. Click the **Apps** tab. -1. Click **View app configurations**. -1. Click **+App**. -1. Select the **Configuration Type** drop-down menu, and click **By URL**. -1. Paste the configuration credentials from {% data variables.product.prodname_classroom %}. For more information, see "[Generating configuration credentials for your classroom](#generating-configuration-credentials-for-your-classroom)." - - | Field in Canvas app configuration | Value or setting | - | :- | :- | - | **Consumer Key** | Consumer key from {% data variables.product.prodname_classroom %} | - | **Shared Secret** | Shared secret from {% data variables.product.prodname_classroom %} | - | **Allow this tool to access the IMS Names and Role Provisioning Service** | Enabled | - | **Configuration URL** | Launch URL from {% data variables.product.prodname_classroom %} | - - {% note %} - - **Note**: If you don't see a checkbox in Canvas labeled "Allow this tool to access the IMS Names and Role Provisioning Service", then your Canvas administrator must contact Canvas support to enable membership service configuration for your Canvas account. Without enabling this feature, you won't be able to sync the roster from Canvas. For more information, see [How do I contact Canvas Support?](https://community.canvaslms.com/t5/Canvas-Basics-Guide/How-do-I-contact-Canvas-Support/ta-p/389767) on the Canvas website. - - {% endnote %} - -1. Click **Submit**. -1. In the left sidebar, click **Home**. -1. To prompt Canvas to send a confirmation email, in the left sidebar, click **GitHub Classroom**. Follow the instructions in the email to finish linking {% data variables.product.prodname_classroom %}. - -## Configuring Moodle - -You can configure {% data variables.product.prodname_classroom %} as an activity for Moodle to import roster data into your classroom. For more information about Moodle, see the [Moodle website](https://moodle.org). - -You must be using Moodle version 3.0 or greater. - -1. Sign into [Moodle](https://moodle.org/login/). -1. Select the Moodle course to integrate with {% data variables.product.prodname_classroom %}. -1. Click **Turn editing on**. -1. Wherever you'd like {% data variables.product.prodname_classroom %} to be available in Moodle, click **Add an activity or resource**. -1. Choose **External tool** and click **Add**. -1. In the "Activity name" field, type "GitHub Classroom". -1. In the **Preconfigured tool** field, to the right of the drop-down menu, click **+**. -1. Under "External tool configuration", paste the configuration credentials from {% data variables.product.prodname_classroom %}. For more information, see "[Generating configuration credentials for your classroom](#generating-configuration-credentials-for-your-classroom)." - - | Field in Moodle app configuration | Value or setting | - | :- | :- | - | **Tool name** | {% data variables.product.prodname_classroom %} - _YOUR CLASSROOM NAME_

**Note**: You can use any name, but we suggest this value for clarity. | - | **Tool URL** | Launch URL from {% data variables.product.prodname_classroom %} | - | **LTI version** | LTI 1.0/1.1 | - | **Default launch container** | New window | - | **Consumer key** | Consumer key from {% data variables.product.prodname_classroom %} | - | **Shared secret** | Shared secret from {% data variables.product.prodname_classroom %} | - -1. Scroll to and click **Services**. -1. To the right of "IMS LTI Names and Role Provisioning", select the drop-down menu and click **Use this service to retrieve members' information as per privacy settings**. -1. Scroll to and click **Privacy**. -1. To the right of **Share launcher's name with tool** and **Share launcher's email with tool**, select the drop-down menus to click **Always**. -1. At the bottom of the page, click **Save changes**. -1. In the **Preconfigure tool** menu, click **GitHub Classroom - _YOUR CLASSROOM NAME_**. -1. Under "Common module settings", to the right of "Availability", select the drop-down menu and click **Hide from students**. -1. At the bottom of the page, click **Save and return to course**. -1. Navigate to anywhere you chose to display {% data variables.product.prodname_classroom %}, and click the {% data variables.product.prodname_classroom %} activity. - -## Importing a roster from your LMS - -For more information about importing the roster from your LMS into {% data variables.product.prodname_classroom %}, see "[Manage classrooms](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." +In the meantime, you may manually input your roster for your class. For more information about manually importing the roster from your LMS into {% data variables.product.prodname_classroom %}, see "[Manage classrooms](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." ## Disconnecting your LMS diff --git a/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment.md b/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment.md index 46598b60cb..5b0acf5237 100644 --- a/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment.md +++ b/translations/es-ES/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment.md @@ -9,48 +9,48 @@ shortTitle: Rechazar una tarea ## Acerca de reutilizar tareas -Puedes reutilizar una tarea grupal o individual existente en cualquier otra aula a la cual tengas acceso, incluyendo aquellas en una organización distinta. También puedes reutilizar tareas múltiples a la vez desde un aula. Si eliges reutilizar una tarea, {% data variables.product.prodname_classroom %} la copiará al aula que elijas. If the assignment uses a template repository and you choose to reuse it in a classroom from a different organization, {% data variables.product.prodname_classroom %} will create a copy of the repository and its contents in the target organization. +Puedes reutilizar una tarea grupal o individual existente en cualquier otra aula a la cual tengas acceso, incluyendo aquellas en una organización distinta. También puedes reutilizar tareas múltiples a la vez desde un aula. Si eliges reutilizar una tarea, {% data variables.product.prodname_classroom %} la copiará al aula que elijas. Si la tarea utiliza un repositorio en borrador y eliges reutilizarlo en un aula desde una organización diferente, {% data variables.product.prodname_classroom %} creará una copia del repositorio y de su contenido en la organización destino. -The copied assignment includes assignment details such as the name, source repository, autograding test, and preferred editor. You can edit the assignment after it has been copied to make changes. You cannot make changes to the preferred editor. +La tarea copiada incluye detalles de esta, tales como el nombre, el repositorio origen, pruebas de autoevaluación y el editor preferido. Puedes editar esta tarea después de que se copió para realizar cambios. No puedes hacer cambios al editor preferido. -## Reusing an assignment +## Reutilizar una tarea 1. Inicia sesión en {% data variables.product.prodname_classroom_with_url %}. -1. Navigate to the classroom that has the assignment that you want to reuse. +1. Navega al aula que tiene la tarea que quieras reutilizar. ![Aula en la lista de aulas de una organización](/assets/images/help/classroom/click-classroom-in-list.png) -1. In the list of assignments, click the assignment you want to reuse. +1. En la lista de tareas, haz clic en aquella que quieras reutilizar. ![Lista de tareas para las tareas de un aula](/assets/images/help/classroom/click-assignment-in-list.png) -1. Select the **{% octicon "pencil" aria-label="The pencil icon" %} Edit** dropdown menu in the top right of the page, then click **{% octicon "sync" aria-label="The sync icon" %} Reuse assignment**. +1. Selecciona el menú desplegable de **{% octicon "pencil" aria-label="The pencil icon" %} Editar** en la parte superior derecha de la página y luego haz clic en **{% octicon "sync" aria-label="The sync icon" %} Reutilizar tarea**. - ![Reuse assignment button](/assets/images/help/classroom/reuse-assignment-button.png) + ![Botón de reutilizar tarea](/assets/images/help/classroom/reuse-assignment-button.png) -1. In the "Reuse assignment" modal, use the **Choose an organization** dropdown menu to select the organization you want the assignment to be in. Then use the **Choose a classroom** dropdown menu to select the classroom within that organization that you want to copy the assignment to. +1. En el modl de "Reutilizar tarea", utiliza el menú desplegable **Elegir una organización** para seleccionar aquella en la cual quieras que esté la tarea. Luego, utiliza el menú desplegable **Elegir un aula** para seleccionar el aula dentro de la organización en la que quieres copiar la tarea. - ![Reuse assignment modal](/assets/images/help/classroom/reuse-assignment-modal.png) + ![Modal de reutilizar tarea](/assets/images/help/classroom/reuse-assignment-modal.png) -1. Click **Create assignment**. -1. The assignment is copied to the selected classroom, and a confirmation message is shown. If you chose to reuse an assignment with a template repository, the copying process may take a few minutes to complete, and you may need to refresh the page to see the completed message. +1. Haz clic en **Crear tarea**. +1. La tarea se copiará al aula seleccionada y se mostrará un mensaje de confirmación. Si eliges reutilizar una tarea con una plantilla de repositorio, el proceso de copiado podría llevar unos minutos para completarse y podrías necesitar actualizar la página para ver el mensaje de completado. - ![Completed message for reused assignment](/assets/images/help/classroom/reuse-assignment-completed-message.png) + ![Mensaje completado para la tarea reutilizada](/assets/images/help/classroom/reuse-assignment-completed-message.png) -## Reusing multiple assignments from a classroom +## Reutilizar tareas múltiples de un aula 1. Inicia sesión en {% data variables.product.prodname_classroom_with_url %}. -2. To the right of a classroom's name, select the {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} drop-down menu, then click **Reuse assignment**. +2. A la derecha del nombre del aula, selecciona el menú desplegable de {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} y haz clic en **Reutilizar tarea**. - ![Screenshot of classroom overview page with dropdown emphasized](/assets/images/help/classroom/classroom-reuse-assignment-modal.png) + ![Captura de pantalla de la página de resumen del aula con énfasis en el menú desplegable](/assets/images/help/classroom/classroom-reuse-assignment-modal.png) -3. In the "Reuse assignments" modal, use the **Choose an organization** dropdown menu to select the organization you want the assignments to be in. Then use the **Choose a classroom** dropdown menu to select the classroom within that organization that you want to copy the assignments to. +3. En el modal de "Reutilizar tareas", utiliza el menú desplegable **Elige una organización** para seleccionar aquella en la que quieres que estén las tareas. Luego, utiliza el menú desplegable **Elegir un aula** para seleccionar el aula dentro de la organización en la que quieres copiar la tarea. - ![Screenshot of reuse assignments modal](/assets/images/help/classroom/reuse-multiple-assignments-modal.png) + ![Captura de pantalla del modal de reutilización de tareas](/assets/images/help/classroom/reuse-multiple-assignments-modal.png) -4. To the left of each assignment, select the assignment you want to reuse. +4. A la izquierda de cada tarea, selecciona aquella que quieras reutilizar. - ![Screenshot of multiple selected assignments](/assets/images/help/classroom/multiple-assignments-selected.png) + ![Captura de pantalla de múltiples tareas seleccionadas](/assets/images/help/classroom/multiple-assignments-selected.png) -5. Click **Create assignments**. -6. The assignments are copied to the selected classroom. If you chose to reuse an assignment with a template repository, the copying process may take a few minutes to complete. +5. Haz clic en **Crear tareas**. +6. Las tareas se copiarán al aula seleccionada. Si eliges reutilizar una tarea con un repositorio de plantilla, el proceso de copiado podrá tomar unos cuantos minutos en completarse. diff --git a/translations/es-ES/content/get-started/exploring-projects-on-github/following-organizations.md b/translations/es-ES/content/get-started/exploring-projects-on-github/following-organizations.md index fbcb4c8cb0..d3bd49710a 100644 --- a/translations/es-ES/content/get-started/exploring-projects-on-github/following-organizations.md +++ b/translations/es-ES/content/get-started/exploring-projects-on-github/following-organizations.md @@ -7,15 +7,11 @@ topics: - Profile --- -{% note %} - -**Nota:** La capacidad de seguir organizaciones se encuentra actualmente en beta público y está sujeta a cambios. - -{% endnote %} +{% data reusables.organizations.follow-organizations-beta %} ## Aceca de los seguidores en {% data variables.product.product_name %} -Cuando sigues organizaciones, puedes ver su actividad pública en tu tablero personal. Para obtener más información, consulta "[Acerca de tu tablero personal](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)". +{% data reusables.organizations.about-following-organizations %} For more information, see "[About your personal dashboard](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)." Puedes dejar de seguir a una organización si no quieres ver su actividad {% ifversion fpt or ghec %}pública{% endif %} en {% data variables.product.product_name %}. diff --git a/translations/es-ES/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md b/translations/es-ES/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md index 78176f43ab..dcc1431bc8 100644 --- a/translations/es-ES/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md +++ b/translations/es-ES/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md @@ -57,11 +57,21 @@ Si tienes repositorios o código fuente existentes que se almacenan localmente e 1. [Crear un repositorio nuevo](/repositories/creating-and-managing-repositories/creating-a-new-repository) en {% data variables.product.product_location %}. Para evitar errores, no inicialices el nuevo repositorio con archivos *README* licencia o `gitingnore`. Puedes agregar estos archivos después de que tu proyecto se haya subido a {% data variables.product.product_name %}. ![Desplegable Create New Repository (Crear nuevo repositorio)](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Cambiar el directorio de trabajo actual en tu proyecto local. -4. Inicializar el directorio local como un repositorio de Git. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Agregar los archivos a tu nuevo repositorio local. Esto representa la primera confirmación. + ```shell $ git add . # Agrega el archivo en el repositorio local y lo presenta para la confirmación. {% data reusables.git.unstage-codeblock %} @@ -92,10 +102,19 @@ Si tienes repositorios o código fuente existentes que se almacenan localmente e 1. [Crear un repositorio nuevo](/articles/creating-a-new-repository) en {% data variables.product.product_location %}. Para evitar errores, no inicialices el nuevo repositorio con archivos *README* licencia o `gitingnore`. Puedes agregar estos archivos después de que tu proyecto se haya subido a {% data variables.product.product_name %}. ![Desplegable Create New Repository (Crear nuevo repositorio)](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Cambiar el directorio de trabajo actual en tu proyecto local. -4. Inicializar el directorio local como un repositorio de Git. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Agregar los archivos a tu nuevo repositorio local. Esto representa la primera confirmación. ```shell $ git add . @@ -127,10 +146,19 @@ Si tienes repositorios o código fuente existentes que se almacenan localmente e 1. [Crear un repositorio nuevo](/articles/creating-a-new-repository) en {% data variables.product.product_location %}. Para evitar errores, no inicialices el nuevo repositorio con archivos *README* licencia o `gitingnore`. Puedes agregar estos archivos después de que tu proyecto se haya subido a {% data variables.product.product_name %}. ![Desplegable Create New Repository (Crear nuevo repositorio)](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Cambiar el directorio de trabajo actual en tu proyecto local. -4. Inicializar el directorio local como un repositorio de Git. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Agregar los archivos a tu nuevo repositorio local. Esto representa la primera confirmación. ```shell $ git add . diff --git a/translations/es-ES/content/get-started/quickstart/be-social.md b/translations/es-ES/content/get-started/quickstart/be-social.md index 9938fad6cb..27cfae157f 100644 --- a/translations/es-ES/content/get-started/quickstart/be-social.md +++ b/translations/es-ES/content/get-started/quickstart/be-social.md @@ -57,7 +57,23 @@ From your dashboard, click the drop down menu of your username on the left side ![Switch account context dropdown](/assets/images/help/overview/dashboard-contextswitcher.png) -### Exploring other projects on {% data variables.product.prodname_dotcom %} +{% ifversion for-you-feed %} + +## Following organizations + +{% data reusables.organizations.follow-organizations-beta %} + +{% data reusables.organizations.about-following-organizations %} + +To follow an organization, in the header of the organization's page, click **Follow**. + +![Screenshot of the organization header, with the follow button highlighted](/assets/images/help/profile/organization-profile-following.png) + +For more information, see "[Following organizations](/get-started/exploring-projects-on-github/following-organizations)." + +{% endif %} + +## Exploring other projects on {% data variables.product.prodname_dotcom %} You can discover new and interesting projects on {% data variables.product.prodname_dotcom %}'s Explore page. You can star interesting projects to make them easy to find again later. Visit your stars page to see all your starred projects. For more information about stars, see "[Saving repositories with stars](/get-started/exploring-projects-on-github/saving-repositories-with-stars)." diff --git a/translations/es-ES/content/get-started/quickstart/fork-a-repo.md b/translations/es-ES/content/get-started/quickstart/fork-a-repo.md index 600c30dca4..9d3c9526b6 100644 --- a/translations/es-ES/content/get-started/quickstart/fork-a-repo.md +++ b/translations/es-ES/content/get-started/quickstart/fork-a-repo.md @@ -118,7 +118,7 @@ Right now, you have a fork of the Spoon-Knife repository, but you do not have th > Cloning into `Spoon-Knife`... > remote: Counting objects: 10, done. > remote: Compressing objects: 100% (8/8), done. - > remove: Total 10 (delta 1), reused 10 (delta 1) + > remote: Total 10 (delta 1), reused 10 (delta 1) > Unpacking objects: 100% (10/10), done. ``` diff --git a/translations/es-ES/content/graphql/guides/migrating-graphql-global-node-ids.md b/translations/es-ES/content/graphql/guides/migrating-graphql-global-node-ids.md index d784a1a9ca..465262cf93 100644 --- a/translations/es-ES/content/graphql/guides/migrating-graphql-global-node-ids.md +++ b/translations/es-ES/content/graphql/guides/migrating-graphql-global-node-ids.md @@ -32,7 +32,7 @@ Aquí tienes una solicitud de ejemplo que utiliza cURL: ``` $ curl \ - -H "Authorization: token $GITHUB_TOKEN" \ + -H "Authorization: Bearer $GITHUB_TOKEN" \ -H "X-Github-Next-Global-ID: 1" \ https://api.github.com/graphql \ -d '{ "query": "{ node(id: \"MDQ6VXNlcjM0MDczMDM=\") { id } }" }' diff --git a/translations/es-ES/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md b/translations/es-ES/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md index 1ec014d1b2..0a6335918a 100644 --- a/translations/es-ES/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md +++ b/translations/es-ES/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md @@ -70,7 +70,7 @@ Puedes encontrar la ID de nodo de un proyecto organizacional si conoces el nombr ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{organization(login: \"ORGANIZATION\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -94,7 +94,7 @@ También puedes encontrar la ID de nodo de todos los proyectos en tu organizaci ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{organization(login: \"ORGANIZATION\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -125,7 +125,7 @@ Puedes encontrar la ID de nodo de un proyecto de usuario si conoces el número d ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{user(login: \"USER\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -149,7 +149,7 @@ También puedes encontrar la ID de nodo de todos tus proyectos. El siguiente eje ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{user(login: \"USER\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -180,7 +180,7 @@ El siguiente ejemplo devolverá la ID, nombre, ajustes y configuración para los ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2Field { id name } ... on ProjectV2IterationField { id name configuration { iterations { startDate id }}} ... on ProjectV2SingleSelectField { id name options { id name }}}}}}}"}' ``` {% endcurl %} @@ -284,7 +284,7 @@ Si solo necesitas el nombre e ID de un campo y no necesitas información sobre l ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2FieldCommon { id name }}}}}}"}' ``` {% endcurl %} @@ -354,7 +354,7 @@ El siguiente ejemplo devolverá las primeras 20 propuestas, solicitudes de cambi ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { items(first: 20) { nodes{ id fieldValues(first: 8) { nodes{ ... on ProjectV2ItemFieldTextValue { text field { ... on ProjectV2FieldCommon { name }}} ... on ProjectV2ItemFieldDateValue { date field { ... on ProjectV2FieldCommon { name } } } ... on ProjectV2ItemFieldSingleSelectValue { name field { ... on ProjectV2FieldCommon { name }}}}} content{ ... on DraftIssue { title body } ...on Issue { title assignees(first: 10) { nodes{ login }}} ...on PullRequest { title assignees(first: 10) { nodes{ login }}}}}}}}}"}' ``` {% endcurl %} @@ -446,7 +446,7 @@ El siguiente ejemplo agregará una propuesta o solicitud de cambios a tu proyect ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {addProjectV2ItemById(input: {projectId: \"PROJECT_ID\" contentId: \"CONTENT_ID\"}) {item {id}}}"}' ``` {% endcurl %} @@ -488,8 +488,8 @@ El siguiente ejemplo agregará un borrador de propuesta a tu proyecto. Reemplaza ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ - --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {item {id}}}"}' + --header 'Authorization: Bearer TOKEN' \ + --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {projectItem {id}}}"}' ``` {% endcurl %} @@ -498,7 +498,7 @@ curl --request POST \ gh api graphql -f query=' mutation { addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) { - item { + projectItem { id } } @@ -512,7 +512,7 @@ La respuesta contendrá la ID de nodo del borrador de propuesta recién creado. { "data": { "addProjectV2ItemById": { - "item": { + "projectItem": { "id": "PVTI_lADOANN5s84ACbL0zgBbxFc" } } @@ -528,7 +528,7 @@ El siguiente ejemplo actualizará los ajustes de tu proyecto. Reemplaza a `PROJE ```shell curl --request POST \ --url https://api.github.com/graphql \ ---header 'Authorization: token TOKEN' \ +--header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation { updateProjectV2(input: { projectId: \"PROJECT_ID\", title: \"Project title\", public: false, readme: \"# Project README\n\nA long description\", shortDescription: \"A short description\"}) { projectV2 { id, title, readme, shortDescription }}}"}' ``` {% endcurl %} @@ -565,7 +565,7 @@ El siguiente ejemplo actualizará el valor de un campo de texto para un elemento ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { text: "Updated text" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -619,7 +619,7 @@ El siguiente ejemplo actualizará el valor de un campo de selección simple para ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -659,7 +659,7 @@ El siguiente ejemplo actualizará el valor de un campo de iteración para un ele ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -694,7 +694,7 @@ El siguiente ejemplo borrará un elemento de un proyecto. Reemplaza a `PROJECT_I ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {deleteProjectV2Item(input: {projectId: \"PROJECT_ID\" itemId: \"ITEM_ID\"}) {deletedItemId}}"}' ``` {% endcurl %} diff --git a/translations/es-ES/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md b/translations/es-ES/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md index a0a5c21c5d..d39c4e42b9 100644 --- a/translations/es-ES/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md +++ b/translations/es-ES/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md @@ -24,7 +24,7 @@ Para transferir una propuesta abierta a otro repositorio, debes tener acceso de {% endnote %} -Cuando transfieres una propuesta, los comentarios, etiquetas y asignados se retienen. Los hitos de la propuesta no se retienen. Esta propuesta se mantendrá en cualquier tablero de proyecto que pertenezca al usuario o que se encuentre en la organización y se eliminará de cualquier tablero de proyecto de los repositorios. Para obtener más información, consulta "[Acerca de los tableros de proyectos](/articles/about-project-boards)." +Cuando transfieres un informe de problemas, se retendrá tanto los comentarios como las personas asignadas. Labels and milestones are also retained if they're present in the target repository, with labels matching by name and milestones matching by both name and due date. Esta propuesta se mantendrá en cualquier tablero de proyecto que pertenezca al usuario o que se encuentre en la organización y se eliminará de cualquier tablero de proyecto de los repositorios. Para obtener más información, consulta "[Acerca de los tableros de proyectos](/articles/about-project-boards)." Las personas o equipos que se mencionan en la propuesta recibirán una notificación que les haga saber que la propuesta se transfirió a un repositorio nuevo. La URL original se redirige a la URL nueva de la propuesta. Las personas que no tengan permisos de lectura en el repositorio nuevo verán un anuncio que les hará saber que la propuesta se transfirió a un repositorio nuevo al que no pueden acceder. diff --git a/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md b/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md index dffbe6224a..15cb0d21cd 100644 --- a/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md +++ b/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md @@ -36,15 +36,22 @@ También puedes configurar las direcciones IP permitidas para las organizaciones ## Agregar una dirección IP permitida +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## Habilitar direcciones IP permitidas +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -69,6 +76,8 @@ Para obtener más información sobre cómo crear una lista de direcciones permit ## Editar una dirección IP permitida +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -76,6 +85,18 @@ Para obtener más información sobre cómo crear una lista de direcciones permit {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 1. Da clic en **Actualizar**. +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Verificar si se permite una dirección IP + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.organizations.security %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## Eliminar una dirección IP permitida diff --git a/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md b/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md index cf4304bc34..7b668c8fea 100644 --- a/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md +++ b/translations/es-ES/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md @@ -741,7 +741,7 @@ Para obtener más información, consulta la sección "[Administrar la publicaci | Acción | Descripción | | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `create (crear)` | Se activa cuando un propietario de una organización crea un rol de repositorio personalizado nuevo. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | -| `destroy (destruir)` | Triggered when an organization owner deletes a custom repository role. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | +| `destroy (destruir)` | Se activa cuando un propietario de organización borra un rol de repositorio personalizado. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | | `actualización` | Se activa cuando un propietario de una organización edita un rol de repositorio personalizado existente. Para obtener más información, consulta la sección "[Administrar los roles personalizados de repositorio en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". | {% endif %} diff --git a/translations/es-ES/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md b/translations/es-ES/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md index 12cf639d3e..f974194597 100644 --- a/translations/es-ES/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md +++ b/translations/es-ES/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md @@ -1,6 +1,6 @@ --- title: Habilitar o inhabilitar los debates de GitHub para una organización -intro: 'Puedes utilizar {% data variables.product.prodname_discussions %} en una organización como un lugar en el que esta pueda tener conversaciones que no sean específicas para un solo repositorio dentro de ella.' +intro: 'You can use {% data variables.product.prodname_discussions %} in an organization as a place for your organization to have conversations that aren''t specific to a single repository within your organization.' permissions: 'Organization owners can enable {% data variables.product.prodname_discussions %} for their organization.' versions: feature: discussions diff --git a/translations/es-ES/content/packages/index.md b/translations/es-ES/content/packages/index.md index a486e6d606..3b87646850 100644 --- a/translations/es-ES/content/packages/index.md +++ b/translations/es-ES/content/packages/index.md @@ -18,6 +18,7 @@ featuredLinks: guideCards: - '{% ifversion docker-ghcr-enterprise-migration %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' - '{% ifversion fpt or ghec or ghes > 3.4 %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' + - '{% ifversion packages-npm-v2 %}/packages/working-with-a-github-packages-registry/working-with-the-npm-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry changelog: label: packages diff --git a/translations/es-ES/content/packages/learn-github-packages/about-permissions-for-github-packages.md b/translations/es-ES/content/packages/learn-github-packages/about-permissions-for-github-packages.md index 504c1ca13a..06f4205897 100644 --- a/translations/es-ES/content/packages/learn-github-packages/about-permissions-for-github-packages.md +++ b/translations/es-ES/content/packages/learn-github-packages/about-permissions-for-github-packages.md @@ -18,20 +18,22 @@ Los permisos de los paquetes pueden ser con alcance de repositorio o de usuario/ Un paquete con alcance de repositorio hereda los permisos y la visibilidad del repositorio al que pertenece el paquete. Puedes encontrar un paquete con alcance de un repositorio específico si vas a la página principal de este y haces clic en el enlace de **Paquetes** a la derecha de la página. {% ifversion fpt or ghec %}Para obtener más información, consulta la sección "[Conectar un repositorio con un paquete](/packages/learn-github-packages/connecting-a-repository-to-a-package)".{% endif %} -Los registros del {% data variables.product.prodname_registry %} que se mencionan a continuación utilizan permisos con alcance de repositorio: +The {% data variables.product.prodname_registry %} registries below **only** use repository-scoped permissions: {% ifversion not fpt or ghec %}- Docker registry (`docker.pkg.github.com`){% endif %} - - Registro de npm + {% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - Registro de RubyGems - Registro de Apache maven - Registro de NuGet +{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %} + {% ifversion fpt or ghec %} ## Permisos granulares para paquetes con alcance de organización/usuario Los paquetes con permisos granulares tienen un alcance de una cuenta personal o de organización. Puedes cambiar el control de accesos y la visibilidad del paquete de forma separada desde un repositorio que esté conectado (o enlazado) a un paquete. -Actualmente, solo el {% data variables.product.prodname_container_registry %} ofrece permisos granulares para tus paquetes de imagen de contenedor. +Currently, the {% data variables.product.prodname_ghcr_and_npm_registry %} offer granular permissions for your container image packages. ## Permisos de visibilidad y acceso para las imágenes de contenedor diff --git a/translations/es-ES/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md b/translations/es-ES/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md index f1b170aa60..015ef76cff 100644 --- a/translations/es-ES/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md +++ b/translations/es-ES/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md @@ -16,7 +16,7 @@ shortTitle: Visibilidad & control de accesos Los paquetes con permisos granulares tienen un alcance de una cuenta personal o de organización. Puedes cambiar la visibilidad y el control de accesos de un paquete por separado desde el repositorio al cual está conectado (o enlazado). -Actualmente, solo puedes utilizar permisos granulares con el {% data variables.product.prodname_container_registry %}. Los permisos granulares no son compatibles en nuestros otros registros de paquete, tales como el registro de npm.{% ifversion docker-ghcr-enterprise-migration %} Para obtener más información sobre la migración del {% data variables.product.prodname_container_registry %}, consulta la sección "[Migrarse al {% data variables.product.prodname_container_registry %} desde el registro de Docker](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)".{% endif %} +Actualmente, solo puedes utilizar permisos granulares con el {% data variables.product.prodname_ghcr_and_npm_registry %}. Granular permissions are not supported in our other package registries, such as the RubyGems registry.{% ifversion docker-ghcr-enterprise-migration %} For more information about migration to the {% data variables.product.prodname_container_registry %}, 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 %} Para obtener más información sobre los permisos de los paquetes con alcance de repositorio, los alcances relacionados con paquetes para los PAT o para administrar permisos para los flujos de trabajo de tus acciones, consulta la sección "[Acerca de los permisos para los Paquetes de GitHub](/packages/learn-github-packages/about-permissions-for-github-packages)". @@ -95,7 +95,7 @@ Para personalizar aún más el acceso a tu imagen de contenedor, consulta la sec {% ifversion fpt or ghec %} ## Asegurarse de que {% data variables.product.prodname_codespaces %} puede acceder a tu paquete -Predeterminadamente, un codespace puede acceder sin problema a algunos paquetes en el Registro de Contenedores de {% data variables.product.prodname_dotcom %}, tales como aquellos que se publican en el mismo repositorio con la opción de **Heredar acceso** seleccionada. Para obtener más información sobre qué tipo de acceso se configura automáticamente, consulta la sección "[Acceder a las imágenes almacenadas en el Registro de Contenedores de {% data variables.product.prodname_dotcom %}](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-github-container-registry)". +By default, a codespace can seamlessly access certain packages in the {% data variables.product.prodname_ghcr_and_npm_registry %}, such as those published in the same repository with the **Inherit access** option selected. For more information on which access is automatically configured, see "[Allowing your codespace to access a private image registry](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-container-registry-and-npm-registry)." De otra manera, para asegurarte de que un codespace tiene acceso a tu paquete, debes otorgar acceso al repositorio en donde se esté lanzando dicho codespace. diff --git a/translations/es-ES/content/packages/learn-github-packages/deleting-and-restoring-a-package.md b/translations/es-ES/content/packages/learn-github-packages/deleting-and-restoring-a-package.md index d4e95b8159..456eca2565 100644 --- a/translations/es-ES/content/packages/learn-github-packages/deleting-and-restoring-a-package.md +++ b/translations/es-ES/content/packages/learn-github-packages/deleting-and-restoring-a-package.md @@ -23,12 +23,12 @@ On {% data variables.product.prodname_dotcom %} if you have the required access, - an entire private package - an entire public package, if there's not more than 5000 downloads of any version of the package - a specific version of a private package -- a specific version of a public package, if the package version doesn't have more than 5000 downloads +- a specific version of a public package, if the package version doesn't have more than 5,000 downloads {% note %} **Note:** -- You cannot delete a public package if any version of the package has more than 5000 downloads. In this scenario, contact [GitHub support](https://support.github.com/contact?tags=docs-packages) for further assistance. +- You cannot delete a public package if any version of the package has more than 5,000 downloads. In this scenario, contact [GitHub support](https://support.github.com/contact?tags=docs-packages) for further assistance. - When deleting public packages, be aware that you may break projects that depend on your package. {% endnote %} @@ -46,7 +46,7 @@ You can use the REST API to manage your packages. For more information, see the {% endif %} -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`.{% endif %} 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.{% data reusables.package_registry.no-graphql-to-delete-packages %} 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 %} @@ -54,18 +54,19 @@ For packages that inherit their permissions and access from repositories, you ca For packages that inherit their access permissions from repositories, you can delete a package if you have admin permissions to the repository. -Repository-scoped packages on {% data variables.product.prodname_registry %} include these packages: -- npm -- RubyGems -- maven -- Gradle -- NuGet -{% ifversion not fpt or ghec %}- Docker images at `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} +The {% data variables.product.prodname_registry %} registries below **only** use repository-scoped permissions: + + {% ifversion not fpt or ghec %}- Docker images at `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} + {% ifversion packages-npm-v2 %}{% else %}- npm{% endif %} + - RubyGems registry + - Apache Maven registry + - NuGet registry + +{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %} {% 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. -For more information, see "[About permissions for {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)." +To delete a package that has granular permissions separate from a repository, such as container images stored at `https://ghcr.io/OWNER/PACKAGE-NAME` or `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`, you must have admin access to the package. For more information, see "[About permissions for {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)." {% endif %} @@ -89,9 +90,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 or ghec %} -For containers or Docker images at `ghcr.io`, GraphQL is not supported but you can use the REST API. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." -{% endif %} +{% data reusables.package_registry.no-graphql-to-delete-packages %}{% ifversion fpt or ghec %} You can however use the REST API. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)."{% endif %} Use the `deletePackageVersion` mutation in the GraphQL API. You must use a token with the `read:packages`, `delete:packages`, and `repo` scopes. For more information about tokens, see "[About {% data variables.product.prodname_registry %}](/packages/publishing-and-managing-packages/about-github-packages#authenticating-to-github-packages)." diff --git a/translations/es-ES/content/packages/learn-github-packages/introduction-to-github-packages.md b/translations/es-ES/content/packages/learn-github-packages/introduction-to-github-packages.md index fc5090006e..5450ffcff9 100644 --- a/translations/es-ES/content/packages/learn-github-packages/introduction-to-github-packages.md +++ b/translations/es-ES/content/packages/learn-github-packages/introduction-to-github-packages.md @@ -51,7 +51,7 @@ For more information about the configuration of {% data variables.product.prodna | | | |--------------------|--------------------| -| 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 %} | +| 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_ghcr_and_npm_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)." @@ -101,7 +101,9 @@ For more information about Docker and the {% data variables.product.prodname_con ## Managing 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)." +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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." + +{% data reusables.package_registry.no-graphql-to-delete-packages %} {% endif %} {% ifversion ghes %} @@ -112,7 +114,9 @@ You can delete a private or public package in the {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" 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 ghes or ghae %}"[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and {% endif %}"[Forming calls with GraphQL](/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)." diff --git a/translations/es-ES/content/packages/learn-github-packages/viewing-packages.md b/translations/es-ES/content/packages/learn-github-packages/viewing-packages.md index 1fe540bc95..bf14b2ab7c 100644 --- a/translations/es-ES/content/packages/learn-github-packages/viewing-packages.md +++ b/translations/es-ES/content/packages/learn-github-packages/viewing-packages.md @@ -23,15 +23,15 @@ versions: Tu capacidad de ver un paquete depende de varios factores. Predeterminadamente, puedes ver todos los paquetes que hayas publicado. -Los paquetes con alcance de repositorio heredan sus permisos y visibilidad desde el repositorio al que pertenece el paquete. Los siguientes registros utilizan este tipo de permisos:{% ifversion not fpt or ghec %} +Los paquetes con alcance de repositorio heredan sus permisos y visibilidad desde el repositorio al que pertenece el paquete. The registries below **only** use this type of permissions:{% ifversion not fpt or ghec %} - Registro de Docker (`docker.pkg.github.com`){% endif %} -- Registro de npm +{% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - Registro de RubyGems - Registro de Apache maven - Registro de NuGet {% ifversion fpt or ghec %} -El registro del contenedor te ofrece la opción de contar con permisos granulares y configuraciones de visibilidad que se pueden personalizar para cada paquete que pertenezca a un usuario personal o a una cuenta de organización. Puedes elegir utilizar permisos granulares o conectar el paquete a un repositorio y heredar sus permisos. Para obtener más información, consulta la sección "[Conectar un repositorio a un paquete](/packages/learn-github-packages/connecting-a-repository-to-a-package)". +The {% data variables.product.prodname_ghcr_and_npm_registry %} offer you the option of granular permissions and visibility settings that can be customized for each package owned by a personal user or organization account. Puedes elegir utilizar permisos granulares o conectar el paquete a un repositorio y heredar sus permisos. Para obtener más información, consulta la sección "[Conectar un repositorio a un paquete](/packages/learn-github-packages/connecting-a-repository-to-a-package)". {% endif %} Para obtener más información, consulta las secciones "[Acerca de los permisos para GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages){% ifversion fpt or ghec %}" y "[Configurar el control de accesos y la visibilidad de un paquete](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility){% endif %}". diff --git a/translations/es-ES/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md b/translations/es-ES/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md index 83da88a908..530258476f 100644 --- a/translations/es-ES/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md +++ b/translations/es-ES/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md @@ -24,9 +24,9 @@ shortTitle: Publicar & instalar con acciones Puedes ampliar las capacidades de CI y CD de tu repositorio publicando o instalando paquetes como parte de tu flujo de trabajo. {% ifversion fpt or ghec %} -### Autenticarse en el {% data variables.product.prodname_container_registry %} +### Authenticating to the {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} {% endif %} @@ -40,7 +40,7 @@ Puedes hacer referencia al `GITHUB_TOKEN` en tu archivo de flujo de trabajo medi {% note %} -**Nota:** Los paquetes que pertenecen a repositorios incluyen RubyGems, npm, Apache Maven, NuGet, {% ifversion fpt or ghec %}y Gradle. {% else %}Los paquetes de Gradle y de Docker que utilizan el designador de nombre del paquete `docker.pkg.github.com`.{% endif %} +**Note:** Some registries, such as RubyGems, {% ifversion packages-npm-v2 %}{% else %}npm, {% endif %}Apache Maven, NuGet, {% ifversion fpt or ghec %}and Gradle{% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`{% endif %}, only allow repository-owned packages. With {% data variables.product.prodname_ghcr_and_npm_registry_full %} you can choose to allow packages to be owned by a user, an organization, or linked to a repository. {% endnote %} @@ -49,11 +49,11 @@ Cuando habilitas las Acciones de GitHub, GitHub instala una App GitHub en tu rep El {% data variables.product.prodname_registry %} te permite subir y extraer paquetes mediante el `GITHUB_TOKEN` que está disponible para un flujo de trabajo de {% data variables.product.prodname_actions %}. {% ifversion fpt or ghec %} -## Acerca de los permisos y el acceso de paquetes para el {% data variables.product.prodname_container_registry %} +## About permissions and package access for {% data variables.product.prodname_ghcr_and_npm_registry %} -El {% data variables.product.prodname_container_registry %} (`ghcr.io`) permite a los usuarios crear y administrar contenedores como recursos independientes a nivel organizacional. Los contenedores pueden pertenecerle a una cuenta personal o de organización y puedes personalizar el acceso a cada uno de ellos por separado desde los permisos de repositorio. +The {% data variables.product.prodname_ghcr_and_npm_registry_full %} allows users to create and administer packages as free-standing resources at the organization level. Packages can be owned by an organization or personal account and you can customize access to each of your packages separately from repository permissions. -Todos los flujos de trabajo que accedan al {% data variables.product.prodname_container_registry %} deben utilizar el `GITHUB_TOKEN` en vez de un token de acceso personal. Para obtener más información acerca de las mejores prácticas de seguridad, consulta la sección "[Fortalecimiento de seguridad para las GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)". +All workflows accessing the {% data variables.product.prodname_ghcr_and_npm_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. Para obtener más información acerca de las mejores prácticas de seguridad, consulta la sección "[Fortalecimiento de seguridad para las GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)". ## Configuración de acceso y permisos predeterminados para los contenedores que se modifican a través de los flujos de trabajo @@ -484,9 +484,9 @@ El instalar los paquetes que hospeda el {% data variables.product.prodname_regis {% data reusables.package_registry.actions-configuration %} {% ifversion fpt or ghec %} -## Actualizar un flujo de trabajo que tiene acceso a `ghcr.io` +## Upgrading a workflow that accesses a registry using a PAT -El {% data variables.product.prodname_container_registry %} es compatible con el `GITHUB_TOKEN` para una autenticación más fácil y segura en tus flujos de trabajo. Si tu flujo de trabajo está utilizando un token de acceso personal (PAT) para autenticarse en `ghcr.io`, entonces te recomendamos ampliamente que actualices tu flujo de trabajo para utilizar el `GITHUB_TOKEN`. +The {% data variables.product.prodname_ghcr_and_npm_registry %} support the `GITHUB_TOKEN` for easy and secure authentication in your workflows. If your workflow is using a personal access token (PAT) to authenticate to the registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. Para obtener más información sobre el `GITHUB_TOKEN`, consulta la sección "[Autenticación en un flujo de trabajo](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)". @@ -501,9 +501,9 @@ El utilizar el `GITHUB_TOKEN` en vez de un PAT, el cual incluya el alcance de `r {% endnote %} 1. Opcionalmente, utiliza el menú desplegable de "rol", selecciona el nivel de acceso predeterminado que te gustaría que tuviera el repositorio en tu imagen de contenedor. ![Niveles de acceso de permisos para otorgar a los repositorios](/assets/images/help/package-registry/repository-permission-options-for-package-access-through-actions.png) -1. Abre tu archivo de flujo de trabajo. En la línea en donde ingresas a `ghcr.io`, reemplaza tu PAT con {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. +1. Abre tu archivo de flujo de trabajo. On the line where you log in to the registry, replace your PAT with {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. -Por ejemplo, este flujo de trabajo publica una imagen de Docker utilizando {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} para autenticarse. +For example, this workflow publishes a Docker image to the {% data variables.product.prodname_container_registry %} and uses {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. ```yaml{:copy} name: Demo Push diff --git a/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md b/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md index 6a866421ce..a47d638a3b 100644 --- a/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md +++ b/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md @@ -42,7 +42,9 @@ Cuando instalas o publicas una imagen de Docker, el {% data variables.product.pr ## Autenticarse en el {% data variables.product.prodname_container_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% ifversion fpt or ghec or ghes > 3.4 %} +Para autenticarte en el {% data variables.product.prodname_container_registry %} (`ghcr.io`) dentro de un flujo de trabajo de {% data variables.product.prodname_actions %}, utiliza el `GITHUB_TOKEN` para obtener la mejor seguridad y experiencia. {% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} +{% endif %} {% ifversion ghes %}Asegúrate de reemplazar a `HOSTNAME` con el nombre de host o dirección IP de {% data variables.product.product_location_enterprise %} en los siguientes ejemplos.{% endif %} diff --git a/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md b/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md index 6714384e4d..8007cd2b6f 100644 --- a/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md +++ b/translations/es-ES/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md @@ -21,6 +21,8 @@ shortTitle: npm registry {% data reusables.package_registry.admins-can-configure-package-types %} +{% ifversion packages-npm-v2 %} +{% else %} ## 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. @@ -28,12 +30,17 @@ If you publish over 1,000 npm package versions to {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" or "[Contacting Support](/packages/learn-github-packages/about-github-packages#contacting-support)." +{% endif %} ## Authenticating to {% data variables.product.prodname_registry %} {% data reusables.package_registry.authenticate-packages %} -{% data reusables.package_registry.authenticate-packages-github-token %} +{% ifversion packages-npm-v2 %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} + +You can also choose to give access permissions to packages independently for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_actions %}. For more information, see "[Ensuring Codespaces access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-codespaces-access-to-your-package) and [Ensuring workflow access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." +{% endif %} ### Authenticating with a personal access token @@ -94,12 +101,24 @@ $ npm login --scope=@OWNER --registry=https://HOSTNAME/_regist {% endnote %} -By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. You can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. +{% ifversion packages-npm-v2 %} +The {% data variables.product.prodname_registry %} registry stores npm packages within your organization or personal account, and allows you to associate a package with a repository. You can choose whether to inherit permissions from a repository, or set granular permissions independently of a repository. +{% endif %} + +By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. If you're running [npm v8.5.3](https://github.com/npm/cli/releases/tag/v8.5.3) or later, you can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. You can publish multiple packages to the same {% data variables.product.prodname_dotcom %} repository by including a `URL` field in the *package.json* file. For more information, see "[Publishing multiple packages to the same repository](#publishing-multiple-packages-to-the-same-repository)." +{% ifversion fpt or ghec %} +When a package is published, it isn't automatically linked to a repository. You can however choose to link your published package to a repository using the user interface or command line. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)." +{% endif %} + You can set up the scope mapping for your project using either a local *.npmrc* file in the project or using the `publishConfig` option in the *package.json*. {% data variables.product.prodname_registry %} only supports scoped npm packages. Scoped packages have names with the format of `@owner/name`. Scoped packages always begin with an `@` symbol. You may need to update the name in your *package.json* to use the scoped name. For example, `"name": "@codertocat/hello-world-npm"`. +{% ifversion packages-npm-v2 %} +When you first publish a package, the default visibility is private. When a package is linked to repository, the package visibility is dependent on the repository's visibility. To change the visibility or set access permissions, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." +{% endif %} + {% data reusables.package_registry.viewing-packages %} ### Publishing a package using a local *.npmrc* file diff --git a/translations/es-ES/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md b/translations/es-ES/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md index b844e2251b..05e0b384b9 100644 --- a/translations/es-ES/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md +++ b/translations/es-ES/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md @@ -47,7 +47,7 @@ To set up a `www` or custom subdomain, such as `www.example.com` or `blog.exampl {% data reusables.pages.sidebar-pages %} 4. Under "Custom domain", type your custom domain, then click **Save**. If you are publishing your site from a branch, this will create a commit that adds a `CNAME` file to the root of your source branch. If you are publishing your site with a custom {% data variables.product.prodname_actions %} workflow , no `CNAME` file is created. For more information about your publishing source, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." ![Save custom domain button](/assets/images/help/pages/save-custom-subdomain.png) -5. Navigate to your DNS provider and create a `CNAME` record that points your subdomain to the default domain for your site. For example, if you want to use the subdomain `www.example.com` for your user site, create a `CNAME` record that points `www.example.com` to `.github.io`. If you want to use the subdomain `www.anotherexample.com` for your organization site, create a `CNAME` record that points `www.anotherexample.com` to `.github.io`. The `CNAME` record should always point to `.github.io` or `.github.io`, excluding the repository name. {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} +5. Navigate to your DNS provider and create a `CNAME` record that points your subdomain to the default domain for your site. For example, if you want to use the subdomain `www.example.com` for your user site, create a `CNAME` record that points `www.example.com` to `.github.io`. If you want to use the subdomain `another.example.com` for your organization site, create a `CNAME` record that points `another.example.com` to `.github.io`. The `CNAME` record should always point to `.github.io` or `.github.io`, excluding the repository name. {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} {% indented_data_reference reusables.pages.wildcard-dns-warning spaces=3 %} {% data reusables.command_line.open_the_multi_os_terminal %} diff --git a/translations/es-ES/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md b/translations/es-ES/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md index 4f87e13fa6..48bb45c952 100644 --- a/translations/es-ES/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md +++ b/translations/es-ES/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md @@ -59,9 +59,9 @@ shortTitle: Crear un sitio de GitHub Pages Puedes agregar más páginas a tu sitio creando más archivos nuevos. Cada archivo estará disponible en tu sitio en la misma estructura de directorios que tu fuente de publicación. Por ejemplo, si la fuente de publicación para tu sitio de proyectos es la rama `gh-pages`, y creas un archivo nuevo denominado `/about/contact-us.md` en la rama `gh-pages`, el archivo estará disponible en {% ifversion fpt or ghec %}`https://.github.io//{% else %}`http(s):///pages///{% endif %}about/contact-us.html`. -También puedes agregar un tema para personalizar la apariencia de tu sitio. For more information, see "[Adding a theme to your {% data variables.product.prodname_pages %} site using Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)". +También puedes agregar un tema para personalizar la apariencia de tu sitio. Para obtener más información, consulta la sección "[Agregar un tema a tu sitio de {% data variables.product.prodname_pages %} utilizando Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)". -Para personalizar aún más tu sitio, puedes usar Jekyll, un generador de sitio estático con soporte integrado para {% data variables.product.prodname_pages %}. For more information, see "[About {% data variables.product.prodname_pages %} and Jekyll](/articles/about-github-pages-and-jekyll)". +Para personalizar aún más tu sitio, puedes usar Jekyll, un generador de sitio estático con soporte integrado para {% data variables.product.prodname_pages %}. Para obtener más información, consulta la sección "[Acerca de {% data variables.product.prodname_pages %} y Jekyll](/articles/about-github-pages-and-jekyll)". ## Leer más diff --git a/translations/es-ES/content/pages/quickstart.md b/translations/es-ES/content/pages/quickstart.md index bcf0d37172..8577fc1f8e 100644 --- a/translations/es-ES/content/pages/quickstart.md +++ b/translations/es-ES/content/pages/quickstart.md @@ -30,7 +30,7 @@ Esta guía te mostrará cómo crear un sitio de usuario en `username.github.io`. 1. Debajo de "Compilación y despliegue", debajo de "Rama", utiliza los menús desplegables de **Ninguna** o de **Rama** y selecciona una fuente de publicación. ![Menú desplegable para seleccionar una fuente de publicación](/assets/images/help/pages/publishing-source-drop-down.png) -1. Optionally, open the `README.md` file of your repository. El archivo `README.md` es donde escribirás el contenido de tu sitio. Puedes editar el archivo o mantener el contenido predeterminado por el momento. +1. Opcionalmente, abre el archivo `README.md` de tu repositorio. El archivo `README.md` es donde escribirás el contenido de tu sitio. Puedes editar el archivo o mantener el contenido predeterminado por el momento. 1. Visita `username.github.io` para ver tu sitio web nuevo. **Nota:** Es posible que tome hasta 10 minutos la publicación de los cambios en tu sitio luego de que subes los cambios a {% data variables.product.product_name %}. ## Cambiar el título y la descripción diff --git a/translations/es-ES/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md b/translations/es-ES/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md index 4918308ca3..63282ba886 100644 --- a/translations/es-ES/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md +++ b/translations/es-ES/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md @@ -75,9 +75,9 @@ Puedes añadir `site.github` a una publicación o página para añadir cualquier {% data reusables.pages.add-jekyll-theme %} Para obtenerr más información, consulta "[Temas](https://jekyllrb.com/docs/themes/)" en la documentación de Jekyll. {% ifversion fpt or ghec %} -Puedes agregar un tema soportado a tu sitio en {% 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 using Jekyll"](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll). +Puedes agregar un tema soportado a tu sitio en {% data variables.product.prodname_dotcom %}. Para obtener más información, consulta la sección "[Temas compatibles](https://pages.github.com/themes/)" en el sitio de {% data variables.product.prodname_pages %} y [Agregar un tema a tu sitio de {% data variables.product.prodname_pages %} utilizando 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)". +Para utilizar cualquier otro tema de código abierto de Jekyll hospedado en {% data variables.product.prodname_dotcom %}, puedes agregarlo manualmente.{% else %} Puedes agregar un tema a tu sitio manualmente.{% endif %} Para obtener más información, consulta la sección{% ifversion fpt or ghec %} [temas hospedados en {% data variables.product.prodname_dotcom %}](https://github.com/topics/jekyll-theme) y {% else %} "[Temas compatibles](https://pages.github.com/themes/)" en el sitio de {% data variables.product.prodname_pages %} y{% endif %} "[Agergar un tema a tu sitio de {% data variables.product.prodname_pages %} utilziando Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)". Puedes sobrescribir cualquiera de los valores por defecto de tu tema editando los archivos del tema. Para obtener más información, consulta la documentación de tu tema y "[Sobrescribir los valores predeterminados del tema](https://jekyllrb.com/docs/themes/#overriding-theme-defaults)" en la documentación de Jekyll. diff --git a/translations/es-ES/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md b/translations/es-ES/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md index 4ad2640d83..8ed6b48817 100644 --- a/translations/es-ES/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md +++ b/translations/es-ES/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md @@ -15,7 +15,7 @@ shortTitle: Configure commit merging {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. Under {% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-6069 %}"Pull Requests"{% else %}"Merge button"{% endif %}, select **Allow merge commits**. This allows contributors to merge a pull request with a full history of commits.{% ifversion default-merge-squash-commit-message %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits-no-dropdown.png){% endif %} +1. Under {% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-6069 %}"Pull Requests"{% else %}"Merge button"{% endif %}, select **Allow merge commits**. Esto permite que los contribuyentes fusionen una solicitud de cambios con un historial completo de confirmaciones.{% ifversion default-merge-squash-commit-message %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits-no-dropdown.png){% endif %} {% ifversion ghes < 3.6 %} ![allow_standard_merge_commits](/assets/images/help/repository/pr-merge-full-commits.png){% endif %} {% ifversion default-merge-squash-commit-message %} diff --git a/translations/es-ES/content/rest/actions/permissions.md b/translations/es-ES/content/rest/actions/permissions.md index 9b62bcbf84..80569d139e 100644 --- a/translations/es-ES/content/rest/actions/permissions.md +++ b/translations/es-ES/content/rest/actions/permissions.md @@ -2,7 +2,7 @@ title: GitHub Actions Permissions allowTitleToDifferFromFilename: true shortTitle: Permisos -intro: 'The {% data variables.product.prodname_actions %} Permissions API allows you to set permissions for what enterprises, organizations, and repositories are allowed to run {% data variables.product.prodname_actions %}, and what actions{% ifversion actions-workflow-policy %} and reusable workflows{% endif %} are allowed to run.' +intro: 'La API de permisos de {% data variables.product.prodname_actions %} te permite configurar los permisos para cuáles empresas, organizaciones y repositorios pueden ejecutar {% data variables.product.prodname_actions %} y qué acciones{% ifversion actions-workflow-policy %} y flujos de trabajo reutilizables{% endif %} pueden ejecutarse.' topics: - API versions: diff --git a/translations/es-ES/content/rest/actions/self-hosted-runners.md b/translations/es-ES/content/rest/actions/self-hosted-runners.md index c1564250a3..53b9bc0019 100644 --- a/translations/es-ES/content/rest/actions/self-hosted-runners.md +++ b/translations/es-ES/content/rest/actions/self-hosted-runners.md @@ -11,7 +11,7 @@ versions: --- -## About the Self-hosted runners API +## Acerca de la API de ejecutores auto-hospedados La API de ejecutores auto-hospedados te permite registrar, ver y borrar a los ejecutores auto-hospedados. {% data reusables.actions.about-self-hosted-runners %} Para obtener más información, consulta "[Alojar tus propios ejecutores](/actions/hosting-your-own-runners)". diff --git a/translations/es-ES/content/rest/actions/workflow-jobs.md b/translations/es-ES/content/rest/actions/workflow-jobs.md index 42ef772cb9..b7679ff11b 100644 --- a/translations/es-ES/content/rest/actions/workflow-jobs.md +++ b/translations/es-ES/content/rest/actions/workflow-jobs.md @@ -10,8 +10,8 @@ versions: ghec: '*' --- -## About the Workflow jobs API +## Acerca de la API de jobs de flujo de trabajo -The Workflow jobs API allows you to view logs and workflow jobs. {% data reusables.actions.about-workflow-jobs %} Para obtener más información, consulta la sección "[Sintaxis de flujode trabajo para GitHub Actions](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions)". +La API de jobs de flujo de trabajo te permite ver bitácoras y jobs de flujo de trabajo. {% data reusables.actions.about-workflow-jobs %} Para obtener más información, consulta la sección "[Sintaxis de flujode trabajo para GitHub Actions](/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions)". {% data reusables.actions.actions-authentication %} {% data reusables.actions.actions-app-actions-permissions-api %} diff --git a/translations/es-ES/content/rest/actions/workflow-runs.md b/translations/es-ES/content/rest/actions/workflow-runs.md index 1bd63a9ca9..77f3b2dcb7 100644 --- a/translations/es-ES/content/rest/actions/workflow-runs.md +++ b/translations/es-ES/content/rest/actions/workflow-runs.md @@ -10,7 +10,7 @@ versions: ghec: '*' --- -## About the Workflow runs API +## Acerca de la API de ejecuciones de flujo de trabajo La API de ejecuciones de flujo de trabajo te permite ver, volver a ejecutar, cancelar y ver las bitácoras de las ejecuciones de los flujos de trabajo. {% data reusables.actions.about-workflow-runs %} Para obtener más información, consulta la sección "[Administrar una ejecución de flujo de trabajo](/actions/automating-your-workflow-with-github-actions/managing-a-workflow-run)". diff --git a/translations/es-ES/content/rest/activity/feeds.md b/translations/es-ES/content/rest/activity/feeds.md index dc6ff2a4ff..b1e7c8de91 100644 --- a/translations/es-ES/content/rest/activity/feeds.md +++ b/translations/es-ES/content/rest/activity/feeds.md @@ -11,9 +11,9 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Feeds API +## Acerca de la API de fuentes -To see what feeds are available to you, use the [Get feeds](#get-feeds) operation. You can then get a feed by sending a request to one of the feed URLs. +Para ver qué fuentes están disponibles para ti, utiliza la operación [Obtener fuentes](#get-feeds). Entonces, podrás obtener una fuente enviando una solicitud a una de las URL de fuentes. ### Ejemplo de obtención de un canal de Atom diff --git a/translations/es-ES/content/rest/activity/notifications.md b/translations/es-ES/content/rest/activity/notifications.md index de88cb71bf..c9a8a99f45 100644 --- a/translations/es-ES/content/rest/activity/notifications.md +++ b/translations/es-ES/content/rest/activity/notifications.md @@ -11,7 +11,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Notifications API +## Acerca de la API de notificaciones La API de notificaciones te permite administrar las notificaciones de {% data variables.product.product_name %}. Para obtener más información sobre las notificaciones, consulta la sección "[Acerca de las notificaciones](/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications)". diff --git a/translations/es-ES/content/rest/activity/watching.md b/translations/es-ES/content/rest/activity/watching.md index c3b3c5bece..63b7ee160f 100644 --- a/translations/es-ES/content/rest/activity/watching.md +++ b/translations/es-ES/content/rest/activity/watching.md @@ -11,6 +11,6 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Watching API +## Acerca de la API de observar -La API de observados permite que los usuarios se suscriban a las notificaciones de la actividad de un repositorio. To bookmark a repository instead, see "[Starring](/rest/reference/activity#starring)." +La API de observados permite que los usuarios se suscriban a las notificaciones de la actividad de un repositorio. Para marcar un repositorio como favorito, en su lugar, utiliza "[Estrellas](/rest/reference/activity#starring)". diff --git a/translations/es-ES/content/rest/apps/apps.md b/translations/es-ES/content/rest/apps/apps.md index 40ee60bdb7..0e4b884b5b 100644 --- a/translations/es-ES/content/rest/apps/apps.md +++ b/translations/es-ES/content/rest/apps/apps.md @@ -1,7 +1,7 @@ --- title: GitHub Apps allowTitleToDifferFromFilename: true -intro: 'The {% data variables.product.prodname_github_apps %} API enables you to retrieve information about {% data variables.product.prodname_github_apps %}.' +intro: 'La API de {% data variables.product.prodname_github_apps %} te permite recuperar información sobre las {% data variables.product.prodname_github_apps %}.' topics: - API miniTocMaxHeadingLevel: 3 @@ -12,7 +12,7 @@ versions: ghec: '*' --- -## About the {% data variables.product.prodname_github_apps %} API +## Acerca de la API de {% data variables.product.prodname_github_apps %} {% data reusables.apps.general-apps-restrictions %} @@ -20,6 +20,6 @@ Esta página lista las terminales a las que puedes acceder mientras te autentica Cuando estás autenticado como una GitHub App, la API de GitHub Apps te habilita para obtener información de alto nivel sobre una GitHub App así como para obtener información específica sobre las instalaciones de éstas. -You can access REST API endpoints while authenticated as a GitHub App. These endpoints have text that says "Works with GitHub Apps." También puedes acceder a estas terminales mientras estás autenticado como un usuario. +Puedes acceder a las terminales de la API de REST mientras estás autenticado como una GitHub App. Estas terminales tienen un texto que dice "Funciona con GitHub Apps". También puedes acceder a estas terminales mientras estás autenticado como un usuario. -A subset of REST API endpoints requires authenticating as a GitHub App installation. Consulta las [Instalaciones](/rest/reference/apps#installations) para obtener una lista de estas terminales. +Un subconjunto de terminales de la API de REST requiere autenticarse como una instalación de GitHub App. Consulta las [Instalaciones](/rest/reference/apps#installations) para obtener una lista de estas terminales. diff --git a/translations/es-ES/content/rest/apps/installations.md b/translations/es-ES/content/rest/apps/installations.md index 8b84958f1a..704bf7eeaf 100644 --- a/translations/es-ES/content/rest/apps/installations.md +++ b/translations/es-ES/content/rest/apps/installations.md @@ -17,4 +17,4 @@ versions: Una _instalación_ se refiere a cualquier cuenta de usuario o de organización que tenga la app instalada. Para obtener más información sobre cómo autenticarte como una instalación y limitar el acceso a repositorios específicos, consulta la sección "[Autenticarte como una instalación](/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation)". -Para listar las instalaciones de una GitHub App para una organización, consulta la sección "[Listar instalaciones de la app para una organización](/rest/reference/orgs#list-app-installations-for-an-organization)". +Para listar las instalaciones de una GitHub App para una organización, consulta la sección "[Listar instalaciones de la app para una organización](/rest/orgs/orgs#list-app-installations-for-an-organization)". diff --git a/translations/es-ES/content/rest/apps/oauth-applications.md b/translations/es-ES/content/rest/apps/oauth-applications.md index 406e67d4ce..a6b28a1c26 100644 --- a/translations/es-ES/content/rest/apps/oauth-applications.md +++ b/translations/es-ES/content/rest/apps/oauth-applications.md @@ -12,6 +12,6 @@ versions: ghec: '*' --- -## About the {% data variables.product.prodname_oauth_app %} API +## Acerca de la API de {% data variables.product.prodname_oauth_app %} -You can use this API to manage the OAuth tokens an {% data variables.product.prodname_oauth_app %} uses to access people's accounts on {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. +Puedes utilizar esta API para administrar los tokens de OAuth que utiliza una {% data variables.product.prodname_oauth_app %} para acceder a las cuentas de las personas en {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. diff --git a/translations/es-ES/content/rest/apps/webhooks.md b/translations/es-ES/content/rest/apps/webhooks.md index 6967cc2fc8..b74e6abe52 100644 --- a/translations/es-ES/content/rest/apps/webhooks.md +++ b/translations/es-ES/content/rest/apps/webhooks.md @@ -1,5 +1,5 @@ --- -title: GitHub App webhooks +title: Webhooks de las GitHub Apps allowTitleToDifferFromFilename: true shortTitle: Webhooks intro: '' @@ -13,6 +13,6 @@ versions: ghec: '*' --- -## About the {% data variables.product.prodname_github_app %} webhooks API +## Acerca de la API de webhooks de {% data variables.product.prodname_github_app %} Un webhook de {% data variables.product.prodname_github_app %} te permite recibir cargas útiles de `POST` por HTTP cada que sucedan ciertos eventos para una app. {% data reusables.webhooks.webhooks-rest-api-links %} diff --git a/translations/es-ES/content/rest/branches/branches.md b/translations/es-ES/content/rest/branches/branches.md index 622c8440a3..073d1e4b05 100644 --- a/translations/es-ES/content/rest/branches/branches.md +++ b/translations/es-ES/content/rest/branches/branches.md @@ -1,6 +1,6 @@ --- title: Ramas -intro: The Branches API allows you to modify branches and their protection settings. +intro: La API de ramas te permite modificar ramas y sus ajustes de protección. versions: fpt: '*' ghes: '*' diff --git a/translations/es-ES/content/rest/code-scanning.md b/translations/es-ES/content/rest/code-scanning.md index 5894ec505c..8d7a3bf1f8 100644 --- a/translations/es-ES/content/rest/code-scanning.md +++ b/translations/es-ES/content/rest/code-scanning.md @@ -1,5 +1,5 @@ --- -title: Code Scanning +title: Escaneo de código intro: 'La API del {% data variables.product.prodname_code_scanning %} te permite recuperar y actualizar las alertas del {% data variables.product.prodname_code_scanning %} desde un repositorio.' versions: fpt: '*' @@ -17,7 +17,7 @@ redirect_from: {% data reusables.code-scanning.beta %} -## About the Code scanning API +## Acerca de la API de escaneo de código La API del {% data variables.product.prodname_code_scanning %} te permite recuperar y actualizar las alertas del {% data variables.product.prodname_code_scanning %} desde un repositorio. Puedes utilizar las terminales para crear reportes automatizados para las alertas del {% data variables.product.prodname_code_scanning %} en una organización o cargar resutlados de análisis que se hayan generado utilizando con herramientas fuera de línea del {% data variables.product.prodname_code_scanning %}. Para obtener más información, consulta la sección "[Encontrar vulnerabilidades de seguridad y errores en tu código](/github/finding-security-vulnerabilities-and-errors-in-your-code)". diff --git a/translations/es-ES/content/rest/codespaces/machines.md b/translations/es-ES/content/rest/codespaces/machines.md index d784ea4430..8606f3b923 100644 --- a/translations/es-ES/content/rest/codespaces/machines.md +++ b/translations/es-ES/content/rest/codespaces/machines.md @@ -1,5 +1,5 @@ --- -title: Codespaces machines +title: Máquinas de codespaces allowTitleToDifferFromFilename: true shortTitle: Máquinas intro: 'La API de máquinas de codespaces permite que un usuario determine qué tipos de máquina están disponibles para crear un codespace, ya sea en un repositorio específico o como un usuario autenticado.' @@ -11,7 +11,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Codespaces machines API +## Acerca de la API de máquinas de Codespaces La API de máquinas de codespaces permite que un usuario determine qué tipos de máquina están disponibles para crear un codespace, ya sea en un repositorio específico o como un usuario autenticado. Para obtener más información, consulta la sección "[Acerca de los tipos de máquina](/codespaces/developing-in-codespaces/changing-the-machine-type-for-your-codespace#about-machine-types)". diff --git a/translations/es-ES/content/rest/collaborators/collaborators.md b/translations/es-ES/content/rest/collaborators/collaborators.md index 8d7ab7ceea..c8081f76c0 100644 --- a/translations/es-ES/content/rest/collaborators/collaborators.md +++ b/translations/es-ES/content/rest/collaborators/collaborators.md @@ -1,6 +1,6 @@ --- title: Colaboradores -intro: The Collaborators API allows you manage collaborators for a repository. +intro: La API de colaboradores te permite administrar colaboradores para un repositorio. versions: fpt: '*' ghes: '*' diff --git a/translations/es-ES/content/rest/collaborators/invitations.md b/translations/es-ES/content/rest/collaborators/invitations.md index c31fc85b4b..a2ed44ed21 100644 --- a/translations/es-ES/content/rest/collaborators/invitations.md +++ b/translations/es-ES/content/rest/collaborators/invitations.md @@ -1,5 +1,5 @@ --- -title: Repository invitations +title: Invitaciones al repositorio allowTitleToDifferFromFilename: true shortTitle: Invitaciones intro: La API de invitaciones al repositorio te permite ver y administrar las invitaciones para colaborar en un repositorio. @@ -13,10 +13,10 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Repository invitations API +## Acerca de la API de invitaciones al repositorio La API de invitaciones al repositorio te permite ver y administrar las invitaciones para colaborar en un repositorio. Los usuarios invitados (o los servicios externos en nombre de estos) pueden elegir aceptar o rechazar la invitación. -To add a user as a collaborator, use the Collaborators API instead. Para obtener más información, consulta la sección "[Agregar un colaborador del repositorio](/rest/collaborators/collaborators#add-a-repository-collaborator)". +Para agregar a un usuario como colaborador, utiliza la API de colaboradores en su lugar. Para obtener más información, consulta la sección "[Agregar un colaborador del repositorio](/rest/collaborators/collaborators#add-a-repository-collaborator)". Toma en cuenta que el [alcance de OAuth](/developers/apps/scopes-for-oauth-apps) `repo:invite` otorga un acceso dirigido a las invitaciones **sin** otorgar también el acceso al código del repositorio, mientras que el alcance `repo` otorga permisos para el código así como para las invitaciones. diff --git a/translations/es-ES/content/rest/commits/comments.md b/translations/es-ES/content/rest/commits/comments.md index 26d7d26c8f..ec773b1c7a 100644 --- a/translations/es-ES/content/rest/commits/comments.md +++ b/translations/es-ES/content/rest/commits/comments.md @@ -12,7 +12,7 @@ miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true --- -## About the commit comments API +## Acerca de la API de comentarios de confirmaciones La API de comentarios de confirmaciones te permite crear y editar los comentarios que se relacionan con confirmaciones específicas. diff --git a/translations/es-ES/content/rest/commits/commits.md b/translations/es-ES/content/rest/commits/commits.md index fc29bbf412..4406a46536 100644 --- a/translations/es-ES/content/rest/commits/commits.md +++ b/translations/es-ES/content/rest/commits/commits.md @@ -1,6 +1,6 @@ --- title: Confirmaciones -intro: 'The Commits API allows you to list, view, and compare commits in a repository. También puedes interactuar con los comentarios y estados de las confirmaciones.' +intro: 'La API de confirmaciones te permite listar, ver y comparar las confirmaciones de un repositorio. También puedes interactuar con los comentarios y estados de las confirmaciones.' versions: fpt: '*' ghes: '*' diff --git a/translations/es-ES/content/rest/commits/statuses.md b/translations/es-ES/content/rest/commits/statuses.md index ba2ecf3b71..02177927a5 100644 --- a/translations/es-ES/content/rest/commits/statuses.md +++ b/translations/es-ES/content/rest/commits/statuses.md @@ -1,6 +1,6 @@ --- title: Estados de confirmación -intro: 'The Commit status API allows external services to mark commits with a status, which is then reflected in pull requests involving those commits.' +intro: 'La API de estados de las confirmaciones permite que los servicios externos marquen las confirmaciones con estados, lo que se refleja posteriormente en las solicitudes de cambio que involucran dichas confirmaciones.' versions: fpt: '*' ghes: '*' @@ -12,13 +12,13 @@ miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true --- -## About the Commit statuses API +## Acerca de la API de estados de las confirmaciones -The Commit status API allows external services to mark commits with an `error`, `failure`, `pending`, or `success` state, which is then reflected in pull requests involving those commits. Statuses can also include an optional `description` and `target_url`, and we highly recommend providing them as they make statuses much more useful in the GitHub UI. +La API de estados de confirmaciones permite que los servicios externos marquen las confirmaciones con un estado de `error`, `failure`, `pending` o `success`, lo que se refleja entonces en las solicitudes de cambios que involucran a dichas confirmaciones. Los estados también pueden incluir una `description` y `target_url` opcionales y recomendamos ampliamente proporcionarlas, ya que hacen que los estados sean mucho más útiles en la IU de GitHub. -As an example, one common use is for continuous integration services to mark commits as passing or failing builds using status. The `target_url` would be the full URL to the build output, and the `description` would be the high level summary of what happened with the build. +Como ejemplo, un uso común es que los servicios de integración continua marquen las confirmaciones como compilaciones que pasan o fallan utilizando los estados. La `target_url` será la URL completa para la salida de la compilación y la `description` será el resumen de alto nivel de lo que pasó con la compilación. -Los estados pueden incluir un `context` para indicar qué servicio está proporcionando ese estado. Por ejemplo, puedes hacer que tu servicio de integración continua cargue estados con un contexto de `ci`, y que una herramienta de auditoria de seguridad cargue estados con un contexto de `security`. You can then use the [Get the combined status for a specific reference](/rest/reference/commits#get-the-combined-status-for-a-specific-reference) to retrieve the whole status for a commit. +Los estados pueden incluir un `context` para indicar qué servicio está proporcionando ese estado. Por ejemplo, puedes hacer que tu servicio de integración continua cargue estados con un contexto de `ci`, y que una herramienta de auditoria de seguridad cargue estados con un contexto de `security`. Puedes utilizar entonces la función de [Obtener el estado combinado para una referencia específica](/rest/reference/commits#get-the-combined-status-for-a-specific-reference) para recuperar todo el estado de una confirmación. Toma en cuenta que el [alcance de OAuth](/developers/apps/scopes-for-oauth-apps) de `repo:status` otorga acceso dirigido a los estados **sin** otorgar también el acceso al código del repositorio, mientras que el alcance `repo` otorga permisos para el código y también para los estados. diff --git a/translations/es-ES/content/rest/dependabot/secrets.md b/translations/es-ES/content/rest/dependabot/secrets.md index ce89fb3d75..cb324aeb93 100644 --- a/translations/es-ES/content/rest/dependabot/secrets.md +++ b/translations/es-ES/content/rest/dependabot/secrets.md @@ -1,7 +1,7 @@ --- -title: Dependabot secrets +title: Secretos del Dependabot shortTitle: Secretos -intro: 'With the {% data variables.product.prodname_dependabot %} secrets API, you can manage and control {% data variables.product.prodname_dependabot %} secrets for an organization or repository.' +intro: 'Con la API de secretos del {% data variables.product.prodname_dependabot %}, puedes administrar y controlar los secretos del {% data variables.product.prodname_dependabot %} de una organización o repositorio.' topics: - API versions: @@ -11,8 +11,8 @@ versions: allowTitleToDifferFromFilename: true --- -## About the {% data variables.product.prodname_dependabot %} secrets API +## Acerca de la API de secretos del {% data variables.product.prodname_dependabot %} -The {% data variables.product.prodname_dependabot %} secrets API lets you create, update, delete, and retrieve information about encrypted secrets. {% data reusables.actions.about-secrets %} Para obtener más información, consulta "[Administrar los secretos cifrados para el Dependabot](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot)". +La API de secretos del {% data variables.product.prodname_dependabot %} te permite crear, actualizar, borrar y recuperar información sobre los secretos cifrados. {% data reusables.actions.about-secrets %} Para obtener más información, consulta "[Administrar los secretos cifrados para el Dependabot](/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/managing-encrypted-secrets-for-dependabot)". -{% data reusables.actions.actions-authentication %} {% data variables.product.prodname_github_apps %} must have the `dependabot_secrets` permission to use this API. Los usuarios autenticados deben tener acceso de colaborador en el repositorio para crear, actualizar o leer los secretos. +La {% data reusables.actions.actions-authentication %} en las {% data variables.product.prodname_github_apps %} debe contar con el permiso de `dependabot_secrets` para utilizar esta API. Los usuarios autenticados deben tener acceso de colaborador en el repositorio para crear, actualizar o leer los secretos. diff --git a/translations/es-ES/content/rest/dependency-graph/dependency-review.md b/translations/es-ES/content/rest/dependency-graph/dependency-review.md index c9602dc122..be53ce4da1 100644 --- a/translations/es-ES/content/rest/dependency-graph/dependency-review.md +++ b/translations/es-ES/content/rest/dependency-graph/dependency-review.md @@ -1,6 +1,6 @@ --- title: Revisión de dependencias -intro: 'The Dependency review API allows you to understand dependency changes, and the security impact of these changes, before you add them to your environment.' +intro: La API de revisión de dependencias te permite entender los cambios a las dependencias y el impacto de seguridad de dichos cambios antes de que los agregues a tu ambiente. versions: fpt: '*' ghes: '>=3.6' @@ -12,8 +12,8 @@ miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true --- -## About the Dependency review API +## Acerca de la API de revisión de dependencias {% data reusables.dependency-review.dependency-review-api-beta-note %} -La API de revisión de dependencias te permite entender los cambios a las dependencias y el impacto de seguridad de estos antes de que los agregues a tu ambiente. You can view the diff of dependencies between two commits of a repository, including vulnerability data for any version updates with known vulnerabilities. Para obtener más información sobre la revisión de dependencias, consulta la sección "[Acerca de la revisión de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review)". +La API de revisión de dependencias te permite entender los cambios a las dependencias y el impacto de seguridad de estos antes de que los agregues a tu ambiente. Puedes ver el diff de las dependencias entre dos confirmaciones de un repositorio, incluyendo los datos de vulnerabilidades para cualquier actualización de versión con las vulnerabilidades conocidas. Para obtener más información sobre la revisión de dependencias, consulta la sección "[Acerca de la revisión de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review)". diff --git a/translations/es-ES/content/rest/dependency-graph/index.md b/translations/es-ES/content/rest/dependency-graph/index.md index 8def7f4624..53e715e1b8 100644 --- a/translations/es-ES/content/rest/dependency-graph/index.md +++ b/translations/es-ES/content/rest/dependency-graph/index.md @@ -1,6 +1,6 @@ --- title: Gráfica de dependencias -intro: 'With the Dependency Graph API, you can view dependency changes and their security impact on your repository.' +intro: 'Con la API de gráfica de dependencias, puedes ver los cambios a las dependencias y su impacto de seguridad en tu repositorio.' versions: fpt: '*' ghes: '>=3.6' diff --git a/translations/es-ES/content/rest/deployments/deployments.md b/translations/es-ES/content/rest/deployments/deployments.md index 6e83072a88..531e552807 100644 --- a/translations/es-ES/content/rest/deployments/deployments.md +++ b/translations/es-ES/content/rest/deployments/deployments.md @@ -19,7 +19,7 @@ Los estados de despliegue permiten que los servicios externos marquen estos desp Los estados de despliegue también incluyen una `description` y una `log_url` opcionales, las cuales se recomiendan ampliamente, ya que hacen que los estados de despliegue sean más útiles. La `log_url` es la URL completa para la salida del despliegue, y la `description` es el resumen de alto nivel de lo que pasó con este despliegue. -GitHub envía eventos de `deployment` y `deployment_status` cuando se crean despliegues y estados de despliegue nuevos. Estos eventos permiten que las integraciones de terceros reciban respuesta de las solicitudes de despliegue y actualizan el estado de un despliegue conforme éste progrese. +GitHub envía eventos de `deployment` y `deployment_status` cuando se crean despliegues y estados de despliegue nuevos. These events allow third-party integrations to receive and respond to deployment requests, and update the status of a deployment as progress is made. Debajo encontrarás un diagrama de secuencia simple que explica cómo funcionarían estas interacciones. diff --git a/translations/es-ES/content/rest/deployments/environments.md b/translations/es-ES/content/rest/deployments/environments.md index 327e07682e..1fa057748e 100644 --- a/translations/es-ES/content/rest/deployments/environments.md +++ b/translations/es-ES/content/rest/deployments/environments.md @@ -1,5 +1,5 @@ --- -title: Deployment environments +title: Ambientes de despliegue allowTitleToDifferFromFilename: true shortTitle: Ambientes intro: 'The Deployment environments API allows you to create, configure, and delete deployment environments.' diff --git a/translations/es-ES/content/rest/deployments/index.md b/translations/es-ES/content/rest/deployments/index.md index 3d0ae0be29..a42a60f38c 100644 --- a/translations/es-ES/content/rest/deployments/index.md +++ b/translations/es-ES/content/rest/deployments/index.md @@ -1,6 +1,6 @@ --- title: Implementaciones -intro: 'The deployments API allows you to create and delete deploy keys, deployments, and deployment environments.' +intro: 'La API de despliegues te permite crear y borrar llaves de despliegue, despliegues y ambientes de despliegue.' allowTitleToDifferFromFilename: true versions: fpt: '*' diff --git a/translations/es-ES/content/rest/enterprise-admin/announcement.md b/translations/es-ES/content/rest/enterprise-admin/announcement.md index 1ef49c0939..b0c0da8f8f 100644 --- a/translations/es-ES/content/rest/enterprise-admin/announcement.md +++ b/translations/es-ES/content/rest/enterprise-admin/announcement.md @@ -1,6 +1,6 @@ --- title: Anuncio -intro: The Announcement API allows you to manage the global announcement banner in your enterprise. +intro: La API de anuncios te permite administrar el letrero de anuncios globales en tu empresa. versions: ghes: '*' ghae: '*' diff --git a/translations/es-ES/content/rest/enterprise-admin/org-pre-receive-hooks.md b/translations/es-ES/content/rest/enterprise-admin/org-pre-receive-hooks.md index 5630a14282..ad853ad3f9 100644 --- a/translations/es-ES/content/rest/enterprise-admin/org-pre-receive-hooks.md +++ b/translations/es-ES/content/rest/enterprise-admin/org-pre-receive-hooks.md @@ -1,6 +1,6 @@ --- -title: Organization Pre-receive Hooks -intro: The Organization Pre-receive Hooks API allows you to view and modify enforcement of the pre-receive hooks that are available to an organization. +title: Ganchos de pre-recepción de organización +intro: La API de ganchos de pre-recepción de organización te permite ver y modificar el requisito de tener ganchos de pre-recepción que están disponibles para una organización. versions: ghes: '*' topics: @@ -20,4 +20,4 @@ allowTitleToDifferFromFilename: true Los valores posibles para *enforcement* son `enabled`, `disabled` y `testing`. El valor `disabled` indica que el gancho de pre-recepción no se ejecutará. El valor `enabled` indica que se ejecutará y rechazará cualquier carga que resulte en un estado diferente a zero. El valor `testing` indica que el script va a ejecutarse pero no va a causar que se rechace ninguna carga. -`configuration_url` may be a link to this endpoint or this hook's global configuration. Solo los administradores de sistema pueden acceder a la configuración global. +`configuration_url` podría ser un enlace a esta terminal o a la configuración global de este gancho. Solo los administradores de sistema pueden acceder a la configuración global. diff --git a/translations/es-ES/content/rest/enterprise-admin/pre-receive-environments.md b/translations/es-ES/content/rest/enterprise-admin/pre-receive-environments.md index 3adfadbdd5..295b22e3bd 100644 --- a/translations/es-ES/content/rest/enterprise-admin/pre-receive-environments.md +++ b/translations/es-ES/content/rest/enterprise-admin/pre-receive-environments.md @@ -1,5 +1,5 @@ --- -title: Pre-receive Environments +title: Ambientes de pre-recepción intro: 'La API de Ambientes de Pre-recepción te permite crear, listar, actualizar y borrar ambientes para los ganchos de pre-recepción.' versions: ghes: '*' diff --git a/translations/es-ES/content/rest/enterprise-admin/pre-receive-hooks.md b/translations/es-ES/content/rest/enterprise-admin/pre-receive-hooks.md index 32ec6d3ef6..644022b2bb 100644 --- a/translations/es-ES/content/rest/enterprise-admin/pre-receive-hooks.md +++ b/translations/es-ES/content/rest/enterprise-admin/pre-receive-hooks.md @@ -1,5 +1,5 @@ --- -title: Pre-receive Hooks +title: Ganchos de pre-recepción intro: 'La API de Ganchos Pre-recepción te permite crear, listar, actualizar y borrar los ganchos de pre-recepción.' versions: ghes: '*' diff --git a/translations/es-ES/content/rest/gists/gists.md b/translations/es-ES/content/rest/gists/gists.md index 37dd44d715..aab584797f 100644 --- a/translations/es-ES/content/rest/gists/gists.md +++ b/translations/es-ES/content/rest/gists/gists.md @@ -1,6 +1,6 @@ --- title: Gists -intro: 'The Gists API enables the authorized user to list, create, update and delete the public gists on GitHub.' +intro: 'La API de Gists habilita al usuario habilitado para listar, crear, actualizar y borrar los gists públicos en GitHub.' versions: fpt: '*' ghes: '*' @@ -11,9 +11,9 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Gists API +## Acerca de la API de Gists -The Gist API lets you view and modify gists. For more information about gists, see "[Editing and sharing content with gists](/get-started/writing-on-github/editing-and-sharing-content-with-gists)." +La API de Gists te permite ver y modificar los gists. Para obtener más información sobre los gists, consulta la sección "[Editar y compartir el contenido con los gists](/get-started/writing-on-github/editing-and-sharing-content-with-gists)". ### Autenticación diff --git a/translations/es-ES/content/rest/git/blobs.md b/translations/es-ES/content/rest/git/blobs.md index d71ecb60fa..66777ae4f4 100644 --- a/translations/es-ES/content/rest/git/blobs.md +++ b/translations/es-ES/content/rest/git/blobs.md @@ -1,8 +1,8 @@ --- -title: Git blobs +title: Blobs de Git shortTitle: Blobs allowTitleToDifferFromFilename: true -intro: 'The Git blob API lets you create and get a Git blob (binary large object), the object type used to store the contents of each file in a repository.' +intro: 'La API de blobs de Git te permite crear y obtener un blob de Git (BLOB: Objeto binario grande, por sus siglas en inglés), el cual es el tipo de objeto que se utiliza para almacenar el contenido de cada archivo en un repositorio.' versions: fpt: '*' ghes: '*' @@ -13,7 +13,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Git blob API +## Acerca de la API de blobs de Git Un blob (objeto binario grande, por sus siglas en inglés) de Git es el tipo de objeto que se utiliza para almacenar el contenido de cada archivo en un repositorio. El hash SHA-1 del archivo se calcula y almacena en el objeto del blob. Estas terminales te permiten leer y escribir [objetos de blob](https://git-scm.com/book/en/v1/Git-Internals-Git-Objects) en tu base de datos de Git en {% data variables.product.product_name %}. Los blobs aprovechan [estos tipos de medios personalizados](#custom-media-types-for-blobs). Puedes leer más acerca del uso de tipos de medios en la API [aquí](/rest/overview/media-types). diff --git a/translations/es-ES/content/rest/git/tags.md b/translations/es-ES/content/rest/git/tags.md index 23b43248c7..ed8159a146 100644 --- a/translations/es-ES/content/rest/git/tags.md +++ b/translations/es-ES/content/rest/git/tags.md @@ -1,5 +1,5 @@ --- -title: Git tags +title: Etiquetas de Git shortTitle: Etiquetas allowTitleToDifferFromFilename: true intro: 'The Git tags API lets you read and write tag objects to your Git database on {% data variables.product.product_name %}.' diff --git a/translations/es-ES/content/rest/gitignore.md b/translations/es-ES/content/rest/gitignore.md index b8eeb69e0f..1932f57825 100644 --- a/translations/es-ES/content/rest/gitignore.md +++ b/translations/es-ES/content/rest/gitignore.md @@ -13,7 +13,7 @@ redirect_from: - /rest/reference/gitignore --- -## About the Gitignore API +## Acerca de la API de Gitignore Cuando creas un repositorio nuevo en {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} a través de la API, puedes especificar una [plantilla de.gitignore](/github/getting-started-with-github/ignoring-files) para aplicarla al repositorio cuando lo crees. La API de plantillas de .gitignore lista y recupera plantillas del [repositorio de .gitignore](https://github.com/github/gitignore) de {% data variables.product.product_name %}. diff --git a/translations/es-ES/content/rest/guides/getting-started-with-the-checks-api.md b/translations/es-ES/content/rest/guides/getting-started-with-the-checks-api.md index ae540963c2..cd65214c85 100644 --- a/translations/es-ES/content/rest/guides/getting-started-with-the-checks-api.md +++ b/translations/es-ES/content/rest/guides/getting-started-with-the-checks-api.md @@ -41,7 +41,7 @@ Una ejecución de verificación es una prueba individual que forma parte de una ![Flujo de trabajo de las ejecuciones de verificación](/assets/images/check_runs.png) -Si una ejecución de verificación permanece en un estado incompleto por más de 14 días, entonces la `conclusion` de ésta se convierte en `stale` y aparece en {% data variables.product.prodname_dotcom %} como quedada con el {% octicon "issue-reopened" aria-label="The issue-reopened icon" %}. Solo {% data variables.product.prodname_dotcom %} puede marcar las ejecuciones de verificación como `stale`. Para obtener más información acerca de las conclusiones posibles para una ejecución de verificación, consulta el [parámetro de `conclusion`](/rest/reference/checks#create-a-check-run--parameters). +Si una ejecución de verificación permanece en un estado incompleto por más de 14 días, entonces la `conclusion` de ésta se convierte en `stale` y aparece en {% data variables.product.prodname_dotcom %} como desactualizada con el {% octicon "issue-reopened" aria-label="The issue-reopened icon" %}. Solo {% data variables.product.prodname_dotcom %} puede marcar las ejecuciones de verificación como `stale`. Para obtener más información acerca de las conclusiones posibles para una ejecución de verificación, consulta el [parámetro de `conclusion`](/rest/reference/checks#create-a-check-run--parameters). Puedes crear la ejecución de verificación tan pronto como recibas el webhook de [`check_suite`](/webhooks/event-payloads/#check_suite), aún si ésta todavía no se completa. Puedes actualizar el `status` de la ejecución de verificación ya que se completa con los valores `queued`, `in_progress`, o `completed`, y puedes actualizar la `output` conforme vayan estando disponibles los detalles adicionales. Una ejecución de verificación puede contener estampas de tiempo, un enlace para encontrar más detalles en tu sitio externo, anotaciones detalladas para líneas de código específcas, e información acerca del análisis que se llevó a cabo. diff --git a/translations/es-ES/content/rest/guides/getting-started-with-the-rest-api.md b/translations/es-ES/content/rest/guides/getting-started-with-the-rest-api.md index 3453491ad2..1a65d14e32 100644 --- a/translations/es-ES/content/rest/guides/getting-started-with-the-rest-api.md +++ b/translations/es-ES/content/rest/guides/getting-started-with-the-rest-api.md @@ -1,9 +1,6 @@ --- title: Iniciar con la API de REST -intro: 'Aprende las bases para utilizar la API de REST, comenzando con la autenticación y algunos ejemplos de las terminales.' -redirect_from: - - /guides/getting-started - - /v3/guides/getting-started +intro: 'Aprende cómo utilizar la API de REST de {% data variables.product.prodname_dotcom %}.' versions: fpt: '*' ghes: '*' @@ -11,418 +8,754 @@ versions: ghec: '*' topics: - API -shortTitle: Introducción - API de REST +shortTitle: Utilizar la API +miniTocMaxHeadingLevel: 3 --- +## Acerca de la API de REST de {% data variables.product.prodname_dotcom %} -Vamos a explicar los conceptos centrales de la API mientras incluímos algunos casos de uso cotidiano. +Este artículo describe cómo utilizar la API de REST de {% data variables.product.prodname_dotcom %} usando el {% data variables.product.prodname_cli %}, JavaScript o cURL. Para encontrar una guía de inicio rápido, consulta la "[Guía de inicio rápido para la API de REST de GitHub](/rest/quickstart)". -{% data reusables.rest-api.dotcom-only-guide-note %} +Cuando haces una solicitud a la API de REST, especificarás un método HTTP y una ruta. Adicionalmente, también podrías especificar encabezados de solicitud y parámetros de ruta, consulta o cuerpo. La API devolverá el código de estado de respuesta, los encabezados de respuesta y, potencialmente, un cuerpo de respuesta. -## Resumen +La documentación de referencia de la API de REST describe el método HTTP, ruta y parámetros para cada operación. También muestra solicitudes y respuestas de ejemplo para cada operación. Para obtener más información, consulta la [documentación de referencia de REST](/rest). -La mayoría de las aplicaciones utilizan una [biblioteca de seguridad][wrappers] en el lenguaje de programación que escojas, pero es importante que te familiarices con los métodos HTTP básicos de la API primero. +## Hacer una solicitud -No hay una forma más fácil de hacerlo que a través de [cURL][curl].{% ifversion fpt or ghec %} Si estás utilizando un cliente alternativo, tioma en cuenta que necesitarás enviar un [encabezado de Agente de Usuario](/rest/overview/resources-in-the-rest-api#user-agent-required) válido en tu solicitud.{% endif %} +Para hacer una solicitud, primero encuentra el método HTTP y la ruta para la operación que quieres utilizar. Por ejemplo, la operación "Get Octocat" utiliza el método `GET` y la ruta `/octocat`. Para encontrar la documentación completa para esta operación, consulta "[Get Octocat](/rest/meta#get-octocat)". -### Hola Mundo +{% cli %} -Comencemos por probar nuestra configuración. Abre una instancia de la línea de comandos e ingresa el siguiente comando: +{% note %} + +**Nota**: Debes instalar el {% data variables.product.prodname_cli %} para poder utilizar los comandos en los ejemplos del {% data variables.product.prodname_cli %}. Para encontrar instrucciones de instalación, consulta el [repositorio de {% data variables.product.prodname_cli %}](https://github.com/cli/cli#installation). + +{% endnote %} + +Si aún no estás autenticado en el {% data variables.product.prodname_cli %}, debes utilizar el subcomando `gh auth login` para autenticarte antes de hacer hacer cualquier tipo de solicitud. Para obtener más información, consulta la sección "[Autenticarse](#authenticating)". + +Para hacer una solicitud utilizando el {% data variables.product.prodname_cli %}, utiliza el subcomando `api` junto con la ruta. Utiliza el marcador `--method` o `-X` para especificar el método. ```shell -$ curl https://api.github.com/zen - -> Keep it logically awesome. +gh api /octocat --method GET ``` -La respuesta será una selección aleatoria de nuestra filosofía de diseño. +{% endcli %} -Posteriormente, vamos a hacer `GET` para el [perfil de GitHub][users api] de [Chris Wanstrath][defunkt github]: +{% javascript %} + +{% note %} + +**Nota**: Debes instalar e importar `octokit` para utilizar la librería Octokit.js que se utiliza en los ejemplos de JavaScript. Para obtener más información, consulta [el README de Octokit.js](https://github.com/octokit/octokit.js/#readme). + +{% endnote %} + +Para hacer una solicitud utilizando JavaScript, puedes usar Octokit.js. Para obtener más información, consulta [el README de Octokit.js](https://github.com/octokit/octokit.js/#readme). + +Primero, crea una instancia de `Octokit`.{% ifversion ghes or ghae %} Ajusta la URL base en `{% data variables.product.api_url_code %}`. Reemplaza a `[hostname]` con el nombre de {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}", +{% endif %}}); +``` + +Luego, utiliza el método `request` para hacer solilcitudes. Pasa el método HTTP y la ruta como el primer argumento. + +```javascript +await octokit.request("GET /octocat", {}); +``` + +{% endjavascript %} + +{% curl %} + +Antepón la URL base para la API de REST de {% data variables.product.prodname_dotcom %}, `{% data variables.product.api_url_code %}`, a la ruta para obtener la URL completa: `{% data variables.product.api_url_code %}/octocat`.{% ifversion ghes or ghae %} Reemplaza a `[hostname]` con el nombre de {% data variables.product.product_location %}.{% endif %} + +Utiliza el comando `curl` en tu línea de comando. Utiliza el marcador `--request` o `-X` seguido del método HTTP. Utiliza el marcador `--url` seguido de la URL completa. ```shell -# GET /users/defunkt -$ curl https://api.github.com/users/defunkt - -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> ... -> } +curl --request GET \ +--url "https://api.github.com/octocat" ``` -Mmmm, sabe a [JSON][json]. Vamos a agregar el marcador `-i` para que incluya los encabezados: +{% note %} + +**Nota**: Si obtienes un mensaje similar a "command not found: curl", puede que necesites descargar e instalar cURL. Para obtener más información, consulta [la página de descarga del proyecto cURL](https://curl.se/download.html). + +{% endnote %} + +{% endcurl %} + +Sigue leyendo para aprender cómo autenticarte, enviar parámetros y utilizar la respuesta. + +## Autenticarse + +Muchas operaciones necesitan autenticación o devuelven información adicional si estás autenticado. Adicionalmente, puedes hacer más solicitudes por hora cuando estás autenticado.{% cli %} Aunque se puede acceder a algunas operaciones de la API de REST sin autenticación, debes autenticar en el {% data variables.product.prodname_cli %} para utilizar el subcomando `api`.{% endcli %} + +### Acerca de los tokens + +Puedes autenticar tu solicitud agregando un token. + +Si quieres utilizar la API de REST de {% data variables.product.company_short %} para uso personal, puedes crear un token de acceso personal (PAT). Las operaciones de la API de REST que se utilizan en este artículo requieren del alcance `repo` para los tokens de acceso personal. Otras operaciones podrían requerir alcances diferentes. Para obtener más información acerca de cómo crear un token de acceso personal, consulta la sección "[Crear un token de acceso personal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)". + +Si quieres utilizar la API en nombre de una organización o de otro usuario, {% data variables.product.company_short %} recomienda que utilices una {% data variables.product.prodname_github_app %}. Si una operación está disponible para las {% data variables.product.prodname_github_apps %}, la documentación de referencia de REST para dicha operación dirá "Works with GitHub Apps". Las operaciones de la API de REST que se utilizan en este artículo requieren permisos de lectura y escritura de `issues` para las {% data variables.product.prodname_github_apps %}. Otras operaciones podrían requerir permisos diferentes. Para obtener más información, consulta las secciones "[Crear una GitHub App](/developers/apps/building-github-apps/creating-a-github-app)", "[Autenticarte con las GitHub Apps](/developers/apps/building-github-apps/authenticating-with-github-apps)" e "[Identificar y autorizar usuarios para las GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)". + +Si quieres utilizar la API en un flujo de trabajo de {% data variables.product.prodname_actions %}, {% data variables.product.company_short %} recomienda que te autentiques con el `GITHUB_TOKEN` integrado en vez de crear un token. Puedes otorgar permisos al `GITHUB_TOKEN` con la clave `permissions`. Para obtener más información, consulta la sección "[Autenticación automática de tokens](/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)". + +### Ejemplo de autenticación + +{% cli %} + +Con el {% data variables.product.prodname_cli %}, no necesitas crear un token de acceso anticipadamente. Utiliza el subcomando `auth login` para autenticarte en el {% data variables.product.prodname_cli %}: ```shell -$ curl -i https://api.github.com/users/defunkt - -> HTTP/2 200 -> server: GitHub.com -> date: Thu, 08 Jul 2021 07:04:08 GMT -> content-type: application/json; charset=utf-8 -> cache-control: public, max-age=60, s-maxage=60 -> vary: Accept, Accept-Encoding, Accept, X-Requested-With -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" -> last-modified: Fri, 01 Nov 2019 21:56:00 GMT -> x-github-media-type: github.v3; format=json -> access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, Deprecation, Sunset -> access-control-allow-origin: * -> strict-transport-security: max-age=31536000; includeSubdomains; preload -> x-frame-options: deny -> x-content-type-options: nosniff -> x-xss-protection: 0 -> referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin -> content-security-policy: default-src 'none' -> x-ratelimit-limit: 60 -> x-ratelimit-remaining: 53 -> x-ratelimit-reset: 1625731053 -> x-ratelimit-resource: core -> x-ratelimit-used: 7 -> accept-ranges: bytes -> content-length: 1305 -> x-github-request-id: 9F60:7019:ACC5CD5:B03C931:60E6A368 -> -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> -> ... -> } +gh auth login ``` -Hay algunas partes interesantes en los encabezados de la respuesta. Como lo esperábamos, el `Content-Type` es `application/json`. +Puedes utilizar el marcador `--scopes` para especificar los alcances que quieres. Si quieres autenticarte con un token que hayas creado, puedes utilizar el marcador `--with-token`. Para obtener más información, consulta la [documentación de `auth login` del {% data variables.product.prodname_cli %}](https://cli.github.com/manual/gh_auth_login). -Cualquier encabezado que comience como `X` se refiere a un encabezado personalizado, y no se incluirá en la especificación de HTTPS. Por ejemplo, toma en cuenta los encabezados `X-RateLimit-Limit` y `X-RateLimit-Remaining`. Este par de encabezados indican [cuántas solicitudes puede hacer un cliente][rate-limiting] en un periodo continuo (habitualmente, una hora) y cuántas de ellas ya ha gastado el cliente. +{% endcli %} -## Autenticación - -Los clientes sin autenticar pueden hacer hasta 60 solicitudes por hora. Para obtener más solicitudes por hora, necesitaremos _autenticarnos_. De hecho, para hacer cualquier cosa interesante con la API de {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} se necesita [autenticación][authentication]. - -### Utilizar tokens de acceso personal - -La forma más fácil y mejor de autenticarte con la API de {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} es utilizando la autenticación básica [mediante tokens de OAuth](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens). Éstos incluyen [tokens de acceso personal][personal token]. - -Utiliza el marcador `-u` para configurar tu nombre de usuario: - -```shell -$ curl -i -u your_username {% data variables.product.api_url_pre %}/users/octocat - -``` - -Cuando se te solicite, puedes ingresar tu token de OAuth, pero te recomendamos que configures una variable para éste: - -Puedes utilizar `-u "your_username:$token"` y configurar una variable para `token` y así evitar que tu token se quede en el historial del shell, lo cual debes evitar. - -```shell -$ curl -i -u your_username:$token {% data variables.product.api_url_pre %}/users/octocat - -``` - -Cuando te autentiques, debes ver como tu límite de tasa sube hasta 5,000 solicitudes por hora, como se indicó en el encabezado `X-RateLimit-Limit`. Adicionalmente a proporcionar más llamadas por hora, la autenticación te permite leer y escribir información privada utilizando la API. - -Puedes [crear un**token de acceso personal**][personal token] fácilmente utilizando tu [página de configuración para tokens de acceso personal][tokens settings]: +{% javascript %} {% warning %} -Para mantener tu información segura, te recomendamos ampliamente que configures un vencimiento para tus tokens de acceso personal. +**Advertencia**: Trata tu token de acceso como si fuera una contraseña. + +Para mantener seguro a tu token, puedes almacenarlo como un secreto y ejecutar tu script mediante {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". + +{% ifversion ghec or fpt %}También puedes almacenar tu token como un secreto de {% data variables.product.prodname_codespaces %} y ejecutar tu script en {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta la sección "[Administrar los secretos cifrados para tus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + +Si estas opciones no son posibles, considera utilizar otro servicio tal como [el 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para almacenar tu token de forma segura. {% endwarning %} -{% ifversion fpt or ghes or ghec %} -![Selección de token personal](/assets/images/personal_token.png) +Para autenticarte con la librería Octokit.js, puedes pasar tu token cuando crees una instancia de `Octokit`. Reemplaza tu `YOUR-TOKEN` con tu token.{% ifversion ghes or ghae %} Reemplaza `[hostname]` con el nombre de {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: 'YOUR-TOKEN', +}); +``` + +{% endjavascript %} + +{% curl %} + +{% warning %} + +**Advertencia**: Trata a tu token de acceso como si fuera una contraseña. + +Para ayudarte a mantener segura tu cuenta, puedes utilizar el {% data variables.product.prodname_cli %} en vez de cURL. El {% data variables.product.prodname_cli %} se encargará de la autenticación por ti. Para obtener más información, consulta la versión del {% data variables.product.prodname_cli %} de esta página. + +{% ifversion ghec or fpt %}También puedes almacenar tu token como un secreto de {% data variables.product.prodname_codespaces %} y utilizar la línea de comandos a través de {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta la sección "[Administrar los secretos cifrados para tus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + +Si estas opciones no son posibles, considera utilizar otro servicio tal como [el 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para almacenar tu token de forma segura. + +{% endwarning %} + +Con cURL, enviarás un encabezado de `Authorization` con tu token. Reemplaza `YOUR-TOKEN` con tu token: + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% note %} + +**Nota:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + +{% endcurl %} + +### Ejemplo de autenticación para {% data variables.product.prodname_actions %} + +{% cli %} + +También puedes utilizar la palabra clave `run` para ejecutar los comandos del {% data variables.product.prodname_cli %} en tus flujos de trabajo de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Sintaxis de flujo de trabajo para las GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)". + +En vez de utilizar el comando `gh auth login`, pasa tu token como una variable de ambiente llamada `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recomienda que te autentiques con el `GITHUB_TOKEN` integrado en vez de crear un token. Si esto no es posible, almacena tu token como un secreto y reemplaza a `GITHUB_TOKEN` con el nombre de tu secreto en el siguiente ejemplo. Para obtener más información sobre `GITHUB_TOKEN`, consulta la sección "[Autenticación automática de token](/actions/security-guides/automatic-token-authentication)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api /octocat +``` + +{% endcli %} + +{% javascript %} + +También puedes utilizar la palabra clave `run` para ejecutar tus scripts de JavaScript en tus flujos de trabajo de {% data variables.product.prodname_actions %}. Para obtener más información, consultala sección "[Sintaxis de flujo de trabajo para GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)". + +{% data variables.product.prodname_dotcom %} recomienda que te autentiques con el `GITHUB_TOKEN` integrado en vez de crear un token. Si esto es imposible, almacena tu token como un secreto y reemplaza a `GITHUB_TOKEN` por el nombre de tu secreto en el siguiente ejemplo. Para obtener más información sobre el `GITHUB_TOKEN`, consulta ""[Automatic token authentication](/actions/security-guides/automatic-token-authentication)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". + +El siguiente flujo de trabajo de ejemplo: + +1. Verifica el contenido del repositorio +1. Configura a Node.js +1. Instala `octokit` +1. Almacena el valor de `GITHUB_TOKEN` como una variable de ambiente llamada `TOKEN` y ejecuta `.github/actions-scripts/use-the-api.mjs`, que puede acceder a esa variable de ambiente como `process.env.TOKEN` + +Flujo de trabajo de ejemplo: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + node .github/actions-scripts/use-the-api.mjs +``` + +Script de JavaScript de ejemplo con la ruta de archivo `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit"; + +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: process.env.TOKEN, +}); + +await octokit.request("GET /octocat", {}); +``` + +En vez de almacenar tu script en un archivo por separado y ejecutarlo desde tu flujo de trabajo, puedes utilizar la acción `actions/github-script` para ejecutar un script. Para obtener más información, consulta el [README de actions/github-script](https://github.com/actions/github-script). + +```yaml +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - uses: {% data reusables.actions.action-github-script %} + with: + github-token: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + script: | + await github.request('GET /octocat', {}) +``` + +{% endjavascript %} + +{% curl %} + +También puedes utilizar la palabra clave `run` para ejecutar comandos de cURL en tus flujos de trabajo de {% data variables.product.prodname_actions %}. Para obtener más información, consultala sección "[Sintaxis de flujo de trabajo para GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)". + +{% data variables.product.prodname_dotcom %} recomienda que te autentiques con el `GITHUB_TOKEN` integrado en vez de crear un token. Si esto es imposible, almacena tu token como un secreto y reemplaza a `GITHUB_TOKEN` por el nombre de tu secreto en el siguiente ejemplo. Para obtener más información sobre el `GITHUB_TOKEN`, consulta ""[Automatic token authentication](/actions/security-guides/automatic-token-authentication)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/octocat" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## Utilizar encabezados + +La mayoría de las operaciones especifican que deberías pasar un encabezado de `Accept` con un valor de `application/vnd.github.v3+json`. Otras operaciones podrían especificar que deberías enviar un encabezado diferente de `Accept` o encabezados adicionales. + +{% cli %} + +Para enviar un encabezado con el {% data variables.product.prodname_cli %}, utiliza el marcador `--header` o `-H` seguido del encabezado en el formato `key: value`. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /octocat +``` + +{% endcli %} + +{% javascript %} + +La librería Octokit.js pasa automáticamente el encabezado `Accept: application/vnd.github.v3+json`. Para pasar encabezados adicionales o un encabezado de `Accept` diferente, agrega la propiedad `headers` al objeto que se está pasando como un segundo argumento del método `request`. El valor de la propiedad `headers` es un objeto con los nombres de encabezado como claves y los valores de encabezado como valores. Por ejemplo, para enviar un encabezado de `content-type` con un valor de `text/plain`: + +```javascript +await octokit.request("GET /octocat", { + headers: { + "content-type": "text/plain", + }, +}); +``` + +{% endjavascript %} + +{% curl %} + +Para enviar un encabezado con cURL, utiliza el marcador `--header` o `-H` seguido del encabezado en formato `key: value`. + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% endcurl %} + +## Utilizar parámetros de ruta + +Los parámetros de ruta modifican la ruta de operación. Por ejemplo, la ruta de "Listar propuestas de repositorio" es `/repos/{owner}/{repo}/issues`. Las llaves `{}` denotan parámetros de ruta que necesitas especificar. En este caso, debes especificar el nombre y propietario del repositorio. Para encontrar la documentación de referencia para esta operación, consulta la "[Lista de propuestas de repositorio](/rest/issues/issues#list-repository-issues)". + +{% cli %} + +{% ifversion ghes or ghae %} +{% note %} + +**Nota:** Para que este comando funcione para {% data variables.product.product_location %}, reemplaza `octocat/Spoon-Knife` con un repositorio que le pertenezca a {% data variables.product.product_location %}. De lo contrario, vuelve a ejecutar el comando `gh auth login` para autenticarte en {% data variables.product.prodname_dotcom_the_website %} en vez de en {% data variables.product.product_location %}. + +{% endnote %} {% endif %} -{% ifversion ghae %} -![Selección de token personal](/assets/images/help/personal_token_ghae.png) +Para obtener propuestas del repositorio `octocat/Spoon-Knife`, reemplaza `{owner}` con `octocat` y `{repo}` with `Spoon-Knife`. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +{% ifversion ghes or ghae %} +{% note %} + +**Nota:** Para que este ejemplo funcione para {% data variables.product.product_location %}, reemplaza a `octocat/Spoon-Knife` con un repositorio que le pertenezca a {% data variables.product.product_location %}. De lo contrario, crea una nueva instancia de `Octokit` y no especifiques la `baseURL`. + +{% endnote %} {% endif %} -Las solicitudes de la API que utilicen un token de acceso personal con vencimiento devolverán la fecha de vencimiento de dicho token a través del encabezado de `GitHub-Authentication-Token-Expiration`. Puedes utilizar el encabezado en tus scripts para proporcionar un mensaje de advertencia cuando el token esté próximo a vencer. +Cuando hagas una solicitud con Octokit.js, todos los parámetros (incluyendo los de ruta) se pasan en un objeto como el segundo argumento para el método `request`. Para obtener propuestas del repositorio `octocat/Spoon-Knife`, especifica el `owner` como `octocat` y el `repo` como `Spoon-Knife`. -### Obtén tu propio perfil de usuario - -Cuando te autenticas adecuadamente, puedes beneficiarte de los permisos asociados con tu cuenta en {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. Por ejemplo, intenta obtener - -```shell -$ curl -i -u your_username:your_token {% data variables.product.api_url_pre %}/user - -> { -> ... -> "plan": { -> "space": 2516582, -> "collaborators": 10, -> "private_repos": 20, -> "name": "medium" -> } -> ... -> } +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife" +}); ``` -Esta vez, adicionalmente al mismo conjunto de información pública que recuperamos para [@defunkt][defunkt github] anteriormente, también deberías ver la información diferente a la pública para tu perfil de usuario. Por ejemplo, verás un objeto de `plan` en la respuesta, el cual otorga detalles sobre el plan de {% data variables.product.product_name %} que tiene la cuenta. +{% endjavascript %} -### Utiilzar tokens de OAuth para las apps +{% curl %} -Las apps que necesitan leer o escribir información privada utilizando la API en nombre de otro usuario deben utilizar [OAuth][oauth]. +Para obtener propuestas del repositorio `octocat/Spoon-Knife`, reemplaza `{owner}` con `octocat` y `{repo}` with `Spoon-Knife`. Para crear la ruta completa, antepón la URL base para la API de REST de {% data variables.product.prodname_dotcom %}, `https://api.github.com`: `https://api.github.com/repos/octocat/Spoon-Knife/issues`. -OAuth utiliza _tokens_. Los Tokens proporcionan dos características grandes: +{% ifversion ghes or ghae %} +{% note %} -* **Acceso revocable**: los usuarios pueden revocar la autorización a las apps de terceros en cualquier momento -* **Acceso limitado**: los usuarios pueden revisar el acceso específico que proporcionará un token antes de autorizar una app de terceros +**Nota:** Si quieres utilizar {% data variables.product.product_location %} en vez de {% data variables.product.prodname_dotcom_the_website %}, utiliza `{% data variables.product.api_url_code %}` en vez de `https://api.github.com` y reemplaza a `[hostname]` con el nombre de {% data variables.product.product_location %}. Reemplaza a `octocat/Spoon-Knife` con un repositorio que le pertenezca a {% data variables.product.product_location %}. -Los tokens deben crearse mediante un [flujo web][webflow]. Una aplicación envía a los usuarios a {% data variables.product.product_name %} para que inicien sesión. Entonces, {% data variables.product.product_name %} presenta un diálogo que indica el nombre de la app así como el nivel de acceso que ésta tiene una vez que el usuario la autorice. Después de que un usuario autoriza el acceso, {% data variables.product.product_name %} lo redirecciona de vuelta a la aplicación: - -![Diálogo de OAuth de GitHub](/assets/images/oauth_prompt.png) - -**¡Trata a los tokens de OAuth como si fueran contraseñas!** No los compartas con otros usuarios ni los almacenes en lugares inseguros. Los tokens en estos ejemplos son falsos y los nombres se cambiaron para proteger a los inocentes. - -Ahora que ya entendimos cómo hacer llamadas autenticadas, vamos a pasar a la [API de repositorios][repos-api]. - -## Repositorios - -Casi cualquier uso significativo de la API de {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} involucrará algún nivel de información de repositorio. Podemos hacer [`GET` para los detalles de un repositorio][get repo] de la misma forma que recuperamos los detalles del usuario anteriormente: +{% endnote %} +{% endif %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/twbs/bootstrap +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -De la misma forma, podemos [ver los repositorios del usuario autenticado][user repos api]: +{% endcurl %} + +La operación devuelve una lista de propuestas y datos sobre cada una de ellas. Para obtener más información sobre cómo utilizar la respuesta, consulta la sección "[Utiliza la respuesta](#using-the-response)". + +## Utilizar parámetros de consultas + +Los parámetros de consultas te permiten controlar los datos que se devuelven para una solicitud. Por ejemplo, un parámetro de consulta te permite especificar cuántos elementos se devuelven cuando la respuesta se pagina. + +Predeterminadamente, la operación "List repository issues" devuelve treinta propuestas, ordenadas descendientemente por la fecha en la que se crearon. Puedes utilizar el parámetro `per_page` para devolver dos propuestas en vez de 30. Puedes utilizar el parámetro `sort` para ordenar las propuestas de acuerdo con la fecha en las que se actualizaron por última vez en vez de por la fecha en la que se crearon. Puedes utilizar el parámetro `direction` para ordenar los resultados ascendientemente en vez de descendientemente. + +{% cli %} + +Para el {% data variables.product.prodname_cli %}, utiliza el marcador `-F` para pasar un parámetro que sea un número, booleano o nulo. Utiliza `-f` para pasar los parámetros de secuencias. + +{% note %} + +**Nota**: El {% data variables.product.prodname_cli %} no acepta actualmente parámetros que sean arreglos. Para obtener más información, consulta [esta propuesta](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 -f sort=updated -f direction=asc ``` -O podemos [listar los repositorios de otro usuario][other user repos api]: +{% endcli %} + +{% javascript %} + +Cuando hagas una solicitud con Octokit.js, todos los parámetros, incluyendo los de las consultas, se pasan en un objeto como el segundo argumento para el método `request`. + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + sort: "updated", + direction: "asc", +}); +``` + +{% endjavascript %} + +{% curl %} + +Para cURL, agrega un `?` al final de la ruta y luego antepón tu nombre de parámetro de consulta y su valor en la forma `parameter_name=value`. Separa los parámetros de consulta múltiples con `&`. ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/octocat/repos +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2&sort=updated&direction=asc" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -O podemos [listar los repositorios de una organización][org repos api]: +{% endcurl %} + +La operación devuelve una lista de propuestas y datos sobre cada una de ellas. Para obtener más información sobre cómo utilizar la respuesta, consulta la sección "[Utiliza la respuesta](#using-the-response)". + +## Utilizar parámetros de cuerpo + +Los parámetros de cuerpo te permiten pasar datos adicionales a la API. Por ejemplo, la operación "Crear una propuesta" requiere que especifiques un título para la propuesta nueva. También te permite especificar otro tipo de información, tal como el texto a poner en el cuerpo de la propuesta. Para ver toda la documentación de referencia para esta operación, consulta la sección "[Crear una propuesta](/rest/issues/issues#create-an-issue)". + +La operación "Create an issue" utiliza la misma ruta que la operación "List repository issues" en el ejemplo anterior, pero utiliza el método `POST` en vez de un método `GET`. + +{% cli %} + +Para el {% data variables.product.prodname_cli %}, utiliza el marcador `-F` para pasar un parámetro que sea un número, booleano o nulo. Utiliza `-f` para pasar los parámetros de secuencias. + +{% note %} + +**Nota**: El {% data variables.product.prodname_cli %} no acepta actualmente parámetros que sean arreglos. Para obtener más información, consulta [esta propuesta](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/orgs/octo-org/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method POST /repos/octocat/Spoon-Knife/issues -f title="Created with the REST API" -f body="This is a test issue created by the REST API" ``` -La información que se devuelve de estas llamadas dependerá de los alcances que tenga nuestrotoken cuando nos autenticamos: +{% endcli %} -{%- ifversion fpt or ghec or ghes %} -* Un token con [alcance][scopes] de `public_repo` devolverá una respuesta que incluye todos los repositorios públicos que podemos ver en {% data variables.product.product_location %}. -{%- endif %} -* Un token con [alcance][scopes] de `repo` devolverá una respuesta que incluirá a todos los repositorios {% ifversion fpt %}públicos o privados{% elsif ghec or ghes %} públicos, privados o internos{% elsif ghae %} privados o internos{% endif %} a los que se tiene acceso para ver en {% data variables.product.product_location %}. +{% javascript %} -Como indican los [docs][repos-api], estos métodos toman un parámetro de `type` que puede filtrar los repositorios que se regresan con base en el tipo de acceso que el usuario tiene en ellos. De esta forma, podemos obtener los solo los repositorios que nos pertenezcan directamente, repositorios de organizacion o repositorios en los que el usuario colabore a través del equipo. +Cuando haces una solicitud con Octokit.js, todos los parámetros, incluyendo los del cuerpo, se pasan en un objeto como el segundo argumento al método `request`. + +```javascript +await octokit.request("POST /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + title: "Created with the REST API", + body: "This is a test issue created by the REST API", +}); +``` + +{% endjavascript %} + +{% curl %} + +Para cURL, utiliza el marcador `--data` para pasar los parámetros del cuerpo en un objeto JSON. ```shell -$ curl -i "{% data variables.product.api_url_pre %}/users/octocat/repos?type=owner" +curl --request POST \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--data '{ + "title": "Created with the REST API", + "body": "This is a test issue created by the REST API" +}' ``` -En este ejemplo, tomamos únicamente los repositorios que pertenecen a octocat, no aquellos en los que ella colabora. Nota la URL que se cita arriba. Dependiendo de tu configuración de shell, cURL a veces requiere una URL citada, o de lo contrario ignora la secuencia de consulta. +{% endcurl %} -### Crear un repositorio +La operación crea una propuesta y devuelve datos sobre la propuesta nueva. En la respuesta, encuentra la `html_url` de tu propuesta y navega a esta en el buscador. Para obtener más información sobre cómo utilizar la respuesta, consulta la sección "[Utiliza la respuesta](#using-the-response)". -Un caso de común de uso es retribuir información para repositorios existentes, pero la -La API de {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} también es compatible con crear repositorios nuevos. Para [crear un repositorio][create repo], -necesitamos hacer `POST` en algunos JSON que contengan los detalles y las opciones de configuración. +## Utilizar la respuesta + +### Acerca de los encabezados y el código de respuesta + +Cada solicitud devolverá un código de estado HTTP que indica el éxito del a respuesta. Para obtener más información sobre los códigos de respuesta, consulta [la documentación del código de estado de respuesta MDN HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status). + +Adicionalmente, la respuesta incluirá encabezados que dan más detalles sobre ella. Los encabezados que comienzan con `X-` o `x-` son personalizados para {% data variables.product.company_short %}. Por ejemplo, los encabezados `x-ratelimit-remaining` y `x-ratelimit-reset` te dicen cuántas solicitudes puedes hacer en un tiempo definido. + +{% cli %} + +Para ver los encabezados y el código de estado, utiliza el marcador `--include` o `--i` cuando envías tu solicitud. + +Por ejemplo, esta solicitud: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - -d '{ - "name": "blog", - "auto_init": true, - "private": true, - "gitignore_template": "nanoc" - }' \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 --include ``` -En este ejemplo mínimo, creamos un repositorio privado nuevo para nuestro blog (que se servirá en [GitHub Pages][pages], probablemente). Aunque el blog {% ifversion not ghae %}será público{% else %}está disponible para todos los miembros de la empresa{% endif %}, hemos hecho el repositorio privado. En este paso, también lo inicializaremos con un README y con una [plantilla de.gitignored][gitignore templates] enriquecida con [nanoc][nanoc]. - -El repositorio que se obtiene como resultado se puede encontrar en `https://github.com//blog`. Para crear un repositorio bajo una organización para la cual eres propietario, solo cambia el método de la API de `/user/repos` a `/orgs//repos`. - -Posteriormente vamos a obtener nuestro repositorio recién creado: +devuelve el código de respuesta y los encabezados como: ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/pengwynn/blog - -> HTTP/2 404 - -> { -> "message": "Not Found" -> } +HTTP/2.0 200 OK +Access-Control-Allow-Origin: * +Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +Cache-Control: private, max-age=60, s-maxage=60 +Content-Security-Policy: default-src 'none' +Content-Type: application/json; charset=utf-8 +Date: Thu, 04 Aug 2022 19:56:41 GMT +Etag: W/"a63dfbcfdb73621e9d2e89551edcf9856731ced534bd7f1e114a5da1f5f73418" +Link: ; rel="next", ; rel="last" +Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin +Server: GitHub.com +Strict-Transport-Security: max-age=31536000; includeSubdomains; preload +Vary: Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding, Accept, X-Requested-With +X-Accepted-Oauth-Scopes: repo +X-Content-Type-Options: nosniff +X-Frame-Options: deny +X-Github-Api-Version-Selected: 2022-08-09 +X-Github-Media-Type: github.v3; format=json +X-Github-Request-Id: 1C73:26D4:E2E500:1EF78F4:62EC2479 +X-Oauth-Client-Id: 178c6fc778ccc68e1d6a +X-Oauth-Scopes: gist, read:org, repo, workflow +X-Ratelimit-Limit: 15000 +X-Ratelimit-Remaining: 14996 +X-Ratelimit-Reset: 1659645499 +X-Ratelimit-Resource: core +X-Ratelimit-Used: 4 +X-Xss-Protection: 0 ``` -¡Oh no! ¿A dónde se fue? Ya que creamos el repositorio como _privado_, necesitamos autenticarnos para poder verlo. Si eres un usuario experimentado en HTTP, tal vez esperes recibir un código `403` en vez de ésto. Ya que no queremos filtrar información sobre los repositorios privados, la API de {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} devolverá un `404` en este caso para decir "no podemos confirmar ni negar la existencia de este repositorio". +En este ejemplo, el código de respuesta es `200`, lo que indica una solicitud exitosa. -## Problemas +{% endcli %} -La IU de informe de problemas en {% data variables.product.product_name %} pretende proporcionar suficiente flujo de trabajo mientras evita estorbarte. Con la [API de propuestas][issues-api] de {% data variables.product.product_name %}, puedes extraer datos para crear propuestas desde otras herramientas para crear flujos de trabajo que funcionen para tu equipo. +{% javascript %} -Tal como en github.com, la API proporciona algunos cuantos métodos para ver los informes de problemas para el usuario autenticado. Para [ver todas tus propuestas][get issues api], llama a `GET /issues`: +Cuando haces una solicitud con Octokit.js, el método `request` devuelve una promesa. Si la solicitud tuvo éxito, la promesa se resuelve en un objeto que incluye el código de estado HTTP de la respuesta (`estado`) y los encabezados de ella (`headers`). Si ocurre un error, la promesa se resuelve en un objeto que incluye el código de estado HTTP de esta (`status`) y los encabezados de la misma (`response.headers`). + +Puedes utilizar un bloque `try/catch` para detectar un error si es que ocurre. Por ejemplo, si la solicitud en el siguiente script tiene éxito, este registrará el código de estaod y el valor del encabezado `x-ratelimit-remaining`. Si la solicitud no tuvo éxito, el script registrará el código de estado, el valor del encabezado `x-ratelimit-remaining` y el mensaje de error. + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + console.log(`Success! Status: ${result.status}. Rate limit remaining: ${result.headers["x-ratelimit-remaining"]}`) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Rate limit remaining: ${error.headers["x-ratelimit-remaining"]}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +Para ver los encabezados y el código de estado, utiliza el marcador `--include` o `--i` cuando envías tu solicitud. + +Por ejemplo, esta solicitud: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/issues +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--include ``` -Para obtener únicamente las [propuestas bajo alguna de tus organizaciones de {% data variables.product.product_name %}][get issues api], llama a `GET -/orgs//issues`: +devuelve el código de respuesta y los encabezados como: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/orgs/rails/issues +HTTP/2 200 +server: GitHub.com +date: Thu, 04 Aug 2022 20:07:51 GMT +content-type: application/json; charset=utf-8 +cache-control: public, max-age=60, s-maxage=60 +vary: Accept, Accept-Encoding, Accept, X-Requested-With +etag: W/"7fceb7e8c958d3ec4d02524b042578dcc7b282192e6c939070f4a70390962e18" +x-github-media-type: github.v3; format=json +link: ; rel="next", ; rel="last" +access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +access-control-allow-origin: * +strict-transport-security: max-age=31536000; includeSubdomains; preload +x-frame-options: deny +x-content-type-options: nosniff +x-xss-protection: 0 +referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin +content-security-policy: default-src 'none' +x-ratelimit-limit: 15000 +x-ratelimit-remaining: 14996 +x-ratelimit-reset: 1659645535 +x-ratelimit-resource: core +x-ratelimit-used: 4 +accept-ranges: bytes +content-length: 4936 +x-github-request-id: 14E0:4BC6:F1B8BA:208E317:62EC2715 ``` -También podemos obtener [todas las propuestas que estén bajo un solo repositorio][repo issues api]: +En este ejemplo, el código de respuesta es `200`, lo que indica una solicitud exitosa. + +{% endcurl %} + +### Acerca del cuerpo de la respuesta + +Muchas operaciones devolverán un cuerpo de la respuesta. A menos de que se especifique lo contrario, el cuerpo de la respuesta estará en formato JSON. Por ejemplo, esta solicitud devuelve una lista de propuestas con datos sobre cada una de ellas: + +{% cli %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 ``` -### Paginación +{% endcli %} -Un proyecto con el tamaño de Rails tiene miles de informes de problemas. Necesitaremos [paginar][pagination], haciendo varias llamadas a la API para obtener los datos. Vamos a repetir la última llamada, esta vez tomando nota de los encabezados de respuesta: +{% javascript %} + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, +}); +``` + +{% endjavascript %} + +{% curl %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues - -> HTTP/2 200 - -> ... -> Link: <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=2>; rel="next", <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=30>; rel="last" -> ... +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -El [encabezado de `Link`][link-header] proporciona una respuesta para enlazar a los recursos externos, en este caso, a las páginas de datos adicionales. Ya que nuestra llamada encontró más de treinta informes de problemas (el tamaño predeterminado de página), la API no s dice dónde podemos encontrar la siguiente página y la última página de los resultados. +{% endcurl %} -### Crear una propuesta +A diferencia de la API de GraphQL, en donde especificas la información que quieres, la API de REST habitualmente devuelve más información de la que necesitas. Si lo deseas, puedes analizar la respuesta para extraer pedazos de información específica. -Ahora que hemos visto cómo paginar las listas de propuestas, vamos a [crear una propuesta][create issue] desde la API. +{% cli %} -Para crear un informe de problemas, necesitamos estar autenticados, así que pasaremos un token de OAuth en el encabezado. También, pasaremos el título, cuerpo, y etiquetas en el cuerpo de JSON a la ruta `/issues` debajo del repositorio en el cual queremos crear el informe de problemas: +Por ejemplo, puedes utilizar `>` para redirigir la respuesta a un archivo: ```shell -$ curl -i -H 'Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a' \ -$ -d '{ \ -$ "title": "New logo", \ -$ "body": "We should have one", \ -$ "labels": ["design"] \ -$ }' \ -$ {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues - -> HTTP/2 201 -> Location: {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17 -> X-RateLimit-Limit: 5000 - -> { -> "pull_request": { -> "patch_url": null, -> "html_url": null, -> "diff_url": null -> }, -> "created_at": "2012-11-14T15:25:33Z", -> "comments": 0, -> "milestone": null, -> "title": "New logo", -> "body": "We should have one", -> "user": { -> "login": "pengwynn", -> "gravatar_id": "7e19cd5486b5d6dc1ef90e671ba52ae0", -> "avatar_url": "https://secure.gravatar.com/avatar/7e19cd5486b5d6dc1ef90e671ba52ae0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png", -> "id": 865, -> "url": "{% data variables.product.api_url_pre %}/users/pengwynn" -> }, -> "closed_at": null, -> "updated_at": "2012-11-14T15:25:33Z", -> "number": 17, -> "closed_by": null, -> "html_url": "https://github.com/pengwynn/api-sandbox/issues/17", -> "labels": [ -> { -> "color": "ededed", -> "name": "design", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/labels/design" -> } -> ], -> "id": 8356941, -> "assignee": null, -> "state": "open", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17" -> } +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 > data.json ``` -La respuesta nos entrega un par de sugerencias para el informe de problemas recién creado, tanto en el encabezado de respuesta de `Location` como en el campo de `url` de la respuesta de JSON. - -## Solicitudes condicionales - -Una gran parte de ser un buen ciudadano de la API es respetar los límites de tasa al almacenar información en el caché, la cual no haya cambiado. La API es compatible con las [solicitudes condicionales][conditional-requests] y te ayuda a hacer lo correcto. Considera el primer llamado que hicimos para obtener el perfil de defunkt: +Posteriormente, puedes utilizar jq para obtener el título e ID de autor de cada propuesta: ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 200 -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" +jq '.[] | {title: .title, authorID: .user.id}' data.json ``` -Además del cuerpo de JSON, toma nota del código de estado HTTP de `200` y del encabezado `ETag`. La [ETag][etag] es una huella digital de la respuesta. Si la pasamos en llamadas subsecuentes, podemos decirle a la API que nos entregue el recurso nuevamente, únicamente si cambió: +Los dos comandos anteriores devolverán algo similar a: + +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` + +Para obtener más información sobre jq, consulta [the jq documentation](https://stedolan.github.io/jq/) y [jq play](https://jqplay.org/). + +{% endcli %} + +{% javascript %} + +Por ejemplo, puedes obtener el título e ID de autor de cada propuesta: + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +Por ejemplo, puedes utilizar `>` para redirigir la respuesta a un archivo: ```shell -$ curl -i -H 'If-None-Match: "61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0"' \ -$ {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 304 +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" > data.json ``` -El estado `304` indica que el recurso no ha cambiado desde la última vez que lo solicitamos y que la respuesta no contendrá ningún cuerpo. Como bono, las respuestas de tipo `304` no cuentan en tu [límite de tasa][rate-limiting]. +Posteriormente, puedes utilizar jq para obtener el título e ID de autor de cada propuesta: -¡Ahora conoces lo básico de la API de {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %}! +```shell +jq '.[] | {title: .title, authorID: .user.id}' data.json +``` -* Autenticación básica & de OAuth -* Obtener y crear repositorios e informes de problemas -* Solicitudes condicionales +Los dos comandos anteriores devolverán algo similar a: -Sigue aprendiendo con la siguiente guía de la API ¡[Fundamentos de la Autenticación][auth guide]! +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` -[wrappers]: /libraries/ -[curl]: http://curl.haxx.se/ -[oauth]: /apps/building-integrations/setting-up-and-registering-oauth-apps/ -[webflow]: /apps/building-oauth-apps/authorizing-oauth-apps/ -[scopes]: /apps/building-oauth-apps/understanding-scopes-for-oauth-apps/ -[repos-api]: /rest/reference/repos -[repos-api]: /rest/reference/repos -[pages]: http://pages.github.com -[nanoc]: http://nanoc.ws/ -[gitignore templates]: https://github.com/github/gitignore -[issues-api]: /rest/reference/issues -[link-header]: https://www.w3.org/wiki/LinkHeader -[conditional-requests]: /rest#conditional-requests -[rate-limiting]: /rest/overview/resources-in-the-rest-api#rate-limit-http-headers -[rate-limiting]: /rest/overview/resources-in-the-rest-api#rate-limit-http-headers -[users api]: /rest/reference/users#get-a-user -[defunkt github]: https://github.com/defunkt -[defunkt github]: https://github.com/defunkt -[json]: http://en.wikipedia.org/wiki/JSON -[authentication]: /rest#authentication -[personal token]: /articles/creating-an-access-token-for-command-line-use -[personal token]: /articles/creating-an-access-token-for-command-line-use -[tokens settings]: https://github.com/settings/tokens -[pagination]: /rest#pagination -[get repo]: /rest/reference/repos#get-a-repository -[create repo]: /rest/reference/repos#create-a-repository-for-the-authenticated-user -[create issue]: /rest/reference/issues#create-an-issue -[auth guide]: /guides/basics-of-authentication -[user repos api]: /rest/reference/repos#list-repositories-for-the-authenticated-user -[other user repos api]: /rest/reference/repos#list-repositories-for-a-user -[org repos api]: /rest/reference/repos#list-organization-repositories -[get issues api]: /rest/reference/issues#list-issues-assigned-to-the-authenticated-user -[get issues api]: /rest/reference/issues#list-issues-assigned-to-the-authenticated-user -[repo issues api]: /rest/reference/issues#list-repository-issues -[etag]: http://en.wikipedia.org/wiki/HTTP_ETag +Para obtener más información sobre jq, consulta [the jq documentation](https://stedolan.github.io/jq/) y [jq play](https://jqplay.org/). + +{% endcurl %} + +## Pasos siguientes + +Este artículo demostró cómo listar y crear propuestas en un repositorio. Para practicar más, intenta comentar en una propuesta, edita el título de una propuesta o cierra una propuesta. Para obtener más información sobre estas operaciones, consulta las secciones "[Crear un comentario de propuesta](/rest/issues#create-an-issue-comment)" y "[Actualizar una propuesta](/rest/issues/issues#update-an-issue)". + +Para obtener más información sobre las operaciones que puedes utilizar, consulta la [documentación de referencia de REST](/rest). diff --git a/translations/es-ES/content/rest/index.md b/translations/es-ES/content/rest/index.md index 6653a92ce3..de30dc9f91 100644 --- a/translations/es-ES/content/rest/index.md +++ b/translations/es-ES/content/rest/index.md @@ -3,7 +3,8 @@ title: API de REST de GitHub shortTitle: API de REST intro: 'Para crear integraciones, recuperar datos y automatizar tus flujos de trabajo, compila con la API de REST de {% data variables.product.prodname_dotcom %}.' introLinks: - quickstart: /rest/guides/getting-started-with-the-rest-api + quickstart: /rest/quickstart + overview: /rest/guides/getting-started-with-the-rest-api featuredLinks: guides: - /rest/guides/getting-started-with-the-rest-api @@ -31,6 +32,7 @@ versions: ghae: '*' ghec: '*' children: + - /quickstart - /overview - /guides - /actions diff --git a/translations/es-ES/content/rest/interactions/orgs.md b/translations/es-ES/content/rest/interactions/orgs.md index 321fce5ec0..04d052cdc3 100644 --- a/translations/es-ES/content/rest/interactions/orgs.md +++ b/translations/es-ES/content/rest/interactions/orgs.md @@ -1,5 +1,5 @@ --- -title: Organization interactions +title: Interacciones de organización shortTitle: Organización intro: 'La API de interacciones de organización permite que los propietarios de la organización restrinjan temporalmente qué tipo de usuarios pueden comentar, abrir propuestas o crear solicitudes de cambios en los repositorios públicos de dicha organización.' versions: @@ -11,7 +11,7 @@ miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true --- -## About the Organization interactions API +## Acerca de la API de interacciones de organización La API de interacciones de organización permite que los propietarios de la organización restrinjan temporalmente qué tipo de usuarios pueden comentar, abrir propuestas o crear solicitudes de cambios en los repositorios públicos de dicha organización. {% data reusables.interactions.interactions-detail %} Aquí puedes aprender más sobre los tipos de usuario de {% data variables.product.product_name %}: diff --git a/translations/es-ES/content/rest/interactions/repos.md b/translations/es-ES/content/rest/interactions/repos.md index 9224e9c109..1c5c3d82a4 100644 --- a/translations/es-ES/content/rest/interactions/repos.md +++ b/translations/es-ES/content/rest/interactions/repos.md @@ -1,5 +1,5 @@ --- -title: Repository interactions +title: Interacciones de repositorio shortTitle: Repositorio intro: 'La API de interacciones de repositorio permite a las personas con acceso administrativo o de propietario restringir temporalmente qué tipo de usuario puede comentar, abrir propuestas o crear solicitudes de cambios en un repositorio privado.' versions: @@ -11,7 +11,7 @@ miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true --- -## About the Repository interactions API +## Acerca de la API de interacciones de repositorio La API de interacciones de repositorio permite a las personas con acceso administrativo o de propietario restringir temporalmente qué tipo de usuario puede comentar, abrir propuestas o crear solicitudes de cambios en un repositorio privado. {% data reusables.interactions.interactions-detail %} Aquí puedes aprender más sobre los tipos de usuario de {% data variables.product.product_name %}: diff --git a/translations/es-ES/content/rest/issues/comments.md b/translations/es-ES/content/rest/issues/comments.md index 12e27f497e..79fd142033 100644 --- a/translations/es-ES/content/rest/issues/comments.md +++ b/translations/es-ES/content/rest/issues/comments.md @@ -13,8 +13,8 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Issue comments API +## Acerca de la API de comentarios de propuestas -La API de comentarios en las propuestas es compatible con la administración de comentarios en las propuestas y solicitudes de cambios. {% data reusables.pull_requests.issues-pr-shared-api %} To manage pull request review comments, use the [Pull request review comments API](/rest/pulls/comments) instead. +La API de comentarios en las propuestas es compatible con la administración de comentarios en las propuestas y solicitudes de cambios. {% data reusables.pull_requests.issues-pr-shared-api %} Para administrar los comentarios de revisión de solicitudes de cambio, utiliza la [API de comentarios de revisión en solicitudes de cambio](/rest/pulls/comments) en su lugar. {% data reusables.pull_requests.issues-media-types %} diff --git a/translations/es-ES/content/rest/issues/labels.md b/translations/es-ES/content/rest/issues/labels.md index 9e6dfc84ce..c8a6a2e513 100644 --- a/translations/es-ES/content/rest/issues/labels.md +++ b/translations/es-ES/content/rest/issues/labels.md @@ -11,6 +11,6 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Labels API +## Acerca de la API de etiquetas -The Labels API supports managing labels for a repository and adding or removing labels to issues and pull requests. {% data reusables.pull_requests.issues-pr-shared-api %} +La API de etiquetas es compatible con administrar etiquetas para un repositorio y agregar o eliminar etiquetas para las propuestas y solicitudes de cambio. {% data reusables.pull_requests.issues-pr-shared-api %} diff --git a/translations/es-ES/content/rest/metrics/community.md b/translations/es-ES/content/rest/metrics/community.md index e6e3f7d92f..2064af0ae2 100644 --- a/translations/es-ES/content/rest/metrics/community.md +++ b/translations/es-ES/content/rest/metrics/community.md @@ -1,8 +1,8 @@ --- -title: Community metrics +title: Métricas comunitarias shortTitle: Comunidad allowTitleToDifferFromFilename: true -intro: The Community metrics API lets you get data about your community profile. +intro: La API de métricas comunitarias te permite obtener datos sobre el perfil de tu comunidad. versions: fpt: '*' ghec: '*' diff --git a/translations/es-ES/content/rest/metrics/statistics.md b/translations/es-ES/content/rest/metrics/statistics.md index 4394313801..b4a39356b6 100644 --- a/translations/es-ES/content/rest/metrics/statistics.md +++ b/translations/es-ES/content/rest/metrics/statistics.md @@ -1,5 +1,5 @@ --- -title: Repository statistics +title: Estadísticas de repositorio shortTitle: Estadísticas allowTitleToDifferFromFilename: true intro: 'La API de estadísticas de repositorio te permite recuperar los datos que {% data variables.product.product_name %} utiliza para visualizar tipos diferentes de actividad de repositorio.' @@ -13,7 +13,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Repository statistics API +## Acerca de las API de estadísticas de repositorio La API de estadísticas de repositorio te permite recuperar los datos que {% data variables.product.product_name %} utiliza para visualizar tipos diferentes de actividad de repositorio. diff --git a/translations/es-ES/content/rest/metrics/traffic.md b/translations/es-ES/content/rest/metrics/traffic.md index 05d5337041..f10105c24c 100644 --- a/translations/es-ES/content/rest/metrics/traffic.md +++ b/translations/es-ES/content/rest/metrics/traffic.md @@ -1,8 +1,8 @@ --- -title: Repository traffic +title: Tráfico de repositorio shortTitle: Tráfico allowTitleToDifferFromFilename: true -intro: The Repository traffic API provides access to the information provided in your repository graph. +intro: La API de tráfico de repositorio proporciona acceso a la información proporcionada en tu gráfica de repositorio. versions: fpt: '*' ghec: '*' @@ -11,6 +11,6 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Repository traffic API +## Acerca de la API de tráfico de repositorio -For repositories that you have push access to, the Repository traffic API provides access to the information provided in your repository graph. Para obtener más información, consulta la sección "[Ver el tráfico hacia un repositorio](/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository)". +Para los repositorios a los cuales tienes acceso de subida, la API de tráfico de repositorio proporciona acceso a la información que se proporciona en tu gráfica de repositorio. Para obtener más información, consulta la sección "[Ver el tráfico hacia un repositorio](/repositories/viewing-activity-and-data-for-your-repository/viewing-traffic-to-a-repository)". diff --git a/translations/es-ES/content/rest/migrations/orgs.md b/translations/es-ES/content/rest/migrations/orgs.md index fd9856ea4b..0eb7f48e9e 100644 --- a/translations/es-ES/content/rest/migrations/orgs.md +++ b/translations/es-ES/content/rest/migrations/orgs.md @@ -1,5 +1,5 @@ --- -title: Organization migrations +title: Migraciones de organización allowTitleToDifferFromFilename: true shortTitle: Organizaciones intro: '' @@ -13,7 +13,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Organization migrations API +## Acerca de la API de migraciones de organización La API de Migraciones solo está disponible para los propietarios autenticados de la organización. Para obtener más información, consulta las secciones "[Roles en una organización](/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization#permission-levels-for-an-organization)" y "[Otros métodos de autenticación](/rest/overview/other-authentication-methods)". diff --git a/translations/es-ES/content/rest/migrations/source-imports.md b/translations/es-ES/content/rest/migrations/source-imports.md index 472648b9bf..5b683c679a 100644 --- a/translations/es-ES/content/rest/migrations/source-imports.md +++ b/translations/es-ES/content/rest/migrations/source-imports.md @@ -9,9 +9,9 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Source imports API +## Acerca de la API de importaciones de código fuente -{% data variables.migrations.source_imports_intro %} A typical source import would start the import and then (optionally) update the authors and/or update the preference for using Git LFS if large files exist in the import. También puedes crear un webhook que escuche al [`RepositoryImportEvent`](/developers/webhooks-and-events/webhook-events-and-payloads#repository_import) para encontrar el estado de la importación. +{% data variables.migrations.source_imports_intro %} Una importación de código fuente habitual iniciaría la importación y después (opcionalmente) actualizaría a los autores o a la preferencia para utilizar LFS de Git si existen archivos grandes en la importación. También puedes crear un webhook que escuche al [`RepositoryImportEvent`](/developers/webhooks-and-events/webhook-events-and-payloads#repository_import) para encontrar el estado de la importación. Se puede ver un ejemplo más detallado en este diagrama: diff --git a/translations/es-ES/content/rest/oauth-authorizations.md b/translations/es-ES/content/rest/oauth-authorizations.md index 3c22e5dd08..ef94233ad5 100644 --- a/translations/es-ES/content/rest/oauth-authorizations.md +++ b/translations/es-ES/content/rest/oauth-authorizations.md @@ -1,6 +1,6 @@ --- -title: OAuth authorizations -intro: The OAuth authorizations lets you manage the access OAuth applications have to your account. +title: Autorizaciones de OAuth +intro: Las autorizaciones de OAuth te permiten administrar el acceso que las aplicaciones de OAuth tienen en tu cuenta. versions: ghes: '*' topics: @@ -10,7 +10,7 @@ redirect_from: - /rest/reference/oauth-authorizations --- -## About the OAuth authorizations API +## Acerca de la API de autorizaciones OAuth Puedes utilizar esta API para administrar el acceso que las aplicaciones de OAuth tienen en tu cuenta. Solo puedes acceder a esta API a través de la [Autenticación Básica](/rest/overview/other-authentication-methods#basic-authentication) utilizando tu nombre de usuario y contraseña, y no los tokens. diff --git a/translations/es-ES/content/rest/orgs/custom-roles.md b/translations/es-ES/content/rest/orgs/custom-roles.md index 748da0f6cc..ae1e5dd230 100644 --- a/translations/es-ES/content/rest/orgs/custom-roles.md +++ b/translations/es-ES/content/rest/orgs/custom-roles.md @@ -1,5 +1,5 @@ --- -title: Custom Repository Roles +title: Roles de repositorio personalizados intro: '' versions: fpt: '*' diff --git a/translations/es-ES/content/rest/orgs/outside-collaborators.md b/translations/es-ES/content/rest/orgs/outside-collaborators.md index 42c4707e72..f6ffa6c21f 100644 --- a/translations/es-ES/content/rest/orgs/outside-collaborators.md +++ b/translations/es-ES/content/rest/orgs/outside-collaborators.md @@ -1,5 +1,5 @@ --- -title: Outside Collaborators +title: Colaboradores externos intro: '' versions: fpt: '*' diff --git a/translations/es-ES/content/rest/overview/other-authentication-methods.md b/translations/es-ES/content/rest/overview/other-authentication-methods.md index b75ab98525..d8147fdb5d 100644 --- a/translations/es-ES/content/rest/overview/other-authentication-methods.md +++ b/translations/es-ES/content/rest/overview/other-authentication-methods.md @@ -86,10 +86,16 @@ If you have two-factor authentication enabled, make sure you understand how to [ {% endnote %} +{% note %} + +**Note:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + If you're using the API to access an organization that enforces [SAML SSO][saml-sso] for authentication, you'll need to create a personal access token (PAT) and [authorize the token][allowlist] for that organization. Visit the URL specified in `X-GitHub-SSO` to authorize the token for the organization. ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test > X-GitHub-SSO: required; url=https://github.com/orgs/octodocs-test/sso?authorization_request=AZSCKtL4U8yX1H3sCQIVnVgmjmon5fWxks5YrqhJgah0b2tlbl9pZM4EuMz4 { @@ -101,7 +107,7 @@ $ curl -v -H "Authorization: token TOKEN" {% data variables.product.api When requesting data that could come from multiple organizations (for example, [requesting a list of issues created by the user][user-issues]), the `X-GitHub-SSO` header indicates which organizations require you to authorize your personal access token: ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/user/issues +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/user/issues > X-GitHub-SSO: partial-results; organizations=21955855,20582480 ``` diff --git a/translations/es-ES/content/rest/overview/resources-in-the-rest-api.md b/translations/es-ES/content/rest/overview/resources-in-the-rest-api.md index 6bf30239c1..7dd81b9332 100644 --- a/translations/es-ES/content/rest/overview/resources-in-the-rest-api.md +++ b/translations/es-ES/content/rest/overview/resources-in-the-rest-api.md @@ -79,7 +79,7 @@ $ curl -u "username" {% data variables.product.api_url_pre %} ### Token de OAuth (enviado en un encabezado) ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %} +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %} ``` {% note %} @@ -88,6 +88,12 @@ Nota: GitHub recomienda enviar los tokens de OAuth utilizando el encabezado de a {% endnote %} +{% note %} + +**Nota:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + Lee [más acerca de OAuth2](/apps/building-oauth-apps/). Nota que los tokens de OAuth2 pueden adquirirse utilizando el [flujo de aplicaciones web](/developers/apps/authorizing-oauth-apps#web-application-flow) para las aplicaciones productivas. {% ifversion fpt or ghes or ghec %} diff --git a/translations/es-ES/content/rest/overview/troubleshooting.md b/translations/es-ES/content/rest/overview/troubleshooting.md index 7562d15e46..a401fbd968 100644 --- a/translations/es-ES/content/rest/overview/troubleshooting.md +++ b/translations/es-ES/content/rest/overview/troubleshooting.md @@ -44,13 +44,13 @@ curl -u my_user:my_password https://api.github.com/user/repos En vez de esto, utiliza un [token de acceso personal](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line) cuando pruebes las terminales o cuando realices desarrollos locales: ```bash -curl -H 'Authorization: token my_access_token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my_access_token' https://api.github.com/user/repos ``` Para las Apps de Oauth, debes utilizar el [flujo de aplicaciones web](/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow) para generar un token de OAuth para utilizar el encabezado de la llamada a la API: ```bash -curl -H 'Authorization: token my-oauth-token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my-oauth-token' https://api.github.com/user/repos ``` ## Exceder el tiempo de espera diff --git a/translations/es-ES/content/rest/projects/columns.md b/translations/es-ES/content/rest/projects/columns.md index d3049358c3..50da2d5df5 100644 --- a/translations/es-ES/content/rest/projects/columns.md +++ b/translations/es-ES/content/rest/projects/columns.md @@ -1,8 +1,8 @@ --- -title: '{% data variables.product.prodname_project_v1_caps %} columns' +title: 'Columnas de {% data variables.product.prodname_project_v1_caps %}' shortTitle: Columnas allowTitleToDifferFromFilename: true -intro: 'The {% data variables.product.prodname_project_v1 %} columns API lets you create and manage columns on a {% data variables.projects.projects_v1_board %}.' +intro: 'La API de columnas de {% data variables.product.prodname_project_v1 %} te permite crear y administrar columnas en un {% data variables.projects.projects_v1_board %}.' versions: fpt: '*' ghes: '*' diff --git a/translations/es-ES/content/rest/projects/projects.md b/translations/es-ES/content/rest/projects/projects.md index 79c2aaa6b1..69c8cbf99f 100644 --- a/translations/es-ES/content/rest/projects/projects.md +++ b/translations/es-ES/content/rest/projects/projects.md @@ -1,8 +1,8 @@ --- title: '{% data variables.product.prodname_projects_v1_caps %}' -shortTitle: Boards +shortTitle: Tableros allowTitleToDifferFromFilename: true -intro: 'The {% data variables.product.prodname_projects_v1 %} API lets you create and manage {% data variables.projects.projects_v1_boards %} in a repository.' +intro: 'La API de {% data variables.product.prodname_projects_v1 %} te permite crear y fusionar {% data variables.projects.projects_v1_boards %} en un repositorio.' versions: fpt: '*' ghes: '*' diff --git a/translations/es-ES/content/rest/pulls/reviews.md b/translations/es-ES/content/rest/pulls/reviews.md index fe739aefdc..77aade526c 100644 --- a/translations/es-ES/content/rest/pulls/reviews.md +++ b/translations/es-ES/content/rest/pulls/reviews.md @@ -13,6 +13,6 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Pull request reviews API +## Acerca de la API de revisiones de solicitudes de cambio -Pull Request Reviews are groups of pull request review comments on a pull request, grouped together with a state and optional body comment. +Las revisiones de solicitudes de cambio son grupos de comentarios en dichas revisiones que se agrupan con un estado y comentario de cuerpo opcional. diff --git a/translations/es-ES/content/rest/quickstart.md b/translations/es-ES/content/rest/quickstart.md new file mode 100644 index 0000000000..498bf4499e --- /dev/null +++ b/translations/es-ES/content/rest/quickstart.md @@ -0,0 +1,351 @@ +--- +title: Guía de inicio rápido para la API de REST de GitHub +intro: 'Aprende cómo iniciar con la API de REST de {% data variables.product.prodname_dotcom %}.' +allowTitleToDifferFromFilename: true +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +shortTitle: Inicio Rápido +topics: + - API +redirect_from: + - /guides/getting-started + - /v3/guides/getting-started +miniTocMaxHeadingLevel: 3 +--- + +Este artículo describe cómo iniciar rápidamente con la API de REST de {% data variables.product.prodname_dotcom %} utilizando el {% data variables.product.prodname_cli %}, JavaScript o cURL. Para obtener una guía más detallada, consulta la sección "[Iniciar con la API de REST](/rest/guides/getting-started-with-the-rest-api)". + +{% cli %} + +## Iniciar utilizando el {% data variables.product.prodname_cli %} + +### Utilizar el {% data variables.product.prodname_cli %} en la línea de comando + +El {% data variables.product.prodname_cli %} es la forma más fácil de utilizar la API de REST de {% data variables.product.prodname_dotcom %} desde la línea de comandos. + +1. Instala el {% data variables.product.prodname_cli %} si aún no lo has hecho. Para obtener las instrucciones de instalación, consulta el [repositorio del {% data variables.product.prodname_cli %}](https://github.com/cli/cli#installation). +1. Utiliza el subcomando `auth login` para autenticarte en el {% data variables.product.prodname_cli %}. Para obtener más información, consulta la [documentación de `auth login` del {% data variables.product.prodname_cli %}](https://cli.github.com/manual/gh_auth_login). + + ```shell + gh auth login + ``` + +1. Utiliza el subcomando `api` para hacer tu solicitud de la API. Para obtener más información, consulta la [documentación de `api` del {% data variables.product.prodname_cli %}](https://cli.github.com/manual/gh_api). + + ```shell + gh api repos/octocat/Spoon-Knife/issues + ``` + +### Utilizar el {% data variables.product.prodname_cli %} en {% data variables.product.prodname_actions %} + +También puedes utilizar el {% data variables.product.prodname_cli %} en tus flujos de trabajo de {% data variables.product.prodname_actions %}. Para obtener más información, consulta la sección "[Utilizar el CLI de GitHub en los flujos de trabajo](/actions/using-workflows/using-github-cli-in-workflows)". + +En vez de utilizar el comando `gh auth login`, pasa un token de acceso como una variable de ambiente llamada `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recomienda que utilices el `GITHUB_TOKEN` integrado en vez de crear un token. Si esto es imposible, almacena tu token como un secreto y reemplaza a `GITHUB_TOKEN` por el nombre de tu secreto en el siguiente ejemplo. Para obtener más información sobre el `GITHUB_TOKEN`, consulta ""[Automatic token authentication](/actions/security-guides/automatic-token-authentication)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +Si te estás autenticando con una {% data variables.product.prodname_github_app %}, puedes crear un token de acceso a la instalación dentro de tu flujo de trabajo: + +1. Almacena la ID de tu {% data variables.product.prodname_github_app %} como un secreto. En el siguiente ejemplo, reemplaza `APP_ID` con el nombre del secreto. Puedes encontrar tu ID de app en la página de ajustes de tu app o mediante la API de la misma. Para obtener más información, consulta la sección "[Apps](/rest/apps/apps#get-an-app)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". +1. Generar una llave privada para tu app. Almacena el contenido del archivo resultante como un secreto. (Almacena todo el contenido del archivo, incluyendo `-----BEGIN RSA PRIVATE KEY-----` y `-----END RSA PRIVATE KEY-----`.) En el siguiente ejemplo, reemplaza a `APP_PEM` con el nombre del secreto. Para obtener más información, consulta la sección "[Autenticarse con {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)". +1. Agrega un paso para generar un token y utilizarlo en vez de `GITHUB_TOKEN`. Nota que este token expirará después de 60 minutos. Por ejemplo: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + track_pr: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +## Comenzar a utilizar JavaScript + +Puedes utilizar Octokit.js para interactuar con la API de REST de {% data variables.product.prodname_dotcom %} en tus scripts de JavaScript. Para obtener más información, consulta [el README de Octokit.js](https://github.com/octokit/octokit.js/#readme). + +### Utilizar Octokit.js + +1. Crear un token de acceso. Por ejemplo, crea un token de acceso personal (PAT) o un token de acceso de usuario a servidor de {% data variables.product.prodname_github_app %}. For more information, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" or "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + + {% warning %} + + **Advertencia**: Trata a tu token de acceso como si fuera una contraseña. + + Para mantener seguro a tu token, puedes almacenarlo como un secreto y ejecutar tu script mediante {% data variables.product.prodname_actions %}. For more information, see the "[Using Octokit.js in {% data variables.product.prodname_actions %}](#using-octokitjs-in-github-actions)" section. + + {%- ifversion fpt or ghec %} + + You can also store your token as a {% data variables.product.prodname_codespaces %} secret and run your script in {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta la sección "[Administrar los secretos cifrados para tus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + + Si estas opciones no son posibles, considera utilizar otro servicio tal como [el 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para almacenar tu token de forma segura. + + {% endwarning %} + +1. Install `octokit`. For example, `npm install octokit`. For other ways to install or load `octokit`, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). +1. Import `octokit` in your script. For example, `import { Octokit } from "octokit";`. For other ways to import `octokit`, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). +1. Create an instance of `Octokit` with your token. Replace `YOUR-TOKEN` with your token. + + ```javascript + const octokit = new Octokit({ + auth: 'YOUR-TOKEN' + }); + ``` + +1. Use `octokit.request` to execute your request. Send the HTTP method and path as the first argument. Specify any path, query, and body parameters in an object as the second argument. For example, in the following request the HTTP method is `GET`, the path is `/repos/{owner}/{repo}/issues`, and the parameters are `owner: "octocat"` and `repo: "Spoon-Knife"`. + + ```javascript + await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + ``` + +### Using Octokit.js in {% data variables.product.prodname_actions %} + +You can also execute your JavaScript scripts in your {% data variables.product.prodname_actions %} workflows. Para obtener más información, consultala sección "[Sintaxis de flujo de trabajo para GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)". + +{% data variables.product.prodname_dotcom %} recomienda que utilices el `GITHUB_TOKEN` integrado en vez de crear un token. Si esto es imposible, almacena tu token como un secreto y reemplaza a `GITHUB_TOKEN` por el nombre de tu secreto en el siguiente ejemplo. Para obtener más información sobre el `GITHUB_TOKEN`, consulta ""[Automatic token authentication](/actions/security-guides/automatic-token-authentication)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". + +El siguiente flujo de trabajo de ejemplo: + +1. Verifica el contenido del repositorio +1. Configura a Node.js +1. Instala `octokit` +1. Almacena el valor de `GITHUB_TOKEN` como una variable de ambiente llamada `TOKEN` y ejecuta `.github/actions-scripts/use-the-api.mjs`, que puede acceder a esa variable de ambiente como `process.env.TOKEN` + +Flujo de trabajo de ejemplo: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} +``` + +Script de JavaScript de ejemplo con la ruta de archivo `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit" + +const octokit = new Octokit({ + auth: process.env.TOKEN +}); + +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +Si te estás autenticando con una {% data variables.product.prodname_github_app %}, puedes crear un token de acceso a la instalación dentro de tu flujo de trabajo: + +1. Almacena la ID de tu {% data variables.product.prodname_github_app %} como un secreto. En el siguiente ejemplo, reemplaza `APP_ID` con el nombre del secreto. Puedes encontrar tu ID de app en la página de ajustes de tu app o mediante la API de la misma. Para obtener más información, consulta la sección "[Apps](/rest/apps/apps#get-an-app)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". +1. Generar una llave privada para tu app. Almacena el contenido del archivo resultante como un secreto. (Almacena todo el contenido del archivo, incluyendo `-----BEGIN RSA PRIVATE KEY-----` y `-----END RSA PRIVATE KEY-----`.) En el siguiente ejemplo, reemplaza a `APP_PEM` con el nombre del secreto. Para obtener más información, consulta la sección "[Autenticarse con {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)". +1. Agrega un paso para generar un token y utilizarlo en vez de `GITHUB_TOKEN`. Nota que este token expirará después de 60 minutos. Por ejemplo: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} +``` + +{% endjavascript %} + +{% curl %} + +## Getting started using cURL + +### Using cURL in the command line + +{% note %} + +**Note:** If you want to make API requests from the command line, {% data variables.product.prodname_dotcom %} recommends that you use {% data variables.product.prodname_cli %}, which simplifies authentication and requests. For more information about getting started with the REST API using {% data variables.product.prodname_cli %}, see the {% data variables.product.prodname_cli %} version of this article. + +{% endnote %} + +1. Install cURL if cURL isn't already installed on your machine. To check if cURL is installed, execute `curl --version` in the command line. If the output is information about the cURL version, cURL is installed. If you get a message similar to `command not found: curl`, you need to download and install cURL. Para obtener más información, consulta [la página de descarga del proyecto cURL](https://curl.se/download.html). +1. Crear un token de acceso. Por ejemplo, crea un token de acceso personal (PAT) o un token de acceso de usuario a servidor de {% data variables.product.prodname_github_app %}. For more information, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" or "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + + {% warning %} + + **Advertencia**: Trata a tu token de acceso como si fuera una contraseña. + + {%- ifversion fpt or ghec %} + + To keep your token secure, you can store your token as a {% data variables.product.prodname_codespaces %} secret and use the command line through {% data variables.product.prodname_codespaces %}. Para obtener más información, consulta la sección "[Administrar los secretos cifrados para tus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + + You can also use {% data variables.product.prodname_cli %} instead of cURL. El {% data variables.product.prodname_cli %} se encargará de la autenticación por ti. Para obtener más información, consulta la versión del {% data variables.product.prodname_cli %} de esta página. + + Si estas opciones no son posibles, considera utilizar otro servicio tal como [el 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para almacenar tu token de forma segura. + + {% endwarning %} + +1. Use the `cURL` command to make your request. Pass your token in an `Authorization` header. Replace `YOUR-TOKEN` with your token. + + ```shell + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer YOUR-TOKEN" + ``` + + {% note %} + + **Nota:** {% data reusables.getting-started.bearer-vs-token %} + + {% endnote %} + +### Using cURL in {% data variables.product.prodname_actions %} + +You can also use cURL in your {% data variables.product.prodname_actions %} workflows. + +{% data variables.product.prodname_dotcom %} recomienda que utilices el `GITHUB_TOKEN` integrado en vez de crear un token. Si esto es imposible, almacena tu token como un secreto y reemplaza a `GITHUB_TOKEN` por el nombre de tu secreto en el siguiente ejemplo. Para obtener más información sobre el `GITHUB_TOKEN`, consulta ""[Automatic token authentication](/actions/security-guides/automatic-token-authentication)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +Si te estás autenticando con una {% data variables.product.prodname_github_app %}, puedes crear un token de acceso a la instalación dentro de tu flujo de trabajo: + +1. Almacena la ID de tu {% data variables.product.prodname_github_app %} como un secreto. En el siguiente ejemplo, reemplaza `APP_ID` con el nombre del secreto. Puedes encontrar tu ID de app en la página de ajustes de tu app o mediante la API de la misma. Para obtener más información, consulta la sección "[Apps](/rest/apps/apps#get-an-app)". Para obtener más información sobre los secretos, consulta la sección "[Secretos cifrados](/actions/security-guides/encrypted-secrets)". +1. Generar una llave privada para tu app. Almacena el contenido del archivo resultante como un secreto. (Almacena todo el contenido del archivo, incluyendo `-----BEGIN RSA PRIVATE KEY-----` y `-----END RSA PRIVATE KEY-----`.) En el siguiente ejemplo, reemplaza a `APP_PEM` con el nombre del secreto. Para obtener más información, consulta la sección "[Autenticarse con {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)". +1. Agrega un paso para generar un token y utilizarlo en vez de `GITHUB_TOKEN`. Nota que este token expirará después de 60 minutos. Por ejemplo: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## Pasos siguientes + +Para obtener una guía más detallada, consulta la sección "[Iniciar con la API de REST](/rest/guides/getting-started-with-the-rest-api)". diff --git a/translations/es-ES/content/rest/rate-limit.md b/translations/es-ES/content/rest/rate-limit.md index b779a8e124..f6f2f8bad1 100644 --- a/translations/es-ES/content/rest/rate-limit.md +++ b/translations/es-ES/content/rest/rate-limit.md @@ -1,6 +1,6 @@ --- title: Limite de tasa -intro: 'With the Rate limit API, you can check the current rate limit status of various REST APIs.' +intro: 'Con la API de límites de tasa, puedes verificar el estado de límite de tasa actual de varias API de REST.' versions: fpt: '*' ghes: '*' @@ -13,7 +13,7 @@ redirect_from: - /rest/reference/rate-limit --- -## About the Rate limit API +## Acerca de la API de límites de tasa La documentación general de la API de REST describe las [reglas de los límites de tasa](/rest/overview/resources-in-the-rest-api#rate-limiting). Puedes revisar tu estado actual de límite de tasa en cualquier momento utilizando la API de Límites de Tasa que se describe a continuación. diff --git a/translations/es-ES/content/rest/releases/releases.md b/translations/es-ES/content/rest/releases/releases.md index 09a0da8dd3..c0b0e14cce 100644 --- a/translations/es-ES/content/rest/releases/releases.md +++ b/translations/es-ES/content/rest/releases/releases.md @@ -1,6 +1,6 @@ --- title: Lanzamientos -intro: 'The Releases API allows you to create, modify, and delete releases and release assets.' +intro: 'La API de lanzamientos te permite crear, modificar y borrar los lanzamientos y activos de lanzamiento.' versions: fpt: '*' ghes: '*' diff --git a/translations/es-ES/content/rest/repos/autolinks.md b/translations/es-ES/content/rest/repos/autolinks.md index 41c8776af2..651b16c462 100644 --- a/translations/es-ES/content/rest/repos/autolinks.md +++ b/translations/es-ES/content/rest/repos/autolinks.md @@ -1,5 +1,5 @@ --- -title: Repository autolinks +title: Autoenlaces de repositorio allowTitleToDifferFromFilename: true shortTitle: Autoenlaces intro: 'Para ayudar a optimizar tu flujo de trabajo, puedes utilizar la API para agregar autoenlaces a los recursos externos como propuestas de JIRA y tickets de Zendesk.' @@ -13,7 +13,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Repository autolinks API +## Acerca de la API de autoenlaces de repositorio Para obtener más información, consulta la sección "[Configurar los autoenlaces para referenciar recursos externos](/github/administering-a-repository/configuring-autolinks-to-reference-external-resources)". diff --git a/translations/es-ES/content/rest/secret-scanning.md b/translations/es-ES/content/rest/secret-scanning.md index 9d8864449a..2fd9624093 100644 --- a/translations/es-ES/content/rest/secret-scanning.md +++ b/translations/es-ES/content/rest/secret-scanning.md @@ -1,5 +1,5 @@ --- -title: Escaneo de secretos +title: Secret scanning intro: Use the Secret scanning API to retrieve and update secret alerts from a repository. versions: ghes: '*' @@ -16,9 +16,9 @@ redirect_from: ## About the Secret scanning API -La API del {% data variables.product.prodname_secret_scanning %} te permite : +The {% data variables.product.prodname_secret_scanning %} API lets you: -- Enable or disable {% data variables.product.prodname_secret_scanning %}{% ifversion secret-scanning-push-protection %} and push protection{% endif %} for a repository. Para obtener más información, consulta la sección "[Repositorios](/rest/repos/repos#update-a-repository)" y expande la sección de "Propiedades del objeto `security_and_analysis`" en la documentación de la API de REST. +- Enable or disable {% data variables.product.prodname_secret_scanning %}{% ifversion secret-scanning-push-protection %} and push protection{% endif %} for a repository. For more information, see "[Repositories](/rest/repos/repos#update-a-repository)" and expand the "Properties of the `security_and_analysis` object" section in the REST API documentation. - Retrieve and update {% data variables.product.prodname_secret_scanning_GHAS %} alerts from a repository. For further details, see the sections below. -Para obtener más información acerca de las {% data variables.product.prodname_secret_scanning %}, consulta la sección "[Acerca del {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/about-secret-scanning)". +For more information about {% data variables.product.prodname_secret_scanning %}, see "[About {% data variables.product.prodname_secret_scanning %}](/code-security/secret-security/about-secret-scanning)." diff --git a/translations/es-ES/content/rest/teams/discussion-comments.md b/translations/es-ES/content/rest/teams/discussion-comments.md index 728a28d1f0..10a4ce9b67 100644 --- a/translations/es-ES/content/rest/teams/discussion-comments.md +++ b/translations/es-ES/content/rest/teams/discussion-comments.md @@ -1,8 +1,8 @@ --- -title: Team discussion comments +title: Comentarios de debates de equipo allowTitleToDifferFromFilename: true shortTitle: Comentarios de debate -intro: 'The team discussion comments API allows you to get, create, edit, and delete discussion comments on a [team discussion](/rest/reference/teams#discussions) post.' +intro: 'La API de comentarios de debate de equipo te permite obtener, crear, editar y borrar comentarios de debates en una publicación de un [debate de equipo](/rest/reference/teams#discussions).' versions: fpt: '*' ghes: '*' @@ -13,7 +13,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Team discussion comments API +## Acerca de la API de comentarios de debates de equipo Cualquier miembro de la [organización](/rest/reference/orgs) del equipo puede crear y leer los comentarios de un debate público. Para obtener más detalles, consulta la sección "[Acerca de los debates de equipo](/organizations/collaborating-with-your-team/about-team-discussions/)". diff --git a/translations/es-ES/content/rest/teams/external-groups.md b/translations/es-ES/content/rest/teams/external-groups.md index a93b9ddc0b..023babf84b 100644 --- a/translations/es-ES/content/rest/teams/external-groups.md +++ b/translations/es-ES/content/rest/teams/external-groups.md @@ -19,7 +19,7 @@ Para utilizar esta API, el usuario autenticado debe ser un mantenedor del equipo **Notas:** -- La API de grupos externos solo se encuentra disponible para aquellas organizaciones que sean parte de una empresa que utilice {% data variables.product.prodname_emus %}. Para obtener más información, consulta la sección "[Acerca de los Usuarios Empresariales Administrados](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)". +- The external groups API is only available for organizations that are part of an enterprise using {% data variables.product.prodname_emus %}. Para obtener más información, consulta la sección "[Acerca de los Usuarios Empresariales Administrados](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)". - Si tu organización utiliza la sincronización de equipos, puedes usar la API de Sincronización de Equipos. Para obtener más información, consulta la "[API de sincronización de equipos](#team-synchronization)". {% endnote %} diff --git a/translations/es-ES/content/rest/teams/team-sync.md b/translations/es-ES/content/rest/teams/team-sync.md index 0e69b0283c..890e8bfc56 100644 --- a/translations/es-ES/content/rest/teams/team-sync.md +++ b/translations/es-ES/content/rest/teams/team-sync.md @@ -1,6 +1,6 @@ --- title: Sincronización de equipos -intro: 'The Team synchronization API allows you to manage connections between {% data variables.product.product_name %} teams and external identity provider (IdP) groups.' +intro: 'La API de sincronización de equipos te permite administrar las conexiones entre los equipos de {% data variables.product.product_name %} y los grupos de proveedores de identidad (IdP) externos.' versions: fpt: '*' ghec: '*' @@ -10,7 +10,7 @@ miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true --- -## About the Team synchronization API +## Acerca de la API de sincronización Para utilizar esta API, el usuario autenticado debe ser un mantenedor del equipo o un propietario de la organización asociada con éste. El token que utilizas para autenticarte también necesitará autorizarse para su uso con tu proveedor IdP (SSO). Para obtener más información, consulta la sección "[Autorizar un token de acceso personal para su uso con una organización que tiene inicio de sesión único de SAML](/enterprise-cloud@latest/authentication/authenticating-with-saml-single-sign-on/authorizing-a-personal-access-token-for-use-with-saml-single-sign-on)". diff --git a/translations/es-ES/content/rest/teams/teams.md b/translations/es-ES/content/rest/teams/teams.md index e86f3a7da3..0336191421 100644 --- a/translations/es-ES/content/rest/teams/teams.md +++ b/translations/es-ES/content/rest/teams/teams.md @@ -1,6 +1,6 @@ --- title: Equipos -intro: 'With the Teams API, you can create and manage teams in your GitHub organization.' +intro: 'Con la API de equipos, puedes crear y administrar equipos en tu organización de GitHub.' versions: fpt: '*' ghes: '*' @@ -11,6 +11,6 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Teams API +## Acerca de la API de equipos {% data reusables.organizations.team-api %} diff --git a/translations/es-ES/content/rest/users/gpg-keys.md b/translations/es-ES/content/rest/users/gpg-keys.md index b768a456ae..1c71c096f3 100644 --- a/translations/es-ES/content/rest/users/gpg-keys.md +++ b/translations/es-ES/content/rest/users/gpg-keys.md @@ -1,5 +1,5 @@ --- -title: GPG Keys +title: Llaves GPG intro: '' versions: fpt: '*' @@ -11,7 +11,7 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the User GPG keys API +## Acerca de la API de llaves GPG de usuario Los datos que se devuelven en el campo de respuesta de `public_key` no son una llave con formato de GPG. Cuando un usuario carga una llave GPG, se interpreta y la llave pública criptográfica se extrae y se almacena. Esta llave criptográfica es lo que devuelven las API en esta página. Esta llave no es apta para utilizarse directamente con programas como GPG. diff --git a/translations/es-ES/content/rest/users/index.md b/translations/es-ES/content/rest/users/index.md index 0b7ddad6f2..ea53a69bde 100644 --- a/translations/es-ES/content/rest/users/index.md +++ b/translations/es-ES/content/rest/users/index.md @@ -19,5 +19,6 @@ children: - /followers - /gpg-keys - /keys + - /ssh-signing-keys --- diff --git a/translations/es-ES/content/rest/users/keys.md b/translations/es-ES/content/rest/users/keys.md index 45b91e5947..8c46a7889f 100644 --- a/translations/es-ES/content/rest/users/keys.md +++ b/translations/es-ES/content/rest/users/keys.md @@ -1,5 +1,5 @@ --- -title: Git SSH Keys +title: Llaves SSH de Git intro: '' versions: fpt: '*' @@ -12,6 +12,6 @@ miniTocMaxHeadingLevel: 3 allowTitleToDifferFromFilename: true --- -## About the User Git SSH keys API +## Acerca de la API de llaves SSH de usuario de Git {% data reusables.user-settings.user-api %} diff --git a/translations/es-ES/content/rest/users/ssh-signing-keys.md b/translations/es-ES/content/rest/users/ssh-signing-keys.md new file mode 100644 index 0000000000..33f57a4278 --- /dev/null +++ b/translations/es-ES/content/rest/users/ssh-signing-keys.md @@ -0,0 +1,13 @@ +--- +title: SSH signing keys +intro: '' +versions: + fpt: '*' + ghes: '>=3.7' + ghec: '*' +topics: + - API +miniTocMaxHeadingLevel: 3 +allowTitleToDifferFromFilename: true +--- + diff --git a/translations/es-ES/content/rest/webhooks/index.md b/translations/es-ES/content/rest/webhooks/index.md index 939090a9ea..9ce89decaa 100644 --- a/translations/es-ES/content/rest/webhooks/index.md +++ b/translations/es-ES/content/rest/webhooks/index.md @@ -70,9 +70,9 @@ Las solicitudes de PubSubHubbub pueden enviarse varias veces. Si el gancho ya ex #### Parámetros -| Nombre | Tipo | Descripción | -| -------------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `hub.mode` | `secuencia` | **Requerido**. Ya sea `subscribe` o `unsubscribe`. | -| `hub.topic` | `secuencia` | **Requerido**. La URI del repositorio de GitHub al cual suscribirse. La ruta debe estar en el formato `/{owner}/{repo}/events/{event}`. | -| `hub.callback` | `secuencia` | La URI para recibir las actualizaciones del tema. | -| `hub.secret` | `secuencia` | Una llave de secreto compartido que genera una firma de hash del contenido saliente del cuerpo. You can verify a push came from GitHub by comparing the raw request body with the contents of the {% ifversion fpt or ghes or ghec %}`X-Hub-Signature` or `X-Hub-Signature-256` headers{% elsif ghae %}`X-Hub-Signature-256` header{% endif %}. Puedes ver [la documentación de PubSubHubbub](https://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.4.html#authednotify) para obtener más detalles. | +| Nombre | Tipo | Descripción | +| -------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `hub.mode` | `secuencia` | **Requerido**. Ya sea `subscribe` o `unsubscribe`. | +| `hub.topic` | `secuencia` | **Requerido**. La URI del repositorio de GitHub al cual suscribirse. La ruta debe estar en el formato `/{owner}/{repo}/events/{event}`. | +| `hub.callback` | `secuencia` | La URI para recibir las actualizaciones del tema. | +| `hub.secret` | `secuencia` | Una llave de secreto compartido que genera una firma de hash del contenido saliente del cuerpo. Puedes verificar si una subida de información vino de GitHub cuando comparas el cuerpo de la solicitud sin procesar con el contenido de {% ifversion fpt or ghes or ghec %} los encabezados `X-Hub-Signature` o `X-Hub-Signature-256`{% elsif ghae %}`X-Hub-Signature-256` header{% endif %}. Puedes ver [la documentación de PubSubHubbub](https://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.4.html#authednotify) para obtener más detalles. | diff --git a/translations/es-ES/content/rest/webhooks/repo-config.md b/translations/es-ES/content/rest/webhooks/repo-config.md index 889e95cdb8..00cd82c410 100644 --- a/translations/es-ES/content/rest/webhooks/repo-config.md +++ b/translations/es-ES/content/rest/webhooks/repo-config.md @@ -1,5 +1,5 @@ --- -title: Repository Webhook Configuration +title: Configuración de webhook de repositorio intro: '' versions: fpt: '*' diff --git a/translations/es-ES/content/rest/webhooks/repos.md b/translations/es-ES/content/rest/webhooks/repos.md index 55bc892fc3..c53356342f 100644 --- a/translations/es-ES/content/rest/webhooks/repos.md +++ b/translations/es-ES/content/rest/webhooks/repos.md @@ -1,5 +1,5 @@ --- -title: Repository Webhooks +title: Webhooks de repositorio intro: '' versions: fpt: '*' diff --git a/translations/es-ES/content/site-policy/github-terms/github-community-code-of-conduct.md b/translations/es-ES/content/site-policy/github-terms/github-community-code-of-conduct.md index 75c2b26d17..ffdf5505f0 100644 --- a/translations/es-ES/content/site-policy/github-terms/github-community-code-of-conduct.md +++ b/translations/es-ES/content/site-policy/github-terms/github-community-code-of-conduct.md @@ -16,7 +16,7 @@ topics: Millones de desarrolladores en todo el mundo hospedan millones de proyectos, tanto de código propietario como de código libre, en GitHub. Somo afortunados de poder tomar parte en habilitar la colaboración a lo largo de la comunidad de desarrolladores cada día, lo cual es una responsabilidad que no nos tomamos a la ligera. Juntos, tenemos la emocionante oportunidad de hacer de esta una comunidad de la cual podamos estar orgullosos. -GitHub Community, powered by GitHub Discussions, is intended to be a place for further collaboration, support, and brainstorming. Este es un lugar civilizado para conectarse con otros usuarios, aprender nuevas habilidades, compartir comentarios e ideas y encontrar todo el apoyo que necesitas para tus proyectos de GitHub. By participating in GitHub Community, you are agreeing to the same [Terms of Service](/github/site-policy/github-terms-of-service/) and [GitHub Acceptable Use Policies](/github/site-policy/github-acceptable-use-policies) that apply to GitHub.com, as well as this GitHub Community-specific Code of Conduct. +GitHub Community, powered by GitHub Discussions, is intended to be a place for further collaboration, support, and brainstorming. Este es un lugar civilizado para conectarse con otros usuarios, aprender nuevas habilidades, compartir comentarios e ideas y encontrar todo el apoyo que necesitas para tus proyectos de GitHub. Si participas en la Comunidad de GitHub, estás de acuerdo con los mismos [Términos de servicio](/github/site-policy/github-terms-of-service/) y [Políticas de uso aceptable de GitHub](/github/site-policy/github-acceptable-use-policies) que aplican a GitHub.com, así como este Código de Conducta específico de la Comunidad de GitHub. With this Code of Conduct, we hope to help you understand how best to collaborate in GitHub Community, what you can expect from moderators, and what type of actions or content may result in temporary or permanent suspension from community participation. We will investigate any abuse reports and may moderate public content within GitHub Community that we determine to be in violation of either the GitHub Terms of Service or this Code of Conduct. diff --git a/translations/es-ES/content/site-policy/privacy-policies/github-privacy-statement.md b/translations/es-ES/content/site-policy/privacy-policies/github-privacy-statement.md index bad3f3d933..3a6910d827 100644 --- a/translations/es-ES/content/site-policy/privacy-policies/github-privacy-statement.md +++ b/translations/es-ES/content/site-policy/privacy-policies/github-privacy-statement.md @@ -15,7 +15,7 @@ topics: - Legal --- -Fecha de entrada en vigor: 31 de mayo de 2022 +Effective date: September 1, 2022 Gracias por confiarle tu código fuente, tus proyectos y tus datos personales a GitHub Inc. o a GitHub B.V. ("GitHub", "nosotros", "de nosotros" o "nuestro"). Esta Declaración de Privacidad explica nuestras prácticas con respecto a la recopilación, el uso y la divulgación de tus datos, incluyendo cualquier dato personal que recolectemos y procesemos en conexión con nuestro sitio web y cualquier aplicación, software, producto y servicio que proporcione GitHub, incluyendo cualquier Vistas Previas Beta (en conjunto "El Servicio"). @@ -25,28 +25,28 @@ Todos los términos en mayúsculas tienen su definición en las [Condiciones de ## La versión corta -Utilizamos tu información personal como lo describe la presente Declaración de Privacidad. Sin importar quién seas, dónde vives, o cuál sea tu nacionalidad, proporcionames el mismo estándar alto de protección de la privacidad a todos nuestros usuarios en el mundo, sin importar su país de orígen o su ubicación. +Utilizamos tu información personal como lo describe la presente Declaración de Privacidad. No matter where you are, where you live, or what your citizenship is, you have the same high standard of privacy protection when using GitHub's products as all our users around the world, regardless of their country of origin or location. Para ver nuestro Aviso de Privacidad para los residentes de California, refiérete al [Aviso de GitHub sobre la Ley de Privacidad del Consumidor en California](#githubs-notice-to-california-residents) o desplázate hacia abajo. ## Resumen -| Sección | ¿Qué puedes encontrar allí? | -| ------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [Quién es responsable del procesamiento de tu información](#who-is-responsible-for-the-processing-of-your-information) | Sujeto a excepciones limitadas, GitHub es el controlador y entidad responsable de procesar tus datos personales en conexión con el sitio web o servicio. | -| [Qué información recopila GitHub](#what-information-github-collects) | GitHub recopila información directamente a partir de tu registro, tus pagos, tus transacciones y del perfil del usuario. También, cuando es necesario, recopilamos automáticamente información de tu uso, cookies e información de dispositivo sujetos, cuando sea necesario, a tu consentimiento. GitHub también podría recopilar datos personales de terceros. Solo recopilamos la cantidad mínima de datos personales tuyos necesaria, a menos de que elijas proporcionar más. | -| [Cómo utiliza GitHub tu información](#how-github-uses-your-information) | En esta sección, describimos las formas en las que utilizamos tu información, incluyendo para proporcionarte el Servicio, para comunicarnos contigo, para propósitos de cumplimiento y seguridad y para mejorar nuestro sitio web o servicio o para desarrollar características y funcionalidades nuevas para estos. También describimos la base legal sobre la cual procesamos tu información personal, cuando se exige legalmente. | -| [Cómo compartimos la información que recopilamos](#how-we-share-the-information-we-collect) | Puede que compartamos tu información con terceros en una de las siguientes circunstancias: con tu consentimiento, con nuestros proveedores de servicio, por motivos de seguridad, para cumplir con nuestras obligaciones legales o cuando exista un cambio de control o venta de las entidades corporativas o unidades de negocios. En GitHub, no vendemos tu información personal y no alojamos publicidad. | -| [Tus elecciones con respecto a nuestro procesamiento de tus datos personales](#your-choices-regarding-our-processing-of-your-personal-data) | Proporcionamos formas para que accedas, modifiques o elimines tu información personal. | -| [Cookies](#cookies) | Solo utilizamos las cookies estrictamente necesarias para proporcionar, asegurar y mejorar nuestro sitio web o servicio para desarrollar características y funcionalidades nuevas de nuestro sitio web o servicio. Ofrecemos una página que hace que esto sea muy transparente. No enviamos ningún tipo de información a servicios de analítica terceros. | -| [Cómo asegura GiitHub tu información](#how-github-secures-your-information) | Tomamos todas las medidas razonables necesarias para proteger la confidencialidad, integridad y disponibilidad de tus datos personales en GitHub y para proteger la resiliencia de nuestros servidores. | -| [Preferencias de comunicación](#communication-preferences) | Nos comunicamos contigo por correo electrónico. Puedes controlar la manera en que te contactamos en las configuraciones de la cuenta o poniéndote en contacto con nosotros. | -| [Resolver reclamos](#resolving-complaints) | En el caso improbable de que no podamos resolver una inquietud sobre la privacidad de forma rápida y exhaustiva, proporcionaremos un medio de resolución por medio de una disputa. | -| [Cambios en tu Declaración de privacidad](#changes-to-our-privacy-statement) | Te notificamos los cambios importantes en esta Declaración de privacidad 30 días antes de que cualquier cambio entre en vigencia. Puedes rastrear los cambios en nuestro repositorio de Políticas del sitio. | -| [Licencia](#license) | La presente Declaración de privacidad está autorizada por la [licencia Creative Commons Zero](https://creativecommons.org/publicdomain/zero/1.0/). | -| [Contactarse con GitHub](#contacting-github) | Siéntete libre de contactarnos si tienes preguntas acerca de nuestra Declaración de privacidad. | -| [Traducciones](#translations) | Proporcionamos enlaces a algunas traducciones de la Declaración de privacidad. | +| Sección | ¿Qué puedes encontrar allí? | +| ------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [Quién es responsable del procesamiento de tu información](#who-is-responsible-for-the-processing-of-your-information) | Subject to limited exceptions, GitHub is the controller and entity responsible for the processing of your personal data in connection with the Website or Service if you are in North America. For individuals outside North America the data controller is GitHub B.V. | +| [Qué información recopila GitHub](#what-information-github-collects) | GitHub recopila información directamente a partir de tu registro, tus pagos, tus transacciones y del perfil del usuario. También, cuando es necesario, recopilamos automáticamente información de tu uso, cookies e información de dispositivo sujetos, cuando sea necesario, a tu consentimiento. GitHub también podría recopilar datos personales de terceros. Solo recopilamos la cantidad mínima de datos personales tuyos necesaria, a menos de que elijas proporcionar más. | +| [Cómo utiliza GitHub tu información](#how-github-uses-your-information) | En esta sección, describimos las formas en las que utilizamos tu información, incluyendo para proporcionarte el Servicio, para comunicarnos contigo, para propósitos de cumplimiento y seguridad y para mejorar nuestro sitio web o servicio o para desarrollar características y funcionalidades nuevas para estos. También describimos la base legal sobre la cual procesamos tu información personal, cuando se exige legalmente. | +| [Cómo compartimos la información que recopilamos](#how-we-share-the-information-we-collect) | Puede que compartamos tu información con terceros en una de las siguientes circunstancias: con tu consentimiento, con nuestros proveedores de servicio, por motivos de seguridad, para cumplir con nuestras obligaciones legales o cuando exista un cambio de control o venta de las entidades corporativas o unidades de negocios. En GitHub, no vendemos tu información personal y no alojamos publicidad. | +| [Tus elecciones con respecto a nuestro procesamiento de tus datos personales](#your-choices-regarding-our-processing-of-your-personal-data) | Proporcionamos formas para que accedas, modifiques o elimines tu información personal. | +| [Cookies](#cookies) | Except for cookies used on our Enterprise Marketing Pages, we only use strictly necessary cookies to provide, secure, and improve our Website or Service or develop new features and functionality of our Website or Service.

As described below, we may use non-essential cookies on certain pages of our website to support our enterprise marketing efforts and market our products and services to enterprise customers, for example on resources.github.com (collectively “Enterprise Marketing Pages”).

We offer a [page](https://github.com/privacy/cookies) that makes all uses of cookies very transparent. | +| [Cómo asegura GiitHub tu información](#how-github-secures-your-information) | Tomamos todas las medidas razonables necesarias para proteger la confidencialidad, integridad y disponibilidad de tus datos personales en GitHub y para proteger la resiliencia de nuestros servidores. | +| [Preferencias de comunicación](#communication-preferences) | Nos comunicamos contigo por correo electrónico. Puedes controlar la manera en que te contactamos en las configuraciones de la cuenta o poniéndote en contacto con nosotros. | +| [Resolver reclamos](#resolving-complaints) | En el caso improbable de que no podamos resolver una inquietud sobre la privacidad de forma rápida y exhaustiva, proporcionaremos un medio de resolución por medio de una disputa. | +| [Cambios en tu Declaración de privacidad](#changes-to-our-privacy-statement) | Te notificamos los cambios importantes en esta Declaración de privacidad 30 días antes de que cualquier cambio entre en vigencia. Puedes rastrear los cambios en nuestro repositorio de Políticas del sitio. | +| [Licencia](#license) | La presente Declaración de privacidad está autorizada por la [licencia Creative Commons Zero](https://creativecommons.org/publicdomain/zero/1.0/). | +| [Contactarse con GitHub](#contacting-github) | Siéntete libre de contactarnos si tienes preguntas acerca de nuestra Declaración de privacidad. | +| [Traducciones](#translations) | Proporcionamos enlaces a algunas traducciones de la Declaración de privacidad. | ## Declaración de Privacidad de GitHub @@ -122,13 +122,14 @@ Podríamos utilizar tu información para proporcionar, administrar, analizar, ad - La personalización de nuestro servicio al entender tus preferencias y a ti mismo para mejorar tu experiencia y disfrute de nuestro servicio. - Proporcionar soporte al cliente y responder tus preguntas. - Entregarte comunicaciones promocionales sobre nuestros nuevos servicios, características, ofertas, promociones y otra información sobre nuestro servicio. +- Personalize and measure the effectiveness of enterprise business ads, promotional communications or marketing you receive related to the Enterprise Marketing Pages. - Enviarte información, incluyendo las confirmaciones, facturas, avisos técnicos, actualizaciones alertas de seguridad, soporte y mensajes administrativos. Combinamos los datos que recopilamos de diversas fuentes para estos propósitos y para darte una experiencia personalizad, consistente y más consistente. ## Cómo compartimos la información que recopilamos -Compartimos los datos personales con tu consentimiento o conforme sea necesario para completar tus transacciones o proporcionar los servicios que has solicitado o autorizado. Adicionalmente, podríamos compartir cada una de las categorías de tus datos personales descritas anteriormente con los tipos de terceros que se describen a continuación para los siguientes propósitos de negocios: +We share personal data as described below, including with your consent or as necessary to complete your transactions or provide the services you have requested or authorized. In addition, we may share each of the categories of your personal data described above with the types of third parties described below for the following business purposes: ### Información pública Puedes seleccionar las opciones disponibles a través de nuestro servicio para mostrar y compartir públicamente tu nombre o nombre de usuario y otra información específica, tal como tu perfil, datos, contenido y archivos demográficos o datos de ubicación geográfica. Por ejemplo, si quisieras que tu dirección de correo electrónico permanezca privada, incluso cuando estás comentando en repositorios públicos, [puedes configurar los ajustes de tu dirección de correo electrónico en tu perfil de usuario como privados](https://github.com/settings/emails). También puedes [actualizar tu configuración local de Git para utilizar tu dirección de correo electrónico privada](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address). Por favor, consulta la información adicional sobre las direcciones de correo electrónico en los mensajes de confirmación [aquí](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address). @@ -144,9 +145,9 @@ Puedes habilitar o agregar aplicaciones de terceros, conocidas como "Productos d Puedes indicar, a través de tus acciones en GitHub, que quieres compartir tus datos personales. Si colaboras o te conviertes en miembro de una organización, entonces tus propietarios de cuenta podrían recibir tus datos personales. Cuando aceptas una invitación a una organización, se te notificará sobre los tipos de información que los propietarios pueden ver (para obtener más información, consulta la sección [Acerca de la membresía de la organización](/github/setting-up-and-managing-your-github-user-account/about-organization-membership)). Contacta a los propietarios de cuenta para obtener más información sobre cómo podrían procesar tus datos personales en su organización y las formas en las que puedes acceder, actualizar, alterar o borrar dichos datos personales almacenados en la cuenta. ### Proveedores de servicios -Compartimos tus datos personales con los proveedores de servicio que procesan la información en nuestro nombre para proporcionar o mejorar nuestro servicio. Por ejemplo, nuestros proveedores de servicios podrían realizar el procesamiento de pagos, tickets de soporte de cliente, transmisión de datos de red, seguridad y otros servicios similares. Si bien GitHub procesa todos los datos personales en los Estados Unidos, nuestros proveedores de servicio podrían procesarlos fuera de los Estados Unidos o de la Unión Europea. Dicho procesamiento por parte de los proveedores de servicios cumplirá con las leyes aplicables, incluyendo cualquier mecanismo de transferencia. +Compartimos tus datos personales con los proveedores de servicio que procesan la información en nuestro nombre para proporcionar o mejorar nuestro servicio. For example, our service providers may perform payment processing, customer support ticketing, network data transmission, web analytics, marketing operations, security, and other similar services. Si bien GitHub procesa todos los datos personales en los Estados Unidos, nuestros proveedores de servicio podrían procesarlos fuera de los Estados Unidos o de la Unión Europea. Dicho procesamiento por parte de los proveedores de servicios cumplirá con las leyes aplicables, incluyendo cualquier mecanismo de transferencia. - ### Afiliados Habilitamos el acceso a los datos personales a lo largo de nuestras sucursales, afiliados y empresas relacionadas, por ejemplo, en donde compartimos sistemas de datos comunes o donde se requiere acceso para operar y proporcionar el servicio. + ### Affiliates We enable access to personal data across our subsidiaries, affiliates, and related companies, for example, where we share common data systems, when affiliates provide services on our behalf, or where access is needed to operate and provide the Service. ### Con fines de seguridad Divulgaremos datos personales si creemos que esto es necesario para: @@ -171,7 +172,7 @@ Nosotros *no* vendemos tus datos personales por consideraciones monetarias u otr ## Tus elecciones con respecto a nuestro procesamiento de tus datos personales Proporcionamos elecciones sobre los datos personales que recopilamos de ti. Las elecciones que hagas no aplicarán a los datos personales asociados con una organización bajo tu cuenta. -Acceso, corrección y borrado. Si eres un usuario de GitHub, podrías acceder, actualizar, alterar o borrar tu información básica de perfil de usuario al [editar tu perfil](https://github.com/settings/profile) o contactar al [Soporte de GitHub](https://support.github.com/contact) o al [Soporte Premium de GitHub](https://enterprise.githubsupport.com/hc/en-us). Puedes controlar la información que recopilamos acerca de ti limitando la información que contiene tu perfil, manteniendo tu información actual, o poniéndote en contacto con [GitHub Support](https://support.github.com/contact) o [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). +Acceso, corrección y borrado. Si eres un usuario de GitHub, podrías acceder, actualizar, alterar o borrar tu información básica de perfil de usuario al [editar tu perfil](https://github.com/settings/profile) o contactar al [Soporte de GitHub](https://support.github.com/contact) o al [Soporte Premium de GitHub](https://enterprise.githubsupport.com/hc/en-us). You can control the information we collect about you by limiting what information is in your profile, by keeping your information current, by changing your cookie preferences, or by contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). Retenemos y utilizamos tu información tal como se describe en esta declaración de privacidad pero, salvo los requisitos legales, borraremos tu perfil completo después de que hayan transcurrido 90 días desde tu solicitud. Después de que una cuenta se ha eliminado, ciertos datos, tales como contribuciones a los repositorios de otros usuarios y comentarios en asuntos ajenos, permanecerán. Sin embargo, borraremos o desidentificaremos tus datos personales, incluyendo tu nombre de usuario y dirección de correo electrónico, en el campo de autor de las propuestas, solicitudes de cambio y comentarios y los asociaremos con un usuario fantasma. Dicho esto, la dirección de correo electrónico que proporcionaste a través de tus ajustes para confirmaciones de Git siempre se asociarán con tus confirmaciones en el sistema de Git. Si eliges hacer tu dirección de correo electrónico privada, también deberías actualizar la configuración de tu confirmación de cambios de Git. No podemos cambiar o eliminar datos en el historial de confirmación de Git (el software de Git está diseñado para mantener un registro) pero te permitimos controlar qué información pones en ese registro. @@ -208,13 +209,65 @@ Dependemos da diversas bases legales para recopilar y procesar datos personales ### Cookies y tecnologías de rastreo -GitHub utiliza cookies para proporcionar, asegurar y mejorar nuestro Servicio o para desarrollar características y funcionalidades nuevas del mismo. Por ejemplo, las utilizamos para mantenerte en tu sesión, recordar tus preferencias, identificar tu dispositivo para propósitos de seguridad, compilar reportes estadísticos y proporcionar información sobre el desarrollo futuro de GitHub. Utilizamos nuestras propias cookies y no usamos ningún proveedor de servicios tercero en este contexto. Si inhabilitas la capacidad de tu dispositivo o buscador para aceptar estas cookies, no podrás iniciar sesión ni utilizar nuestro servicio. Proporcionamos más información acerca de las [cookies en GitHub](/github/site-policy/github-subprocessors-and-cookies#cookies-on-github) en nuestra página de [Subprocesadores y cookies de GitHub](/github/site-policy/github-subprocessors-and-cookies), en la cual se describen las cookies que configuramos, las necesidades que tenemos para utilizarlas, y la vigencia de las mismas. +GitHub uses cookies to provide, secure and improve our Service or to develop new features and functionality of our Service. For example, we use them to (i) keep you logged in, (ii) remember your preferences, (iii) identify your device for security and fraud purposes, including as needed to maintain the integrity of our Service, (iv) compile statistical reports, and (v) provide information and insight for future development of GitHub. We provide more information about [cookies on GitHub](https://github.com/privacy/cookies) that describes the cookies we set, the needs we have for those cookies, and the expiration of such cookies. + +For Enterprise Marketing Pages, we may also use non-essential cookies to (i) gather information about enterprise users’ interests and online activities to personalize their experiences, including by making the ads, content, recommendations, and marketing seen or received more relevant and (ii) serve and measure the effectiveness of targeted advertising and other marketing efforts. If you disable the non-essential cookies on the Enterprise Marketing Pages, the ads, content, and marketing you see may be less relevant. Nuestros correos electrónicos a los usuarios podrían contener una etiqueta de pixel, que es una imagen clara y pequeña que nos puede decir si abriste un correo electrónico o no y cuál es tu dirección IP. Utilizamos esta etiqueta de pixel para hacer nuestras comunicaciones por correo electrónico más efectivas y para asegurarnos de que no estemos enviando correo no deseado. -### DNT +The length of time a cookie will stay on your browser or device depends on whether it is a “persistent” or “session” cookie. Session cookies will only stay on your device until you stop browsing. Persistent cookies stay until they expire or are deleted. The expiration time or retention period applicable to persistent cookies depends on the purpose of the cookie collection and tool used. You may be able to delete cookie data as described here. + +#### What are cookies and similar technologies? + +We use cookies and similar technologies, such as web beacons, local storage, and mobile analytics, to operate and provide our Services. When visiting Enterprise Marketing Pages, like resources.github.com, these and additional cookies, like advertising IDs, may be used for sales and marketing purposes. + +Cookies are small text files stored by your browser on your device. A cookie can later be read when your browser connects to a web server in the same domain that placed the cookie. The text in a cookie contains a string of numbers and letters that may uniquely identify your device and can contain other information as well. This allows the web server to recognize your browser over time, each time it connects to that web server. + +Web beacons are electronic images (also called “single-pixel” or “clear GIFs”) that are contained within a website or email. When your browser opens a webpage or email that contains a web beacon, it automatically connects to the web server that hosts the image (typically operated by a third party). This allows that web server to log information about your device and to set and read its own cookies. In the same way, third-party content on our websites (such as embedded videos, plug-ins, or ads) results in your browser connecting to the third-party web server that hosts that content. + +Mobile identifiers for analytics can be accessed and used by apps on mobile devices in much the same way that websites access and use cookies. When visiting Enterprise Marketing pages, like resources.github.com, on a mobile device these may allow us and our third-party analytics and advertising partners to collect data for sales and marketing purposes. + +We may also use so-called “flash cookies” (also known as “Local Shared Objects” or “LSOs”) to collect and store information about your use of our Services. Flash cookies are commonly used for advertisements and videos. + +#### How do we and our partners use cookies and similar technologies? + +The GitHub Services use cookies and similar technologies for a variety of purposes, including to store your preferences and settings, enable you to sign-in, analyze how our Services perform, track your interaction with the Services, develop inferences, combat fraud, and fulfill other legitimate purposes. Some of these cookies and technologies may be provided by third parties, including service providers and advertising partners. For example, our analytics and advertising partners may use these technologies in our Services to collect personal information (such as the pages you visit, the links you click on, and similar usage information, identifiers, and device information) related to your online activities over time and across Services for various purposes, including targeted advertising. GitHub will place non-essential cookies on pages where we market products and services to enterprise customers, for example, on resources.github.com. + +We and/or our partners also share the information we collect or infer with third parties for these purposes. + +The table below provides additional information about how we use different types of cookies: + +| Propósito | Descripción | +|:---------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Required Cookies | GitHub uses required cookies to perform essential website functions and to provide the services. For example, cookies are used to log you in, save your language preferences, provide a shopping cart experience, improve performance, route traffic between web servers, detect the size of your screen, determine page load times, improve user experience, and for audience measurement. These cookies are necessary for our websites to work. | +| Analítica | We allow third parties to use analytics cookies to understand how you use our websites so we can make them better. For example, cookies are used to gather information about the pages you visit and how many clicks you need to accomplish a task. We also use some analytics cookies to provide personalized advertising. | +| Social Media | GitHub and third parties use social media cookies to show you ads and content based on your social media profiles and activity on GitHub’s websites. This ensures that the ads and content you see on our websites and on social media will better reflect your interests. This also enables third parties to develop and improve their products, which they may use on websites that are not owned or operated by GitHub. | +| Advertising | In addition, GitHub and third parties use advertising cookies to show you new ads based on ads you've already seen. Cookies also track which ads you click or purchases you make after clicking an ad. This is done both for payment purposes and to show you ads that are more relevant to you. For example, cookies are used to detect when you click an ad and to show you ads based on your social media interests and website browsing history. | + +#### What are your cookie choices and controls? + + You have several options to disable non-essential cookies: + + 1. **Specifically on GitHub Enterprise Marketing Pages** + + Any GitHub page that serves non-essential cookies will have a link in the page’s footer to cookie settings. You can express your preferences at any time by clicking on that linking and updating your settings. + + Some users will also be able to manage non-essential cookies via a cookie consent banner, including the options to accept, manage, and reject all non-essential cookies. + 2. **Generally for all websites** + + You can control the cookies you encounter on the web using a variety of widely-available tools. Por ejemplo: + - If your browser sends a [Do Not Track](https://en.wikipedia.org/wiki/Do_Not_Track) (DNT) signal, GitHub will not set non-essential cookies and will not load third party resources which set non-essential cookies. + - Many browsers provide cookie controls which may limit the types of cookies you encounter online. Check out the documentation for your browser to learn more. + - If you enable a browser extension designed to block tracking, such as [Privacy Badger](https://en.wikipedia.org/wiki/Privacy_Badger), non-essential cookies set by a website or third parties may be disabled. + - If you enable a browser extension designed to block unwanted content, such as [uBlock Origin](https://en.wikipedia.org/wiki/UBlock_Origin), non-essential cookies will be disabled to the extent that content that sets non-essential cookies will be blocked. + - Advertising controls. Our advertising partners may participate in associations that provide simple ways to opt out of ad targeting, which you can access at: + - United States: [NAI](http://optout.networkadvertising.org) and [DAA](http://optout.aboutads.info/) + - Canada: [Digital Advertising Alliance of Canada](https://youradchoices.ca/) + - Europe: [European Digital Advertising Alliance](http://www.youronlinechoices.com/) + + These choices are specific to the browser you are using. If you access our Services from other devices or browsers, take these actions from those systems to ensure your choices apply to the data collected when you use those systems. + -"[No Rastrear](https://www.eff.org/issues/do-not-track)" (DNT, por sus siglas en inglés) es una preferencia de privacidad que puedes configurar en tu buscador si no quieres que los servicios en línea recolecten y compartan ciertos tipos de información acerca de tu actividad en línea desde los servicios de rastreo de terceros. GitHub responde a las señales DNT del navegador y sigue el estándar [W3C para responder a las señales DNT](https://www.w3.org/TR/tracking-dnt/). Si deseas configurar tu navegador para que indique que no deseas que se rastree, revisa la documentación de tu navegador acerca de cómo habilitar esa señal. También hay buenas aplicaciones que bloquean el rastro en línea, como [Privacy Badger](https://privacybadger.org/). ## Retención de datos personales Retenemos datos personales por tanto como sea necesario para proporcionar los servicios y llevar a cabo las transacciones que hayas solicitad, para cumplir con nuestras obligaciones legales, resolver disputas, hacer valer nuestros acuerdos y otros propósitos de negocio legales y legítimos. Ya que estas necesidades pueden variar para los diferentes tipos de datos en el contexto de diferentes servicios, los periodos de retención reales pueden variar significativamente con base en los criterios tales como las expectativas o el consentimiento de los usuarios, la sensibilidad de los datos y la disponibilidad de los controles automáticos que permiten que los usuarios borren datos y nuestras obligaciones contractuales. Por ejemplo, podríamos retener tus datos personales por periodos más largos, cuando fuese necesario, sujeto a la ley aplicable y por propósitos de seguridad. @@ -232,21 +285,17 @@ Adicionalmente, si tu cuenta tiene repositorios privados, controlas el acceso a GitHub proporcionará un aviso con respecto al acceso al repositorio privado cuando la ley no lo prohíba y como respuesta a las amenazas de seguridad u otros riesgos a esta. -### Transferencias de datos transfronterizas +### Cross-border data transfers GitHub procesa datos personales tanto dentro como fuera de los Estados Unidos y depende de los mecanismos legales tales como las Cláusulas Contractuales Estándar para transferir legalmente los datos desde el Área Económica Europea y el Reino Unido y Suiza hacia los Estados Unidos. Puedes solicitar una copia de las Cláusulas Contractuales Estándar utilizando los detalles de contacto que se proporcionan en la sección denominada "Contactar a GitHub" a continuación. ### Resolver reclamos Si tienes inquietudes sobre la forma en que GitHub maneja tus datos personales, por favor, déjanos saberlo de inmediato. Queremos ayudar. Puedes ponerte en contacto con nosotros completando el [Formulario de contacto de privacidad](https://support.github.com/contact/privacy). También puedes contactarnos directamente enviando un mensaje por correo electrónico a **(privacy [at] github [dot] com)** con el título "Privacy Concerns". Responderemos rápidamente, dentro de los 45 días a más tardar. -También puedes ponerte en contacto directamente con nuestro Responsable de Protección de Datos. +You may also contact our Data Protection Officer directly at at **github [at]dp-officer [dot] com** -| Nuestra casa central de los Estados Unidos | Nuestra oficina de la UE | -| ------------------------------------------ | --------------------------------- | -| Oficial de Protección de Datos de GitHub | GitHub BV | -| 88 Colin P. Kelly Jr. St. | Vijzelstraat 68-72 | -| San Francisco, CA 94107 | 1017 HL Amsterdam | -| Estados Unidos | Países Bajos | -| **privacy [at] github [dot] com** | **privacy [at] github [dot] com** | +**If you are in North America:**
GitHub Data Protection Officer
88 Colin P. Kelly Jr. St.
San Francisco, CA 94107
United States
**privacy [at] github [dot] com**
+ +**If you are outside of North America:**
Github Data Protection Officer
c/o DP Dock DPO Services GmbH,
Attn: GitHub BV, Gut Projensdorf,
24161 Altenholz, Germany
github@dp-officer.com cc: **privacy [at] github [dot] com**
CC: GitHub BV, Vijzelstraat 68-72, 1017 HL Amsterdam, The Netherlands ### Proceso de resolución de disputas @@ -254,7 +303,7 @@ En el improbable caso de que surja una disputa entre tú y GitHub con respecto a ## Cambios en tu Declaración de privacidad -Aunque es probable que la mayoría de los cambios sean mínimos, GitHub puede cambiar nuestra Declaración de privacidad de manera ocasional. Les notificaremos a los Usuarios acerca de los cambios materiales a esta Declaración de privacidad por medio de nuestro Sitio web, al menos, 30 días antes de que el cambio entre en vigencia a través de la publicación de un aviso en nuestra página de inicio o enviando un correo electrónico a la dirección principal de correo electrónico que se especifica en tu cuenta de GitHub. También actualizaremos nuestro [Repositorio de políticas del sitio](https://github.com/github/site-policy/), que realiza un seguimiento de todos los cambios de esta política. Para otros cambios en esta declaración de privacidad, invitamos a los usuarios a [consultar](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository) o a revisar el repositorio de nuestra política del sitio con frecuencia. +Aunque es probable que la mayoría de los cambios sean mínimos, GitHub puede cambiar nuestra Declaración de privacidad de manera ocasional. Les notificaremos a los Usuarios acerca de los cambios materiales a esta Declaración de privacidad por medio de nuestro Sitio web, al menos, 30 días antes de que el cambio entre en vigencia a través de la publicación de un aviso en nuestra página de inicio o enviando un correo electrónico a la dirección principal de correo electrónico que se especifica en tu cuenta de GitHub. También actualizaremos nuestro [Repositorio de políticas del sitio](https://github.com/github/site-policy/), que realiza un seguimiento de todos los cambios de esta política. For other changes to this Privacy Statement, we encourage Users to [watch](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository) or to check our Site Policy repository frequently. ## Licencia diff --git a/translations/es-ES/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md b/translations/es-ES/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md index a4e303e98f..0508bfdb7d 100644 --- a/translations/es-ES/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md +++ b/translations/es-ES/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md @@ -14,74 +14,23 @@ topics: - Legal --- -Fecha de entrada en vigor: **2 de abril de 2021** +Fecha de entrada en vigor: **1 de septiembre de 2022** -{% note %} - -**Nota:** Los cambios a la lista de cookies en esta página están pendientes actualmente. - -{% endnote %} GitHub ofrece una gran cantidad de transparencia en cuanto a cómo usamos tus datos, cómo recopilamos tus datos y con quién los compartimos. Para este propósito, proporcionamos esta página, la cual detalla [nuestros subprocesadores](#github-subprocessors) y cómo utilizamos las [cookies](#cookies-on-github). ## Subprocesadores de GitHub -Cuando compartimos tu información con subprocesadores de terceros, como nuestros vendedores y proveedores de servicios, seguimos siendo responsables de ella. Trabajamos arduamente para mantener tu confianza cuando traemos nuevos proveedores y exigimos que todos los proveedores celebren acuerdos de protección de datos con nosotros que restrinjan su procesamiento de la información personal de los usuarios (tal como se define en la [Declaración de Privacidad](/articles/github-privacy-statement/)). Puedes iniciar sesión para recibir actualizaciones de la lista de subprocesadores [aquí](https://www.github.com/privacy/subprocessors). +Cuando compartimos tu información con subprocesadores de terceros, como nuestros vendedores y proveedores de servicios, seguimos siendo responsables de ella. Trabajamos arduamente para mantener tu confianza cuando traemos nuevos proveedores y exigimos que todos los proveedores celebren acuerdos de protección de datos con nosotros que restrinjan su procesamiento de la información personal de los usuarios (tal como se define en la [Declaración de Privacidad](/articles/github-privacy-statement/)). -| Nombre del subprocesador | Descripción del procesamiento | Ubicación del procesamiento | Ubicación Corporativa | -|:------------------------ |:----------------------------------------------------------------------------------------------- |:--------------------------- |:--------------------- | -| Automattic | Servicio de alojamiento | Estados Unidos | Estados Unidos | -| AWS Amazon | Alojamiento de datos | Estados Unidos | Estados Unidos | -| Braintree (PayPal) | Procesador de pagos de suscripción con tarjeta de crédito | Estados Unidos | Estados Unidos | -| Clearbit | Servicio de enriquecimiento de datos de marketing | Estados Unidos | Estados Unidos | -| Discourse | Proveedor de software del foro de la comunidad | Estados Unidos | Estados Unidos | -| Eloqua | Automatización de campañas de marketing | Estados Unidos | Estados Unidos | -| Google Apps | Infraestructura interna de la empresa | Estados Unidos | Estados Unidos | -| MailChimp | Proveedor de servicios de correo de billetaje de clientes | Estados Unidos | Estados Unidos | -| Mailgun | Proveedor de servicios de correo transaccional | Estados Unidos | Estados Unidos | -| Microsoft | Servicios de Microsoft | Estados Unidos | Estados Unidos | -| Nexmo | Proveedor de notificaciones SMS | Estados Unidos | Estados Unidos | -| Salesforce.com | Gestión de relaciones con clientes | Estados Unidos | Estados Unidos | -| Sentry.io | Proveedor de monitoreo de aplicaciones | Estados Unidos | Estados Unidos | -| Stripe | Proveedor de pagos | Estados Unidos | Estados Unidos | -| Twilio & Twilio Sendgrid | Proveedor de notificaciones por SMS & proveedor de servicio de correo electrónico transaccional | Estados Unidos | Estados Unidos | -| Zendesk | Sistema de tickets de soporte al cliente | Estados Unidos | Estados Unidos | -| Zuora | Sistema de facturación corporativa | Estados Unidos | Estados Unidos | +When we bring on a new subprocessor who handles our Users' Personal Information, or remove a subprocessor, or we change how we use a subprocessor, we will update the list of subprocessors. You can view the current list of subprocessors, and sign up to receive subprocessor list updates, at [https://www.github.com/privacy/subprocessors](https://www.github.com/privacy/subprocessors). -Cuando traemos un nuevo subprocesador que maneja la información personal de nuestros usuarios o eliminas un subprocesador, o cambiamos la manera en que usamos un subprocesador, actualizaremos esta página. Si tienes preguntas o inquietudes acerca de un nuevo subprocesador, estaremos encantados de ayudarte. Ponte en contacto con nosotros vía{% data variables.contact.contact_privacy %}. +Si tienes preguntas o inquietudes acerca de un nuevo subprocesador, estaremos encantados de ayudarte. Ponte en contacto con nosotros vía{% data variables.contact.contact_privacy %}. ## Cookies en GitHub GitHub utiliza cookies para proporcionar y asegurar nuestros sitios web, así como para analizar el uso de los mismos, para poder ofrecerte una gran experiencia de usuario. Por favor, echa un vistazo a nuestra [Declaración de privacidad](/github/site-policy/github-privacy-statement#our-use-of-cookies-and-tracking) si te gustaría obtener más información sobre las cookies y sobre cómo y por qué las utilizamos. -Ya que la cantidad de nombres y cookies puede cambiar, la tabla siguiente se podría actualizar a menudo. +You can view the current list of cookies on GitHub, and sign up to receive cookie list updates, at [https://github.com/privacy/cookies](https://github.com/privacy/cookies). -| Proveedor de servicios | Nombre de la Cookie | Descripción | Vencimiento* | -|:---------------------- |:------------------------------------ |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:------------------------------------------------------------------------------------------ | -| GitHub | `app_manifest_token` | Esta cookie se utiliza durante el flujo del manifiesto de la app para mantener su estado durante la redirección para obtener una sesión de usuario. | cinco minutos | -| GitHub | `color_mode` | Esta cookie se utiliza para indicar que el usuario seleccionó la preferencia de tema. | sesión | -| GitHub | `_device_id` | Esta cookie se utiliza para rastrear los dispositivos reconocidos para propósitos de seguridad. | un año | -| GitHub | `dotcom_user` | Esta cookie se utiliza para indicarnos que el usuario ya está registrado. | un año | -| GitHub | `_gh_ent` | Esta cookie se utiliza para la aplicación temporal y el estado del marco de trabajo entre las páginas como en qué paso se encuentra el cliente dentro de un formulario de varios pasos. | dos semanas | -| GitHub | `_gh_sess` | Esta cookie se usa para la aplicación temporal y el estado del marco entre las páginas como para indicar en qué paso está el usuario en un formulario de múltiples pasos. | sesión | -| GitHub | `gist_oauth_csrf` | Esta cookie se establece por Gist para asegurar que el usuario que inició el flujo oauth sea el mismo usuario que lo completa. | se borra al validar el estado de oauth | -| GitHub | `gist_user_session` | Gist utiliza esta cookie cuando se ejecuta en un host por separado. | dos semanas | -| GitHub | `has_recent_activity` | Esta cookie se utiliza para prevenir que se muestre la seguridad que es intersticial a los usuarios que han visitado la app recientemente. | una hora | -| GitHub | `__Host-gist_user_session_same_site` | Esta cookie se configura para asegurar que los navegadores que soportan las cookies de SameSite puedan verificar si una solicitud se origina desde GitHub. | dos semanas | -| GitHub | `__Host-user_session_same_site` | Esta cookie se configura para asegurar que los navegadores que soportan las cookies de SameSite puedan verificar si una solicitud se origina desde GitHub. | dos semanas | -| GitHub | `logged_in` | Esta cookie se utiliza para indicarnos que el usuario ya está registrado. | un año | -| GitHub | `marketplace_repository_ids` | Esta cookie se utiliza para el flujo de instalación de marketplace. | una hora | -| GitHub | `marketplace_suggested_target_id` | Esta cookie se utiliza para el flujo de instalación de marketplace. | una hora | -| GitHub | `_octo` | Esta cookie se utiliza para la administración de sesiones, incluyendo el almacenamiento en caché del contenido dinámico, el acceso de características condicionales, los metadatos de solicitud de soporte y la analítica de las primeras partes. | un año | -| GitHub | `org_transform_notice` | Esta cookie se utiliza para proporcionar notificaciones durante las transformaciones de las organizaciones. | una hora | -| GitHub | `private_mode_user_session` | Esta cookie se utiliza para las solicitudes de autenticación empresarial. | dos semanas | -| GitHub | `saml_csrf_token` | Esta cookie se establece mediante el método de ruta de autenticación de SAML para asociar un token con el cliente. | hasta que el usuario cierre el buscador o hasta que complete la solicitud de autenticación | -| GitHub | `saml_csrf_token_legacy` | Esta cookie se establece mediante el método de ruta de autenticación de SAML para asociar un token con el cliente. | hasta que el usuario cierre el buscador o hasta que complete la solicitud de autenticación | -| GitHub | `saml_return_to` | Esta cookie se establece mediante el método de ruta de autenticación de SAML para mantener el estado durante el bucle de autenticación de SAML. | hasta que el usuario cierre el buscador o hasta que complete la solicitud de autenticación | -| GitHub | `saml_return_to_legacy` | Esta cookie se establece mediante el método de ruta de autenticación de SAML para mantener el estado durante el bucle de autenticación de SAML. | hasta que el usuario cierre el buscador o hasta que complete la solicitud de autenticación | -| GitHub | `tz` | Esta cookie nos permite personalizar las marcas de tiempo a tu zona horaria. | sesión | -| GitHub | `user_session` | Esta cookie se utiliza para que inicies sesión. | dos semanas | - -_*_ Las fechas de **vencimiento** para las cookies que se listan a continuación generalmente se aplican permanentemente. - -(i) Por favor, ten encuenta que si bien limitamos nuestro uso de cookies de terceros a aquellas necesarias para proporcionar una funcionalidad externa cuando interpretamos el contenido externo, algunas páginas en nuestro sitio web podrían configurar otras cookies de terceros. Por ejemplo, es posible que insertemos contenido, como vídeos, desde otro sitio que establezca una cookie. Si bien tratamos de minimizar estas cookies de terceros, no siempre podemos controlar qué cookies configura dicho contenido. +(i) Por favor, ten encuenta que si bien limitamos nuestro uso de cookies de terceros a aquellas necesarias para proporcionar una funcionalidad externa cuando interpretamos el contenido externo, algunas páginas en nuestro sitio web podrían configurar otras cookies de terceros. Por ejemplo, es posible que insertamos contenido, como vídeos, desde otro sitio que establezca una cookie. Si bien tratamos de minimizar estas cookies de terceros, no siempre podemos controlar qué cookies establece este contenido de terceros. diff --git a/translations/es-ES/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md b/translations/es-ES/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md index 15580fe9d5..69770fe7bf 100644 --- a/translations/es-ES/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md +++ b/translations/es-ES/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md @@ -25,7 +25,7 @@ shortTitle: Patrocina a un contribuyente Puedes patrocinar una cuenta en nombre de tu cuenta personal para invertir en los proyectos de los cuales te beneficies personalmente. Puedes patrocinar una cuenta en nombre de tu organización por varias razones. - Mantener bibliotecas específicas de las cuales dependa el trabajo de tu organización -- Invertir en el ecosistema del cual dependes como organización (tal como blockchain) +- Invertir en el ecosistema del que dependes como organización (tal como blockchain) - Desarrollar una conciencia de marca como una organización que valora el código abierto - Agradecer a los desarrolladores de código abierto por crear bibliotecas que complementan el producto que ofrece tu organización diff --git a/translations/es-ES/data/features/actions-hosted-runners.yml b/translations/es-ES/data/features/actions-hosted-runners.yml new file mode 100644 index 0000000000..fcc88d707d --- /dev/null +++ b/translations/es-ES/data/features/actions-hosted-runners.yml @@ -0,0 +1,5 @@ +#Reference: #6458 +#Larger GitHub-hosted runners +versions: + fpt: '*' + ghec: '*' diff --git a/translations/es-ES/data/features/actions-oidc-hardening-config.yml b/translations/es-ES/data/features/actions-oidc-hardening-config.yml new file mode 100644 index 0000000000..f3048bac8b --- /dev/null +++ b/translations/es-ES/data/features/actions-oidc-hardening-config.yml @@ -0,0 +1,6 @@ +#Reference: #7336 +#General versioning for oidc hardening options +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' diff --git a/translations/es-ES/data/features/code-scanning-exclude-queries-from-analysis.yml b/translations/es-ES/data/features/code-scanning-exclude-queries-from-analysis.yml new file mode 100644 index 0000000000..2157533a6d --- /dev/null +++ b/translations/es-ES/data/features/code-scanning-exclude-queries-from-analysis.yml @@ -0,0 +1,7 @@ +#Issue 7617 +#Users can easily exclude CodeQL queries from code scanning analyses - [GA] +versions: + fpt: '*' + ghec: '*' + ghes: '>3.6' + ghae: 'issue-7617' diff --git a/translations/es-ES/data/features/dependabot-alerts-vulnerable-calls.yml b/translations/es-ES/data/features/dependabot-alerts-vulnerable-calls.yml index 84825c368b..a7f772a7c5 100644 --- a/translations/es-ES/data/features/dependabot-alerts-vulnerable-calls.yml +++ b/translations/es-ES/data/features/dependabot-alerts-vulnerable-calls.yml @@ -3,5 +3,4 @@ versions: fpt: '*' ghec: '*' - ghes: '>3.5' ghae: 'issue-6076' diff --git a/translations/es-ES/data/features/enterprise-namespace-repo-setting.yml b/translations/es-ES/data/features/enterprise-namespace-repo-setting.yml new file mode 100644 index 0000000000..e20549f3ea --- /dev/null +++ b/translations/es-ES/data/features/enterprise-namespace-repo-setting.yml @@ -0,0 +1,6 @@ +#Reference: #7757 +#Setting to disable personal namespace repo creation for EMUs, GHES 3.7+ and GHAE 3.7+ users +versions: + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7757' diff --git a/translations/es-ES/data/features/ip-allow-list-address-check.yml b/translations/es-ES/data/features/ip-allow-list-address-check.yml new file mode 100644 index 0000000000..c4dda87a70 --- /dev/null +++ b/translations/es-ES/data/features/ip-allow-list-address-check.yml @@ -0,0 +1,3 @@ +versions: + ghec: '*' + ghae: 'issue-7818' diff --git a/translations/es-ES/data/features/multiple-accounts-one-workstation.yml b/translations/es-ES/data/features/multiple-accounts-one-workstation.yml new file mode 100644 index 0000000000..9fce93b34e --- /dev/null +++ b/translations/es-ES/data/features/multiple-accounts-one-workstation.yml @@ -0,0 +1,5 @@ +#Issue #7330 +#Documentation for managing multiple GitHub accounts on one workstation +versions: + fpt: '*' + ghec: '*' diff --git a/translations/es-ES/data/features/packages-npm-v2.yml b/translations/es-ES/data/features/packages-npm-v2.yml new file mode 100644 index 0000000000..572e412e4a --- /dev/null +++ b/translations/es-ES/data/features/packages-npm-v2.yml @@ -0,0 +1,5 @@ +#Issue 7039 +#npm Package Registry Improvements (v2) GA +versions: + fpt: '*' + ghec: '*' diff --git a/translations/es-ES/data/features/push-protection-custom-link-orgs-beta.yml b/translations/es-ES/data/features/push-protection-custom-link-orgs-beta.yml new file mode 100644 index 0000000000..509caa9fb4 --- /dev/null +++ b/translations/es-ES/data/features/push-protection-custom-link-orgs-beta.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links beta flags +#See "push-protection-custom-link-orgs" for the feature +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/es-ES/data/features/push-protection-custom-link-orgs.yml b/translations/es-ES/data/features/push-protection-custom-link-orgs.yml new file mode 100644 index 0000000000..fce23efa96 --- /dev/null +++ b/translations/es-ES/data/features/push-protection-custom-link-orgs.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links +#See "push-protection-custom-link-orgs-beta" for the beta flags +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/es-ES/data/features/ssh-commit-verification.yml b/translations/es-ES/data/features/ssh-commit-verification.yml new file mode 100644 index 0000000000..7851b1c8b7 --- /dev/null +++ b/translations/es-ES/data/features/ssh-commit-verification.yml @@ -0,0 +1,8 @@ +#Reference: github/docs-content#6709 +#Initial docs for showing SSH signed commits as verified and +#uploading SSH signing keys +versions: + fpt: '*' + ghec: '*' + ghes: '>= 3.7' + ghae: '*' diff --git a/translations/es-ES/data/features/streaming-datadog.yml b/translations/es-ES/data/features/streaming-datadog.yml new file mode 100644 index 0000000000..ab90546c8d --- /dev/null +++ b/translations/es-ES/data/features/streaming-datadog.yml @@ -0,0 +1,4 @@ +#Reference #7495 +#Documentation for audit log streaming to a Datadog endpoint +versions: + ghec: '*' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-1/20.yml b/translations/es-ES/data/release-notes/enterprise-server/3-1/20.yml index e5a8d1f357..a518cef9b1 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-1/20.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-1/20.yml @@ -6,11 +6,11 @@ sections: - 'El cargar nodos en un par con disponibilidad alta con un paquete de mejora pudo haber causado que Elasticsearch ingresara en un estado inconsistente en algunos casos.' - 'En algunas topologías de clúster, no pudieron ejecutarse las utilidades de línea de comandos `ghe-spokesctl` y `ghe-btop`.' - 'Los índices de Elastisearch podrían duplicarse durante la mejora de un paquete debido a que el servicio de `elasticsearch-upgrade` se ejecutó varias veces en paralelo.' - - 'The `maint_host_low` job queues were not processed, resulting in some maintenance tasks failing to run.' + - 'Las colas de job `maint_host_low` no se procesaron y esto dio como resultado que algunas tareas de mantenimiento no se pudieran ejecutar.' - 'Cuando conviertes una cuenta de usuario en una organización, si dicha cuenta fue propietaria de la cuenta empresarial de {% data variables.product.prodname_ghe_server %}, la organización convertida se mostró incorrectamente en la lista de propietarios de la empresa.' - 'El crear un token de OAuth de personificación utilizando la API de REST de administración de empresas dio como resultado un error cuando una integración que coincidió con la ID de aplicación de OAuth ya existía.' changes: - - 'When attempting to cache a value larger than the maximum allowed in Memcached, an error was raised however the key was not reported.' + - 'Cuando se intenta guardar en caché un valor mayor al máximo permitido en memcached, un error se levantó pero la llave no se reportó.' known_issues: - 'El registor de npm del {% data variables.product.prodname_registry %} ya no regresa un valor de tiempo en las respuestas de metadatos. Esto se hizo para permitir mejoras de rendimiento sustanciales. Seguimos teniendo todos los datos necesarios para devolver un valor de tiempo como parte de la respuesta de metadatos y terminaremos de devolver este valor ene l futuro una vez que hayamos resuelto los problemas de rendimiento existentes.' - 'En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador.' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-2/12.yml b/translations/es-ES/data/release-notes/enterprise-server/3-2/12.yml index 15273f31a9..59507e58e6 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-2/12.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-2/12.yml @@ -7,11 +7,11 @@ sections: - 'En algunas topologías de clúster, no pudieron ejecutarse las utilidades de línea de comandos `ghe-spokesctl` y `ghe-btop`.' - 'Los índices de Elastisearch podrían duplicarse durante la mejora de un paquete debido a que el servicio de `elasticsearch-upgrade` se ejecutó varias veces en paralelo.' - 'Cuando conviertes una cuenta de usuario en una organización, si dicha cuenta fue propietaria de la cuenta empresarial de {% data variables.product.prodname_ghe_server %}, la organización convertida se mostró incorrectamente en la lista de propietarios de la empresa.' - - 'Creating an impersonation OAuth token using the Enterprise Administration REST API worked incorrectly when an integration matching the OAuth Application ID already existed.' + - 'El crear un token de OAuth de personificación utilizando la API de REST de administración de empresas funcionó de forma incorrecta cuando una integración que coincidió con la ID de aplicación de OAuth ya existía.' changes: - 'Los errores de configuración que detienen una ejecución de aplicación de configuraciones ahora son el producto de la terminal adicionalmente a la bitácora de configuración.' - 'Al intentar almacenar en caché un valor que fuera más grande que el máximo permitido en Memcached, se levantó un error pero la clave no se reportó.' - - 'The {% data variables.product.prodname_codeql %} starter workflow no longer errors even if the default token permissions for {% data variables.product.prodname_actions %} are not used.' + - 'El flujo de trabajo inicial de {% data variables.product.prodname_codeql %} ya no muestra un error, incluso si no se utilizan los permisos del token predeterminado para {% data variables.product.prodname_actions %}.' - 'Si se habilitaron las características de {% data variables.product.prodname_GH_advanced_security %} en tu instancia, el rendimiento de los jobs en segundo plano mejoró al procesar los lotes para las contribuciones de repositorio.' known_issues: - 'En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador.' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-2/17.yml b/translations/es-ES/data/release-notes/enterprise-server/3-2/17.yml index 4b357844ba..62417df964 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-2/17.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-2/17.yml @@ -2,11 +2,11 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICA**: El contenedor de Elasticsearch de GitHub Enterprise Server utilizó una versión de OpenJDK 8 que estuvo vulnerable a un problema de truncamiento de número al procesar hojas de estilo de XSLT malintencionadas. La vulnerabilidad se rastreó como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTA**: Las aplicaciones instaladas anteriormente en las cuentas de usuario obtuvieron permiso automáticamente para acceder a una organización en los tokens de acceso en el alcance después de que la cuenta de usuario se transformó en una cuenta de organización. Esta vulnerabilidad se reportó a través del [Programa de Recompensas por Errores de GitHub](https://bounty.github.com). bugs: - - When a custom dormancy threshold was set for the instance, suspending all dormant users did not reliably respect the threshold. For more information about dormancy, see "[Managing dormant users](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." + - Cuando se configuró un umbral de inactividad personalizado para la instancia, el suspender a todos los usuarios inactivos no respetó confiablemente dicho umbral. Para obtener más información sobre la inactividad, consulta la sección "[Administrar a los usuarios inactivos](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)". known_issues: - En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador. - Las reglas de cortafuegos personalizadas se eliminan durante el proceso de actualización. diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-2/18.yml b/translations/es-ES/data/release-notes/enterprise-server/3-2/18.yml new file mode 100644 index 0000000000..3f5d1e9bc5 --- /dev/null +++ b/translations/es-ES/data/release-notes/enterprise-server/3-2/18.yml @@ -0,0 +1,16 @@ +date: '2022-08-30' +sections: + bugs: + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + known_issues: + - En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador. + - Las reglas de cortafuegos personalizadas se eliminan durante el proceso de actualización. + - Los archivos rastreados del LFS de Git que se [cargaron mediante la interface web](https://github.com/blog/2105-upload-files-to-your-repositories) se agregaron incorrecta y directamente al repositorio. + - Las propuestas no pudieron cerrarse si contenían un permalink a un blob en el mismo repositorio en donde la ruta de archvio del blob era más grande a 255 caracteres. + - Cuando se habilita la opción "Los usuarios pueden buscar en GitHub.com" con las propuestas de {% data variables.product.prodname_github_connect %}, las propuestas en los repositorios internos y privados no se incluyen en los resultados de búsqueda de {% data variables.product.prodname_dotcom_the_website %}. + - El registor de npm del {% data variables.product.prodname_registry %} ya no regresa un valor de tiempo en las respuestas de metadatos. Esto se hizo para permitir mejoras de rendimiento sustanciales. Seguimos teniendo todos los datos necesarios para devolver un valor de tiempo como parte de la respuesta de metadatos y terminaremos de devolver este valor ene l futuro una vez que hayamos resuelto los problemas de rendimiento existentes. + - Los límites de recursos que son específicos para procesar ganchos de pre-recepción podrían ocasionar que fallen algunos ganchos de pre-recepción. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-3/12.yml b/translations/es-ES/data/release-notes/enterprise-server/3-3/12.yml index 362eff8fbc..caafc57aab 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-3/12.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-3/12.yml @@ -2,13 +2,13 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICA**: El contenedor de Elasticsearch de GitHub Enterprise Server utilizó una versión de OpenJDK 8 que estuvo vulnerable a un problema de truncamiento de número al procesar hojas de estilo de XSLT malintencionadas. La vulnerabilidad se rastreó como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTA**: Las aplicaciones instaladas anteriormente en las cuentas de usuario obtuvieron permiso automáticamente para acceder a una organización en los tokens de acceso en el alcance después de que la cuenta de usuario se transformó en una cuenta de organización. Esta vulnerabilidad se reportó a través del [Programa de Recompensas por Errores de GitHub](https://bounty.github.com). bugs: - - When a custom dormancy threshold was set for the instance, suspending all dormant users did not reliably respect the threshold. For more information about dormancy, see "[Managing dormant users](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." + - Cuando se configuró un umbral de inactividad personalizado para la instancia, el suspender a todos los usuarios inactivos no respetó confiablemente dicho umbral. Para obtener más información sobre la inactividad, consulta la sección "[Administrar a los usuarios inactivos](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)". changes: - - 'The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + - 'La bitácora de auditoría ahora incluye más eventos generados por los usuarios, tal como `project.create`. La API de REST también devuelve eventos generados por el usuario, tal como `repo.create`. Para obtener más información, consulta las secciones "[Acceder a la bitácora de auditoría de tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" y "[Utilizar la API de bitácora de auditoría para tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)".' known_issues: - Después de haber actualizado a {% data variables.product.prodname_ghe_server %} 3.3, podría que las {% data variables.product.prodname_actions %} no inicien automáticamente. Para resolver este problema, conéctate al aplicativo a través de SSH y ejecuta el comando `ghe-actions-start`. - En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador. diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-3/13.yml b/translations/es-ES/data/release-notes/enterprise-server/3-3/13.yml new file mode 100644 index 0000000000..66730dd551 --- /dev/null +++ b/translations/es-ES/data/release-notes/enterprise-server/3-3/13.yml @@ -0,0 +1,23 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - 'La bitácora de auditoría ahora incluye más eventos generados por los usuarios, tal como `project.create`. La API de REST también devuelve eventos generados por el usuario, tal como `repo.create`. Para obtener más información, consulta las secciones "[Acceder a la bitácora de auditoría de tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" y "[Utilizar la API de bitácora de auditoría para tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)".' + known_issues: + - Después de haber actualizado a {% data variables.product.prodname_ghe_server %} 3.3, podría que las {% data variables.product.prodname_actions %} no inicien automáticamente. Para resolver este problema, conéctate al aplicativo a través de SSH y ejecuta el comando `ghe-actions-start`. + - En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador. + - Las reglas de cortafuegos personalizadas se eliminan durante el proceso de actualización. + - Los archivos rastreados del LFS de Git que se [cargaron mediante la interface web](https://github.com/blog/2105-upload-files-to-your-repositories) se agregaron incorrecta y directamente al repositorio. + - Las propuestas no pudieron cerrarse si contenían un permalink a un blob en el mismo repositorio en donde la ruta de archvio del blob era más grande a 255 caracteres. + - Cuando se habilita la opción "Los usuarios pueden buscar en GitHub.com" con las propuestas de {% data variables.product.prodname_github_connect %}, las propuestas en los repositorios internos y privados no se incluyen en los resultados de búsqueda de {% data variables.product.prodname_dotcom_the_website %}. + - El registor de npm del {% data variables.product.prodname_registry %} ya no regresa un valor de tiempo en las respuestas de metadatos. Esto se hizo para permitir mejoras de rendimiento sustanciales. Seguimos teniendo todos los datos necesarios para devolver un valor de tiempo como parte de la respuesta de metadatos y terminaremos de devolver este valor ene l futuro una vez que hayamos resuelto los problemas de rendimiento existentes. + - Los límites de recursos que son específicos para procesar ganchos de pre-recepción podrían ocasionar que fallen algunos ganchos de pre-recepción. + - 'Los ajustes de almacenamiento de {% data variables.product.prodname_actions %} no pueden validarse y guardarse en la {% data variables.enterprise.management_console %} cuando se selecciona "Forzar estilo de ruta" y, en su lugar, debe configurarse la utilidad de línea de comando `ghe-actions-precheck`.' + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-3/7.yml b/translations/es-ES/data/release-notes/enterprise-server/3-3/7.yml index d4118e7d0d..c015a20808 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-3/7.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-3/7.yml @@ -9,10 +9,10 @@ sections: - 'Se acumularon los archivos de bitácora rotados con la extensión `.backup` enlos directorios que contenían bitácoras de sistema.' - 'En algunas topologías de clúster, no pudieron ejecutarse las utilidades de línea de comandos `ghe-spokesctl` y `ghe-btop`.' - 'Los índices de Elastisearch podrían duplicarse durante la mejora de un paquete debido a que el servicio de `elasticsearch-upgrade` se ejecutó varias veces en paralelo.' - - 'In the pull request and commit views, rich diffs would fail to load for some files tracked by Git LFS.' + - 'En las vistas de confirmación y solicitud de cambios, las diferencias enriquecidas no pudieron cargar para algunos archivos rastreados por Git LFS.' - 'Cuando conviertes una cuenta de usuario en una organización, si dicha cuenta fue propietaria de la cuenta empresarial de {% data variables.product.prodname_ghe_server %}, la organización convertida se mostró incorrectamente en la lista de propietarios de la empresa.' - 'El crear un token de OAuth de personificación utilizando la API de REST de administración de empresas dio como resultado un error cuando una integración que coincidió con la ID de aplicación de OAuth ya existía.' - - 'The Secret Scanning REST API would return a `500` response code when there were UTF8 characters present in a detected secret.' + - 'La API de REST del escaneo de secretos devolvió un código de respuesta `500` cuando hubo caracteres UTF8 presentes en un secreto detectado.' - 'Los servidores de caché del repositorio pudieron servir datos de ubicaciones fuera del caché, incluso cuando los datos estuvieron disponibles en la ubicación del caché local.' changes: - 'Los errores de configuración que detienen una ejecución de aplicación de configuraciones ahora son el producto de la terminal adicionalmente a la bitácora de configuración.' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-4/2.yml b/translations/es-ES/data/release-notes/enterprise-server/3-4/2.yml index 0e7becdeaf..3e02d47236 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-4/2.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-4/2.yml @@ -11,10 +11,10 @@ sections: - 'Los índices de Elastisearch podrían duplicarse durante la mejora de un paquete debido a que el servicio de `elasticsearch-upgrade` se ejecutó varias veces en paralelo.' - 'Los servidores de caché del repositorio pudieron servir datos de ubicaciones fuera del caché, incluso cuando los datos estuvieron disponibles en la ubicación del caché local.' - 'Cuando conviertes una cuenta de usuario en una organización, si dicha cuenta fue propietaria de la cuenta empresarial de {% data variables.product.prodname_ghe_server %}, la organización convertida se mostró incorrectamente en la lista de propietarios de la empresa.' - - 'The `/stafftools/users/ip_addresses/:address` page responded with a `500 Internal Server Error` when attempting to display the page for an IPv6 address.' + - 'La página `/stafftools/users/ip_addresses/:address` respondió con un `500 Internal Server Error` cuando se intentó mostrar la página para una dirección IPv6.' - 'El crear un token de OAuth de personificación utilizando la API de REST de administración de empresas dio como resultado un error cuando una integración que coincidió con la ID de aplicación de OAuth ya existía.' changes: - - 'Added support for replica domain names that are more than 63 characters.' + - 'Se agregó compatibilidad para los nombres de dominio de réplica que tienen más de 63 caracteres.' - 'Los errores de configuración que detienen una ejecución de aplicación de configuraciones ahora son el producto de la terminal adicionalmente a la bitácora de configuración.' - 'Si se habilitaron las características de {% data variables.product.prodname_GH_advanced_security %} en tu instancia, el rendimiento de los jobs en segundo plano mejoró al procesar los lotes para las contribuciones de repositorio.' known_issues: diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-4/7.yml b/translations/es-ES/data/release-notes/enterprise-server/3-4/7.yml index 87225268ee..cd5d3665fa 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-4/7.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-4/7.yml @@ -2,13 +2,13 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICA**: El contenedor de Elasticsearch de GitHub Enterprise Server utilizó una versión de OpenJDK 8 que estuvo vulnerable a un problema de truncamiento de número al procesar hojas de estilo de XSLT malintencionadas. La vulnerabilidad se rastreó como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTA**: Las aplicaciones instaladas anteriormente en las cuentas de usuario obtuvieron permiso automáticamente para acceder a una organización en los tokens de acceso en el alcance después de que la cuenta de usuario se transformó en una cuenta de organización. Esta vulnerabilidad se reportó a través del [Programa de Recompensas por Errores de GitHub](https://bounty.github.com). bugs: - In some cases, GitHub Enterprise Server instances on AWS that used the `r4.4xlarge` instance type would fail to boot. - 'When calculating committers for GitHub Advanced Security, it was not possible to specify individual repositories. For more information, see "[Site admin dashboard](/admin/configuration/configuring-your-enterprise/site-admin-dashboard#advanced-security-committers)."' - - When a custom dormancy threshold was set for the instance, suspending all dormant users did not reliably respect the threshold. For more information about dormancy, see "[Managing dormant users](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." + - Cuando se configuró un umbral de inactividad personalizado para la instancia, el suspender a todos los usuarios inactivos no respetó confiablemente dicho umbral. Para obtener más información sobre la inactividad, consulta la sección "[Administrar a los usuarios inactivos](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)". changes: - '`pre_receive_hook.rejected_push` events were not displayed in the enterprise audit log.' - Both migration archives for repositories and archive exports for user accounts include release reactions. diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-4/8.yml b/translations/es-ES/data/release-notes/enterprise-server/3-4/8.yml new file mode 100644 index 0000000000..a6dcaaaa45 --- /dev/null +++ b/translations/es-ES/data/release-notes/enterprise-server/3-4/8.yml @@ -0,0 +1,26 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - 'La bitácora de auditoría ahora incluye más eventos generados por los usuarios, tal como `project.create`. La API de REST también devuelve eventos generados por el usuario, tal como `repo.create`. Para obtener más información, consulta las secciones "[Acceder a la bitácora de auditoría de tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" y "[Utilizar la API de bitácora de auditoría para tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)".' + known_issues: + - En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador. + - Las reglas de cortafuegos personalizadas se eliminan durante el proceso de actualización. + - Los archivos rastreados del LFS de Git que se [cargaron mediante la interface web](https://github.com/blog/2105-upload-files-to-your-repositories) se agregaron incorrecta y directamente al repositorio. + - Las propuestas no pudieron cerrarse si contenían un permalink a un blob en el mismo repositorio en donde la ruta de archvio del blob era más grande a 255 caracteres. + - Cuando se habilita la opción "Los usuarios pueden buscar en GitHub.com" con las propuestas de {% data variables.product.prodname_github_connect %}, las propuestas en los repositorios internos y privados no se incluyen en los resultados de búsqueda de {% data variables.product.prodname_dotcom_the_website %}. + - El registor de npm del {% data variables.product.prodname_registry %} ya no regresa un valor de tiempo en las respuestas de metadatos. Esto se hizo para permitir mejoras de rendimiento sustanciales. Seguimos teniendo todos los datos necesarios para devolver un valor de tiempo como parte de la respuesta de metadatos y terminaremos de devolver este valor ene l futuro una vez que hayamos resuelto los problemas de rendimiento existentes. + - Los límites de recursos que son específicos para procesar ganchos de pre-recepción podrían ocasionar que fallen algunos ganchos de pre-recepción. + - | + Después de registrar un ejecutor auto-hospedado con el parámetro `--ephemeral` en más de un nivel (por ejemplo, tanto en la empresa como en la organización), el ejecutor podría atorarse en un estado inactivo y requerir un nuevo registro. [Actualizado: 2022-06-17] + - Después de mejorar a {% data variables.product.prodname_ghe_server %} 3.4, podría parecer que los lanzamientos no están en los repositorios. Esto puede ocurrir cuando las migraciones de índice de Elasticsearch requeridas no se han completado exitosamente. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-5/0.yml b/translations/es-ES/data/release-notes/enterprise-server/3-5/0.yml index a0c56a536c..7ffe59353b 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-5/0.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-5/0.yml @@ -116,8 +116,7 @@ sections: heading: La gráfica de dependencias es compatible con GitHub Actions notes: - | - The dependency graph now detects YAML files for GitHub Actions workflows. GitHub Enterprise Server will display the workflow files within the **Insights** tab's dependency graph section. Repositories that publish actions will also be able to see the number of repositories that depend on that action from the "Used By" control on the repository homepage. For more information, see "[About the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + La gráfica de dependencias ahora detecta archivos YAML para los flujos de trabajo de GitHub Actions. GitHub Enterprise Server mostrará los archivos de flujo de trabajo dentro de la sección de gráfica de dependencias de la pestaña **Perspectivas**. Los repositorios que publiquen acciones también podrán ver la cantidad de repositorios que dependen de esa acción desde el control de "Utilizado por" en la página principal del repositorio. Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)". - **Nota**: Esta característica está disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. La característica está disponible en la versión 3.5.4 y posteriores. [Actualizado: 2022-08-16] - heading: El resumen de seguridad para empresas está en beta público notes: @@ -201,8 +200,8 @@ sections: heading: Volver a abrir las alertas descartadas del Dependabot notes: - | - You can now reopen dismissed Dependabot alerts through the UI page for a closed alert. This does not affect Dependabot pull requests or the GraphQL API. For more information, see "[About Dependabot alerts](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + Ahora puedes volver a abrir las alertas del Dependabot que se descartaron mediante la página de IU en el caso de las alertas cerradas. Esto no afecta a las solicitudes de cambio ni a la API de GraphQL. Para obtener más información, consulta la sección "[Acerca de las alertas del Dependabot](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)". + - **Nota**: Esta característica no estuvo disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. La característica está disponible en la versión 3.5.4 y posteriores. [Actualizado: 2022-08-16] - heading: La compatibilidad de Pub para las actualizaciones de versión del Dependabot se encuentra en beta público notes: @@ -262,12 +261,12 @@ sections: heading: Más formas de mantener actualizada la rama de tema de una solicitud de cambios notes: - | - The **Update branch** button on the pull request page lets you update your pull request's branch with the latest changes from the base branch. This is useful for verifying your changes are compatible with the current version of the base branch before you merge. Two enhancements now give you more ways to keep your branch up-to-date. + El botón de **Rama actualizada* en la página de la solicitud de cambios te permite actualizar la rama de esta solicitud con los últimos cambios de la rama base. Esto es útil para verificar que tus cambios sean compatibles con la versión actual de la rama base antes de que hagas la fusión. Estas dos mejoras ahora te proporcionan más formas de mantener tu rama actualizada. - - When your pull request's topic branch is out of date with the base branch, you now have the option to update it by rebasing on the latest version of the base branch. Rebasing applies the changes from your branch onto the latest version of the base branch, resulting in a branch with a linear history since no merge commit is created. To update by rebasing, click the drop down menu next to the **Update Branch** button, click **Update with rebase**, and then click **Rebase branch**. Previously, **Update branch** performed a traditional merge that always resulted in a merge commit in your pull request branch. This option is still available, but now you have the choice. For more information, see "[Keeping your pull request in sync with the base branch](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/keeping-your-pull-request-in-sync-with-the-base-branch)." + - Cuando la rama de tema de tu solicitud de cambios está desactualizada con la rama base, ahora tienes la opción de actualizarla rebasándola en la versión más reciente de la rama base. El rebase aplica los cambios de tu rama en la última versión de la rama base, lo que da como resultado una rama con un historial linear, ya que no se crea ninguna confirmación de fusión. Para actualizar por rebase, haz clic en el menú desplegable junto al botón**Actualizar rama**, luego en **Actualizar con rebase** y luego en *Rebasar rama*. Anteriormente, **Actualizar rama** realizaba una fusión tradicional que siembre daba como resultado una confirmación de fusión en la rama de tu solicitud de cambios. Esta opción aún está disponible, pero ahora tienes una elección. Para obtener más información, consulta la sección "[Mantener tu solicitud de cambios sincronizada con la rama base](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/keeping-your-pull-request-in-sync-with-the-base-branch)". - - A new repository setting allows the **Update branch** button to always be available when a pull request's topic branch is not up to date with the base branch. Previously, this button was only available when the **Require branches to be up to date before merging** branch protection setting was enabled. People with admin or maintainer access can manage the **Always suggest updating pull request branches** setting from the **Pull Requests** section in repository settings. For more information, see "[Managing suggestions to update pull request branches](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + - Un ajuste nuevo de repositorio permite que el botón **Actualizar rama** siempre esté disponible cuando la rama de tema de una solicitud de cambios no esté actualizada con la rama base. Anteriormente, este botón solo estaba disponible cuando estaba habilitado el ajuste de protección de rama **Requerir que las ramas estén actualizadas antes de fusionarlas**. Las personas con acceso de mantenedor o administrador pueden administrar el ajuste de **Siempre sugerir actualizar las ramas de solicitudes de cambios** de la sección **Solicitudes de cambios* en los ajustes de repositorio. Para obtener más información, consulta la sección "[Administrar sugerencias para actualizar las ramas de las solicitudes de cambios](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches)". + - **Nota**: Esta característica no estuvo disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. La característica está disponible en la versión 3.5.4 y posterior. [Actualizado: 2022-08-16] - heading: Configurar los encabezados personalizados de HTTP para los sitios de GitHub Pages notes: @@ -282,8 +281,8 @@ sections: heading: El tema claro de contraste alto está disponible en general notes: - | - A light high contrast theme, with greater contrast between foreground and background elements, is now generally available. For more information, see "[Managing your theme settings](/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + Ahora hay un tema claro de alto contraste disponible para el público en general, el cual tiene un mayor contraste entre los elementos de fondo y superpuestos. Para obtener más información, consulta la sección "[Administrar los ajustes de tu tema](/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings)". + - **Note**: Esta característica no estuvo disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. La característica está disponible en la versión 3.5.4 y posterior. [Actualizado: 2022-08-16] - heading: Reglas de protección de etiquetas notes: @@ -352,10 +351,10 @@ sections: - 'Deleted repositories will not be purged from disk automatically after the 90-day retention period ends. This issue is resolved in the 3.5.1 patch release. [Updated: 2022-06-10]' - 'La consola de administración podría haberse mostrado atascada en la pantalla de _Starting_ después de mejorar una instancia subaprovisionada para GitHub Enterprise Server 3.5. [Actualizado: 2022-06-20]' - | - The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16] + Las siguientes características no estuvieron disponibles para los usuarios en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. Las características están disponibles en la versión 2.5.4 y posterior. [Actualizado: 2022-08-16] - - Detection of GitHub Actions workflow files for the dependency graph - - Reopening of dismissed Dependabot alerts - - Enabling the **Update branch** button for all pull requests in a repository - - Light high contrast theme + - Detección de archivos de flujo de GitHub Actions para la gráfica de dependencias + - Reapertura de las alertas descartadas del Dependabot + - Habilitar el botón **Actualizar rama** para todas las solicitudes de cambio en un repositorio + - Tema claro de alto contraste - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-5/1.yml b/translations/es-ES/data/release-notes/enterprise-server/3-5/1.yml index 59535991ee..a9f6895423 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-5/1.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-5/1.yml @@ -32,10 +32,10 @@ sections: - 'Los repositorios borrados no se purgarán del disco automáticamente después de que finalice el periodo de retención de 90 días. Esta propuesta se resolvió en el lanzamiento 3.5.1. [Actualizado: 2022-06-10]' - 'La consola de administración podría haberse mostrado atascada en la pantalla de _Starting_ después de mejorar una instancia subaprovisionada para GitHub Enterprise Server 3.5. [Actualizado: 2022-06-20]' - | - The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16] + Las siguientes características no estuvieron disponibles para los usuarios en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. Las características están disponibles en la versión 2.5.4 y posterior. [Actualizado: 2022-08-16] - - Detection of GitHub Actions workflow files for the dependency graph - - Reopening of dismissed Dependabot alerts - - Enabling the **Update branch** button for all pull requests in a repository - - Light high contrast theme + - Detección de archivos de flujo de GitHub Actions para la gráfica de dependencias + - Reapertura de las alertas descartadas del Dependabot + - Habilitar el botón **Actualizar rama** para todas las solicitudes de cambio en un repositorio + - Tema claro de alto contraste - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-5/2.yml b/translations/es-ES/data/release-notes/enterprise-server/3-5/2.yml index a9b35aafae..206837c08f 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-5/2.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-5/2.yml @@ -33,10 +33,10 @@ sections: - Los límites de recursos que son específicos para procesar ganchos de pre-recepción podrían ocasionar que fallen algunos ganchos de pre-recepción. - Los servicios de las acciones necesitan reiniciarse después de restablecer un aplicativo de un respaldo que se llevó a un host diferente. - | - The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16] + Las siguientes características no estuvieron disponibles para los usuarios en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. Las características están disponibles en la versión 3.5.4 y posteriores. [Actualizado: 2022-08-16] - - Detection of GitHub Actions workflow files for the dependency graph - - Reopening of dismissed Dependabot alerts - - Enabling the **Update branch** button for all pull requests in a repository - - Light high contrast theme + - Detección de archivos del flujo de trabajo de GitHub Actions para la gráfica de dependencias + - Reapertura de alertas descartadas del Dependabot + - Habilitar el botón de *Rama actualizada** para todas las solicitudes de cambio en un repositorio + - Tema claro de alto contraste - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-5/3.yml b/translations/es-ES/data/release-notes/enterprise-server/3-5/3.yml index 962af1fb11..08c43001b3 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-5/3.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-5/3.yml @@ -30,5 +30,5 @@ sections: - 'El registor de npm del {% data variables.product.prodname_registry %} ya no regresa un valor de tiempo en las respuestas de metadatos. Esto se hizo para permitir mejoras de rendimiento sustanciales. Seguimos teniendo todos los datos necesarios para devolver un valor de tiempo como parte de la respuesta de metadatos y terminaremos de devolver este valor ene l futuro una vez que hayamos resuelto los problemas de rendimiento existentes.' - 'Los límites de recursos que son específicos para procesar ganchos de pre-recepción podrían ocasionar que fallen algunos ganchos de pre-recepción.' - 'Los servicios de las acciones necesitan reiniciarse después de restablecer un aplicativo de un respaldo que se llevó a un host diferente.' - - "The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16]\n\n- Detection of GitHub Actions workflow files for the dependency graph\n- Reopening of dismissed Dependabot alerts\n- Enabling the **Update branch** button for all pull requests in a repository\n- Light high contrast theme\n" + - "Las siguientes características no estuvieron disponibles para los usuarios en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3. Las características están disponibles en la versión 2.5.4 y posterior. [Actualizado: 2022-08-16]\n\n- Detección de archivos de flujo de GitHub Actions para la gráfica de dependencias\n- Reapertura de las alertas descartadas del Dependabot\n- Habilitar el botón **Actualizar rama** para todas las solicitudes de cambio en un repositorio\n- Tema claro de alto contraste\n" - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-5/4.yml b/translations/es-ES/data/release-notes/enterprise-server/3-5/4.yml index 03b028709f..b91d5e3a57 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-5/4.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-5/4.yml @@ -2,9 +2,9 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICA**: El contenedor de Elasticsearch de GitHub Enterprise Server utilizó una versión de OpenJDK 8 que estuvo vulnerable a un problema de truncamiento de número al procesar hojas de estilo de XSLT malintencionadas. La vulnerabilidad se rastreó como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTA**: Las aplicaciones instaladas anteriormente en las cuentas de usuario obtuvieron permiso automáticamente para acceder a una organización en los tokens de acceso en el alcance después de que la cuenta de usuario se transformó en una cuenta de organización. Esta vulnerabilidad se reportó a través del [Programa de Recompensas por Errores de GitHub](https://bounty.github.com). bugs: - In some cases, GitHub Enterprise Server instances on AWS that used the `r4.4xlarge` instance type would fail to boot. - In some cases, UI elements within a pull request's **Files changed** tab could overlap. @@ -12,10 +12,10 @@ sections: - 'When calculating committers for GitHub Advanced Security, it was not possible to specify individual repositories. For more information, see "[Site admin dashboard](/admin/configuration/configuring-your-enterprise/site-admin-dashboard#advanced-security-committers)."' - In some cases, Elasticsearch's post-upgrade `es:upgrade` process could crash before completion. - The script for migration to internal repositories failed to convert the visibility for public repositories to internal or private. For more information about the migration, see "[Migrating to internal repositories](/admin/user-management/managing-repositories-in-your-enterprise/migrating-to-internal-repositories)." - - 'Detection of GitHub Actions workflow files for the dependency graph was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[About the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#supported-package-ecosystems)."' - - 'The ability to reopen dismissed Dependabot alerts was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[Viewing and updating Dependabot alerts](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts#viewing-and-updating-closed-alerts)."' - - The ability to always suggest updates from the base branch to a pull request's HEAD was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[Managing suggestions to update pull request branches](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches)." - - The light high contrast theme was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[Managing your theme settings](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings)." + - 'La detección de archivos de flujo de trabajo de GitHub Actions para la gráfica de dependencias no estuvo disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3, pero están ahora disponibles en la versión 3.5.4. Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#supported-package-ecosystems)".' + - 'La capacidad de reabrir alertas descartadas del Depedabot no estaba disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3, pero ahora está disponible en la versión 3.5.4. Para obtener más información, consulta la sección "[Ver y actualizar las alertas del Dependabot](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts#viewing-and-updating-closed-alerts)".' + - La capacidad de siempre sugerir actualizaciones desde la rama base hacia un ENCABEZADO de una solicitud de cambios no estaba disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3, pero está ahora disponible en la versión 3.5.4. Para obtener más información, consulta la sección "[Administrar las sugerencias para actualizar las ramas de las solicitudes de cambios](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches)". + - El tema claro de alto contraste no estuvo disponible en GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 y 3.5.3, pero ahora está disponible en la versión 3.5.4. Para obtener más información, consulta la sección "[Administrar los ajustes de tu tema](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings)". changes: - '`pre_receive_hook.rejected_push` events were not displayed in the enterprise audit log.' known_issues: diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-5/5.yml b/translations/es-ES/data/release-notes/enterprise-server/3-5/5.yml new file mode 100644 index 0000000000..93e1bf5ac4 --- /dev/null +++ b/translations/es-ES/data/release-notes/enterprise-server/3-5/5.yml @@ -0,0 +1,27 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - The site admin bar at the top of the web interface contained a broken link to the SHA for the currently running version of the application. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + - Alerts from secret scanning for GitHub Advanced Security customers were missing in the web UI and REST API if a site administrator did not upgrade directly to GitHub Enterprise Server 3.4. The alerts are now visible. + - When a user forked a repository into an organization, a long list of organizations would not render properly. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - 'La bitácora de auditoría ahora incluye más eventos generados por los usuarios, tal como `project.create`. La API de REST también devuelve eventos generados por el usuario, tal como `repo.create`. Para obtener más información, consulta las secciones "[Acceder a la bitácora de auditoría de tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" y "[Utilizar la API de bitácora de auditoría para tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)".' + - In some cases, cache replicas could reject some Git operations on recently updated repositories. For more information about repository caching, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + known_issues: + - En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador. + - Las reglas de cortafuegos personalizadas se eliminan durante el proceso de actualización. + - Los archivos rastreados del LFS de Git que se [cargaron mediante la interface web](https://github.com/blog/2105-upload-files-to-your-repositories) se agregaron incorrecta y directamente al repositorio. + - Las propuestas no pudieron cerrarse si contenían un permalink a un blob en el mismo repositorio en donde la ruta de archvio del blob era más grande a 255 caracteres. + - Cuando se habilita "Los usuarios pueden buscar en GitHub.com" con GitHub Connect, las propuestas en los repositorios privados e internos no se incluirán en los resultados de búsqueda de GitHub.com. + - El registor de npm del {% data variables.product.prodname_registry %} ya no regresa un valor de tiempo en las respuestas de metadatos. Esto se hizo para permitir mejoras de rendimiento sustanciales. Seguimos teniendo todos los datos necesarios para devolver un valor de tiempo como parte de la respuesta de metadatos y terminaremos de devolver este valor ene l futuro una vez que hayamos resuelto los problemas de rendimiento existentes. + - Los límites de recursos que son específicos para procesar ganchos de pre-recepción podrían ocasionar que fallen algunos ganchos de pre-recepción. + - Los servicios de las acciones necesitan reiniciarse después de restablecer un aplicativo de un respaldo que se llevó a un host diferente. diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-6/0.yml b/translations/es-ES/data/release-notes/enterprise-server/3-6/0.yml index 31eb9186e8..253a21cc89 100644 --- a/translations/es-ES/data/release-notes/enterprise-server/3-6/0.yml +++ b/translations/es-ES/data/release-notes/enterprise-server/3-6/0.yml @@ -25,7 +25,9 @@ sections: - "[Requerir políticas de administración de repositorios en tu empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)" - "[Configurar las llaves de host para tu instancia](/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance)" - | - You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications)." + You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications#enforcing-tls-for-smtp-connections)." + + - **Note**: This feature is unavailable in GitHub Enterprise Server 3.6.0. The feature will be available in an upcoming release. [Updated: 2022-08-26] - heading: Registros de auditoría notes: @@ -40,7 +42,7 @@ sections: heading: Administrator experience notes: - | - Enterprise owners can join organizations on the instance as a member or owner from the enterprise account's **Organizations** page. For more information, see "[Managing your role in an organization owned by your enterprise](/admin/user-management/managing-organizations-in-your-enterprise/managing-your-role-in-an-organization-owned-by-your-enterprise)." + Los propietarios de las empresas pueden unirse a las organizaciones en la instancia como miembro o propietario desde la página de **Organizaciones* de la cuenta empresarial. Para obtener más información, consulta la sección "[Administrar tu rol en una organización que le pertenece a tu empresa](/admin/user-management/managing-organizations-in-your-enterprise/managing-your-role-in-an-organization-owned-by-your-enterprise)". - | Enterprise owners can allow users to dismiss the configured global announcement banner. For more information, see "[Customizing user messages for your enterprise](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)." - @@ -150,12 +152,12 @@ sections: - | Los usuarios pueden bloquear la creación de ramas que coincide con un patrón de nombre configurado con la regla de protección de rama **Restringir subidas que crean ramas coincidentes**. Por ejemplo, si la rama predeterminada de un repositorio cambia de `master` a `main`, un administrador de repositorio puede prevenir cualquier creación o subida subsecuente de la rama `master`. Para obtener más información, consulta la sección "[Acerca de las ramas protegidas](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#restrict-who-can-push-to-matching-branches)" y "[Administrar una regla de protección de rama](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule#creating-a-branch-protection-rule)". - | - Users can create a branch directly from a repository's **Branches** page by clicking the **New branch**. For more information, see "[Creating and deleting branches within your repository](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)." + Los usuarios pueden crear una rama directamente desde la página de **Ramas** de un repositorio haciendo clic en **Rama nueva**. Para obtener más información, consulta la sección "[Crear y borrar ramas dentro de tu repositorio](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)". - | Users can delete a branch that's associated with an open pull request. For more information, see "[Creating and deleting branches within your repository](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)." - | - Repositories with multiple licenses display all of the licenses in the "About" sidebar on the {% octicon "code" aria-label="The code icon" %} **Code** tab. For more information, see "[Licensing a repository](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository)." - - When a user renames or moves a file to a new directory, if at least half of the file's contents are identical, the commit history indicates that the file was renamed, similar to `git log --follow`. For more information, see the [GitHub Blog](https://github.blog/changelog/2022-06-06-view-commit-history-across-file-renames-and-moves/). + Los repositorios con licencias múltiples muestran todas las licencias en la barra lateral de "Acerca de" en la pestaña de **Código** {% octicon "code" aria-label="The code icon" %}. Para obtener más información, consulta la sección "[Autorizar un repositorio](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository)". + - Cuando un usuario renombra o mueve un archivo a un directorio nuevo, si por lo menos la mitad del contenido del archivo es idéntico, el historial de confirmación indican que el archivo se renombró, similar a `git log --follow`. Para obtener más información, consulta el [Blog de GitHub](https://github.blog/changelog/2022-06-06-view-commit-history-across-file-renames-and-moves/). - | Los usuarios pueden requerir un despliegue exitoso de una rama antes de que cualquiera pueda fusionar la solicitud de cambios asociada con ella. Para obtener más información, consulta las secciones "[Acerca de las ramas protegidas](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#require-deployments-to-succeed-before-merging)" y "[Administrar una regla de protección de rama](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule)". - | @@ -181,7 +183,7 @@ sections: notes: - | When viewing the details for a particular release, users can see the creation date for each release asset. For more information, see "[Viewing your repository's releases and tags](/repositories/releasing-projects-on-github/viewing-your-repositorys-releases-and-tags)." - - While creating a release with automatically generated release notes, users can see the tag identified as the previous release, then choose to select a different tag to specify as the previous release. For more information, see "[Automatically generated release notes](/repositories/releasing-projects-on-github/automatically-generated-release-notes)." + - Cuando creas un lanzamiento con notas de lanzamiento generadas automáticamente, los usuarios pueden ver la etiqueta identificada como el lanzamiento anterior y luego elegir seleccionar una etiqueta diferente para especificar como el lanzamiento anterior. Para obtener más información, consulta la sección "[Notas de lanzamiento generadas automáticamente](/repositories/releasing-projects-on-github/automatically-generated-release-notes)". - heading: Markdown notes: @@ -210,3 +212,4 @@ sections: - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. - In some cases, users cannot convert existing issues to discussions. - Los patrones personalizados para el escaneo de secretos utilizan `.*` como un delimitador final, específicamente en el campo "Después del secreto". Este delimitador ocasiona inconsistencias en los escaneos que buscan secretos en los repositorios y podrías notar brechas en el historial de un repositorio en donde no hay escaneos completados. Los escaneos en aumento también podrían verse impactados. Para prevenir los problemas con los escaneos, modifica el final del patrón para eliminar el delimitador `.*`. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/es-ES/data/release-notes/enterprise-server/3-6/1.yml b/translations/es-ES/data/release-notes/enterprise-server/3-6/1.yml new file mode 100644 index 0000000000..1fd058621e --- /dev/null +++ b/translations/es-ES/data/release-notes/enterprise-server/3-6/1.yml @@ -0,0 +1,33 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + - The site admin bar at the top of the web interface contained a broken link to the SHA for the currently running version of the application. + - Organization owners were unable to set the level of access required to create discussions. + - Discussions users were incorrectly directed to the community guidelines for GitHub.com. + - In some cases, users were incorrectly instructed to verify their email before creating a discussion. + - Alerts from secret scanning for GitHub Advanced Security customers were missing in the web UI and REST API if a site administrator did not upgrade directly to GitHub Enterprise Server 3.4. The alerts are now visible. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - 'La bitácora de auditoría ahora incluye más eventos generados por los usuarios, tal como `project.create`. La API de REST también devuelve eventos generados por el usuario, tal como `repo.create`. Para obtener más información, consulta las secciones "[Acceder a la bitácora de auditoría de tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" y "[Utilizar la API de bitácora de auditoría para tu empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)".' + - In some cases, cache replicas could reject some Git operations on recently updated repositories. For more information about repository caching, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + - 'You can now configure the global announcement banner to be dismissable using the REST API. For more information, see "[Customizing user messages for your enterprise](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)."' + known_issues: + - En una instancia recién configurada de {% data variables.product.prodname_ghe_server %} sin ningún usuario, un atacante podría crear el primer usuario adminsitrador. + - Las reglas de cortafuegos personalizadas se eliminan durante el proceso de actualización. + - Los archivos rastreados del LFS de Git que se [cargaron mediante la interface web](https://github.com/blog/2105-upload-files-to-your-repositories) se agregaron incorrecta y directamente al repositorio. + - Las propuestas no pudieron cerrarse si contenían un permalink a un blob en el mismo repositorio en donde la ruta de archvio del blob era más grande a 255 caracteres. + - Cuando se habilita "Los usuarios pueden buscar en GitHub.com" con GitHub Connect, las propuestas en los repositorios privados e internos no se incluirán en los resultados de búsqueda de GitHub.com. + - El registor de npm del {% data variables.product.prodname_registry %} ya no regresa un valor de tiempo en las respuestas de metadatos. Esto se hizo para permitir mejoras de rendimiento sustanciales. Seguimos teniendo todos los datos necesarios para devolver un valor de tiempo como parte de la respuesta de metadatos y terminaremos de devolver este valor ene l futuro una vez que hayamos resuelto los problemas de rendimiento existentes. + - Los límites de recursos que son específicos para procesar ganchos de pre-recepción podrían ocasionar que fallen algunos ganchos de pre-recepción. + - Actions services need to be restarted after restoring an instance from a backup taken on a different host. + - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. + - In some cases, users cannot convert existing issues to discussions. + - Los patrones personalizados para el escaneo de secretos utilizan `.*` como un delimitador final, específicamente en el campo "Después del secreto". Este delimitador ocasiona inconsistencias en los escaneos que buscan secretos en los repositorios y podrías notar brechas en el historial de un repositorio en donde no hay escaneos completados. Los escaneos en aumento también podrían verse impactados. Para prevenir los problemas con los escaneos, modifica el final del patrón para eliminar el delimitador `.*`. diff --git a/translations/es-ES/data/reusables/accounts/create-personal-access-tokens.md b/translations/es-ES/data/reusables/accounts/create-personal-access-tokens.md new file mode 100644 index 0000000000..54e9e2a2ba --- /dev/null +++ b/translations/es-ES/data/reusables/accounts/create-personal-access-tokens.md @@ -0,0 +1 @@ +1. For each of your accounts, create a dedicated PAT with `repo` scope. Para obtener más información, consulta la sección "[Crear un token de acceso personal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)". \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/about-runner-groups.md b/translations/es-ES/data/reusables/actions/about-runner-groups.md new file mode 100644 index 0000000000..35545c801c --- /dev/null +++ b/translations/es-ES/data/reusables/actions/about-runner-groups.md @@ -0,0 +1,18 @@ +{% ifversion fpt %} +{% note %} + +**Note:** All organizations have a single default runner group. Only enterprise accounts and organizations owned by enterprise accounts can create and manage additional runner groups. + +{% endnote %} + +Runner groups are used to control access to runners. Los administradores de las organizaciones pueden configurar políticas de acceso que controlen qué repositorios en una organización tienen acceso al grupo de ejecutores. + +If you use {% data variables.product.prodname_ghe_cloud %}, you can create additional runner groups; enterprise admins can configure access policies that control which organizations in an enterprise have access to the runner group; and organization admins can assign additional granular repository access policies to the enterprise runner group. +{% endif -%} +{% ifversion ghec or ghes or ghae %} + +{% data reusables.actions.runner-group-enterprise-overview %} + +Cuando se crean nuevos ejecutores, se asignan automáticamente al grupo predeterminado. Los ejecutores solo pueden estar en un grupo a la vez. Puedes mover los ejecutores del grupo predeterminado a otro grupo. For more information, see "[Moving a runner to a group](#moving-a-runner-to-a-group)." + +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/actions-billing.md b/translations/es-ES/data/reusables/actions/actions-billing.md index c727e59086..edfda614a4 100644 --- a/translations/es-ES/data/reusables/actions/actions-billing.md +++ b/translations/es-ES/data/reusables/actions/actions-billing.md @@ -1 +1 @@ -El uso de {% data variables.product.prodname_actions %} es gratuito tanto para los repositorios públicos como para los ejecutores auto-hospedados. Para los repositorios privados, cada cuenta de {% data variables.product.prodname_dotcom %} recibe una cantidad determinada de minutos y almacenamiento gratuitos dependiendo del producto que se utilice con la cuenta. Cualquier uso que no se contemple en las cantidades incluidas se controla con los límites de gasto. +{% data variables.product.prodname_actions %} usage is free for standard {% data variables.product.prodname_dotcom %}-hosted runners in public repositories, and for self-hosted runners. For private repositories, each {% data variables.product.prodname_dotcom %} account receives a certain amount of free minutes and storage for use with {% data variables.product.prodname_dotcom %}-hosted runners, depending on the product used with the account. Cualquier uso que no se contemple en las cantidades incluidas se controla con los límites de gasto. diff --git a/translations/es-ES/data/reusables/actions/add-hosted-runner-overview.md b/translations/es-ES/data/reusables/actions/add-hosted-runner-overview.md new file mode 100644 index 0000000000..bdd66230ca --- /dev/null +++ b/translations/es-ES/data/reusables/actions/add-hosted-runner-overview.md @@ -0,0 +1,3 @@ +You can choose an operating system and a hardware configuration from the list of available options. When new instances of this runner are deployed through autoscaling, they'll use the same operating system and hardware configuration you've defined here. + +You can also define the labels that identify the runner, which is how your workflows will be able to send jobs to the runners for processing (using `runs-on`). New runners are automatically assigned to the default group, or you can choose which group the runners must join during the runner creation process. In addition, you can modify the runner's group membership after you've registered the runner. For more information, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/add-hosted-runner.md b/translations/es-ES/data/reusables/actions/add-hosted-runner.md new file mode 100644 index 0000000000..d533864a2e --- /dev/null +++ b/translations/es-ES/data/reusables/actions/add-hosted-runner.md @@ -0,0 +1,11 @@ +1. Click **New runner**, then click **{% octicon "mark-github" aria-label="New hosted runner" %} New Github-hosted runner**. +1. Complete the required details to configure your new runner: + + - **Name**: Enter a name for your new runner. For easier identification, this should indicate its hardware and operating configuration, such as `ubuntu-20.04-16core`. + - **Runner image**: Choose an operating system from the available options. Once you've selected an operating system, you will be able to choose a specific version. + - **Runner size**: Choose a hardware configuration from the drop-down list of available options. + - **Auto-scaling**: Choose the maximum number of runners that can be active at any time. + - **Runner group**: Choose the group that your runner will be a member of. This group will host multiple instances of your runner, as they scale up and down to suit demand. + - **Networking**: Only for {% data variables.product.prodname_ghe_cloud %}: Choose whether a static IP address range will be assigned to instances of the {% data variables.actions.hosted_runner %}. You can use up to 10 static IP addresses in total. + +1. Click **Create runner**. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/automatically-adding-a-runner-to-a-group.md b/translations/es-ES/data/reusables/actions/automatically-adding-a-runner-to-a-group.md new file mode 100644 index 0000000000..2a0ad86c2a --- /dev/null +++ b/translations/es-ES/data/reusables/actions/automatically-adding-a-runner-to-a-group.md @@ -0,0 +1,11 @@ +You can use the configuration script to automatically add a new runner to a group. For example, this command registers a new runner and uses the `--runnergroup` parameter to add it to a group named `rg-runnergroup`. + +```sh +./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup +``` + +El comando fallará si el grupo de ejecutores no existe: + +``` +Could not find any self-hosted runner group named "rg-runnergroup". +``` \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md b/translations/es-ES/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md new file mode 100644 index 0000000000..80bd92c917 --- /dev/null +++ b/translations/es-ES/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md @@ -0,0 +1,38 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +En el caso de los grupos de ejecutores en una empresa, puedes cambiar qué organizaciones dentro de ella pueden acceder a un grupo de ejecutores{% ifversion restrict-groups-to-workflows %} o restringir qué flujos de trabajo puede ejecutar un grupo de ejecutores{% endif %}. En el caso de los grupos de ejecutores en una organización, puedes cambiar qué repositorios en ella pueden acceder a un grupo de ejecutores{% ifversion restrict-groups-to-workflows %} o restringir qué flujos de trabajo puede ejecutar un grupo de ejecutores{% endif %}. + +### Cambiar qué organizaciones o repositorios pueden acceder a un grupo de ejecutores + +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. En el caso de los grupos de ejecutores en una empresa, debajo de **Acceso organizacional**, modifica qué organizaciones pueden acceder al grupo de ejecutores. En el caso de los grupos de ejecutores en una organización, debajo de **Acceso al repositorio**, modifica aquellos a los que puede acceder este grupo. + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group-access %} +{% endif %} + +{% ifversion restrict-groups-to-workflows %} +### Cambiar los flujos de trabajo a los cuales puede acceder un grupo de ejecutores +You can configure a runner group to run either selected workflows or all workflows. For example, you might use this setting to protect secrets that are stored on runners or to standardize deployment workflows by restricting a runner group to run only a specific reusable workflow. Este ajuste no se puede anular si estás configurando un grupo de ejecutores de una organización que haya compartido una empresa. +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Debajo de **Acceso al flujo de trabajo**, selecciona el menú desplegable y haz clic en **Flujos de trabajo selectos**. +1. Da clic en {% octicon "gear" aria-label="the gear icon" %}. +1. Ingresa una lista separada por comas de los flujos de trabajo que pueden acceder al grupo de ejecutores. Utiliza la ruta completa, incluyendo el nombre y propietario del repositorio. Fija el flujo de trabajo a una rama, etiqueta o SHA completo. Por ejemplo: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`. + + Solo los jobs que se definan directamente dentro de los flujos de trabajo seleccionados tendrán acceso al grupo de ejecutores. + + Los grupos de ejecutores que pertenecen a la organización no pueden acceder a los flujos de trabajo de otra organización de la empresa; en vez de esto, debes crear un grupo de ejecutores que pertenezca a la empresa. + +1. Haz clic en **Save ** (guardar). + +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/changing-the-name-of-a-runner-group.md b/translations/es-ES/data/reusables/actions/changing-the-name-of-a-runner-group.md new file mode 100644 index 0000000000..98675a00cf --- /dev/null +++ b/translations/es-ES/data/reusables/actions/changing-the-name-of-a-runner-group.md @@ -0,0 +1,9 @@ +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Cambia el nombre del grupo de ejecutores. + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group %} +1. Cambia el nombre del grupo de ejecutores. +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md b/translations/es-ES/data/reusables/actions/configure-runner-group-access.md similarity index 85% rename from translations/es-ES/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md rename to translations/es-ES/data/reusables/actions/configure-runner-group-access.md index 95625acb8a..3ee0e31513 100644 --- a/translations/es-ES/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md +++ b/translations/es-ES/data/reusables/actions/configure-runner-group-access.md @@ -1,4 +1,4 @@ -{% data reusables.actions.self-hosted-runner-configure-runner-group %} +{% data reusables.actions.configure-runner-group %} 1. Modifica las opciones de tu política. {% ifversion not ghae %} diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-configure-runner-group.md b/translations/es-ES/data/reusables/actions/configure-runner-group.md similarity index 100% rename from translations/es-ES/data/reusables/actions/self-hosted-runner-configure-runner-group.md rename to translations/es-ES/data/reusables/actions/configure-runner-group.md diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-create-group.md b/translations/es-ES/data/reusables/actions/create-runner-group.md similarity index 100% rename from translations/es-ES/data/reusables/actions/self-hosted-runner-create-group.md rename to translations/es-ES/data/reusables/actions/create-runner-group.md diff --git a/translations/es-ES/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md b/translations/es-ES/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md new file mode 100644 index 0000000000..95543bf602 --- /dev/null +++ b/translations/es-ES/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md @@ -0,0 +1,28 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +Enterprises can add their runners to groups for access management. Enterprises can create groups of runners that are accessible to specific organizations in the enterprise account{% ifversion restrict-groups-to-workflows %} or to specific workflows{% endif %}. Los propietarios de organizaciones pueden entonces asignar políticas de acceso adicionales y granulares para los repositorios{% ifversion restrict-groups-to-workflows %} o flujos de trabajo{% endif %} a los grupos de ejecutores empresariales. For information about how to create a runner group with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runner-groups). + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. Puedes asignar el ejecutor a un grupo específico durante el proceso de registro o puedes moverlo después desde el grupo predeterminado a un grupo personalizado. + +Cuando creas un grupo, debes elegir la política que defina qué organizaciones tienen acceso al grupo de ejecutores. + +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} +1. Para elegir una política para el acceso organizacional, selecciona el menú desplegable **Acceso organizacional** y haz clic en una política. Puedes configurar un grupo de ejecutores para que sea accesible a una lista de organizaciones específica o a todas las organizaciones en la empresa.{% ifversion ghes %} Predeterminadamente, solo los repositorios privados pueden acceder a los ejecutores en un grupo, pero esto se puede anular.{% endif %} + + {%- ifversion ghec or ghes %} + + ![Agregar opciones de un grupo de ejecutores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) + {%- elsif ghae %} + + ![Agregar opciones de un grupo de ejecutores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) + {%- endif %} +{% data reusables.actions.runner-group-assign-policy-workflow %} +1. Da clic en **Guardar grupo** para crear el grupo y aplicar la política. + diff --git a/translations/es-ES/data/reusables/actions/creating-a-runner-group-for-an-organization.md b/translations/es-ES/data/reusables/actions/creating-a-runner-group-for-an-organization.md new file mode 100644 index 0000000000..c063f891a0 --- /dev/null +++ b/translations/es-ES/data/reusables/actions/creating-a-runner-group-for-an-organization.md @@ -0,0 +1,38 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +All organizations have a single default runner group. Organizations within an enterprise account can create additional groups. Los administradores de la organización pueden permitir el acceso de los repositorios individuales a un grupo de ejecutores. For information about how to create a runner group with the REST API, see "[Self-hosted runner groups](/rest/reference/actions#self-hosted-runner-groups)." + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. Puedes mover un ejecutor del grupo predeterminado a cualquier grupo que crees. + +Cuando creas un grupo, debes elegir la política que define qué reositorios{% ifversion restrict-groups-to-workflows %} y flujos de trabajo{% endif %} tienen acceso al grupo ejecutor. + +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. En la sección de "Grupos de ejecutores", haz clic en **Grupo de ejecutores nuevo**. +1. Ingresa un nombre para tu grupo ejecutor. + {% data reusables.actions.runner-group-assign-policy-repo %} +{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %}Los grupos ejecutores que pertenecen a las organizaciones no pueden acceder a los flujos de trabajo de una organización diferente en la empresa. En vez de esto, debes crear un grupo de ejecutores que pertenezca a la empresa.{% endif %} +{% data reusables.actions.create-runner-group %} +{% elsif ghae or ghes < 3.4 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. Debajo de {% ifversion ghes or ghae %}"Ejecutores"{% endif %}, haz clic en **Agregar nuevo** y luego en **Grupo nuevo**. + + ![Agregar un grupo de ejecutores](/assets/images/help/settings/actions-org-add-runner-group.png) +1. Ingresa un nombre para tu grupo de ejecutores y asigna una política para el acceso al repositorio. + + Puedes configurar un grupo de ejecutores para que una lista de repositorios específica o todos los repositorios de la organización puedan acceder a él.{% ifversion ghec or ghes %} Predeterminadamente solo los repositorios privados pueden acceder a los ejecutores de un grupo de ejecutores, pero esto se puede omitir. Esta configuración no puede anularse si se configura un grupo ejecutor de la organización que haya compartido una empresa.{% endif %} + + ![Agregar opciones de un grupo de ejecutores](/assets/images/help/settings/actions-org-add-runner-group-options.png) +1. Da clic en **Guardar grupo** para crear el grupo y aplicar la política. +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/hosted-runner-security-admonition.md b/translations/es-ES/data/reusables/actions/hosted-runner-security-admonition.md new file mode 100644 index 0000000000..f1b63416c0 --- /dev/null +++ b/translations/es-ES/data/reusables/actions/hosted-runner-security-admonition.md @@ -0,0 +1,5 @@ +{% warning %} + +**Advertencia**: {% data reusables.actions.hosted-runner-security %} + +{% endwarning %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/hosted-runner-security.md b/translations/es-ES/data/reusables/actions/hosted-runner-security.md new file mode 100644 index 0000000000..ed12d189db --- /dev/null +++ b/translations/es-ES/data/reusables/actions/hosted-runner-security.md @@ -0,0 +1,3 @@ +We recommend that you only use {% data variables.actions.hosted_runner %}s with private repositories: +- Forks of your repository can potentially run dangerous code on your {% data variables.actions.hosted_runner %} by creating a pull request that executes the code in a workflow. +- You could incur unexpected costs if you allow forked repositories to run jobs on your {% data variables.actions.hosted_runner %}s. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/jobs/section-running-jobs-in-a-container.md b/translations/es-ES/data/reusables/actions/jobs/section-running-jobs-in-a-container.md index 7402626c76..592406a995 100644 --- a/translations/es-ES/data/reusables/actions/jobs/section-running-jobs-in-a-container.md +++ b/translations/es-ES/data/reusables/actions/jobs/section-running-jobs-in-a-container.md @@ -2,6 +2,12 @@ Utiliza `jobs..container` para crear un contenedor para ejecutar cualqui Si no configuras un `container`, todos los pasos se ejecutan directamente en el host especificado por `runs-on` a menos que un paso se refiera a una acción configurada para ejecutarse en un contenedor. +{% note %} + +**Note:** The default shell for `run` steps inside a container is `sh` instead of `bash`. This can be overridden with [`jobs..defaults.run`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iddefaultsrun) or [`jobs..steps[*].shell`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell). + +{% endnote %} + ### Ejemplo: Ejecutar un job dentro de un contenedor ```yaml{:copy} diff --git a/translations/es-ES/data/reusables/actions/macos-runner-preview.md b/translations/es-ES/data/reusables/actions/macos-runner-preview.md index c9b93aecbe..b1bb2b899c 100644 --- a/translations/es-ES/data/reusables/actions/macos-runner-preview.md +++ b/translations/es-ES/data/reusables/actions/macos-runner-preview.md @@ -1 +1 @@ -The macos-latest YAML workflow label currently uses the macOS 10.15 runner image. +La etiqueta de flujo de trabajo de YAML macos-latest utiliza actualmente la imagen de ejecutor de macOS 10.15. diff --git a/translations/es-ES/data/reusables/actions/moving-a-runner-to-a-group.md b/translations/es-ES/data/reusables/actions/moving-a-runner-to-a-group.md new file mode 100644 index 0000000000..04aea1e6a3 --- /dev/null +++ b/translations/es-ES/data/reusables/actions/moving-a-runner-to-a-group.md @@ -0,0 +1,12 @@ +If you don't specify a runner group during the registration process, your new runners are automatically assigned to the default group, and can then be moved to another group. + +{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +1. En la lista de "Ejecutores", haz clic en aquél que quieras configurar. +2. Selecciona el menú desplegable de **Grupo de ejecutores**. +3. En "Mover el ejecutor al grupo", elige un grupo destino para el ejecutor. +{% elsif ghae or ghes < 3.4 %} +1. En la sección {% ifversion ghes or ghae %}"Grupos de ejecutores"{% endif %} de la página de ajustes, ubica el grupo actual del ejecutor que quieras mover y expande la lista de miembros del grupo. ![Ver los miembros de un grupo de ejecutores](/assets/images/help/settings/actions-org-runner-group-members.png) +2. Selecciona la casilla junto al ejecutor auto-hospedado y da clic en **Mover a grupo** para ver los destinos disponibles. ![Mover a un miembro de un grupo de ejecutores](/assets/images/help/settings/actions-org-runner-group-member-move.png) +3. Para mover el ejecutor, da clic en el grupo de destino. ![Mover a un miembro de un grupo de ejecutores](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/pure-javascript.md b/translations/es-ES/data/reusables/actions/pure-javascript.md index cf574fb47a..09e1e36ce5 100644 --- a/translations/es-ES/data/reusables/actions/pure-javascript.md +++ b/translations/es-ES/data/reusables/actions/pure-javascript.md @@ -1 +1 @@ -Para garantizar que tus acciones de JavaScript son compatibles con todos los ejecutores hospedados en GitHub (Ubuntu, Windows, y macOS), el código empaquetado de JavaScript que escribas debe ser puramente JavaScript y no depender de otros binarios. JavaScript actions run directly on the runner and use binaries that already exist in the runner image. +Para garantizar que tus acciones de JavaScript son compatibles con todos los ejecutores hospedados en GitHub (Ubuntu, Windows, y macOS), el código empaquetado de JavaScript que escribas debe ser puramente JavaScript y no depender de otros binarios. Las acciones de JavaScript se ejecutan directamente en el ejecutor y utilizan binarios que ya existen en la imagen ejecutora. diff --git a/translations/es-ES/data/reusables/actions/removing-a-runner-group.md b/translations/es-ES/data/reusables/actions/removing-a-runner-group.md new file mode 100644 index 0000000000..11a2c8ffba --- /dev/null +++ b/translations/es-ES/data/reusables/actions/removing-a-runner-group.md @@ -0,0 +1,9 @@ +Runners are automatically returned to the default group when their group is removed. + +{% ifversion ghes or ghae or ghec %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +1. En la lista de grupos, a la derecha del grupo que quieras borrar, haz clic en {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}. +2. Para eliminar el grupo, da clic en **Eliminar grupo**. +3. Revisa el mensaje de confirmación y da clic en **Eliminar este grupo de ejecutores**. Any runners still in this group will be automatically moved to the default group, where they will inherit the access permissions assigned to that group. + +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/runner-group-enterprise-overview.md b/translations/es-ES/data/reusables/actions/runner-group-enterprise-overview.md new file mode 100644 index 0000000000..2ff508d5ea --- /dev/null +++ b/translations/es-ES/data/reusables/actions/runner-group-enterprise-overview.md @@ -0,0 +1,3 @@ +Runner groups are used to control access to runners at the organization and enterprise level. Enterprise owners can configure access policies that control which organizations {% ifversion restrict-groups-to-workflows %}and workflows {% endif %}in an enterprise have access to the runner group. Los propietarios de las organizaciones pueden configurar las políticas de acceso que controlan qué repositorios{% ifversion restrict-groups-to-workflows %} y flujos de trabajo{% endif %} en una organización tienen aceso al grupo de ejecutores. + +When an enterprise owner grants access to a runner group, organization owners can see the runner group listed in the organization's runner settings. Los propietarios organizacionales pueden entonces asignar políticas de acceso adicionales y granulares para los repositorios{% ifversion restrict-groups-to-workflows %} y flujos de trabajo{% endif %} al grupo ejecutor de la empresa. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md b/translations/es-ES/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md similarity index 100% rename from translations/es-ES/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md rename to translations/es-ES/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md b/translations/es-ES/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md similarity index 78% rename from translations/es-ES/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md rename to translations/es-ES/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md index 61f5eda298..6e56926609 100644 --- a/translations/es-ES/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md +++ b/translations/es-ES/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md @@ -1,9 +1,9 @@ {% ifversion fpt %} -1. Navega a la página principal del repositorio u organización en donde se ubican tus grupos de ejecutores auto-hospedados. +1. Navigate to the main page of the repository or organization where your runner groups are located. 2. Haz clic en {% octicon "gear" aria-label="The Settings gear" %} **Ajustes**. {% data reusables.organizations.settings-sidebar-actions-runner-groups %} {% elsif ghec or ghes or ghae %} -1. Navega a donde se ubiquen tus grupos de ejecutores auto-hospedados: +1. Navigate to where your runner groups are located: * **En una organización**: navega a la página principal y da clic en {% octicon "gear" aria-label="The Settings gear" %} **Configuración**. * **Si utilizas un grupo a nivel de empresa**: @@ -12,7 +12,7 @@ * **En una organización**: {% indented_data_reference reusables.actions.settings-ui.settings-actions-runner-groups spaces=5 %} - * **Si estás utilizando un grupo a nivel de empresa**: + * **Si utilizas un grupo a nivel de empresa**: {% indented_data_reference reusables.enterprise-accounts.policies-tab spaces=5 %} {% indented_data_reference reusables.enterprise-accounts.actions-tab spaces=5 %} diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-add-to-enterprise.md b/translations/es-ES/data/reusables/actions/self-hosted-runner-add-to-enterprise.md index 9d6c8982fa..99d17e99ef 100644 --- a/translations/es-ES/data/reusables/actions/self-hosted-runner-add-to-enterprise.md +++ b/translations/es-ES/data/reusables/actions/self-hosted-runner-add-to-enterprise.md @@ -3,7 +3,7 @@ {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.actions-tab %} {% data reusables.enterprise-accounts.actions-runners-tab %} -1. Haz clic en **Ejecutor nuevo**. +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {%- elsif ghae or ghes < 3.4 %} Para agregar un ejecutor auto-hospedado a una empresa, debes ser el propietario de la misma. diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md b/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md index c20c6c6c03..b9845777a0 100644 --- a/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md +++ b/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md @@ -3,7 +3,7 @@ 2. Haz clic en {% octicon "gear" aria-label="The Settings gear" %} **Ajustes**. {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. Navega a donde está registrado tu ejecutor auto-hospedado: +1. Navigate to where your runner is registered: * **En una organización**: navega a la página principal y da clic en {% octicon "gear" aria-label="The Settings gear" %} **Configuración**. * **Si utilizas un ejecutor a nivel de empresa**: diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md b/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md index 7cc1905a0d..bd56df8613 100644 --- a/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md +++ b/translations/es-ES/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md @@ -3,7 +3,7 @@ 2. Haz clic en {% octicon "gear" aria-label="The Settings gear" %} **Ajustes**. {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. Navega a donde está registrado tu ejecutor auto-hospedado: +1. Navigate to where your runner is registered: * **En un repositorio organizacional**: navega a la página principal y da clic en {% octicon "gear" aria-label="The Settings gear" %} **Configuración**. * **Si utilizas un ejecutor a nivel de empresa**: diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-security-admonition.md b/translations/es-ES/data/reusables/actions/self-hosted-runner-security-admonition.md new file mode 100644 index 0000000000..7e9c6569c9 --- /dev/null +++ b/translations/es-ES/data/reusables/actions/self-hosted-runner-security-admonition.md @@ -0,0 +1,7 @@ +{% warning %} + +**Advertencia**: {% data reusables.actions.self-hosted-runner-security %} + +Para obtener más información, consulta "[Acerca de los ejecutores autoalojados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." + +{% endwarning %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/self-hosted-runner-security.md b/translations/es-ES/data/reusables/actions/self-hosted-runner-security.md index 6fcaa4b256..f4f3943025 100644 --- a/translations/es-ES/data/reusables/actions/self-hosted-runner-security.md +++ b/translations/es-ES/data/reusables/actions/self-hosted-runner-security.md @@ -1 +1 @@ -Te recomendamos que solo utilices los ejecutores auto-hospedados con los repositorios privados. Esto se debe a que tu repositorio podría ejecutar código peligroso en tu máquina de ejecutor auto-hospedado potencialmente al crear una solicitud de cambios que excluya el código en un flujo de trabajo. +Te recomendamos que solo utilices los ejecutores auto-hospedados con los repositorios privados. This is because forks of your public repository can potentially run dangerous code on your self-hosted runner machine by creating a pull request that executes the code in a workflow. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/actions/supported-github-runners.md b/translations/es-ES/data/reusables/actions/supported-github-runners.md index 64c4a3ace3..c53db4b4e8 100644 --- a/translations/es-ES/data/reusables/actions/supported-github-runners.md +++ b/translations/es-ES/data/reusables/actions/supported-github-runners.md @@ -1,7 +1,7 @@ - + @@ -54,7 +54,7 @@ Ubuntu 18.04 [deprecated]ubuntu-18.04 @@ -92,7 +92,7 @@ Migra a macOS-11 o macOS-12. Para obtener más informa {% note %} -**Note:** The `-latest` runner images are the latest stable images that {% data variables.product.prodname_dotcom %} provides, and might not be the most recent version of the operating system available from the operating system vendor. +**Nota:** Las imágenes de ejecutor catalogadas como `-latest` son las imágenes más recientes que proporciona {% data variables.product.prodname_dotcom %} y podrían no ser la versión más reciente del sistema operativo disponible desde el proveedor de este. {% endnote %} diff --git a/translations/es-ES/data/reusables/actions/upgrade-runners-before-upgrade-ghes.md b/translations/es-ES/data/reusables/actions/upgrade-runners-before-upgrade-ghes.md index 0650fa54d8..52c9c5e17c 100644 --- a/translations/es-ES/data/reusables/actions/upgrade-runners-before-upgrade-ghes.md +++ b/translations/es-ES/data/reusables/actions/upgrade-runners-before-upgrade-ghes.md @@ -1 +1 @@ -If you use ephemeral runners and have disabled automatic updates, before you upgrade {% data variables.product.product_location %}, you should first upgrade your self-hosted runners to the version of the runner application that your upgraded instance will run. Upgrading {% data variables.product.product_location %} before you upgrade ephemeral runners may result in your runners going offline. Para obtener más información, consulta "[Actualizar {% data variables.product.product_name %}](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server)." +Si utilizas ejecutores efímeros e inhabilitaste las actualizaciones automáticas, antes de que mejores a {% data variables.product.product_location %}, primero debes mejorar tus ejecutores auto-hospedados a la versión de la aplicación ejecutora que ejecutará tu instancias mejorada. El mejorar {% data variables.product.product_location %} antes de que mejores los ejecutores efímeros podría dar como resultado que estos se queden sin conexión. Para obtener más información, consulta "[Actualizar {% data variables.product.product_name %}](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server)." diff --git a/translations/es-ES/data/reusables/actions/use-request-body-api.md b/translations/es-ES/data/reusables/actions/use-request-body-api.md new file mode 100644 index 0000000000..1d37d0c4f0 --- /dev/null +++ b/translations/es-ES/data/reusables/actions/use-request-body-api.md @@ -0,0 +1 @@ +To apply this configuration, submit a request to the API endpoint and include the required configuration in the request body. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)". \ No newline at end of file diff --git a/translations/es-ES/data/reusables/advanced-security/custom-link-beta.md b/translations/es-ES/data/reusables/advanced-security/custom-link-beta.md new file mode 100644 index 0000000000..a79fc22417 --- /dev/null +++ b/translations/es-ES/data/reusables/advanced-security/custom-link-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**Note:** The ability to add resource links to blocked push messages is currently in public beta and subject to change. + +{% endnote %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md b/translations/es-ES/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md index ae1e8e39ec..ed0d8a8dbc 100644 --- a/translations/es-ES/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md +++ b/translations/es-ES/data/reusables/advanced-security/secret-scanning-dry-run-select-enterprise-repos.md @@ -1,7 +1,7 @@ {%- ifversion custom-pattern-dry-run-ga %} -1. Search for and select up to 10 repositories where you want to perform the dry run. ![Screenshot showing repositories selected for the dry run](/assets/images/help/repository/secret-scanning-dry-run-custom-pattern-select-repo-only.png) +1. Busca y selecciona hasta 10 repositorios en donde quieras realizar la simulación. ![Screenshot showing repositories selected for the dry run](/assets/images/help/repository/secret-scanning-dry-run-custom-pattern-select-repo-only.png) 1. When you're ready to test your new custom pattern, click **Run**. {%- else %} -1. Search for and select up to 10 repositories where you want to perform the dry run. ![Screenshot showing repositories selected for the dry run](/assets/images/help/repository/secret-scanning-dry-run-custom-pattern-select-repo.png) +1. Busca y selecciona hasta 10 repositorios en donde quieras realizar la simulación. ![Screenshot showing repositories selected for the dry run](/assets/images/help/repository/secret-scanning-dry-run-custom-pattern-select-repo.png) 1. Cuando estés listo para probar tu nuevo patrón personalizado, haz clic en **Simulacro**. {%- endif %} diff --git a/translations/es-ES/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/translations/es-ES/data/reusables/advanced-security/secret-scanning-push-protection-org.md index c6e78d4033..0b25b4d034 100644 --- a/translations/es-ES/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/translations/es-ES/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -1,2 +1,6 @@ 1. Debajo de "{% data variables.product.prodname_secret_scanning_caps %}" y debajo de "Protección contra subida", haz clic en **Habilitar todo**. ![Captura de pantalla que muestra cómo habilitar la protección de subida para el {% data variables.product.prodname_secret_scanning %} en una organización](/assets/images/help/organizations/secret-scanning-enable-push-protection.png) -1. Opcionalmente, haz clic en "Habilitar automáticamente para los repositorios privados agregados al {% data variables.product.prodname_secret_scanning %}". +1. Opcionalmente, haz clic en "Habilitar automáticamente los repositorios privados agregados al {% data variables.product.prodname_secret_scanning %}".{% ifversion push-protection-custom-link-orgs %} +1. Opcionalmente, para incluir un enlace personalizado en el mensaje, el cual verán los miembros cuando intenten subir un secreto, selecciona **Agregar un enlace de recurso en el CLI e IU web cuando se bloquee un comentario** y después escribe una URL y haz clic en **Guardar enlace**. + {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} + + ![Captura de pantalla que muestra la casilla de verificación y campo de texto para habilitar un enlace personalizado](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/audit_log/audit-log-action-categories.md b/translations/es-ES/data/reusables/audit_log/audit-log-action-categories.md index 95ac8b41f7..a106c4569e 100644 --- a/translations/es-ES/data/reusables/audit_log/audit-log-action-categories.md +++ b/translations/es-ES/data/reusables/audit_log/audit-log-action-categories.md @@ -93,51 +93,51 @@ {%- ifversion fpt or ghec %} | `profile_picture` | Contains activities related to an organization's profile picture. {%- endif %} -| `project` | Contains activities related to project boards. | `project_field` | Contains activities related to field creation and deletion in a project board. | `project_view` | Contains activities related to view creation and deletion in a project board. | `protected_branch` | Contains activities related to protected branches. | `public_key` | Contains activities related to SSH keys and deploy keys. | `pull_request` | Contains activities related to pull requests. | `pull_request_review` | Contains activities related to pull request reviews. | `pull_request_review_comment` | Contains activities related to pull request review comments. | `repo` | Contains activities related to the repositories owned by an organization. +| `project` | Contiene actividades relacionadas con los tableros de proyecto. | `project_field` | Contiene actividades relacionadas con la creación y borrado de campos en un tablero de proyecto. | `project_view` | Contiene actividades relacionadas con ver la creación y el borrado de un tablero de proyecto. | `protected_branch` | Contiene actividades relacionadas con ramas protegidas. | `public_key` | Contiene actividades relacionadas con llaves SSH y llaves de despliegue. | `pull_request` | Contiene actividades relacionadas con solicitudes de cambio. | `pull_request_review` | Contiene actividades relacionadas con revisiones de solicitudes de cambios. | `pull_request_review_comment` | Contiene actividades relacionadas con comentarios de revisión en solicitudes de cambio. | `repo` | Contiene actividades relacionadas con los repositorios que le pertenecen a una organización. {%- ifversion fpt or ghec %} -| `repository_advisory` | Contains repository-level activities related to security advisories in the {% data variables.product.prodname_advisory_database %}. Para obtener más información, consulta la sección "[Acerca de las asesorías de seguridad de {% data variables.product.prodname_dotcom %}](/github/managing-security-vulnerabilities/about-github-security-advisories)". | `repository_content_analysis` | Contains activities related to [enabling or disabling data use for a private repository](/articles/about-github-s-use-of-your-data). | `repository_dependency_graph` | Contains repository-level activities related to enabling or disabling the dependency graph for a {% ifversion fpt or ghec %}private {% endif %}repository. Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)". +| `repository_advisory` | Contiene actividades a nivel de repositorio relacionadas con asesorías de seguridad en la {% data variables.product.prodname_advisory_database %}. Para obtener más información, consulta la sección "[Acerca de las asesorías de seguridad de {% data variables.product.prodname_dotcom %}](/github/managing-security-vulnerabilities/about-github-security-advisories)". | `repository_content_analysis` | Contiene actividades relacionadas con [habilitar o inhabilitar el uso de datos para un repositorio privado](/articles/about-github-s-use-of-your-data). | `repository_dependency_graph` | Contiene actividades a nivel de repositorio relacionadas con habilitar o inhabilitar la gráfica de dependencias para un repositorio {% ifversion fpt or ghec %}privado{% endif %}. Para obtener más información, consulta la sección "[Acerca de la gráfica de dependencias](/github/visualizing-repository-data-with-graphs/about-the-dependency-graph)". {%- endif %} -| `repository_image` | Contains activities related to images for a repository. | `repository_invitation` | Contains activities related to invitations to join a repository. | `repository_projects_change` | Contains activities related to enabling projects for a repository or for all repositories in an organization. +| `repository_image` | Contiene actividades relacionadas con imágenes para un repositorio. | `repository_invitation` | Contiene actividades relacionadas con invitaciones para unirse a un repositorio. | `repository_projects_change` | Contiene actividades relacionadas con habilitar proyectos para un repositorio o para todos los repositorios de una organización. {%- ifversion ghec or ghes or ghae %} -| `repository_secret_scanning` | Contains repository-level activities related to secret scanning. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). +| `repository_secret_scanning` | Contiene actividades a nivel de repositorio relacionadas con el escaneo de secretos. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). {%- endif %} {%- ifversion secret-scanning-audit-log-custom-patterns %} -| `repository_secret_scanning_custom_pattern` | Contains activities related to secret scanning custom patterns in a repository. Para obtener más información, consulta la sección "[Definir los patrones personalizados para el escaneo de secretos](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning)". |{% endif %}{% ifversion secret-scanning-audit-log-custom-patterns %}| | `repository_secret_scanning_push_protection` | Contains activities related to secret scanning custom patterns in a repository. Para obtener más información, consulta la sección "[Proteger las subidas de información con el escaneo de secretos](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)". +| `repository_secret_scanning_custom_pattern` | Contiene actividades relacionadas con el escaneo de secretos en patrones personalizados de un repositorio. Para obtener más información, consulta la sección "[Definir los patrones personalizados para el escaneo de secretos](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning)". |{% endif %}{% ifversion secret-scanning-audit-log-custom-patterns %}| | `repository_secret_scanning_push_protection` | Contiene actividades relacionadas con el escaneo de secretos en patrones personalizados en un repositorio. Para obtener más información, consulta la sección "[Proteger las subidas de información con el escaneo de secretos](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)". {%- endif %} {%- ifversion fpt or ghec %} -| `repository_visibility_change` | Contains activities related to allowing organization members to change repository visibilities for the organization. +| `repository_visibility_change` | Contiene actividades relacionadas con permitir que los miembros de una organización cambien las visibilidades de un repositorio para la organización. {%- endif %} -| `repository_vulnerability_alert` | Contains activities related to [{% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts). +| `repository_vulnerability_alert` | Contiene actividades relacionadas con las [{% data variables.product.prodname_dependabot_alerts %}](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts). {%- ifversion fpt or ghec %} -| `repository_vulnerability_alerts` | Contains repository-level configuration activities for {% data variables.product.prodname_dependabot_alerts %}. | `required_status_check` | Contains activities related to required status checks for protected branches. +| `repository_vulnerability_alerts` | Contiene actividades de configuración a nivel de repositorio para las {% data variables.product.prodname_dependabot_alerts %}. | `required_status_check` | Contiene actividades relacionadas con verificaciones de estado requeridas para las ramas protegidas. {%- endif %} {%- ifversion ghec or ghes %} -| `restrict_notification_delivery` | Contains activities related to the restriction of email notifications to approved or verified domains for an enterprise. +| `restrict_notification_delivery` | Contiene actividades relacionadas con la restricción de notificaciones por correo electrónico para dominios verificados o aprobados para una empresa. {%- endif %} {%- ifversion custom-repository-roles %} -| `role` | Contains activities related to [custom repository roles](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization). +| `role` | Contiene actividades relacionadas con los [roles de repositorio personalizados](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization). {%- endif %} {%- ifversion ghec or ghes or ghae %} -| `secret_scanning` | Contains organization-level configuration activities for secret scanning in existing repositories. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). | `secret_scanning_new_repos` | Contains organization-level configuration activities for secret scanning for new repositories created in the organization. +| `secret_scanning` | Contiene actividades de configuración a nivel organizacional para el escaneo de secretos en los repositorios existentes. Para obtener más información, consulta la sección "[Acerca del escaneo de secretos"](/github/administering-a-repository/about-secret-scanning). | `secret_scanning_new_repos` | Contiene actividades de configuración a nivel organizacional para el escaneo de secretos para los repositorios nuevos creados en la organización. {%- endif %} {%- ifversion ghec or ghes or ghae %} -| `security_key` | Contains activities related to security keys registration and removal. +| `security_key` | Contiene actividades relacionadas con el registro y eliminación de llaves de seguridad. {%- endif %} {%- ifversion fpt or ghec %} -| `sponsors` | Contains events related to sponsor buttons (see "[Displaying a sponsor button in your repository](/articles/displaying-a-sponsor-button-in-your-repository)"). +| `sponsors` | Contiene eventos relacionados con botones de patrocinio (consulta la sección "[Mostrar un botón de patrocinio en tu repositorio](/articles/displaying-a-sponsor-button-in-your-repository)"). {%- endif %} {%- ifversion ghec or ghes or ghae %} -| `ssh_certificate_authority` | Contains activities related to a SSH certificate authority in an organization or enterprise. | `ssh_certificate_requirement` | Contains activities related to requiring members use SSH certificates to access organization resources. +| `ssh_certificate_authority` | Contiene actividades relacionadas con la autoridad de certificados SSH en una organización o empresa. | `ssh_certificate_requirement` | Contiene actividades relacionadas con requerir que los miembros utilicen certificados SSH para acceder a los recursos de una organización. {%- endif %} -| `staff` | Contains activities related to a site admin performing an action. | `team` | Contains activities related to teams in an organization. | `team_discussions` | Contains activities related to managing team discussions for an organization. +| `staff` | Contiene actividades relacionadas con un administrador de sitio que realiza una acción. | `team` | Contiene actividades relacionadas con los equipos en una organización. | `team_discussions` | Contiene actividades relacionadas con administrar los debates de equipo para una organización. {%- ifversion ghec %} -| `team_sync_tenant` | Contains activities related to team synchronization with an IdP for an enterprise or organization. +| `team_sync_tenant` | Contiene actividades relacionadas con la sincronización de equipo con un IdP para una organización o empresa. {%- endif %} {%- ifversion fpt or ghes %} -| `two_factor_authentication` | Contains activities related to two-factor authentication. +| `two_factor_authentication` | Contiene actividades relacionadas con la autenticación bifactorial. {%- endif %} -| `user` | Contains activities related to users in an enterprise or organization. +| `user` | Contiene actividades relacionadas con los usuarios en una organización o empresa. {%- ifversion ghec or ghes %} -| `user_license` | Contains activities related to a user occupying a licensed seat in, and being a member of, an enterprise. +| `user_license` | Contiene actividades relacionadas con un usuario que ocupa una plaza de licencia en, y es miembro de, una empresa. {%- endif %} -| `workflows` | Contains activities related to {% data variables.product.prodname_actions %} workflows. +| `workflows` | Contiene actividades relacionadas con los flujos de trabajo de {% data variables.product.prodname_actions %}. diff --git a/translations/es-ES/data/reusables/audit_log/audit-log-events-workflows.md b/translations/es-ES/data/reusables/audit_log/audit-log-events-workflows.md index b056200c95..87ae3b4119 100644 --- a/translations/es-ES/data/reusables/audit_log/audit-log-events-workflows.md +++ b/translations/es-ES/data/reusables/audit_log/audit-log-events-workflows.md @@ -1,8 +1,8 @@ | Acción | Descripción | | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workflows.approve_workflow_job` | A workflow job was approved. Para obtener más información, consulta la sección "[Revisar los despliegues](/actions/managing-workflow-runs/reviewing-deployments)". | -| `workflows.cancel_workflow_run` | A workflow run was cancelled. Para obtener más información, consulta "[Cancelar un flujo de trabajo](/actions/managing-workflow-runs/canceling-a-workflow)". | -| `workflows.delete_workflow_run` | A workflow run was deleted. Para obtener más información, consulta la sección "[Borrar una ejecución de flujo de trabajo](/actions/managing-workflow-runs/deleting-a-workflow-run)". | +| `workflows.approve_workflow_job` | Se aprobó un job de flujo de trabajo. Para obtener más información, consulta la sección "[Revisar los despliegues](/actions/managing-workflow-runs/reviewing-deployments)". | +| `workflows.cancel_workflow_run` | Se canceló una ejecución de flujo de trabajo. Para obtener más información, consulta "[Cancelar un flujo de trabajo](/actions/managing-workflow-runs/canceling-a-workflow)". | +| `workflows.delete_workflow_run` | Se borró una ejecución de flujo de trabajo. Para obtener más información, consulta la sección "[Borrar una ejecución de flujo de trabajo](/actions/managing-workflow-runs/deleting-a-workflow-run)". | | `workflows.disable_workflow` | Se inhabilitó un flujo de trabajo. | | `workflows.enable_workflow` | Se habilitó un flujo de trabajo después de que `disable_workflow` lo inhabilitó previamente. | | `workflows.reject_workflow_job` | Se rechazó un job de un flujo de trabajo. Para obtener más información, consulta la sección "[Revisar los despliegues](/actions/managing-workflow-runs/reviewing-deployments)". | diff --git a/translations/es-ES/data/reusables/billing/billing-hosted-runners.md b/translations/es-ES/data/reusables/billing/billing-hosted-runners.md new file mode 100644 index 0000000000..2881396884 --- /dev/null +++ b/translations/es-ES/data/reusables/billing/billing-hosted-runners.md @@ -0,0 +1 @@ +| Linux | 4 | $0.016 | | Linux | 8 | $0.032 | | Linux | 16 | $0.064 | | Linux | 32 | $0.128 | | Linux | 64 | $0.256 | | Windows | 8 | $0.064 | | Windows | 16 | $0.128 | | Windows | 32 | $0.256 | | Windows | 64 | $0.512 | \ No newline at end of file diff --git a/translations/es-ES/data/reusables/billing/billing-standard-runners.md b/translations/es-ES/data/reusables/billing/billing-standard-runners.md new file mode 100644 index 0000000000..d15058c032 --- /dev/null +++ b/translations/es-ES/data/reusables/billing/billing-standard-runners.md @@ -0,0 +1,5 @@ +| Sistema operativo | Cores | Tasa por minuto (USD) | +| ----------------- | ----- | --------------------- | +| Linux | 2 | $0.008 | +| macOS | 3 | $0.08 | +| Windows | 2 | $0.016 | diff --git a/translations/es-ES/data/reusables/classroom/reuse-assignment-link.md b/translations/es-ES/data/reusables/classroom/reuse-assignment-link.md index cad57fd14a..94c4b74335 100644 --- a/translations/es-ES/data/reusables/classroom/reuse-assignment-link.md +++ b/translations/es-ES/data/reusables/classroom/reuse-assignment-link.md @@ -1 +1 @@ -You can reuse existing assignments in any other classroom you have admin access to, including classrooms in a different organization. Para obtener más información, consulta la sección "[Reutilizar una tarea](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment)". +Puedes reutilizar las tareas existentes en cualquier otra aula en la que tengas acceso administrativo, incluyendo aquellas en una organización diferente. Para obtener más información, consulta la sección "[Reutilizar una tarea](/education/manage-coursework-with-github-classroom/teach-with-github-classroom/reuse-an-assignment)". diff --git a/translations/es-ES/data/reusables/code-scanning/example-configuration-files.md b/translations/es-ES/data/reusables/code-scanning/example-configuration-files.md index 5ed73d4367..07349858d4 100644 --- a/translations/es-ES/data/reusables/code-scanning/example-configuration-files.md +++ b/translations/es-ES/data/reusables/code-scanning/example-configuration-files.md @@ -30,3 +30,22 @@ paths-ignore: - src/node_modules - '**/*.test.js' ``` + +{% ifversion code-scanning-exclude-queries-from-analysis %} + +El siguiente archivo de configuración solo ejecuta consultas que generan alertas de errores de gravedad. La configuración selecciona primero todas las consultas predeterminadas, todas las consultas en `./my-queries` y la suite predeterminada en `codeql/java-queries` para luego excluir todas las consultas que generan advertencias o recomendaciones. + +``` yaml +queries: + - name: Use an in-repository QL pack (run queries in the my-queries directory) + uses: ./my-queries +packs: + - codeql/java-queries +query-filters: +- exclude: + problem.severity: + - warning + - recommendation +``` + +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/code-scanning/licensing-note.md b/translations/es-ES/data/reusables/code-scanning/licensing-note.md index ad0ec0192d..ede099e6be 100644 --- a/translations/es-ES/data/reusables/code-scanning/licensing-note.md +++ b/translations/es-ES/data/reusables/code-scanning/licensing-note.md @@ -1,8 +1,12 @@ {% note %} -**Note:** {% ifversion fpt %} -The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories. The {% data variables.product.prodname_codeql_cli %} is also available in private repositories owned by organizations that use {% data variables.product.prodname_ghe_cloud %} and have a license for {% data variables.product.prodname_GH_advanced_security %}. 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/)." -{%- elsif 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/)." -{%- elsif ghes or ghae %}The {% data variables.product.prodname_codeql_cli %} is available to customers with an {% data variables.product.prodname_advanced_security %} license. +**Notes:** {% ifversion fpt %} +- The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories. The {% data variables.product.prodname_codeql_cli %} is also available in private repositories owned by organizations that use {% data variables.product.prodname_ghe_cloud %} and have a license for {% data variables.product.prodname_GH_advanced_security %}. 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/)." +{%- elsif 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/)." +{%- elsif ghes or ghae %} +- The {% data variables.product.prodname_codeql_cli %} is available to customers with an {% data variables.product.prodname_advanced_security %} license. {% endif %} +- {% data reusables.code-scanning.non-glibc-linux-support %} + {% endnote %} diff --git a/translations/es-ES/data/reusables/code-scanning/non-glibc-linux-support.md b/translations/es-ES/data/reusables/code-scanning/non-glibc-linux-support.md new file mode 100644 index 0000000000..2a1c2a8e53 --- /dev/null +++ b/translations/es-ES/data/reusables/code-scanning/non-glibc-linux-support.md @@ -0,0 +1 @@ +The {% data variables.product.prodname_codeql_cli %} is currently not compatible with non-glibc Linux distributions such as (musl-based) Alpine Linux. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/code-scanning/run-additional-queries.md b/translations/es-ES/data/reusables/code-scanning/run-additional-queries.md index 3f25bd67d1..fddae57c62 100644 --- a/translations/es-ES/data/reusables/code-scanning/run-additional-queries.md +++ b/translations/es-ES/data/reusables/code-scanning/run-additional-queries.md @@ -1,5 +1,13 @@ When you use {% data variables.product.prodname_codeql %} to scan code, the {% data variables.product.prodname_codeql %} analysis engine generates a database from the code and runs queries on it. {% data variables.product.prodname_codeql %} analysis uses a default set of queries, but you can specify more queries to run, in addition to the default queries. +{% ifversion code-scanning-exclude-queries-from-analysis %} +{% tip %} + +You can also specify the queries you want to exclude from analysis, or include in the analysis. This requires the use of a custom configuration file. For more information, see "[Using a custom configuration file](#using-a-custom-configuration-file)" and "[Excluding specific queries from analysis](#excluding-specific-queries-from-analysis) " below. + +{% endtip %} +{% endif %} + {% ifversion codeql-packs %} You can run extra queries if they are part of a {% data variables.product.prodname_codeql %} pack (beta) published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} or a {% data variables.product.prodname_ql %} pack stored in a repository. For more 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#about-codeql-queries)." diff --git a/translations/es-ES/data/reusables/codespaces/click-remote-explorer-icon-vscode.md b/translations/es-ES/data/reusables/codespaces/click-remote-explorer-icon-vscode.md index 0a1e685eb9..bc6e803d41 100644 --- a/translations/es-ES/data/reusables/codespaces/click-remote-explorer-icon-vscode.md +++ b/translations/es-ES/data/reusables/codespaces/click-remote-explorer-icon-vscode.md @@ -1 +1,5 @@ -1. En {% data variables.product.prodname_vscode_shortname %}, en la barra lateral izquierda, da clic en el icono de Explorador Remoto. ![El icono de explorador remoto en {% data variables.product.prodname_vscode %}](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) +1. En {% data variables.product.prodname_vscode_shortname %}, en la barra lateral izquierda, da clic en el icono de Explorador Remoto. + + ![El icono de explorador remoto en {% data variables.product.prodname_vscode %}](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) + +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/codespaces/codespaces-disabling-org-billing.md b/translations/es-ES/data/reusables/codespaces/codespaces-disabling-org-billing.md new file mode 100644 index 0000000000..d3ed8cea21 --- /dev/null +++ b/translations/es-ES/data/reusables/codespaces/codespaces-disabling-org-billing.md @@ -0,0 +1,5 @@ +{% note %} + +**Note**: If you disable billable codespaces use for your organization, anyone who can create codespaces as an individual user, and can clone a repository in your organization, will still be able to create a codespace for that repository. However, this will not incur any charge for your organization. Para obtener más información sobre cómo restringir el acceso a un repositorio, consulta la sección "[Administrar los equipos y personas con acceso a tu repositorio](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)". + +{% endnote %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/codespaces/codespaces-org-policies-note.md b/translations/es-ES/data/reusables/codespaces/codespaces-org-policies-note.md new file mode 100644 index 0000000000..ca6be6fa7f --- /dev/null +++ b/translations/es-ES/data/reusables/codespaces/codespaces-org-policies-note.md @@ -0,0 +1,5 @@ +{% note %} + +**Note**: Organization policies you define for {% data variables.product.prodname_codespaces %} only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. Para obtener más información sobre cómo elegir quién puede crear codespaces que se facturan a tu organización, consulta la sección "[Habilitar a los {% data variables.product.prodname_github_codespaces %} para tu organización](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)". + +{% endnote %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/codespaces/codespaces-spending-limit-requirement.md b/translations/es-ES/data/reusables/codespaces/codespaces-spending-limit-requirement.md index 9ade0dcdaa..dafde78fca 100644 --- a/translations/es-ES/data/reusables/codespaces/codespaces-spending-limit-requirement.md +++ b/translations/es-ES/data/reusables/codespaces/codespaces-spending-limit-requirement.md @@ -1,9 +1,9 @@ {% note %} -**Nota:** Debes configurar un límite de gastos antes de pode utilizar {% data variables.product.prodname_codespaces %}. +**Nota:** Debes configurar un límite de gastos diferente a cero antes de poder utilizar {% data variables.product.prodname_codespaces %}. {% endnote %} -Predeterminadamente, tu organización o empresa tendrá un límite de gastos de {% data variables.product.prodname_github_codespaces %} de $0, lo cual previene que se creen codespaces nuevos o que se abran los existentes. Para permitir que tus usuarios creen codespaces en tu organización, configura el límite a un valor mayor a $0. +Predeterminadamente, tu organización o empresa tendrá un límite de gastos de {% data variables.product.prodname_github_codespaces %} igual a $0. Esto previene que se creen codespaces nuevos o que los existentes se abran en caso de que esto incurra en un costo facturable para tu organización o empresa. Para permitir que tus usuarios creen codespaces en tu organización, configura el límite a un valor mayor a $0. {% data reusables.billing.overages-billed-monthly %} diff --git a/translations/es-ES/data/reusables/codespaces/open-codespace-from-template-repo.md b/translations/es-ES/data/reusables/codespaces/open-codespace-from-template-repo.md new file mode 100644 index 0000000000..b9f18ee8fe --- /dev/null +++ b/translations/es-ES/data/reusables/codespaces/open-codespace-from-template-repo.md @@ -0,0 +1,8 @@ +1. Select an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. +1. On the main page of the newly created repository, click the **{% octicon "code" aria-label="The code icon" %} Code** button and select the **Codespaces** tab. + + ![Botón de codespace nuevo](/assets/images/help/codespaces/new-codespace-button.png) + + If you don’t see this tab, {% data variables.product.prodname_github_codespaces %} isn't available for you. For more information about access to {% data variables.product.prodname_github_codespaces %}, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)." + +1. On the **Codespaces** tab, click **Create codespace on main**. diff --git a/translations/es-ES/data/reusables/codespaces/rebuild-command.md b/translations/es-ES/data/reusables/codespaces/rebuild-command.md index 64aafc0323..96a0e12111 100644 --- a/translations/es-ES/data/reusables/codespaces/rebuild-command.md +++ b/translations/es-ES/data/reusables/codespaces/rebuild-command.md @@ -1,5 +1,3 @@ -1. Accede a la {% data variables.product.prodname_vscode_command_palette %} (Shift + Command + P / Ctrl + Shift + P) y comienza a escribir "rebuild". Selecciona **Codespaces: Reconstruir contenedor**. +1. Access the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "rebuild". Selecciona **Codespaces: Reconstruir contenedor**. ![Opción de recompilar contenedor](/assets/images/help/codespaces/codespaces-rebuild.png) - - diff --git a/translations/es-ES/data/reusables/codespaces/remote-explorer.md b/translations/es-ES/data/reusables/codespaces/remote-explorer.md new file mode 100644 index 0000000000..545bdcf0c9 --- /dev/null +++ b/translations/es-ES/data/reusables/codespaces/remote-explorer.md @@ -0,0 +1,9 @@ +{% note %} + +**Note**: If the Remote Explorer is not displayed in the Activity Bar: + +1. Access the Command Palette. For example, by pressing Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux). +1. Type: `codespaces`. +1. Click **Codespaces: Details**. + +{% endnote %} diff --git a/translations/es-ES/data/reusables/dependabot/dependabot-alerts-filters.md b/translations/es-ES/data/reusables/dependabot/dependabot-alerts-filters.md index ebaff3a36f..8b39c698dd 100644 --- a/translations/es-ES/data/reusables/dependabot/dependabot-alerts-filters.md +++ b/translations/es-ES/data/reusables/dependabot/dependabot-alerts-filters.md @@ -2,7 +2,7 @@ You can sort and filter {% data variables.product.prodname_dependabot_alerts %} | Opción | Descripción | Ejemplo | |:------------ |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ecosistema` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 %} +| `ecosistema` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-7891 %} | `has` | Displays alerts meeting the selected filter criteria | Use `has:patch` to show alerts related to advisories that have a patch{% ifversion dependabot-alerts-vulnerable-calls %}
Use `has:vulnerable-calls` to show alerts relating to calls to vulnerable functions{% endif %} {% endif %} | `is` | Displays alerts based on their state | Use `is:open` to show open alerts | diff --git a/translations/es-ES/data/reusables/dependency-review/dependency-review-action-beta-note.md b/translations/es-ES/data/reusables/dependency-review/dependency-review-action-beta-note.md index 01b1e2f260..7ad0e01dee 100644 --- a/translations/es-ES/data/reusables/dependency-review/dependency-review-action-beta-note.md +++ b/translations/es-ES/data/reusables/dependency-review/dependency-review-action-beta-note.md @@ -1,5 +1,5 @@ {% note %} -**Note**: The {% data variables.product.prodname_dependency_review_action %} is currently in public beta and subject to change. +**Note**: La {% data variables.product.prodname_dependency_review_action %} se encuentra actualmente en beta público y está sujeta a cambios. {% endnote %} diff --git a/translations/es-ES/data/reusables/dependency-review/dependency-review-api-beta-note.md b/translations/es-ES/data/reusables/dependency-review/dependency-review-api-beta-note.md index 73ee2bb66a..c1286ecc93 100644 --- a/translations/es-ES/data/reusables/dependency-review/dependency-review-api-beta-note.md +++ b/translations/es-ES/data/reusables/dependency-review/dependency-review-api-beta-note.md @@ -1,5 +1,5 @@ {% note %} -**Note**: The Dependency Review API is currently in public beta and subject to change. +**Note**: La API de revisión de dependencias se encuentra actualmente en beta público y está sujeta a cambios. {% endnote %} diff --git a/translations/es-ES/data/reusables/desktop/sign-in-browser.md b/translations/es-ES/data/reusables/desktop/sign-in-browser.md index 50cdbc9634..0cd9b0bebc 100644 --- a/translations/es-ES/data/reusables/desktop/sign-in-browser.md +++ b/translations/es-ES/data/reusables/desktop/sign-in-browser.md @@ -1 +1 @@ -1. In the "Sign in Using Your Browser" pane, click **Continue With Browser**. {% data variables.product.prodname_desktop %} abrirá tu buscador predeterminado. ![Inicio de sesión mediante el enlace de su navegador](/assets/images/help/desktop/sign-in-browser.png) +1. En el panel de "Inicia sesión utilizando tu buscador", haz clic en **Continuar con el buscador**. {% data variables.product.prodname_desktop %} abrirá tu buscador predeterminado. ![Inicio de sesión mediante el enlace de su navegador](/assets/images/help/desktop/sign-in-browser.png) diff --git a/translations/es-ES/data/reusables/discussions/about-organization-discussions.md b/translations/es-ES/data/reusables/discussions/about-organization-discussions.md index 08628cb121..ab5e854cb5 100644 --- a/translations/es-ES/data/reusables/discussions/about-organization-discussions.md +++ b/translations/es-ES/data/reusables/discussions/about-organization-discussions.md @@ -1,5 +1,5 @@ -When you enable organization discussions, you will choose a repository in the organization to be the source repository for your organization discussions. You can use an existing repository or create a repository specifically to hold your organization discussions. Discussions will appear both on the discussions page for the organization and on the discussion page for the source repository. +Cuando habilitas los debates de organización, elegirás un repositorio en la organización para que sea el repositorio fuente para sus debates. Puedes utilizar un repositorio existente o crear uno específicamente para que almacene tus debates de organización. Los debates se mostrarán tanto en la página de debates de la organización como en la página de debates del repositorio fuente. -Permission to participate in or manage discussions in your organization is based on permission in the source repository. For example, a user needs write permission to the source repository in order to delete an organization discussion. This is identical to how a user needs write permission in a repository in order to delete a repository discussion. +El permiso para participar o administrar los debates de tu organización se basa en los permisos del repositorio fuente. Por ejemplo, los usuarios necesitan permisos de escritura en el repositorio fuente para borrar un debate de organización. Esto es idéntico a cómo un usuario necesita permisos de escritura en un repositorio para poder borrar un debate en este. -You can change the source repository at any time. If you change the source repository, discussions are not transferred to the new source repository. +Puedes cambiar el repositorio fuente en cualquier momento. Si cambias el repositorio fuente, los debates no se transferirán al repositorio fuente nuevo. diff --git a/translations/es-ES/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md b/translations/es-ES/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md index 557169cb55..3a5fb0806d 100644 --- a/translations/es-ES/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md +++ b/translations/es-ES/data/reusables/discussions/enabling-or-disabling-github-discussions-for-your-organization.md @@ -1,5 +1,5 @@ 1. En {% data variables.product.product_location %}, navega a la página principal de tu organización. -1. Under your organization name, click {% octicon "gear" aria-label="The gear icon" %} **Settings**. ![Botón de configuración de organización](/assets/images/help/discussions/org-settings.png) -1. Under "Discussions", select **Enable discussions for this organization**. -1. Select a repository to use as the source repository for your organization discussions. ![Settings to enable discussions for an organization](/assets/images/help/discussions/enable-org-discussions.png) +1. Debajo del nombre de tu organización, haz clic en {% octicon "gear" aria-label="The gear icon" %} **Ajustes**. ![Botón de configuración de organización](/assets/images/help/discussions/org-settings.png) +1. Debajo de "Debates", selecciona **Habilitar los debates para esta organización**. +1. Selecciona un repositorio para utilizarlo como el repositorio fuente para los debates de tu organización. ![Ajustes para habilitar los debates para una organización](/assets/images/help/discussions/enable-org-discussions.png) 1. Haz clic en **Save ** (guardar). diff --git a/translations/es-ES/data/reusables/discussions/navigate-to-repo-or-org.md b/translations/es-ES/data/reusables/discussions/navigate-to-repo-or-org.md index 92670f998b..03b3938d64 100644 --- a/translations/es-ES/data/reusables/discussions/navigate-to-repo-or-org.md +++ b/translations/es-ES/data/reusables/discussions/navigate-to-repo-or-org.md @@ -1 +1 @@ -1. On {% data variables.product.product_location %}, navigate to the main page of the repository or organization. +1. En {% data variables.product.product_location %}, navega a la página principal del repositorio u organización. diff --git a/translations/es-ES/data/reusables/discussions/starting-a-poll.md b/translations/es-ES/data/reusables/discussions/starting-a-poll.md index d4a5bd89a3..0771bfcc26 100644 --- a/translations/es-ES/data/reusables/discussions/starting-a-poll.md +++ b/translations/es-ES/data/reusables/discussions/starting-a-poll.md @@ -1,9 +1,9 @@ {% data reusables.repositories.navigate-to-repo %} {% data reusables.discussions.discussions-tab %} -1. In the list of categories, click **Polls**. ![Screenshot showing "Poll" category](/assets/images/help/discussions/poll-category.png) -1. On the right, click **Start poll**. ![Captura de pantalla que muestra el botón "Iniciar encuesta"](/assets/images/help/discussions/start-poll-button.png) -1. Type a title and optional body for your poll. ![Screenshot showing text fields for title and body](/assets/images/help/discussions/new-poll-title-and-body-fields.png) -1. Type a question for your poll. ![Screenshot showing text fields for the poll's question](/assets/images/help/discussions/new-poll-question.png) -1. Type at least two options for your poll. ![Screenshot showing text fields for the poll's options](/assets/images/help/discussions/new-poll-options.png) -1. Optionally, to add an extra poll option, click **Add an option**. ![Screenshot showing "Add an option" button](/assets/images/help/discussions/new-poll-add-option.png) -1. Click **Start poll**. ![Captura de pantalla que muestra el botón "Iniciar encuesta"](/assets/images/help/discussions/new-poll-start-poll-button.png) +1. En la lista de categorías, haz clic en **Encuestas**. ![Captura de pantalla que muestra la categoría de "Encuesta"](/assets/images/help/discussions/poll-category.png) +1. A la derecha, haz clic en **Iniciar encuesta**. ![Captura de pantalla que muestra el botón "Iniciar encuesta"](/assets/images/help/discussions/start-poll-button.png) +1. Escribe un título y un cuerpo opcional para tu encuesta. ![Captura de pantalla que muestra los campos de texto para el título y el cuerpo](/assets/images/help/discussions/new-poll-title-and-body-fields.png) +1. Escribe una pregunta para tu encuesta. ![Captura de pantalla que muestra los campos de texto para la pregunta de la encuesta](/assets/images/help/discussions/new-poll-question.png) +1. Escribe por lo menos dos opciones para tu encuesta. ![Captura de pantalla que muestra los campos de texto para las opciones de la encuesta](/assets/images/help/discussions/new-poll-options.png) +1. Opcionalmente, para agregar una opción de encuesta adicional, haz clic en **Agregar una opción**. ![Captura de pantalla que muestra el botón "Agregar una opción"](/assets/images/help/discussions/new-poll-add-option.png) +1. Haz clic en **Iniciar encuesta**. ![Captura de pantalla que muestra el botón "Iniciar encuesta"](/assets/images/help/discussions/new-poll-start-poll-button.png) diff --git a/translations/es-ES/data/reusables/education/access-github-community-exchange.md b/translations/es-ES/data/reusables/education/access-github-community-exchange.md index 315f709fbe..bea8e637fc 100644 --- a/translations/es-ES/data/reusables/education/access-github-community-exchange.md +++ b/translations/es-ES/data/reusables/education/access-github-community-exchange.md @@ -4,4 +4,4 @@ If you're a student or faculty member at an accredited educational institution, - If you’re a student and you haven't joined {% data variables.product.prodname_education %} yet, apply using the [student application form](https://education.github.com/discount_requests/student_application). For more information, see "[About {% data variables.product.prodname_global_campus %} for students](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students)." -- If you’re an educator and you haven't joined {% data variables.product.prodname_education %} yet, apply using the [teacher application form](https://education.github.com/discount_requests/teacher_application). For more information, see "[Apply to {% data variables.product.prodname_global_campus %} as a teacher](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)." +- If you’re an educator and you haven't joined {% data variables.product.prodname_education %} yet, apply using the [teacher application form](https://education.github.com/discount_requests/teacher_application). Para obtener más información, consulta la sección "[Solicitar ingresar al {% data variables.product.prodname_global_campus %} como docente](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)". diff --git a/translations/es-ES/data/reusables/education/apply-for-team.md b/translations/es-ES/data/reusables/education/apply-for-team.md index 46384e2886..f34afbc02a 100644 --- a/translations/es-ES/data/reusables/education/apply-for-team.md +++ b/translations/es-ES/data/reusables/education/apply-for-team.md @@ -1 +1 @@ -- Solicita gratis [{% data variables.product.prodname_team %}](/articles/github-s-products), que permite tener ilimitados usuarios y repositorios privados. For more information, see "[Apply to {% data variables.product.prodname_global_campus %} as a teacher](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)." +- Solicita gratis [{% data variables.product.prodname_team %}](/articles/github-s-products), que permite tener ilimitados usuarios y repositorios privados. Para obtener más información, consulta la sección "[Solicitar ingresar al {% data variables.product.prodname_global_campus %} como docente](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)". diff --git a/translations/es-ES/data/reusables/enterprise-accounts/emu-cap-validates.md b/translations/es-ES/data/reusables/enterprise-accounts/emu-cap-validates.md index 0f5e2fb0f4..bc24aa3b1e 100644 --- a/translations/es-ES/data/reusables/enterprise-accounts/emu-cap-validates.md +++ b/translations/es-ES/data/reusables/enterprise-accounts/emu-cap-validates.md @@ -1 +1 @@ -When your enterprise uses OIDC SSO, {% data variables.product.prodname_dotcom %} will automatically use your IdP's conditional access policy (CAP) IP conditions to validate user interactions with {% data variables.product.prodname_dotcom %}, when members change IP addresses, and each time a personal access token or SSH key is used. +Cuando tu empresa utiliza el SSO de OIDC, {% data variables.product.prodname_dotcom %} utilizará automáticamente las condiciones de IP de la política de acceso condicional (CAP) de tu IdP para validar las interacciones de los usuarios con {% data variables.product.prodname_dotcom %}, cuando los miembros cambien sus direcciones IP y cada que se utilice un token de acceso personal o llave SSH. diff --git a/translations/es-ES/data/reusables/enterprise-accounts/repo-creation-policy.md b/translations/es-ES/data/reusables/enterprise-accounts/repo-creation-policy.md index a39d234056..753cfb7784 100644 --- a/translations/es-ES/data/reusables/enterprise-accounts/repo-creation-policy.md +++ b/translations/es-ES/data/reusables/enterprise-accounts/repo-creation-policy.md @@ -1 +1,6 @@ -1. Debajo de "Repository creation" (Creación de repositorios), selecciona una política. ![Menú desplegable con opciones de políticas de creación de repositorios](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) +1. Debajo de "Repository creation" (Creación de repositorios), selecciona una política. + {% ifversion enterprise-namespace-repo-setting %} + ![Menú desplegable con opciones de políticas de creación de repositorios](/assets/images/help/business-accounts/restrict-personal-namespace-setting.png) + {% else %} + ![Menú desplegable con opciones de políticas de creación de repositorios](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) + {% endif %} diff --git a/translations/es-ES/data/reusables/enterprise-accounts/repository-visibility-policy.md b/translations/es-ES/data/reusables/enterprise-accounts/repository-visibility-policy.md deleted file mode 100644 index 16eee6509a..0000000000 --- a/translations/es-ES/data/reusables/enterprise-accounts/repository-visibility-policy.md +++ /dev/null @@ -1 +0,0 @@ -1. Debajo de "Repository visibility change" (Cambio de visibilidad de repositorios), usa el menú desplegable y elige una política. ![Menú desplegable con opciones de políticas de visibilidad de repositorios](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) diff --git a/translations/es-ES/data/reusables/enterprise-accounts/security-tab.md b/translations/es-ES/data/reusables/enterprise-accounts/security-tab.md index 40001f464a..dd0e1e0c56 100644 --- a/translations/es-ES/data/reusables/enterprise-accounts/security-tab.md +++ b/translations/es-ES/data/reusables/enterprise-accounts/security-tab.md @@ -1,2 +1,7 @@ +{%- ifversion ghec or ghes > 3.4 or ghae-issue-7875 %} +1. En la barra lateral izquierda, haz clic en **Seguridad de autenticación**. + {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-authentication-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-authentication-security-tab.png){% endif %} +{%- else %} 1. En la barra lateral izquierda, haz clic en **Security** (Seguridad). {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-security-tab.png){% endif %} +{%- endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/enterprise/about-github-for-enterprises.md b/translations/es-ES/data/reusables/enterprise/about-github-for-enterprises.md index eec503fbd5..611ea65ab9 100644 --- a/translations/es-ES/data/reusables/enterprise/about-github-for-enterprises.md +++ b/translations/es-ES/data/reusables/enterprise/about-github-for-enterprises.md @@ -1 +1 @@ -For more information about how businesses can use {% data variables.product.company_short %}'s products to support their software development lifecycle, see "[About {% data variables.product.prodname_dotcom %} for enterprises](/admin/overview/about-github-for-enterprises)." \ No newline at end of file +Para obtener más información sobre cómo nuestros negocios pueden utilizar los productos de {% data variables.product.company_short %} para apoyar su ciclo de desarrollo de software, consulta la sección "[Acerca de {% data variables.product.prodname_dotcom %} para empresas](/admin/overview/about-github-for-enterprises)". \ No newline at end of file diff --git a/translations/es-ES/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md b/translations/es-ES/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md index c5d6100063..d9e308eee9 100644 --- a/translations/es-ES/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md +++ b/translations/es-ES/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md @@ -1,4 +1,4 @@ -1. Define the key as a environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. +1. Define the key as an environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. ```bash{:copy} ghe-config "secrets.gpgverify.web-signing-key" "$(gpg --export-secret-keys -a | awk '{printf "%s\\n", $0}')" diff --git a/translations/es-ES/data/reusables/gated-features/codespaces-classroom-articles.md b/translations/es-ES/data/reusables/gated-features/codespaces-classroom-articles.md index 924aac0d15..fb0f2fcb07 100644 --- a/translations/es-ES/data/reusables/gated-features/codespaces-classroom-articles.md +++ b/translations/es-ES/data/reusables/gated-features/codespaces-classroom-articles.md @@ -1 +1 @@ -Codespaces is available to use with {% data variables.product.prodname_classroom %} for organizations that use {% data variables.product.prodname_team %}. To find out if you qualify for a free upgrade to {% data variables.product.prodname_team %}, see "[Apply to {% data variables.product.prodname_global_campus %} as a teacher](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)." +Codespaces is available to use with {% data variables.product.prodname_classroom %} for organizations that use {% data variables.product.prodname_team %}. Para saber si calificas para una mejora a {% data variables.product.prodname_team %}, consulta la secciòn "[Solicitar entrar al {% data variables.product.prodname_global_campus %} como docente](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)". diff --git a/translations/es-ES/data/reusables/gated-features/dependency-vulnerable-calls.md b/translations/es-ES/data/reusables/gated-features/dependency-vulnerable-calls.md index 1f6773128e..2608c16d56 100644 --- a/translations/es-ES/data/reusables/gated-features/dependency-vulnerable-calls.md +++ b/translations/es-ES/data/reusables/gated-features/dependency-vulnerable-calls.md @@ -1,11 +1,11 @@ {%- ifversion fpt %} -Detection of vulnerable calls is enabled on public repositories. This analysis is also available in private repositories owned by organizations that use {% data variables.product.prodname_ghe_cloud %} and have licensed {% data variables.product.prodname_GH_advanced_security %}. +Detection of vulnerable calls is enabled on public repositories. Este análisis también está disponible en repositorios privados que le pertenezcan a las organizaciones que utilizan {% data variables.product.prodname_ghe_cloud %} y que tienen {% data variables.product.prodname_GH_advanced_security %} con licencia. {%- elsif ghec %} -Detection of vulnerable calls is included in {% data variables.product.product_name %} for public repositories. To detect vulnerable calls in private repositories owned by organizations, your organization must have a license for {% data variables.product.prodname_GH_advanced_security %}. +La detección de llamadas vulnerables se incluye en {% data variables.product.product_name %} para repositorios públicos. Para detectar llamadas vulnerables en repositorios privados que le pertenecen a las organizaciones, tu organización debe tener una licencia para {% data variables.product.prodname_GH_advanced_security %}. {%- elsif ghes > 3.5 %} -Detection of vulnerable calls is available for organization-owned repositories in {% data variables.product.product_name %}. Esta característica requiere una licencia para la {% data variables.product.prodname_GH_advanced_security %}. +La detección de llamadas vulnerables está disponible para los repositorios que pertenecen a organizaciones de {% data variables.product.product_name %}. Esta característica requiere una licencia para la {% data variables.product.prodname_GH_advanced_security %}. {%- elsif ghae-issue-6076 %} La detección de llamadas vulnerables está disponible para los repositorios que pertenecen a organizaciones de {% data variables.product.product_name %}. Esta es una característica de la {% data variables.product.prodname_GH_advanced_security %} (gratuita durante el lanzamiento beta). diff --git a/translations/es-ES/data/reusables/gated-features/hosted-runners.md b/translations/es-ES/data/reusables/gated-features/hosted-runners.md new file mode 100644 index 0000000000..4f1e2137bb --- /dev/null +++ b/translations/es-ES/data/reusables/gated-features/hosted-runners.md @@ -0,0 +1 @@ +The {% data variables.actions.hosted_runner %}s feature is currently in beta for organizations and enterprises using the {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %} plans, and is subject to change. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/getting-started/bearer-vs-token.md b/translations/es-ES/data/reusables/getting-started/bearer-vs-token.md new file mode 100644 index 0000000000..9dd0b62ada --- /dev/null +++ b/translations/es-ES/data/reusables/getting-started/bearer-vs-token.md @@ -0,0 +1 @@ +In most cases, you can use `Authorization: Bearer` or `Authorization: token` to pass a token. However, if you are passing a JSON web token (JWT), you must use `Authorization: Bearer`. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/git/cache-on-repository-path.md b/translations/es-ES/data/reusables/git/cache-on-repository-path.md new file mode 100644 index 0000000000..ced81ebbd9 --- /dev/null +++ b/translations/es-ES/data/reusables/git/cache-on-repository-path.md @@ -0,0 +1,5 @@ +1. To configure Git to cache credentials for each local directory where you clone a repository, enter the following command. + + ```shell{:copy} + git config --global credential.useHttpPath true + ``` diff --git a/translations/es-ES/data/reusables/git/clear-stored-gcm-credentials.md b/translations/es-ES/data/reusables/git/clear-stored-gcm-credentials.md new file mode 100644 index 0000000000..04e3de748e --- /dev/null +++ b/translations/es-ES/data/reusables/git/clear-stored-gcm-credentials.md @@ -0,0 +1,5 @@ +- If the output is `manager-core`, you're using Git Credential Manager. To clear the credentials, run the following command. + + ```shell{:copy} + git credential-manager reject https://github.com + ``` diff --git a/translations/es-ES/data/reusables/git/clear-the-stored-credentials.md b/translations/es-ES/data/reusables/git/clear-the-stored-credentials.md new file mode 100644 index 0000000000..f723d7ab97 --- /dev/null +++ b/translations/es-ES/data/reusables/git/clear-the-stored-credentials.md @@ -0,0 +1 @@ +1. If the output confirms that you're using a credential manager, clear the stored credentials for the credential manager. diff --git a/translations/es-ES/data/reusables/git/confirm-credential-manager.md b/translations/es-ES/data/reusables/git/confirm-credential-manager.md new file mode 100644 index 0000000000..68c6e99397 --- /dev/null +++ b/translations/es-ES/data/reusables/git/confirm-credential-manager.md @@ -0,0 +1,5 @@ +1. To confirm your use of a credential manager, enter the following command and note the output. + + ```shell{:copy} + git config --get credential.helper + ``` diff --git a/translations/es-ES/data/reusables/git/no-credential-manager.md b/translations/es-ES/data/reusables/git/no-credential-manager.md new file mode 100644 index 0000000000..fe79c2ff04 --- /dev/null +++ b/translations/es-ES/data/reusables/git/no-credential-manager.md @@ -0,0 +1 @@ +- If the output doesn't include the name of a credential manager, there is no credential manager configured, and you can proceed to the next step. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/git/open-terminal.md b/translations/es-ES/data/reusables/git/open-terminal.md new file mode 100644 index 0000000000..f6d095397c --- /dev/null +++ b/translations/es-ES/data/reusables/git/open-terminal.md @@ -0,0 +1 @@ +1. Abre Terminal. diff --git a/translations/es-ES/data/reusables/git/provide-credentials.md b/translations/es-ES/data/reusables/git/provide-credentials.md new file mode 100644 index 0000000000..351a1e87d1 --- /dev/null +++ b/translations/es-ES/data/reusables/git/provide-credentials.md @@ -0,0 +1,3 @@ +1. The first time that you use Git to clone a repository or access data in a repository that you've already cloned, Git will request credentials. Provide the PAT for the account with access to the repository. + + Git will cache the PAT for the directory you're in, and you'll be able to access and write repository data on {% data variables.product.product_location %} using the correct account. diff --git a/translations/es-ES/data/reusables/gpg/configure-ssh-signing.md b/translations/es-ES/data/reusables/gpg/configure-ssh-signing.md new file mode 100644 index 0000000000..f0f489a73a --- /dev/null +++ b/translations/es-ES/data/reusables/gpg/configure-ssh-signing.md @@ -0,0 +1,4 @@ +1. Configure Git to use SSH to sign commits and tags: + ```bash + $ git config --global gpg.format ssh + ``` \ No newline at end of file diff --git a/translations/es-ES/data/reusables/gpg/copy-gpg-key-id.md b/translations/es-ES/data/reusables/gpg/copy-gpg-key-id.md index e075c5dd1a..b10e58d80c 100644 --- a/translations/es-ES/data/reusables/gpg/copy-gpg-key-id.md +++ b/translations/es-ES/data/reusables/gpg/copy-gpg-key-id.md @@ -1,9 +1,9 @@ 1. Desde la lista de llaves GPG, compia la forma larga de la ID de la llave GPG que quieres utilizar. En este ejemplo, el ID de la llave GPG es `3AA5C34371567BD2`: - ```shell + ```shell{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/42B317FD4BA89E7A 2016-03-10 - ``` + ``` diff --git a/translations/es-ES/data/reusables/gpg/copy-ssh-public-key.md b/translations/es-ES/data/reusables/gpg/copy-ssh-public-key.md new file mode 100644 index 0000000000..36b53fd808 --- /dev/null +++ b/translations/es-ES/data/reusables/gpg/copy-ssh-public-key.md @@ -0,0 +1,43 @@ +1. Copia la llave SSH pública a tu portapapeles. + + Si tu archivo de llave SSH pública tiene un nombre diferente que en el código de ejemplo, modifica el nombre de archivo para que coincida con tu configuración actual. Al copiar tu clave, no agregues líneas nuevas o espacios en blanco. +{% mac %} + + ```shell + $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard + ``` + + {% tip %} + + **Sugerencia:** Si `pbcopy` no está funcionando, puedes ubicar la carpeta `.ssh` oculta, abrir el archivo en tu editor de texto favorito, y copiarlo en tu portapapeles. + + {% endtip %} +{% endmac %} +{% windows %} + + ```shell + $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard + ``` + + {% tip %} + + **Sugerencia:** Si `clip` no está funcionando, puedes ubicar la carpeta `.shh` oculta, abrir el archivo en tu editor de texto favorito, y copiarlo en tu portapapeles. + + {% endtip %} +{% endwindows %} +{% linux %} + + ```shell + $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Then select and copy the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file + # displayed in the terminal to your clipboard + ``` + + {% tip %} + + **Tip:** Como alternativa, puedes ubicar la carpeta `.ssh` oculta, abrir el archivo en tu editor de texto favorito y copiarlo a tu portapapeles. + + {% endtip %} +{% endlinux %} diff --git a/translations/es-ES/data/reusables/gpg/list-keys-with-note.md b/translations/es-ES/data/reusables/gpg/list-keys-with-note.md index 9e243ce572..64b0a703f9 100644 --- a/translations/es-ES/data/reusables/gpg/list-keys-with-note.md +++ b/translations/es-ES/data/reusables/gpg/list-keys-with-note.md @@ -1,10 +1,11 @@ - 1. Utiliza el comando `gpg --list-secret-keys --keyid-format=long` para enumerar la forma larga de las llaves GPG para las cuales tienes tanto una llave pública como una privada. Se requiere una llave privada para registrar confirmaciones o etiquetas. - ```shell - $ gpg --list-secret-keys --keyid-format=long -``` - {% note %} - **Nota:** Algunas instalaciones GPG en Linux pueden requerir que uses `gpg2 --list-keys --keyid-format LONG` para visualizar una lista de tus llaves existentes en su lugar. En este caso también deberás configurar Git para que use `gpg2` by running `git config --global gpg.program gpg2`. + ```shell{:copy} + $ gpg --list-secret-keys --keyid-format=long + ``` - {% endnote %} + {% note %} + + **Nota:** Algunas instalaciones GPG en Linux pueden requerir que uses `gpg2 --list-keys --keyid-format LONG` para visualizar una lista de tus llaves existentes en su lugar. En este caso también deberás configurar Git para que use `gpg2` by running `git config --global gpg.program gpg2`. + + {% endnote %} diff --git a/translations/es-ES/data/reusables/gpg/paste-ssh-public-key.md b/translations/es-ES/data/reusables/gpg/paste-ssh-public-key.md new file mode 100644 index 0000000000..1274a0acb5 --- /dev/null +++ b/translations/es-ES/data/reusables/gpg/paste-ssh-public-key.md @@ -0,0 +1,4 @@ +1. To set your SSH signing key in Git, paste the text below, substituting the contents of your clipboard for the key you'd like to use. Since the key contains spaces, you must wrap it in quotes: + ```bash + $ git config --global user.signingkey 'ssh-ed25519 AAAAC3(...) user@example.com' + ``` \ No newline at end of file diff --git a/translations/es-ES/data/reusables/gpg/ssh-git-version.md b/translations/es-ES/data/reusables/gpg/ssh-git-version.md new file mode 100644 index 0000000000..aea08195e9 --- /dev/null +++ b/translations/es-ES/data/reusables/gpg/ssh-git-version.md @@ -0,0 +1,6 @@ + +{% note %} + +**Note:** SSH signature verification is available in Git 2.34 or later. Para actualizar tu versiíon de Git, consulta el sitio web de [Git](https://git-scm.com/downloads). + +{% endnote %} diff --git a/translations/es-ES/data/reusables/gpg/x-509-key.md b/translations/es-ES/data/reusables/gpg/x-509-key.md index 5965862c30..a87d0e6827 100644 --- a/translations/es-ES/data/reusables/gpg/x-509-key.md +++ b/translations/es-ES/data/reusables/gpg/x-509-key.md @@ -1,5 +1,5 @@ -### Informarle a Git acerca de tu llave X.509 +## Informarle a Git acerca de tu llave X.509 Puedes usar [smimesign](https://github.com/github/smimesign) para firmar confirmaciones y etiquetas utilizando S/MIME en lugar de GPG. diff --git a/translations/es-ES/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md b/translations/es-ES/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md new file mode 100644 index 0000000000..772581f87a --- /dev/null +++ b/translations/es-ES/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md @@ -0,0 +1,3 @@ +You can create an IP allow list by adding entries that each contain an IP address or address range.{% ifversion ip-allow-list-address-check %} After you finish adding entries, you can check whether a particular IP address would be allowed by any of the enabled entries in your list.{% endif %} + +Before the list restricts access to {% ifversion ghae %}your enterprise{% else %}private assets owned by organizations in your enterprise{% endif %}, you must also enable allowed IP addresses. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/identity-and-permissions/about-checking-ip-address.md b/translations/es-ES/data/reusables/identity-and-permissions/about-checking-ip-address.md new file mode 100644 index 0000000000..dfdc758f91 --- /dev/null +++ b/translations/es-ES/data/reusables/identity-and-permissions/about-checking-ip-address.md @@ -0,0 +1 @@ +You can check whether a particular IP address would be allowed by any of the enabled entries in your IP allow list, even if the list is not currently enabled. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md b/translations/es-ES/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md new file mode 100644 index 0000000000..d646e02ec5 --- /dev/null +++ b/translations/es-ES/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md @@ -0,0 +1,5 @@ +You can edit an entry in your IP allow list. If you edit an enabled entry, changes are enforced immediately. + +{% ifversion ip-allow-list-address-check %} +After you finish editing entries, you can check whether a particular IP address would be allowed by any of the enabled entries in your list. +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md b/translations/es-ES/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md new file mode 100644 index 0000000000..f886df0690 --- /dev/null +++ b/translations/es-ES/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md @@ -0,0 +1,5 @@ +After you create an IP allow list, you can enable allowed IP addresses. When you enable allowed IP addresses, {% data variables.product.company_short %} immediately enforces any enabled entries in your IP allow list. + +{% ifversion ip-allow-list-address-check %} +Before you enable allowed IP addresses, you can check whether a particular IP address would be allowed by any of the enabled entries in your list. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/identity-and-permissions/check-ip-address-step.md b/translations/es-ES/data/reusables/identity-and-permissions/check-ip-address-step.md new file mode 100644 index 0000000000..5e73fdddcd --- /dev/null +++ b/translations/es-ES/data/reusables/identity-and-permissions/check-ip-address-step.md @@ -0,0 +1 @@ +1. Under "Check your IP address", enter an IP address. ![Screenshot of the "Check IP address" text field](/assets/images/help/security/check-ip-address.png) \ No newline at end of file diff --git a/translations/es-ES/data/reusables/identity-and-permissions/check-ip-address.md b/translations/es-ES/data/reusables/identity-and-permissions/check-ip-address.md new file mode 100644 index 0000000000..9a187752d6 --- /dev/null +++ b/translations/es-ES/data/reusables/identity-and-permissions/check-ip-address.md @@ -0,0 +1,3 @@ +{%- ifversion ip-allow-list-address-check %} +1. Optionally, check if a particular IP address would be allowed by any of the enabled entries in your list. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +{%- endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/identity-and-permissions/ip-allow-lists-enable.md b/translations/es-ES/data/reusables/identity-and-permissions/ip-allow-lists-enable.md index e236790aec..65f0446fcc 100644 --- a/translations/es-ES/data/reusables/identity-and-permissions/ip-allow-lists-enable.md +++ b/translations/es-ES/data/reusables/identity-and-permissions/ip-allow-lists-enable.md @@ -1 +1,3 @@ -Para aplicar la lista de IP permitidas, primero debes agregar direcciones a la lista, y después habilitarla. Debes agregar tu dirección IP actual o un rango coincidente antes de habilitar la lista de permisos de IP. +Para requerir la lista de direcciones IP permitidas, primero debes agregar direcciones IP a ella y luego habilitarla.{% ifversion ip-allow-list-address-check %} Después de que completes tu lista, puedes verificar si una dirección IP en particular estaría permitida en cualquiera de las entradas habilitadas en dicha lista.{% endif %} + +Debes agregar tu dirección IP actual o un rango coincidente antes de habilitar la lista de permisos de IP. diff --git a/translations/es-ES/data/reusables/identity-and-permissions/ipv6-allow-lists.md b/translations/es-ES/data/reusables/identity-and-permissions/ipv6-allow-lists.md new file mode 100644 index 0000000000..3c26491fe2 --- /dev/null +++ b/translations/es-ES/data/reusables/identity-and-permissions/ipv6-allow-lists.md @@ -0,0 +1,7 @@ +{% ifversion fpt or ghec %} +{% note %} + +**Note:** {% data variables.product.company_short %} is gradually rolling out support for IPv6. As {% data variables.product.prodname_dotcom %} services continue to add IPv6 support, we will start recognizing IPv6 addresses of {% data variables.product.prodname_dotcom %} users. To prevent possible access interruptions, please ensure you have added any necessary IPv6 addresses to your IP allow list. + +{% endnote %} +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/organizations/about-following-organizations.md b/translations/es-ES/data/reusables/organizations/about-following-organizations.md new file mode 100644 index 0000000000..52e52467fb --- /dev/null +++ b/translations/es-ES/data/reusables/organizations/about-following-organizations.md @@ -0,0 +1 @@ +When you follow organizations on {% data variables.product.product_name %}, you'll see their {% ifversion fpt or ghec %}public{% endif %} activity on your personal dashboard. This activity includes new discussions, sponsorships, and repositories. \ No newline at end of file diff --git a/translations/es-ES/data/reusables/organizations/follow-organizations-beta.md b/translations/es-ES/data/reusables/organizations/follow-organizations-beta.md new file mode 100644 index 0000000000..8d9ef03cd1 --- /dev/null +++ b/translations/es-ES/data/reusables/organizations/follow-organizations-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**Nota:** La capacidad de seguir organizaciones se encuentra actualmente en beta público y está sujeta a cambios. + +{% endnote %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/package_registry/authenticate-packages.md b/translations/es-ES/data/reusables/package_registry/authenticate-packages.md index a766f6e96d..5ca4e91584 100644 --- a/translations/es-ES/data/reusables/package_registry/authenticate-packages.md +++ b/translations/es-ES/data/reusables/package_registry/authenticate-packages.md @@ -4,4 +4,4 @@ You can use a personal access token (PAT) to authenticate to {% data variables.p 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. -- a PAT to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). +- a PAT with at least `packages:read` scope to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). diff --git a/translations/es-ES/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md b/translations/es-ES/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md deleted file mode 100644 index 710a154d36..0000000000 --- a/translations/es-ES/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md +++ /dev/null @@ -1,11 +0,0 @@ -{% ifversion fpt or ghec or ghes > 3.4 %} - -Para autenticarse en el {% data variables.product.prodname_container_registry %} dentro de un flujo de trabajo de {% data variables.product.prodname_actions %}, utiliza el `GITHUB_TOKEN` para tener la mejor experiencia en seguridad. Si tu flujo de trabajo utiliza un token de acceso personal (PAT) para autenticarse en `{% data reusables.package_registry.container-registry-hostname %}`, entonces te recomendamos ampliamente que lo actualices para que utilice el `GITHUB_TOKEN`. - -{% ifversion fpt or ghec %}Para obtener orientación sobre cómo actualizar tus flujos de trabajo que se autentican con `{% data reusables.package_registry.container-registry-hostname %}` con un token de acceso personal, consulta la sección "[Actualizar un flujo de trab ajo que accede a `ghcr.io`](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-ghcrio)".{% endif %} - -Para obtener más información sobre el `GITHUB_TOKEN`, consulta la sección "[Autenticación en un flujo de trabajo](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)". - -Si estás utilizando el {% data variables.product.prodname_container_registry %} en las acciones, sigue nuestras mejores prácticas de seguridad en "[Fortalecimiento de seguridad para las Acciones de GitHub](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)". - -{% endif %} diff --git a/translations/es-ES/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md b/translations/es-ES/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md new file mode 100644 index 0000000000..520a91c938 --- /dev/null +++ b/translations/es-ES/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md @@ -0,0 +1,7 @@ +If your workflow is using a personal access token (PAT) to authenticate to a registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. + +{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to a registry with a personal access token, see "[Upgrading a workflow that accesses a registry using a PAT](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-a-registry-using-a-pat)."{% endif %} + +Para obtener más información sobre el `GITHUB_TOKEN`, consulta la sección "[Autenticación en un flujo de trabajo](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)". + +For more information about the best practises when using a registry in actions, see "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." diff --git a/translations/es-ES/data/reusables/package_registry/container-registry-migration-namespaces.md b/translations/es-ES/data/reusables/package_registry/container-registry-migration-namespaces.md index 9d7d0dc5e0..ecb450e5a1 100644 --- a/translations/es-ES/data/reusables/package_registry/container-registry-migration-namespaces.md +++ b/translations/es-ES/data/reusables/package_registry/container-registry-migration-namespaces.md @@ -1 +1 @@ -Any scripts or {% data variables.product.prodname_actions %} workflows that use the namespace for the Docker registry, {% data variables.product.prodname_docker_registry_namespace %}, will continue to work after migration to the {% data variables.product.prodname_container_registry %} at {% data variables.product.prodname_container_registry_namespace %}. +Cualquier script o flujo de trabajo de {% data variables.product.prodname_actions %} que utilice un designador de nombre para el registro de Docker, {% data variables.product.prodname_docker_registry_namespace %}, seguirá funcionando después de su migración al {% data variables.product.prodname_container_registry %} en {% data variables.product.prodname_container_registry_namespace %}. diff --git a/translations/es-ES/data/reusables/package_registry/no-graphql-to-delete-packages.md b/translations/es-ES/data/reusables/package_registry/no-graphql-to-delete-packages.md new file mode 100644 index 0000000000..cbab609f2b --- /dev/null +++ b/translations/es-ES/data/reusables/package_registry/no-graphql-to-delete-packages.md @@ -0,0 +1 @@ +{% 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`, or npm images that use the package namespace `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`.{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md b/translations/es-ES/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md index ae12fb4907..55805f4322 100644 --- a/translations/es-ES/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md +++ b/translations/es-ES/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md @@ -1,16 +1,16 @@ -{% ifversion ghes > 3.1 or ghes < 3.5 %} +{% ifversion ghes < 3.5 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix for 3.5 and later will be available in an upcoming patch release. +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix is available in the [3.5.5](/enterprise-server@3.5/admin/release-notes#3.5.5) and [3.6.1](/enterprise-server@3.6/admin/release-notes#3.6.1) patch releases. -To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-08-16] +To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-09-01] -{% elsif ghes > 3.4 or ghes < 3.7 %} +{% elsif ghes = 3.5 or ghes = 3.6 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ currentVersion }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ allVersions[currentVersion].currentRelease }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). - To display the missing alerts for all repositories owned by an organization, organization owners can navigate to the organization's **Code security and analysis** settings, then click **Enable all** for secret scanning. Para obtener más información, consulta la sección "[Administrar la configuración de análisis y seguridad para tu organización](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-existing-repositories)". - To display the missing alerts for an individual repository, people with admin access to the repository can disable then enable secret scanning for the repository. Para obtener más información, consulta la sección "[Administrar la configuración de seguridad y análisis para tu repositorio](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)". -A fix will be available in an upcoming patch release. [Updated: 2022-08-16] +A fix is available in the {% ifversion ghes = 3.5 %}[3.5.5](/admin/release-notes#3.5.5){% elsif ghes = 3.6 %}[3.6.1](/admin/release-notes#3.6.1){% endif %} patch release. [Updated: 2022-09-01] {% endif %} diff --git a/translations/es-ES/data/reusables/repositories/anyone-can-view-anonymized-url.md b/translations/es-ES/data/reusables/repositories/anyone-can-view-anonymized-url.md index 1609e74415..6f8739557f 100644 --- a/translations/es-ES/data/reusables/repositories/anyone-can-view-anonymized-url.md +++ b/translations/es-ES/data/reusables/repositories/anyone-can-view-anonymized-url.md @@ -1,5 +1,5 @@ {% warning %} -**Warning:** If you attach a file to a pull request, issue comment, or ticket in the {% data variables.contact.support_portal %}, 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 %}. Para mantener privados archivos de medios sensibles, estos se deben servir desde una red o servidor privados que requieran autenticación. {% ifversion fpt or ghec %}Para obtener más información sobre las URL anonimizadas, consulta la sección "[Acerca de las URL anonimizadas](/github/authenticating-to-github/about-anonymized-urls)".{% endif %} +**Advertencia:** Si adjuntas un archivo a una solicitud de cambios, comentario de propuesta o ticket en el {% data variables.contact.support_portal %}, cualquiera podrá ver la URL anonimizada sin autenticación, incluso si la solicitud de cambios se encuentra en un repositorio privado{% ifversion ghes %} o si se habilita el modo privado{% endif %}. Para mantener privados archivos de medios sensibles, estos se deben servir desde una red o servidor privados que requieran autenticación. {% ifversion fpt or ghec %}Para obtener más información sobre las URL anonimizadas, consulta la sección "[Acerca de las URL anonimizadas](/github/authenticating-to-github/about-anonymized-urls)".{% endif %} {% endwarning %} diff --git a/translations/es-ES/data/reusables/secret-scanning/push-protection-web-ui-choice.md b/translations/es-ES/data/reusables/secret-scanning/push-protection-web-ui-choice.md index 4713a971bb..6c63eaf13f 100644 --- a/translations/es-ES/data/reusables/secret-scanning/push-protection-web-ui-choice.md +++ b/translations/es-ES/data/reusables/secret-scanning/push-protection-web-ui-choice.md @@ -2,5 +2,12 @@ Cuando utilizas la IU web para intentar confirmar un secreto compatible en un re Puedes ver un letrero en la parte superior de la página con información sobre la ubicación del secreto y este también se subrayará en el archivo para que lo puedas encontrar con facilidad. +{% ifversion push-protection-custom-link-orgs %} + + ![Captura de pantalla que muestra una confirmación bloqueada en la IU web debido a la protección contra subidas del escaneo de secretos](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner-with-link.png) + +{% else %} + ![Captura de pantalla que muestra una confirmación bloqueada en la IU web debido a la protección contra subidas del escaneo de secretos](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner.png) - \ No newline at end of file + +{% endif %} \ No newline at end of file diff --git a/translations/es-ES/data/reusables/secret-scanning/secret-list-private-push-protection.md b/translations/es-ES/data/reusables/secret-scanning/secret-list-private-push-protection.md index ddb0eac1f8..c143ad8609 100644 --- a/translations/es-ES/data/reusables/secret-scanning/secret-list-private-push-protection.md +++ b/translations/es-ES/data/reusables/secret-scanning/secret-list-private-push-protection.md @@ -21,6 +21,6 @@ ReadMe | Llave de Acceso de la API de ReadMe API | readmeio_api_access_token{% e {%- ifversion fpt or ghec or ghes > 3.5 or ghae-issue-7375 %} redirect.pizza | Token de la API de redirect.pizza | redirect_pizza_api_token{% endif %} Samsara | Token de la API de Samsara | samsara_api_token Samsara | Token de Acceso OAuth a Samsara | samsara_oauth_access_token SendGrid | Llave de la API de SendGrid | sendgrid_api_key Sendinblue | Llave de la API de Sendinblue | sendinblue_api_key Sendinblue | Llave SMTP de Sendinblue | sendinblue_smtp_key Shippo | Token de la API en Vivo de Shippo | shippo_live_api_token Shopify | Secreto Compartido de la Aplicación de Shopify | shopify_app_shared_secret Shopify | Token de Acceso a Shopify | shopify_access_token Slack | Token de la API de Slack | slack_api_token Stripe | Llave Secreta de la API en Vivo de Stripe | stripe_api_key Tencent Cloud | ID Secreta de la Nube de Tencent | tencent_cloud_secret_id Typeform | Token de Acceso Personal a Typeform | typeform_personal_access_token {%- ifversion fpt or ghec or ghes > 3.6 or ghae-issue-7456 %} -Uniwise | WISEflow API Key | wiseflow_api_key{% endif %} WorkOS | WorkOS Production API Key | workos_production_api_key +Uniwise | Llave de la API de WISEflow | wiseflow_api_key{% endif %} WorkOS | Llave de la API de Producción de WorkOS | workos_production_api_key {%- ifversion fpt or ghec or ghes > 3.6 or ghae-issue-7456 %} Zuplo | Llave de la API de Consumidor de Zuplo | zuplo_consumer_api_key{% endif %} diff --git a/translations/es-ES/data/reusables/webhooks/pull_request_review_thread_short_desc.md b/translations/es-ES/data/reusables/webhooks/pull_request_review_thread_short_desc.md index d0496c2448..09e843def9 100644 --- a/translations/es-ES/data/reusables/webhooks/pull_request_review_thread_short_desc.md +++ b/translations/es-ES/data/reusables/webhooks/pull_request_review_thread_short_desc.md @@ -1 +1 @@ -Activity related to a comment thread on a pull request being marked as resolved or unresolved. {% data reusables.webhooks.action_type_desc %} +Actividad relacionada con un hilo de comentarios en una solicitud de cambios que se marcó como resuelta o no resuelta. {% data reusables.webhooks.action_type_desc %} diff --git a/translations/es-ES/data/reusables/webhooks/pull_request_thread_properties.md b/translations/es-ES/data/reusables/webhooks/pull_request_thread_properties.md index c851f14289..f4acfb40fe 100644 --- a/translations/es-ES/data/reusables/webhooks/pull_request_thread_properties.md +++ b/translations/es-ES/data/reusables/webhooks/pull_request_thread_properties.md @@ -1,5 +1,5 @@ | Clave | Tipo | Descripción | | ---------------------- | ----------- | ----------------------------------------------------------------------------------- | -| `Acción` | `secuencia` | La acción que se realizó. Puede ser una de las siguientes:
  • `resolved` - A comment thread on a pull request was marked as resolved.
  • `unresolved` - A previously resolved comment thread on a pull request was marked as unresolved.
| -| `solicitud_extracción` | `objeto` | The [pull request](/rest/reference/pulls) the thread pertains to. | -| `hilo` | `objeto` | The thread that was affected. | +| `Acción` | `secuencia` | La acción que se realizó. Puede ser una de las siguientes:
  • `resolved` - Un hilo de comentarios en una solicitud de cambios se marcó como resuelto.
  • `unresolved` - Un hilo de comentarios previamente resueltos en una solicitud de cambios se marcó como no resuelta.
| +| `solicitud_extracción` | `objeto` | La [solicitud de cmabios](/rest/reference/pulls) a la cual pertenece el hilo. | +| `hilo` | `objeto` | El hilo que se afectó. | diff --git a/translations/es-ES/data/variables/actions.yml b/translations/es-ES/data/variables/actions.yml index 4fa0661763..f8f4dda96f 100644 --- a/translations/es-ES/data/variables/actions.yml +++ b/translations/es-ES/data/variables/actions.yml @@ -1,2 +1,3 @@ --- azure_portal: 'Portal de Azure' +hosted_runner: 'larger runner' diff --git a/translations/es-ES/data/variables/product.yml b/translations/es-ES/data/variables/product.yml index 7b77bbbe9d..6f536b54b1 100644 --- a/translations/es-ES/data/variables/product.yml +++ b/translations/es-ES/data/variables/product.yml @@ -112,6 +112,10 @@ prodname_registry: 'Registro del paquete de GitHub' prodname_container_registry: 'Registro de contenedores' prodname_docker_registry_namespace: '{% ifversion fpt or ghec %}`docker.pkg.github.com`{% elsif ghes or ghae %}docker.HOSTNAME{% endif %}' prodname_container_registry_namespace: '{% ifversion fpt or ghec %}`ghcr.io`{% elsif ghes or ghae %}containers.HOSTNAME{% endif %}' +prodname_npm_registry: 'Registro de npm' +prodname_ghcr_and_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} y {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_or_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} o {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_and_npm_registry_full: '{% data variables.product.prodname_container_registry %} (`ghcr.io`){% ifversion packages-npm-v2 %} y {% data variables.product.prodname_npm_registry %} (`npm.pkg.github.com`){% endif %}' #GitHub Insights prodname_insights: 'GitHub Insights' #GitHub Sponsors diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md index 5a437e284b..0be564ecf1 100644 --- a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md @@ -1,6 +1,6 @@ --- title: Setting up and managing your personal account on GitHub -intro: 'You can manage settings for your personal account on {% data variables.product.prodname_dotcom %}, including email preferences, collaborator access for personal repositories, and organization memberships.' +intro: 'You can manage settings for your personal account on {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}, including email preferences, access to personal repositories, and organization memberships. You can also manage the account itself.' shortTitle: Personal accounts redirect_from: - /categories/setting-up-and-managing-your-github-user-account @@ -15,6 +15,7 @@ topics: - Accounts children: - /managing-personal-account-settings + - /managing-your-personal-account - /managing-email-preferences - /managing-access-to-your-personal-repositories - /managing-your-membership-in-organizations diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md index a2d3ec2c4e..d178f3f0f7 100644 --- a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md @@ -1,6 +1,6 @@ --- title: ユーザ アカウント設定の管理 -intro: ユーザ名を変更する、アカウントを削除するなど、個人アカウントの設定を変更できます。 +intro: 'You can manage settings for your personal account, including your theme, username, default branch, accessibility, and security settings.' redirect_from: - /categories/29/articles - /categories/user-accounts @@ -19,17 +19,14 @@ children: - /managing-your-theme-settings - /managing-your-tab-size-rendering-preference - /changing-your-github-username - - /merging-multiple-personal-accounts - - /converting-a-user-into-an-organization - - /deleting-your-personal-account - /permission-levels-for-a-personal-account-repository - /permission-levels-for-a-project-board-owned-by-a-personal-account - /managing-accessibility-settings - /managing-the-default-branch-name-for-your-repositories - /managing-security-and-analysis-settings-for-your-personal-account - /managing-access-to-your-personal-accounts-project-boards + - /managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages - /integrating-jira-with-your-personal-projects - - /best-practices-for-leaving-your-company - /what-does-the-available-for-hire-checkbox-do shortTitle: Personal account settings --- diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md new file mode 100644 index 0000000000..fe7d98bd6d --- /dev/null +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md @@ -0,0 +1,33 @@ +--- +title: Managing your cookie preferences for GitHub's enterprise marketing pages +intro: 'You can control how {% data variables.product.company_short %} uses information from non-essential tracking cookies for enterprise marketing pages.' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +shortTitle: Manage cookie preferences +--- + +## About cookie preferences on enterprise marketing pages + +{% data variables.product.company_short %} may use non-essential cookies on some enterprise marketing pages. You can customize how these cookies behave. For more information about how {% data variables.product.company_short %} uses cookies, see "[{% data variables.product.company_short %} Privacy Statement](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement)." + +## Changing your cookie preferences + +You can customize how non-essential cookies behave on any {% data variables.product.company_short %} enterprise marketing page. + +1. Navigate to the {% data variables.product.company_short %} enterprise marketing page where you'd like to change your cookie preferences. For example, navigate to [{% data variables.product.company_short %} Resources](https://resources.github.com/). +1. Scroll to the bottom of the page, then click **Manage Cookies**. + + ![Screenshot of button to manage cookie settings.](/assets/images/help/settings/cookie-settings-manage.png) + +1. Under "Manage cookie preferences," to accept or reject each non-essential cookie, click **Accept** or **Reject**. + + ![Screenshot of radio buttons to choose "Accept" or "Reject" for non-essential cookies.](/assets/images/help/settings/cookie-settings-accept-or-reject.png) + +1. [**Save changes**] をクリックします。 + + ![Screenshot of button to save changes.](/assets/images/help/settings/cookie-settings-save.png) diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md similarity index 95% rename from translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md rename to translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md index 0f84794666..155379d05f 100644 --- a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/best-practices-for-leaving-your-company - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company versions: fpt: '*' ghec: '*' diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md similarity index 95% rename from translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md rename to translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md index 5097e8193a..911efee527 100644 --- a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization intro: You can convert your personal account into an organization. これにより、Organization に属するリポジトリに対して、より細かく権限を設定できます。 versions: fpt: '*' @@ -66,5 +67,5 @@ You can also convert your personal account directly into an organization. アカ ## 参考リンク - [Team の設定](/articles/setting-up-teams) -{% ifversion fpt or ghec %}-"[Organization に参加するようユーザを招待する](/articles/inviting-users-to-join-your-organization){% endif %} +{% ifversion fpt or ghec %}- 「[ユーザを Organization に招待する](/articles/inviting-users-to-join-your-organization)」{% endif %} - [Organization にアクセスする](/articles/accessing-an-organization) diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md similarity index 59% rename from translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md rename to translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md index cc6d495b49..0830d12f26 100644 --- a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md @@ -1,39 +1,53 @@ --- title: Deleting your personal account -intro: 'You can delete your personal account on {% data variables.product.product_name %} at any time.' +intro: 'You can delete your personal account on {% data variables.product.product_location %} at any time.' redirect_from: - /articles/deleting-a-user-account - /articles/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account versions: fpt: '*' ghes: '*' ghec: '*' topics: - Accounts -shortTitle: Delete your personal account +shortTitle: Delete your account --- -Deleting your personal account removes all repositories, forks of private repositories, wikis, issues, pull requests, and pages owned by your account. {% ifversion fpt or ghec %} 他のユーザが所有するリポジトリでこれまで作成した Issue とプルリクエスト、また行ったコメントが削除されることはなく、代わりに [ゴーストユーザ](https://github.com/ghost)に関連付けられます。{% else %}他のユーザが所有するリポジトリでこれまで作成した Issue とプルリクエスト、また行ったコメントが削除されることはありません。{% endif %} +## About deletion of your personal account -{% ifversion fpt or ghec %} When you delete your account 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 %}. After 90 days, the account name also becomes available to anyone else to use on a new account. {% endif %} +Deleting your personal 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. Your resources and comments will become associated with the [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 %} -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 personal account. If there are other owners in the organization, you must remove yourself from the organization before you can delete your personal account. +{% ifversion ghec %} + +{% note %} + +**Note**: If your enterprise manages your account and you sign into {% data variables.product.product_location %} through your company's identity provider (IdP), you cannot delete your account. 詳しい情報については「[{% data variables.product.prodname_emus %}について](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users)」を参照してください。 + +{% endnote %} + +{% endif %} + +{% ifversion fpt or ghec %}When you delete your account 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 %}. After 90 days, the account name also becomes available to anyone else to use on a new account. {% 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 personal account. If there are other owners in the organization, you must remove yourself from the organization before you can delete your personal account. + +詳しい情報については、次の記事を参照してください。 -詳しい情報については、以下を参照してください。 - "[Organization の所有権の移譲](/articles/transferring-organization-ownership)" - "[Organization アカウントの削除](/articles/deleting-an-organization-account)" - "[Organization から自分を削除する](/articles/removing-yourself-from-an-organization/)" ## アカウントデータのバックアップ -Before you delete your personal account, make a copy of all repositories, private forks, wikis, issues, and pull requests owned by your account. +Before you delete your personal account, make a copy of all repositories, private forks, wikis, issues, and pull requests owned by your account. For more information, see "[Backing up a repository](/repositories/archiving-a-github-repository/backing-up-a-repository)." {% warning %} -**Warning:** Once your personal account has been deleted, GitHub cannot restore your content. +**Warning:** Once your personal account has been deleted, {% ifversion fpt or ghec %}{% data variables.product.company_short %}{% elsif ghes or ghae %}an enterprise owner{% endif %} cannot restore your content. {% endwarning %} diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md new file mode 100644 index 0000000000..ab1c7a9394 --- /dev/null +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md @@ -0,0 +1,19 @@ +--- +title: Managing your personal account +intro: 'You can manage your personal account on {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}. For example, you can {% ifversion fpt or ghec %}manage multiple accounts, {% endif %}convert an account to an organization{% ifversion fpt or ghec or ghes %}, or delete an account{% endif %}.' +shortTitle: Manage personal account +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +children: + - /managing-multiple-accounts + - /merging-multiple-personal-accounts + - /converting-a-user-into-an-organization + - /best-practices-for-leaving-your-company + - /deleting-your-personal-account +--- + diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md new file mode 100644 index 0000000000..d8af914a05 --- /dev/null +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md @@ -0,0 +1,105 @@ +--- +title: Managing multiple accounts +intro: 'If you use one workstation to contribute to projects for more than one account on {% data variables.product.product_location %}, you can modify your Git configuration to simplify the contribution process.' +versions: + feature: multiple-accounts-one-workstation +topics: + - Accounts + - Git + - GitHub +shortTitle: Manage multiple accounts +--- + +## About management of multiple accounts + +In some cases, you may need to use multiple accounts on {% data variables.product.product_location %}. For example, you may have a personal account for open source contributions, and your employer may also create and manage a user account for you within an enterprise. + +You cannot use your {% data variables.product.prodname_managed_user %} to contribute to public projects on {% data variables.product.product_location %}, so you must contribute to those resources using your personal account. For more information, see "[About {% data variables.product.prodname_emus %}]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% elsif ghec %}."{% endif %} + +If you want to use one workstation to contribute from both accounts, you can simplify contribution with Git by using a mixture of protocols to access repository data, or by using credentials on a per-repository basis. + +{% warning %} + +**Warning**: Be mindful when you use one workstation to contribute to two separate accounts. Management of two or more accounts can increase the chance of mistakenly leaking internal code to the public. + +{% endwarning %} + +If you aren't required to use a {% data variables.product.prodname_managed_user %}, {% data variables.product.company_short %} recommends that you use one personal account for all your work on {% data variables.product.product_location %}. With a single personal account, you can contribute to a combination of personal, open source, or professional projects using one identity. Other people can invite the account to contribute to both individual repositories and repositories owned by an organization, and the account can be a member of multiple organizations or enterprises. + +## Contributing to two accounts using HTTPS and SSH + +If you contribute with two accounts from one workstation, you can access repositories by using a different protocol and credentials for each account. + +Git can use either the HTTPS or SSH protocol to access and update data in repositories on {% data variables.product.product_location %}. The protocol you use to clone a repository determines which credentials your workstation will use to authenticate when you access the repository. With this approach to account management, you store the credentials for one account to use for HTTPS connections and upload an SSH key to the other account to use for SSH connections. + +You can find both the HTTPS or an SSH URLs for cloning a repository on {% data variables.product.product_name %}. 詳しい情報については[リポジトリのクローン](/repositories/creating-and-managing-repositories/cloning-a-repository)を参照してください。 + +For more information about the use of SSH to access repositories on {% data variables.product.product_name %}, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/authentication/connecting-to-github-with-ssh)." + +## Contributing to multiple accounts using HTTPS and PATs + +Alternatively, if you want to use the HTTPS protocol for both accounts, you can use different personal access tokens (PAT) for each account by configuring Git to store different credentials for each repository. + +{% mac %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + - If the output is `osxkeychain`, you're using the macOS keychain. To clear the credentials, enter the following command. + + ```shell{:copy} + git credential-osxkeychain erase https://github.com + ``` + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endmac %} + +{% windows %} + +1. Git Bash を開きます。 +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} + - If the output is `wincred`, you're using the Windows Credential Manager. To clear the credentials, enter the following command. + + ```shell{:copy} + cmdkey /delete:LegacyGeneric:target=git:https://github.com + ``` +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endwindows %} + +{% linux %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endlinux %} + +## Contributing to multiple accounts using SSH and `GIT_SSH_COMMAND` + +If you want to use the SSH protocol for both accounts, you can use different SSH keys for each account. For more information about using SSH, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/authentication/connecting-to-github-with-ssh)." + +To use a different SSH key for different repositories that you clone to your workstation, you must write a shell wrapper function for Git operations. The function should perform the following steps. +1. Determine the repository's full name with owner, using a command such as `git config --get remote.origin.url`. +2. Choose the correct SSH key for authentication. +3. Modify `GIT_SSH_COMMAND` accordingly. For more information about `GIT_SSH_COMMAND`, see [Environment Variables](https://git-scm.com/docs/git#Documentation/git.txt-codeGITSSHCOMMANDcode) in the Git documentation. + +For example, the following command sets the `GIT_SSH_COMMAND` environment variable to specify an SSH command that uses the private key file at **_PATH/TO/KEY/FILE_** for authentication to clone the repository named **_OWNER_**/**_REPOSITORY_** on {% data variables.product.product_location %}. + +
+GIT_SSH_COMMAND='ssh -i PATH/TO/KEY/FILE -o IdentitiesOnly=yes' git clone git@github.com:OWNER/REPOSITORY
+
diff --git a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md similarity index 94% rename from translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md rename to translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md index 2a406483de..e77a634540 100644 --- a/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md +++ b/translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md @@ -8,12 +8,13 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/merging-multiple-user-accounts - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts versions: fpt: '*' ghec: '*' topics: - Accounts -shortTitle: Merge multiple personal accounts +shortTitle: Merge multiple accounts --- {% tip %} diff --git a/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md b/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md index 7e41005e42..965e09780e 100644 --- a/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md +++ b/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md @@ -73,6 +73,7 @@ The following example OIDC token uses a subject (`sub`) that references a job en "repository": "octo-org/octo-repo", "repository_owner": "octo-org", "actor_id": "12", + "repo_visibility": private, "repository_id": "74", "repository_owner_id": "65", "run_id": "example-run-id", @@ -130,6 +131,7 @@ The token also includes custom claims provided by {% data variables.product.prod | `job_workflow_ref` | This is the ref path to the reusable workflow used by this job. For more information, see "["Using OpenID Connect with reusable workflows"](/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows)." | | `ref` | _(Reference)_ The git ref that triggered the workflow run. | | `ref_type` | The type of `ref`, for example: "branch". | +| `repo_visibility` | The visibility of the repository where the workflow is running. Accepts the following values: `internal`, `private`, or `public`. | | `リポジトリ` | The repository from where the workflow is running. | | `repository_id` | The ID of the repository from where the workflow is running. | | `repository_owner` | The name of the organization in which the `repository` is stored. | @@ -145,11 +147,11 @@ With OIDC, a {% data variables.product.prodname_actions %} workflow requires a t Audience and Subject claims are typically used in combination while setting conditions on the cloud role/resources to scope its access to the GitHub workflows. - **Audience**: By default, this value uses the URL of the organization or repository owner. This can be used to set a condition that only the workflows in the specific organization can access the cloud role. -- **Subject**: Has a predefined format and is a concatenation of some of the key metadata about the workflow, such as the {% data variables.product.prodname_dotcom %} organization, repository, branch, or associated [`job`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) environment. See "[Example subject claims](#example-subject-claims)" to see how the subject claim is assembled from concatenated metadata. +- **Subject**: By default, has a predefined format and is a concatenation of some of the key metadata about the workflow, such as the {% data variables.product.prodname_dotcom %} organization, repository, branch, or associated [`job`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) environment. See "[Example subject claims](#example-subject-claims)" to see how the subject claim is assembled from concatenated metadata. -There are also many additional claims supported in the OIDC token that can also be used for setting these conditions. +If you need more granular trust conditions, you can customize the issuer (`iss`) and subject (`sub`) claims that are included with the JWT. For more information, see "[Customizing the token claims](#customizing-the-token-claims)". -In addition, your cloud provider could allow you to assign a role to the access tokens, letting you specify even more granular permissions. +There are also many additional claims supported in the OIDC token that can be used for setting these conditions. In addition, your cloud provider could allow you to assign a role to the access tokens, letting you specify even more granular permissions. {% note %} @@ -240,6 +242,197 @@ curl -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" "$ACTIONS_ID_TOK {% data reusables.actions.oidc-permissions-token %} +{% ifversion actions-oidc-hardening-config %} +## Customizing the token claims + +You can security harden your OIDC configuration by customizing the claims that are included with the JWT. These customisations allow you to define more granular trust conditions on your cloud roles when allowing your workflows to access resources hosted in the cloud: + +{% ifversion ghec %} - For an additional layer of security, you can append the `issuer` url with your enterprise slug. This lets you set conditions on the issuer (`iss`) claim, configuring it to only accept JWT tokens from a unique `issuer` URL that must include your enterprise slug.{% endif %} +- You can standardize your OIDC configuration by setting conditions on the subject (`sub`) claim that require JWT tokens to originate from a specific repository, reusable workflow, or other source. +- You can define granular OIDC policies by using additional OIDC token claims, such as `repository_id` and `repo_visibility`. For more information, see "[Understanding the OIDC token](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#understanding-the-oidc-token)". + +To customize these claim formats, organization and repository admins can use the REST API endpoints described in the following sections. + +{% ifversion ghec %} + +### Switching to a unique token URL + +By default, the JWT is issued by {% data variables.product.prodname_dotcom %}'s OIDC provider at `https://token.actions.githubusercontent.com`. This path is presented to your cloud provider using the `iss` value in the JWT. + +Enterprise admins can security harden their OIDC configuration by configuring their enterprise to receive tokens from a unique URL at `https://api.github.com/enterprises//actions/oidc/customization/issuer`. Replace `` with the slug value of your enterprise. + +This configuration means that your enterprise will receive the OIDC token from a unique URL, and you can then configure your cloud provider to only accept tokens from that URL. This helps ensure that only the enterprise's repositories can access your cloud resources using OIDC. + +To activate this setting for your enterprise, an enterprise admin must use the `/enterprises/{enterprise}/actions/oidc/customization/issuer` endpoint and specify `"include_enterprise_slug": true` in the request body. For more information, see "[Set the {% data variables.product.prodname_actions %} OIDC custom issuer policy for an enterprise](/rest/actions/oidc#set-the-github-actions-oidc-custom-issuer-policy-for-an-enterprise)." + +After this setting is applied, the JWT will contain the updated `iss` value. In the following example, the `iss` key uses `octocat-inc` as its `enterpriseSlug` value: + +```json +{ + "jti": "6f4762ed-0758-4ccb-808d-ee3af5d723a8" + "sub": "repo:octocat-inc/private-server:ref:refs/heads/main" + "aud": "http://octocat-inc.example/octocat-inc" + "enterprise": "octocat-inc" + "iss": "https://api.github.com/enterprises/octocat-inc/actions/oidc/customization/issuer", + "bf": 1755350653, + "exp": 1755351553, + "iat": 1755351253 +} +``` + +{% endif %} + +### Customizing the subject claims for an organization + +To configure organization-wide security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)." + +Customizing the claims results in a new format for the entire `sub` claim, which replaces the default predefined `sub` format in the token described in "[Example subject claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims)." + +The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, organization admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim. {% data reusables.actions.use-request-body-api %} + +To customize your subject claims, you should first create a matching condition in your cloud provider's OIDC configuration, before customizing the configuration using the REST API. Once the configuration is completed, each time a new job runs, the OIDC token generated during that job will follow the new customization template. If the matching condition doesn't exist in the cloud provider's OIDC configuration before the job runs, the generated token might not be accepted by the cloud provider, since the cloud conditions may not be synchronized. + +{% note %} + +**Note**: When the organization template is applied, it will not affect any existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration. For more information, see "[Set the opt-in flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)." + +{% endnote %} + +#### Example: Allowing repository based on visibility and owner + +This example template allows the `sub` claim to have a new format, using `repository_owner` and `repository_visibility`: + +```json +{ + "include_claim_keys": [ + "repository_owner", + "repository_visibility" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repository_owner` and `repository_visibility`. For example: `"repository_owner: "monalisa":repository_visibility:private"`. The approach lets you restrict cloud role access to only private repositories within an organization or enterprise. + +#### Example: Allowing access to all repositories with a specific owner + +This example template enables the `sub` claim to have a new format with only the value of `repository_owner`. {% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repository_owner" + ] +} + +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include a specific value for `repository_owner`. For example: `"repository_owner: "monalisa""` + +#### Example: Requiring a reusable workflow + +This example template allows the `sub` claim to have a new format that contains the value of the `job_workflow_ref` claim. This enables an enterprise to use [reusable workflows](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims) to enforce consistent deployments across its organizations and repositories. + +{% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "job_workflow_ref" + ] + } +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include a specific value for `job_workflow_ref`. For example: `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. + +#### Example: Requiring a reusable workflow and other claims + +The following example template combines the requirement of a specific reusable workflow with additional claims. {% data reusables.actions.use-request-body-api %} + +This example also demonstrates how to use `"context"` to define your conditions. This is the part that follows the repository in the [default `sub` format](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims). For example, when the job references an environment, the context contains: `environment:`. + +```json +{ + "include_claim_keys": [ + "repo", + "context", + "job_workflow_ref" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repo`, `context`, and `job_workflow_ref`. + +This customization template requires that the `sub` uses the following format: `repo::environment::job_workflow_ref:`. For example: `"sub": "repo:octo-org/octo-repo:environment:prod:job_workflow_ref:octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main"` + +#### Example: Granting access to a specific repository + +This example template lets you grant cloud access to all the workflows in a specific repository, across all branches/tags and environments. To help improve security, combine this template with the custom issuer URL described in "[Customizing the token URL for an enterprise](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-url-for-an-enterprise)." + +{% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repo" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repo` claim that matches the required value. + +#### Example: Using system-generated GUIDs + +This example template enables predictable OIDC claims with system-generated GUIDs that do not change between renames of entities (such as renaming a repository). {% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "repository_id" + ] + } +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repository_id` claim that matches the required value. + +oR: + +```json +{ + "include_claim_keys": [ + "repository_owner_id" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repository_owner_id` claim that matches the required value. + +#### Resetting your customizations + +This example template resets the subject claims to the default format. {% data reusables.actions.use-request-body-api %} This template effectively opts out of any organization-level customization policy. + +```json +{ + "include_claim_keys": [ + "repo", + "context" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repo` and `context`. + +#### Using the default subject claims + +For repositories that can receive a subject claim policy from their organization, the repository owner can later choose to opt-out and instead use the default `sub` claim format. To configure this, the repository admin must use the REST API endpoint at "[Set the opt-out flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-out-flag-of-an-oidc-subject-claim-customization-for-a-repository)" with the following request body: + +```json +{ + "use_default": true +} +``` + +{% endif %} + ## Updating your workflows for OIDC You can now update your YAML workflows to use OIDC access tokens instead of secrets. Popular cloud providers have published their official login actions that make it easy for you to get started with OIDC. For more information about updating your workflows, see the cloud-specific guides listed below in "[Enabling OpenID Connect for your cloud provider](#enabling-openid-connect-for-your-cloud-provider)." diff --git a/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md b/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md index 0aa06921aa..f8fd239334 100644 --- a/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md +++ b/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md @@ -32,10 +32,52 @@ This guide gives an overview of how to configure HashiCorp Vault to trust {% dat To use OIDC with HashiCorp Vault, you will need to add a trust configuration for the {% data variables.product.prodname_dotcom %} OIDC provider. For more information, see the HashiCorp Vault [documentation](https://www.vaultproject.io/docs/auth/jwt). -Configure the vault to accept JSON Web Tokens (JWT) for authentication: -- For the `oidc_discovery_url`, use {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- For `bound_issuer`, use {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- Ensure that `bound_subject` is correctly defined for your security requirements. For more information, see ["Configuring the OIDC trust with the cloud"](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#configuring-the-oidc-trust-with-the-cloud) and [`hashicorp/vault-action`](https://github.com/hashicorp/vault-action). +To configure your Vault server to accept JSON Web Tokens (JWT) for authentication: + +1. Enable the JWT `auth` method, and use `write` to apply the configuration to your Vault. For `oidc_discovery_url` and `bound_issuer` parameters, use {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %}. These parameters allow the Vault server to verify the received JSON Web Tokens (JWT) during the authentication process. + + ```sh{:copy} + vault auth enable jwt + ``` + + ```sh{:copy} + vault write auth/jwt/config \ + bound_issuer="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" \ + oidc_discovery_url="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" + ``` +2. Configure a policy that only grants access to the specific paths your workflows will use to retrieve secrets. For more advanced policies, see the HashiCorp Vault [Policies documentation](https://www.vaultproject.io/docs/concepts/policies). + + ```sh{:copy} + vault policy write myproject-production - <`: Replace this with the URL of your HashiCorp Vault. +- ``: Replace this with the Namespace you've set in HashiCorp Vault. For example: `admin`. - ``: Replace this with the role you've set in the HashiCorp Vault trust relationship. -- ``: Replace this with the audience you've defined in the HashiCorp Vault trust relationship. -- ``: Replace this with the path to the secret you're retrieving from HashiCorp Vault. For example: `secret/data/ci npmToken`. +- ``: Replace this with the path to the secret you're retrieving from HashiCorp Vault. For example: `secret/data/production/ci npmToken`. ```yaml{:copy} jobs: - retrieve-secret: - steps: - - name: Retrieve secret from Vault - uses: hashicorp/vault-action@v2.4.0 - with: - url: - role: - method: jwt - jwtGithubAudience: - secrets: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + method: jwt + url: + namespace: + role: + secrets: - - name: Use secret from Vault - run: | - # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. +``` + +{% note %} + +**ノート**: + +- If your Vault server is not accessible from the public network, consider using a self-hosted runner with other available Vault [auth methods](https://www.vaultproject.io/docs/auth). 詳しい情報については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners)」を参照してください。 +- `` must be set for a Vault Enterprise (including HCP Vault) deployment. For more information, see [Vault namespace](https://www.vaultproject.io/docs/enterprise/namespaces). + +{% endnote %} + +### Revoking the access token + +By default, the Vault server will automatically revoke access tokens when their TTL is expired, so you don't have to manually revoke the access tokens. However, if you do want to revoke access tokens immediately after your job has completed or failed, you can manually revoke the issued token using the [Vault API](https://www.vaultproject.io/api/auth/token#revoke-a-token-self). + +1. Set the `exportToken` option to `true` (default: `false`). This exports the issued Vault access token as an environment variable: `VAULT_TOKEN`. +2. Add a step to call the [Revoke a Token (Self)](https://www.vaultproject.io/api/auth/token#revoke-a-token-self) Vault API to revoke the access token. + +```yaml{:copy} +jobs: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + exportToken: true + method: jwt + url: + role: + secrets: + + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + + - name: Revoke token + # This step always runs at the end regardless of the previous steps result + if: always() + run: | + curl -X POST -sv -H "X-Vault-Token: {% raw %}${{ env.VAULT_TOKEN }}{% endraw %}" \ + /v1/auth/token/revoke-self ``` diff --git a/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md b/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md index b481d6a0a5..e783735846 100644 --- a/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md +++ b/translations/ja-JP/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md @@ -23,11 +23,18 @@ topics: Rather than copying and pasting deployment jobs from one workflow to another, you can create a reusable workflow that performs the deployment steps. A reusable workflow can be used by another workflow if it meets one of the access requirements described in "[Reusing workflows](/actions/learn-github-actions/reusing-workflows#access-to-reusable-workflows)." -When combined with OpenID Connect (OIDC), reusable workflows let you enforce consistent deployments across your repository, organization, or enterprise. You can do this by defining trust conditions on cloud roles based on reusable workflows. +You should be familiar with the concepts described in "\[Reusing workflows\](/actions/learn-github-actions/reusing-workflows" and "[About security hardening with OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)." -In order to create trust conditions based on reusable workflows, your cloud provider must support custom claims for `job_workflow_ref`. This allows your cloud provider to identify which repository the job originally came from. If your cloud provider only supports the standard claims (_audience_ and _subject_), it will not be able to determine that the job originated from the reusable workflow repository. Cloud providers that support `job_workflow_ref` include Google Cloud Platform and HashiCorp Vault. +## Defining the trust conditions -Before proceeding, you should be familiar with the concepts of [reusable workflows](/actions/learn-github-actions/reusing-workflows) and [OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect). +When combined with OpenID Connect (OIDC), reusable workflows let you enforce consistent deployments across your repository, organization, or enterprise. You can do this by defining trust conditions on cloud roles based on reusable workflows. The available options will vary depending on your cloud provider: + +- **Using `job_workflow_ref`**: + - To create trust conditions based on reusable workflows, your cloud provider must support custom claims for `job_workflow_ref`. This allows your cloud provider to identify which repository the job originally came from. + - For clouds that only support the standard claims (audience (`aud`) and subject (`sub`)), you can use the API to customize the `sub` claim to include `job_workflow_ref`. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". Support for custom claims is currently available for Google Cloud Platform and HashiCorp Vault. + +- **Customizing the token claims**: + - You can configure more granular trust conditions by customizing the issuer (`iss`) and subject (`sub`) claims included with the JWT. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". ## How the token works with reusable workflows diff --git a/translations/ja-JP/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md b/translations/ja-JP/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md index e12049abca..7c7e5c863a 100644 --- a/translations/ja-JP/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md +++ b/translations/ja-JP/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md @@ -72,7 +72,7 @@ You can set up automation to scale the number of self-hosted runners. For more i {% data reusables.organizations.navigate-to-org %} {% data reusables.organizations.org_settings %} {% data reusables.organizations.settings-sidebar-actions-runners %} -1. [**New runner**]をクリックしてください。 +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {% elsif ghae or ghes < 3.4 %} {% data reusables.organizations.navigate-to-org %} diff --git a/translations/ja-JP/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md b/translations/ja-JP/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md index 2a31a921b5..d3cdb214af 100644 --- a/translations/ja-JP/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md +++ b/translations/ja-JP/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md @@ -18,15 +18,23 @@ shortTitle: Run runner app on startup {% capture service_first_step %}1. セルフホストランナー アプリケーションが現在実行中の場合は、そのアプリケーションを停止します。{% endcapture %} {% capture service_non_windows_intro_shell %}ランナー マシンで、セルフホストランナー アプリケーションをインストールしたディレクトリでシェルを開きます。 以下のコマンドを使って、セルフホストランナーサービスをインストール及び管理します。{% endcapture %} -{% capture service_nonwindows_intro %}セルフホストランナーアプリケーションをサービスとして設定する前に、ランナーを{% data variables.product.product_name %}に追加しなければなりません。 詳しい情報については「[セルフホストランナーの追加](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)」を参照してください。{% endcapture %} -{% capture service_win_name %}actions.runner.*{% endcapture %} +{% capture service_nonwindows_intro %} + +{% note %} + +**Note:** You must add a runner to {% data variables.product.product_name %} before you can configure the self-hosted runner application as a service. 詳しい情報については「[セルフホストランナーの追加](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)」を参照してください。 + +{% endnote %} +{% endcapture %} + +{% capture service_win_name %}actions.runner.*{% endcapture %} {% linux %} {{ service_nonwindows_intro }} -`systemd`を利用するLinuxのシステムでは、セルフホストランナーアプリケーションと共に配布されている`svc.sh`スクリプトを使い、セルフホストランナーアプリケーションをサービスとしてインストール及び管理できます。 +For Linux systems that use `systemd`, you can use the `svc.sh` script that is created after successfully adding the runner to install and manage using the application as a service. {{ service_non_windows_intro_shell }} diff --git a/translations/ja-JP/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md b/translations/ja-JP/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md index a685829c5f..da56f8ee53 100644 --- a/translations/ja-JP/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md +++ b/translations/ja-JP/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md @@ -9,215 +9,65 @@ versions: ghae: '*' ghec: '*' type: tutorial -shortTitle: Manage access to runners +shortTitle: Using runner groups --- {% data reusables.actions.enterprise-beta %} {% data reusables.actions.enterprise-github-hosted-runners %} -## セルフホストランナーのグループについて +## About runner groups -{% ifversion fpt %} -{% note %} - -**注釈:** すべての Organization には、単一のデフォルトのセルフホストランナーグループがあります。 Only enterprise accounts and organizations owned by enterprise accounts can create and manage additional self-hosted runner groups. - -{% endnote %} - -Self-hosted runner groups are used to control access to self-hosted runners. Organization の管理者は、Organization 内のどのリポジトリがランナーグループにアクセスできるかを制御するアクセスポリシーを設定できます。 -ー - -{% data variables.product.prodname_ghe_cloud %}, you can create additional runner groups; enterprise admins can configure access policies that control which organizations in an enterprise have access to the runner group; and organization admins can assign additional granular repository access policies to the enterprise runner group. 詳しい情報については[{% data variables.product.prodname_ghe_cloud %}のドキュメンテーション](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups)を参照してください。 -{% endif %} +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups).{% endif %} {% ifversion ghec or ghes or ghae %} -セルフホストランナーグループは、Organization レベルおよび Enterprise レベルでセルフホストランナーへのアクセスを制御するために使用されます。 Enterprise owners can configure access policies that control which organizations -{% ifversion restrict-groups-to-workflows %}and workflows {% endif %}in an enterprise have access to the runner group. Organization owners can configure access policies that control which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} in an organization have access to the runner group. - -When an enterprise owner grants an organization access to a runner group, organization owners can see the runner group listed in the organization's self-hosted runner settings. The organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} and workflow{% endif %} access policies to the enterprise runner group. - -新しいランナーが作成されると、それらは自動的にデフォルトグループに割り当てられます。 ランナーは一度に1つのグループにのみ参加できます。 ランナーはデフォルトグループから別のグループに移動できます。 詳しい情報については、「[セルフホストランナーをグループに移動する](#moving-a-self-hosted-runner-to-a-group)」を参照してください。 ## Organization のセルフホストランナーグループを作成する -すべての Organization には、単一のデフォルトのセルフホストランナーグループがあります。 Enterprise アカウント内の Organization は、追加のセルフホストグループを作成できます。 Organization の管理者は、個々のリポジトリにランナーグループへのアクセスを許可できます。 For information about how to create a self-hosted runner group with the REST API, see "[Self-hosted runner groups](/rest/reference/actions#self-hosted-runner-groups)." +{%- ifversion ghec or ghes %} -セルフホストランナーは、作成時にデフォルトグループに自動的に割り当てられ、一度に 1 つのグループのメンバーになることができます。 ランナーはデフォルトグループから作成した任意のグループに移動できます。 +{% data reusables.actions.self-hosted-runner-security-admonition %} -When creating a group, you must choose a policy that defines which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} have access to the runner group. +{%- endif %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. In the "Runner groups" section, click **New runner group**. -1. Enter a name for your runner group. - {% data reusables.actions.runner-group-assign-policy-repo %} - - {% warning %} - - **Warning**: {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 詳しい情報については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)」を参照してください。 - - {% endwarning %} -{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group.{% endif %} -{% data reusables.actions.self-hosted-runner-create-group %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. Under {% ifversion ghes or ghae %}"Runners"{% endif %}, click **Add new**, and then **New group**. - - ![新しいランナーを追加](/assets/images/help/settings/actions-org-add-runner-group.png) -1. ランナーグループの名前を入力し、リポジトリアクセスのポリシーを割り当てます。 - - ランナーグループを、特定のリポジトリのリスト、もしくはEnterprise内のすべてのリポジトリからアクセスできるように設定できます。{% ifversion ghec or ghes %}デフォルトでは、プライベートリポジトリのみがランナーグループ内のランナーにアクセスできますが、これは上書きできます。 この設定は、Enterpriseによって共有されているOrganizationのランナーグループを設定している場合には上書きできません。{% endif %} - - {%- ifversion ghes %} - {% warning %} - - **Warning**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 詳しい情報については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)」を参照してください。 - - {% endwarning %} - {%- endif %} - - ![ランナーグループのオプションを追加](/assets/images/help/settings/actions-org-add-runner-group-options.png) -1. [**Save group**] をクリックしてグループを作成し、ポリシーを適用します。 -{% endif %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} ## Enterprise のセルフホストランナーグループを作成する -Enterprise は、セルフホストランナーをグループに追加して、アクセス管理を行うことができます。 Enterprises can create groups of self-hosted runners that are accessible to specific organizations in the enterprise account{% ifversion restrict-groups-to-workflows %} or to specific workflows{% endif %}. Organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} or workflow{% endif %} access policies to the enterprise runner groups. For information about how to create a self-hosted runner group with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runner-groups). + {%- ifversion ghec or ghes %} -セルフホストランナーは、作成時にデフォルトグループに自動的に割り当てられ、一度に 1 つのグループのメンバーになることができます。 登録処理中にランナーを特定のグループに割り当てることも、後でランナーをデフォルトグループからカスタムグループに移動することもできます。 +{% data reusables.actions.self-hosted-runner-security-admonition %} -グループを作成するときは、ランナーグループにアクセスできる Organization を定義するポリシーを選択する必要があります。 +{%- endif %} -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} -1. To choose a policy for organization access, select the **Organization access** drop-down, and click a policy. You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise.{% ifversion ghes %} By default, only private repositories can access runners in a runner group, but you can override this.{% endif %} - - {%- ifversion ghec or ghes %} - {% warning %} - - **Warning**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 詳しい情報については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)」を参照してください。 - - {% endwarning %} - {%- endif %} - {%- ifversion ghec or ghes %} - - ![ランナーグループのオプションを追加](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) - {%- elsif ghae %} - - ![ランナーグループのオプションを追加](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) - {%- endif %} -{% data reusables.actions.runner-group-assign-policy-workflow %} -1. [**Save group**] をクリックしてグループを作成し、ポリシーを適用します。 +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} {% endif %} ## セルフホストランナーグループのアクセスポリシーを変更する -For runner groups in an enterprise, you can change what organizations in the enterprise can access a runner group{% ifversion restrict-groups-to-workflows %} or restrict what workflows a runner group can run{% endif %}. For runner groups in an organization, you can change what repositories in the organization can access a runner group{% ifversion restrict-groups-to-workflows %} or restrict what workflows a runner group can run{% endif %}. +{%- ifversion fpt or ghec or ghes %} -### Changing what organizations or repositories can access a runner group +{% data reusables.actions.self-hosted-runner-security-admonition %} -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. For runner groups in an enterprise, under **Organization access**, modify what organizations can access the runner group. For runner groups in an organization, under **Repository access**, modify what repositories can access the runner group. +{%- endif %} - {%- ifversion fpt or ghec or ghes %} - {% warning %} - - **Warning**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 詳しい情報については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)」を参照してください。 - - {% endwarning %} - {%- endif %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group-access %} -{% endif %} - -{% ifversion restrict-groups-to-workflows %} -### Changing what workflows can access a runner group -You can configure a self-hosted runner group to run either selected workflows or all workflows. For example, you might use this setting to protect secrets that are stored on self-hosted runners or to standardize deployment workflows by restricting a runner group to run only a specific reusable workflow. This setting cannot be overridden if you are configuring an organization's runner group that was shared by an enterprise. -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Under **Workflow access**, select the dropdown menu and click **Selected workflows**. -1. {% octicon "gear" aria-label="the gear icon" %} をクリックします。 -1. Enter a comma separated list of the workflows that can access the runner group. Use the full path, including the repository name and owner. Pin the workflow to a branch, tag, or full SHA. 例: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main` - - Only jobs directly defined within the selected workflows will have access to the runner group. - - Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group. - -1. [**Save**] をクリックします。 - -{% endif %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} ## Changing the name of a runner group -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Change the runner group name. - -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group %} -1. Change the runner group name. -{% endif %} +{% data reusables.actions.changing-the-name-of-a-runner-group %} {% ifversion ghec or ghes or ghae %} ## Automatically adding a self-hosted runner to a group -You can use the configuration script to automatically add a new self-hosted runner to a group. For example, this command registers a new self-hosted runner and uses the `--runnergroup` parameter to add it to a group named `rg-runnergroup`. - -```sh -./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup -``` - -The command will fail if the runner group doesn't exist: - -``` -Could not find any self-hosted runner group named "rg-runnergroup". -``` +{% data reusables.actions.automatically-adding-a-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. - -{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -1. In the "Runners" list, click the runner that you want to configure. -2. Select the **Runner group** drop-down. -3. In "Move runner to group", choose a destination group for the runner. -{% elsif ghae or ghes < 3.4 %} -1. In the {% ifversion ghes or ghae %}"Runner groups"{% endif %} section of the settings page, locate the current group of the runner you want to move and expand the list of group members. ![ランナーグループのメンバーを表示](/assets/images/help/settings/actions-org-runner-group-members.png) -2. セルフホストランナーの横にあるチェックボックスを選択し、[**Move to group**] をクリックして、利用可能な移動先を確認します。 ![ランナーグループのメンバーを移動](/assets/images/help/settings/actions-org-runner-group-member-move.png) -3. 移動先のグループをクリックして、ランナーを移動します。 ![ランナーグループのメンバーを移動](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) -{% endif %} +{% data reusables.actions.moving-a-runner-to-a-group %} ## セルフホストランナーグループを削除する -セルフホストランナーは、グループが削除されると自動的にデフォルトグループに戻ります。 - -{% ifversion ghes or ghae or ghec %} -{% data reusables.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" %}. -2. グループを削除するには、[**Remove group**] をクリックします。 -3. 確認プロンプトを確認し、[**Remove this runner group**] をクリックします。 +{% data reusables.actions.removing-a-runner-group %} {% endif %} -{% endif %} diff --git a/translations/ja-JP/content/actions/learn-github-actions/contexts.md b/translations/ja-JP/content/actions/learn-github-actions/contexts.md index 1a333900b7..a2f95f52c6 100644 --- a/translations/ja-JP/content/actions/learn-github-actions/contexts.md +++ b/translations/ja-JP/content/actions/learn-github-actions/contexts.md @@ -33,17 +33,13 @@ You can access contexts using the expression syntax. For more information, see " {% data reusables.actions.context-injection-warning %} -| コンテキスト名 | 種類 | 説明 | -| ---------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -| `github` | `オブジェクト` | ワークフロー実行に関する情報。 詳しい情報については、「[`github` コンテキスト](#github-context)」を参照してください。 | -| `env` | `オブジェクト` | ワークフロー、ジョブ、ステップで設定された環境変数が含まれます。 詳しい情報については、[`env` コンテキスト](#env-context)を参照してください。 | -| `ジョブ` | `オブジェクト` | Information about the currently running job. 詳しい情報については、「[`job` コンテキスト](#job-context)」を参照してください。 | -| `steps` | `オブジェクト` | Information about the steps that have been run in the current job. 詳しい情報については、「[`steps` コンテキスト](#steps-context)」を参照してください。 | -| `runner` | `オブジェクト` | 現在のジョブを実行している runner に関する情報。 詳しい情報については[`runner`コンテキスト](#runner-context)を参照してください。 | -| `secrets` | `オブジェクト` | Contains the names and values of secrets that are available to a workflow run. For more information, see [`secrets` context](#secrets-context). | -| `strategy` | `オブジェクト` | Information about the matrix execution strategy for the current job. For more information, see [`strategy` context](#strategy-context). | -| `matrix` | `オブジェクト` | Contains the matrix properties defined in the workflow that apply to the current job. For more information, see [`matrix` context](#matrix-context). | -| `needs` | `オブジェクト` | Contains the outputs of all jobs that are defined as a dependency of the current job. 詳しい情報については[`needs`コンテキスト](#needs-context)を参照してください。 | +| コンテキスト名 | 種類 | 説明 | +| -------- | -------- | ------------------------------------------------------------------------------------------------ | +| `github` | `オブジェクト` | ワークフロー実行に関する情報。 詳しい情報については、「[`github` コンテキスト](#github-context)」を参照してください。 | +| `env` | `オブジェクト` | ワークフロー、ジョブ、ステップで設定された環境変数が含まれます。 詳しい情報については、[`env` コンテキスト](#env-context)を参照してください。 | +| `ジョブ` | `オブジェクト` | Information about the currently running job. 詳しい情報については、「[`job` コンテキスト](#job-context)」を参照してください。 | +{%- ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} +| `jobs` | `object` | For reusable workflows only, contains outputs of jobs from the reusable workflow. For more information, see [`jobs` context](#jobs-context). |{% endif %} | `steps` | `object` | Information about the steps that have been run in the current job. 詳しい情報については、「[`steps` コンテキスト](#steps-context)」を参照してください。 | | `runner` | `object` | Information about the runner that is running the current job. 詳しい情報については[`runner`コンテキスト](#runner-context)を参照してください。 | | `secrets` | `object` | Contains the names and values of secrets that are available to a workflow run. For more information, see [`secrets` context](#secrets-context). | | `strategy` | `object` | Information about the matrix execution strategy for the current job. For more information, see [`strategy` context](#strategy-context). | | `matrix` | `object` | Contains the matrix properties defined in the workflow that apply to the current job. For more information, see [`matrix` context](#matrix-context). | | `needs` | `object` | Contains the outputs of all jobs that are defined as a dependency of the current job. 詳しい情報については[`needs`コンテキスト](#needs-context)を参照してください。 | {%- ifversion fpt or ghec or ghes > 3.3 or ghae-issue-4757 %} | `inputs` | `object` | Contains the inputs of a reusable {% ifversion actions-unified-inputs %}or manually triggered {% endif %}workflow. For more information, see [`inputs` context](#inputs-context). |{% endif %} @@ -184,7 +180,7 @@ jobs: | {% ifversion actions-stable-actor-ids %}The username of the user that triggered the initial workflow run. If the workflow run is a re-run, this value may differ from `github.triggering_actor`. Any workflow re-runs will use the privileges of `github.actor`, even if the actor initiating the re-run (`github.triggering_actor`) has different privileges.{% else %}The username of the user that initiated the workflow run.{% endif %} | | | | | | | | `github.api_url` | `string` | The URL of the {% data variables.product.prodname_dotcom %} REST API. | -| `github.base_ref` | `string` | ワークフローの実行における `base_ref` またはプルリクエストのターゲットブランチ。 このプロパティは、ワークフローの実行をトリガーするイベントが `pull_request` または `pull_request_target` のいずれかである場合にのみ使用できます。 | +| `github.base_ref` | `string` | ワークフローの実行における `base_ref` またはPull Requestのターゲットブランチ。 このプロパティは、ワークフローの実行をトリガーするイベントが `pull_request` または `pull_request_target` のいずれかである場合にのみ使用できます。 | | `github.env` | `string` | Path on the runner to the file that sets environment variables from workflow commands. This file is unique to the current step and is a different file for each step in a job. For more information, see "[Workflow commands for {% data variables.product.prodname_actions %}](/actions/learn-github-actions/workflow-commands-for-github-actions#setting-an-environment-variable)." | | `github.event` | `オブジェクト` | webhook ペイロードの完全なイベント。 このコンテキストを使用して、イベントの個々のプロパティにアクセスできます。 This object is identical to the webhook payload of the event that triggered the workflow run, and is different for each event. The webhooks for each {% data variables.product.prodname_actions %} event is linked in "[Events that trigger workflows](/articles/events-that-trigger-workflows/)." For example, for a workflow run triggered by the [`push` event](/actions/using-workflows/events-that-trigger-workflows#push), this object contains the contents of the [push webhook payload](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#push). | | `github.event_name` | `string` | ワークフローの実行をトリガーしたイベントの名前。 | @@ -196,7 +192,7 @@ jobs: {%- ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5338 %} | `github.ref_name` | `string` | {% data reusables.actions.ref_name-description %} | | `github.ref_protected` | `string` | {% data reusables.actions.ref_protected-description %} | | `github.ref_type` | `string` | {% data reusables.actions.ref_type-description %} {%- endif %} -| `github.path` | `string` | Path on the runner to the file that sets system `PATH` variables from workflow commands. This file is unique to the current step and is a different file for each step in a job. 詳しい情報については「[{% data variables.product.prodname_actions %}のワークフローコマンド](/actions/learn-github-actions/workflow-commands-for-github-actions#adding-a-system-path)」を参照してください。 | | `github.repository` | `string` | The owner and repository name. `Codertocat/Hello-World`などです。 | | `github.repository_owner` | `string` | The repository owner's name. たとえば`Codertocat`。 | | `github.repositoryUrl` | `string` | The Git URL to the repository. For example, `git://github.com/codertocat/hello-world.git`. | | `github.retention_days` | `string` | The number of days that workflow run logs and artifacts are kept. | | `github.run_id` | `string` | {% data reusables.actions.run_id_description %} | | `github.run_number` | `string` | {% data reusables.actions.run_number_description %} +| `github.path` | `string` | Path on the runner to the file that sets system `PATH` variables from workflow commands. This file is unique to the current step and is a different file for each step in a job. For more information, see "[Workflow commands for {% data variables.product.prodname_actions %}](/actions/learn-github-actions/workflow-commands-for-github-actions#adding-a-system-path)." | | `github.repository` | `string` | The owner and repository name. `Codertocat/Hello-World`などです。 | | `github.repository_owner` | `string` | The repository owner's name. たとえば`Codertocat`。 | | `github.repositoryUrl` | `string` | The Git URL to the repository. For example, `git://github.com/codertocat/hello-world.git`. | | `github.retention_days` | `string` | The number of days that workflow run logs and artifacts are kept. | | `github.run_id` | `string` | {% data reusables.actions.run_id_description %} | | `github.run_number` | `string` | {% data reusables.actions.run_number_description %} {%- ifversion fpt or ghec or ghes > 3.5 or ghae-issue-4722 %} | `github.run_attempt` | `string` | A unique number for each attempt of a particular workflow run in a repository. This number begins at 1 for the workflow run's first attempt, and increments with each re-run. | {%- endif %} @@ -390,6 +386,72 @@ jobs: - run: ./run-tests ``` +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} + +## `jobs` context + +The `jobs` context is only available in reusable workflows, and can only be used to set outputs for a reusable workflow. 詳しい情報については「[ワークフローの再利用](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)」を参照してください。 + +| プロパティ名 | 種類 | 説明 | +| ------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `jobs` | `オブジェクト` | This is only available in reusable workflows, and can only be used to set outputs for a reusable workflow. This object contains all the properties listed below. | +| `jobs..result` | `string` | The result of a job in the reusable workflow. `success`、`failure`、`cancelled`、`skipped`のいずれかの値をとります。 | +| `jobs..outputs` | `オブジェクト` | The set of outputs of a job in a reusable workflow. | +| `jobs..outputs.` | `string` | The value of a specific output for a job in a reusable workflow. | + +### Example contents of the `jobs` context + +This example `jobs` context contains the result and outputs of a job from a reusable workflow run. + +```json +{ + example_job: { + result: success, + outputs: { + output1: hello, + output2: world + } + } +} +``` + +### Example usage of the `jobs` context + +This example reusable workflow uses the `jobs` context to set outputs for the reusable workflow. Note how the outputs flow up from the steps, to the job, then to the `workflow_call` trigger. 詳しい情報については「[ワークフローの再利用](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)」を参照してください。 + +{% raw %} +```yaml{:copy} +name: Reusable workflow + +on: + workflow_call: + # Map the workflow outputs to job outputs + outputs: + firstword: + description: "The first output string" + value: ${{ jobs.example_job.outputs.output1 }} + secondword: + description: "The second output string" + value: ${{ jobs.example_job.outputs.output2 }} + +jobs: + example_job: + name: Generate output + runs-on: ubuntu-latest + # Map the job outputs to step outputs + outputs: + output1: ${{ steps.step1.outputs.firstword }} + output2: ${{ steps.step2.outputs.secondword }} + steps: + - id: step1 + run: echo "::set-output name=firstword::hello" + - id: step2 + run: echo "::set-output name=secondword::world" +``` +{% endraw %} + +{% endif %} + ## `steps` コンテキスト The `steps` context contains information about the steps in the current job that have an [`id`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepsid) specified and have already run. @@ -508,7 +570,7 @@ jobs: ## `secrets` context -The `secrets` context contains the names and values of secrets that are available to a workflow run. The `secrets` context is not available for composite actions. For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." +The `secrets` context contains the names and values of secrets that are available to a workflow run. The `secrets` context is not available for composite actions. シークレットに関する詳しい情報については「[暗号化されたシークレット](/actions/security-guides/encrypted-secrets)」を参照してください。 `GITHUB_TOKEN` is a secret that is automatically created for every workflow run, and is always included in the `secrets` context. 詳しい情報については「[自動トークン認証](/actions/security-guides/automatic-token-authentication)」を参照してください。 diff --git a/translations/ja-JP/content/actions/learn-github-actions/understanding-github-actions.md b/translations/ja-JP/content/actions/learn-github-actions/understanding-github-actions.md index 9d55eacd5e..4974c373f9 100644 --- a/translations/ja-JP/content/actions/learn-github-actions/understanding-github-actions.md +++ b/translations/ja-JP/content/actions/learn-github-actions/understanding-github-actions.md @@ -2,6 +2,7 @@ title: Understanding GitHub Actions shortTitle: Understanding GitHub Actions intro: 'Learn the basics of {% data variables.product.prodname_actions %}, including core concepts and essential terminology.' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/automating-your-workflow-with-github-actions/core-concepts-for-github-actions - /actions/automating-your-workflow-with-github-actions/core-concepts-for-github-actions @@ -82,7 +83,7 @@ You can write your own actions, or you can find actions to use in your workflows ### ランナー -{% data reusables.actions.about-runners %} Each runner can run a single job at a time. {% ifversion ghes or ghae %} You must host your own runners for {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} provides Ubuntu Linux, Microsoft Windows, and macOS runners to run your workflows; each workflow run executes in a fresh, newly-provisioned virtual machine. If you need a different operating system or require a specific hardware configuration, you can host your own runners.{% endif %} For more information{% ifversion fpt or ghec %} about self-hosted runners{% endif %}, see "[Hosting your own runners](/actions/hosting-your-own-runners)." +{% data reusables.actions.about-runners %} Each runner can run a single job at a time. {% ifversion ghes or ghae %} You must host your own runners for {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} provides Ubuntu Linux, Microsoft Windows, and macOS runners to run your workflows; each workflow run executes in a fresh, newly-provisioned virtual machine. {% ifversion actions-hosted-runners %} {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." {% endif %}If you need a different operating system or require a specific hardware configuration, you can host your own runners.{% endif %} For more information{% ifversion fpt or ghec %} about self-hosted runners{% endif %}, see "[Hosting your own runners](/actions/hosting-your-own-runners)." {% data reusables.actions.workflow-basic-example-and-explanation %} @@ -93,7 +94,7 @@ You can write your own actions, or you can find actions to use in your workflows - {% data variables.product.prodname_actions %} について詳しくは、「[アクションの検索とカスタマイズ](/actions/learn-github-actions/finding-and-customizing-actions)」を参照してください。 {% ifversion fpt or ghec or ghes %} -- To understand how billing works for {% data variables.product.prodname_actions %}, see "[About billing for {% data variables.product.prodname_actions %}](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)". +- To understand how billing works for {% data variables.product.prodname_actions %}, see "[About billing for {% data variables.product.prodname_actions %}](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)." {% endif %} ## サポートへの連絡 diff --git a/translations/ja-JP/content/actions/publishing-packages/publishing-nodejs-packages.md b/translations/ja-JP/content/actions/publishing-packages/publishing-nodejs-packages.md index 57bb6f28eb..5a26f04f43 100644 --- a/translations/ja-JP/content/actions/publishing-packages/publishing-nodejs-packages.md +++ b/translations/ja-JP/content/actions/publishing-packages/publishing-nodejs-packages.md @@ -98,9 +98,9 @@ Please note that you need to set the `registry-url` to `https://registry.npmjs.o ### 宛先リポジトリの設定 -*package.json* ファイルで `repository` キーを指定しない場合、{% data variables.product.prodname_registry %} は *package.json* ファイルの `name` フィールドで指定した {% data variables.product.prodname_dotcom %} リポジトリにパッケージを公開します。 たとえば、`@my-org/test` という名前のパッケージは、`my-org/test` {% data variables.product.prodname_dotcom %} というリポジトリに公開されます。 +Linking your package to {% data variables.product.prodname_registry %} using the `repository` key is optional. If you choose not to provide the `repository` key in your *package.json* file, then {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the `name` field of the *package.json* file. たとえば、`@my-org/test` という名前のパッケージは、`my-org/test` {% data variables.product.prodname_dotcom %} というリポジトリに公開されます。 If the `url` specified in the `repository` key is invalid, your package may still be published however it won't be linked to the repository source as intended. -ただし、`repository` キーを指定すると、そのキーのリポジトリが {% data variables.product.prodname_registry %} の宛先 npm レジストリとして使用されます。 たとえば、以下の *package.json* を公開すると、`my-amazing-package` という名前のパッケージが `octocat/my-other-repo` {% data variables.product.prodname_dotcom %} リポジトリに公開されます。 +If you do provide the `repository` key in your *package.json* file, then the repository in that key is used as the destination npm registry for {% data variables.product.prodname_registry %}. たとえば、以下の *package.json* を公開すると、`my-amazing-package` という名前のパッケージが `octocat/my-other-repo` {% data variables.product.prodname_dotcom %} リポジトリに公開されます。 Once published, only the repository source is updated, and the package doesn't inherit any permissions from the destination repository. ```json { diff --git a/translations/ja-JP/content/actions/using-github-hosted-runners/about-github-hosted-runners.md b/translations/ja-JP/content/actions/using-github-hosted-runners/about-github-hosted-runners.md index 169c4fc6f2..4bdc3f2862 100644 --- a/translations/ja-JP/content/actions/using-github-hosted-runners/about-github-hosted-runners.md +++ b/translations/ja-JP/content/actions/using-github-hosted-runners/about-github-hosted-runners.md @@ -86,6 +86,15 @@ While the job runs, the logs and output can be viewed in the {% data variables.p ## サポートされているランナーとハードウェアリソース +{% ifversion actions-hosted-runners %} + +{% note %} + +**Note**: {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." + +{% endnote %} +{% endif %} + Windows および Linux 仮想マシンのハードウェア仕様: - 2-core CPU (x86_64) - 7 GB of RAM diff --git a/translations/ja-JP/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md b/translations/ja-JP/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md new file mode 100644 index 0000000000..b805b43c26 --- /dev/null +++ b/translations/ja-JP/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md @@ -0,0 +1,50 @@ +--- +title: Controlling access to larger runners +intro: 'You can use policies to limit access to {% data variables.actions.hosted_runner %}s that have been added to an organization or enterprise.' +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: actions-hosted-runners +type: tutorial +shortTitle: 'Controlling access to {% data variables.actions.hosted_runner %}s' +--- + +{% data reusables.actions.enterprise-beta %} +{% data reusables.actions.enterprise-github-hosted-runners %} + +## About runner groups + +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/using-github-hosted-runners/controlling-access-to-larger-runners).{% endif %} + +{% ifversion ghec or ghes or ghae %} + +## Creating a runner group for an organization + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} + +## Creating a runner group for an enterprise + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} + +{% endif %} + +## Changing the access policy of a runner group + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} + +## Changing the name of a runner group + +{% data reusables.actions.changing-the-name-of-a-runner-group %} + +{% ifversion ghec or ghes or ghae %} +## Moving a runner to a group + +{% data reusables.actions.moving-a-runner-to-a-group %} + +## Removing a runner group + +{% data reusables.actions.removing-a-runner-group %} + +{% endif %} diff --git a/translations/ja-JP/content/actions/using-github-hosted-runners/index.md b/translations/ja-JP/content/actions/using-github-hosted-runners/index.md index 2c05480126..89da172b2b 100644 --- a/translations/ja-JP/content/actions/using-github-hosted-runners/index.md +++ b/translations/ja-JP/content/actions/using-github-hosted-runners/index.md @@ -7,6 +7,8 @@ versions: ghes: '*' children: - /about-github-hosted-runners + - /using-larger-runners + - /controlling-access-to-larger-runners - /monitoring-your-current-jobs - /customizing-github-hosted-runners - /connecting-to-a-private-network diff --git a/translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md b/translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md new file mode 100644 index 0000000000..0e9d992dce --- /dev/null +++ b/translations/ja-JP/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -0,0 +1,135 @@ +--- +title: Using larger runners +intro: '{% data variables.product.prodname_dotcom %} offers larger runners with more RAM and CPU.' +miniTocMaxHeadingLevel: 3 +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: actions-hosted-runners +shortTitle: 'Using {% data variables.actions.hosted_runner %}s' +--- + +## Overview of {% data variables.actions.hosted_runner %}s + +In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. + +When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. + +## Architectural overview of {% data variables.actions.hosted_runner %}s + +The {% data variables.actions.hosted_runner %}s are managed at the organization level, where they are arranged into groups that can contain multiple instances of the runner. They can also be created at the enterprise level and shared with organizations in the hierarchy. Once you've created a group, you can then add a runner to the group and update your workflows to target the label assigned to the {% data variables.actions.hosted_runner %}. You can also control which repositories are permitted to send jobs to the group for processing. For more information about groups, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +In the following diagram, a class of hosted runner named `ubuntu-20.04-16core` has been defined with customized hardware and operating system configuration. + +![Diagram explaining {% data variables.actions.hosted_runner %}](/assets/images/hosted-runner.png) + +1. Instances of this runner are automatically created and added to a group called `ubuntu-20.04-16core`. +2. The runners have been assigned the label `ubuntu-20.04-16core`. +3. Workflow jobs use the `ubuntu-20.04-16core` label in their `runs-on` key to indicate the type of runner they need to execute the job. +4. {% data variables.product.prodname_actions %} checks the runner group to see if your repository is authorized to send jobs to the runner. +5. The job runs on the next available instance of the `ubuntu-20.04-16core` runner. + +## Autoscaling {% data variables.actions.hosted_runner %}s + +Your {% data variables.actions.hosted_runner %}s can be configured to automatically scale to suit your needs. When jobs are submitted for processing, more machines can be automatically provisioned to run the jobs, until reaching a pre-defined maximum limit. Each machine only handles one job at a time, so these settings effectively determine the number of jobs that can be run concurrently. + +During the runner deployment process, you can configure the _Max_ option, which allows you to control your costs by setting the maximum parallel number of machines that are created in this set. A higher value here can help avoid workflows being blocked due to parallelism. + +## Networking for {% data variables.actions.hosted_runner %}s + +By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive a static IP address from {% data variables.product.prodname_dotcom %}'s IP address pool. When enabled, instances of the {% data variables.actions.hosted_runner %} will receive an address from a range that is unique to the runner, allowing you to use this range to configure a firewall allowlist. You can use up to 10 static IP address ranges in total across all your {% data variables.actions.hosted_runner %}s. + +{% note %} + +**Note**: If runners are unused for more than 30 days, their IP address ranges are automatically removed and cannot be recovered. + +{% endnote %} + +## Planning for {% data variables.actions.hosted_runner %}s + +### Create a runner group + +Runner groups are used to collect sets of virtual machines and create a security boundary around them. You can then decide which organizations or repositories are permitted to run jobs on those sets of machines. During the {% data variables.actions.hosted_runner %} deployment process, the runner can be added to an existing group, or otherwise it will join a default group. You can create a group by following the steps in "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +### Understanding billing + +Compared to standard {% data variables.product.prodname_dotcom %}-hosted runners, {% data variables.actions.hosted_runner %}s are billed differently. For more information, see "[Per-minute rates](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)". + +## Adding a {% data variables.actions.hosted_runner %} to an enterprise + +You can add {% data variables.actions.hosted_runner %}s to an enterprise, where they can be assigned to multiple organizations. The organization admins can then control which repositories can use the runners. To add a {% data variables.actions.hosted_runner %} to an enterprise, you must be an enterprise owner. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.enterprise-accounts.actions-runners-tab %} +{% data reusables.actions.add-hosted-runner %} +1. To allow organizations to access your {% data variables.actions.hosted_runner %}s, you specify the list of organizations that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Adding a {% data variables.actions.hosted_runner %} to an organization + +You can add a {% data variables.actions.hosted_runner %} to an organization, where the organization admins can control which repositories can use it. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runners %} +{% data reusables.actions.add-hosted-runner %} +1. To allow repositories to access your {% data variables.actions.hosted_runner %}s, add them to the list of repositories that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Running jobs on your runner + +Once your runner type has been been defined, you can update your workflows to send jobs to the runner instances for processing. In this example, a runner group is populated with Ubuntu 16-core runners, which have been assigned the label `ubuntu-20.04-16core`. If you have a runner matching this label, the `check-bats-version` job then uses the `runs-on` key to target that runner whenever the job is run: + +```yaml +name: learn-github-actions +on: [push] +jobs: + check-bats-version: + runs-on: ubuntu-20.04-16core + steps: + - uses: {% data reusables.actions.action-checkout %} + - uses:{% data reusables.actions.action-setup-node %} + with: + node-version: '14' + - run: npm install -g bats + - run: bats -v +``` + +## Managing access to your runners + +{% note %} + +**Note**: Before your workflows can send jobs to {% data variables.actions.hosted_runner %}s, you must first configure permissions for the runner group. See the following sections for more information. + +{% endnote %} + +Runner groups are used to control which repositories can run jobs on your {% data variables.actions.hosted_runner %}s. You must grant access to the group from each level of the management hierarchy, depending on where you've defined the {% data variables.actions.hosted_runner %}: + +- **Runners at the enterprise level**: Configure the runner group to grant access to all the required organizations. In addition, for each organization, you must configure the group to specify which repositories are allowed access. +- **Runners at the organization level**: Configure the runner group by specifying which repositories are allowed access. + +For example, the following diagram has a runner group named `grp-ubuntu-20.04-16core` at the enterprise level. Before the repository named `octo-repo` can use the runners in the group, you must first configure the group at the enterprise level to allow access from the `octo-org` organization; you must then configure the group at the organization level to allow access from `octo-repo`: + +![Diagram explaining {% data variables.actions.hosted_runner %} groups](/assets/images/hosted-runner-mgmt.png) + +### Allowing repositories to access a runner group + +This procedure demonstrates how to configure group permissions at the enterprise and organization levels: + +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} + - For runner groups in an enterprise: under **Organization access**, modify which organizations can access the runner group. + - For runner groups in an organization: under **Repository access**, modify which repositories can access the runner group. + +{% warning %} + +**Warning**: + +{% data reusables.actions.hosted-runner-security %} + +For more information, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +{% endwarning %} diff --git a/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index a4078416ff..bb214de90b 100644 --- a/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/translations/ja-JP/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -51,7 +51,7 @@ For more information on workflow run artifacts, see "[Persisting workflow data u ワークフローは、現在のブランチ、ベースブランチ(フォークされたリポジトリのベースブランチを含む)、またはデフォルトブランチ(通常は `main`)で作成されたキャッシュにアクセスして復元できます。 たとえば、デフォルトブランチで作成されたキャッシュは、どのPull Requestからもアクセスできます。 また、`feature-b` ブランチに `feature-a` ベースブランチがある場合、`feature-b` でトリガーされたワークフローは、デフォルトのブランチ(`main`)、`feature-a`、および `feature-b` で作成されたキャッシュにアクセスできます。 -Access restrictions provide cache isolation and security by creating a logical boundary between different branches. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). +Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. For example, a cache created for the branch `feature-a` (with the base `main`) would not be accessible to a pull request for the branch `feature-c` (with the base `main`). On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`). Multiple workflows within a repository share cache entries. A cache created for a branch within a workflow can be accessed and restored from another workflow for the same repository and branch. diff --git a/translations/ja-JP/content/actions/using-workflows/events-that-trigger-workflows.md b/translations/ja-JP/content/actions/using-workflows/events-that-trigger-workflows.md index 1a2fbb5f41..46f479dde5 100644 --- a/translations/ja-JP/content/actions/using-workflows/events-that-trigger-workflows.md +++ b/translations/ja-JP/content/actions/using-workflows/events-that-trigger-workflows.md @@ -812,6 +812,8 @@ Runs your workflow when activity on a pull request in the workflow's repository This event runs in the context of the base of the pull request, rather than in the context of the merge commit, as the `pull_request` event does. This prevents execution of unsafe code from the head of the pull request that could alter your repository or steal any secrets you use in your workflow. This event allows your workflow to do things like label or comment on pull requests from forks. Avoid using this event if you need to build or run code from the pull request. +To ensure repository security, branches with names that match certain patterns (such as those which look similar to SHAs) may not trigger workflows with the `pull_request_target` event. + {% warning %} **Warning:** For workflows that are triggered by the `pull_request_target` event, the `GITHUB_TOKEN` is granted read/write repository permission unless the `permissions` key is specified and the workflow can access secrets, even when it is triggered from a fork. ワークフローはPull Requestのベースのコンテキストで実行されますが、このイベントでPull Requestから信頼できないコードをチェックアウトしたり、ビルドしたり、実行したりしないようにしなければなりません。 Additionally, any caches share the same scope as the base branch. To help prevent cache poisoning, you should not save the cache if there is a possibility that the cache contents were altered. 詳細については、GitHub Security Lab Web サイトの「[GitHub Actions とワークフローを安全に保つ: pwn リクエストの防止](https://securitylab.github.com/research/github-actions-preventing-pwn-requests)」を参照してください。 @@ -957,7 +959,7 @@ on: #### Running your workflow only when a push to specific branches occurs -You can use the `branches` or `branches-ignore` filter to configure your workflow to only run when specific branches are pushed. 詳しい情報については「[GitHub Actionsのワークフロー構文](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)」を参照してください。 +You can use the `branches` or `branches-ignore` filter to configure your workflow to only run when specific branches are pushed. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)." For example, this workflow will run when someone pushes to `main` or to a branch that starts with `releases/`. @@ -986,7 +988,7 @@ on: #### Running your workflow only when a push of specific tags occurs -You can use the `tags` or `tags-ignore` filter to configure your workflow to only run when specific tags are pushed. 詳しい情報については「[GitHub Actionsのワークフロー構文](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)」を参照してください。 +You can use the `tags` or `tags-ignore` filter to configure your workflow to only run when specific tags are pushed. For more information, see "[Workflow syntax for GitHub Actions](/actions/learn-github-actions/workflow-syntax-for-github-actions#onpushbranchestagsbranches-ignoretags-ignore)." For example, this workflow will run when someone pushes a tag that starts with `v1.`. @@ -1039,7 +1041,7 @@ on: {% data reusables.actions.branch-requirement %} -Runs your workflow when activity related to {% data variables.product.prodname_registry %} occurs in your repository. 詳しい情報については、「[{% data variables.product.prodname_registry %} のドキュメント](/packages)」を参照してください。 +Runs your workflow when activity related to {% data variables.product.prodname_registry %} occurs in your repository. For more information, see "[{% data variables.product.prodname_registry %} Documentation](/packages)." For example, you can run a workflow when a new package version has been `published`. @@ -1091,7 +1093,7 @@ on: {% data reusables.actions.branch-requirement %} -{% data variables.product.product_name %} の外部で生じるアクティビティのためにワークフローをトリガーしたい場合、{% data variables.product.product_name %} API を使って、[`repository_dispatch`](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads/#repository_dispatch) と呼ばれる webhook イベントをトリガーできます。 詳細については、「[リポジトリディスパッチ イベントの作成](/rest/reference/repos#create-a-repository-dispatch-event)」を参照してください。 +You can use the {% data variables.product.product_name %} API to trigger a webhook event called [`repository_dispatch`](/developers/webhooks-and-events/webhooks/webhook-events-and-payloads/#repository_dispatch) when you want to trigger a workflow for activity that happens outside of {% data variables.product.product_name %}. 詳細については、「[リポジトリディスパッチ イベントの作成](/rest/reference/repos#create-a-repository-dispatch-event)」を参照してください。 When you make a request to create a `repository_dispatch` event, you must specify an `event_type` to describe the activity type. By default, all `repository_dispatch` activity types trigger a workflow to run. You can use the `types` keyword to limit your workflow to run when a specific `event_type` value is sent in the `repository_dispatch` webhook payload. diff --git a/translations/ja-JP/content/actions/using-workflows/reusing-workflows.md b/translations/ja-JP/content/actions/using-workflows/reusing-workflows.md index a26e315cd3..8f5b79470e 100644 --- a/translations/ja-JP/content/actions/using-workflows/reusing-workflows.md +++ b/translations/ja-JP/content/actions/using-workflows/reusing-workflows.md @@ -23,7 +23,7 @@ topics: Rather than copying and pasting from one workflow to another, you can make workflows reusable. You and anyone with access to the reusable workflow can then call the reusable workflow from another workflow. -Reusing workflows avoids duplication. This makes workflows easier to maintain and allows you to create new workflows more quickly by building on the work of others, just as you do with actions. Workflow reuse also promotes best practice by helping you to use workflows that are well designed, have already been tested, and have been proved to be effective. Your organization can build up a library of reusable workflows that can be centrally maintained. +Reusing workflows avoids duplication. This makes workflows easier to maintain and allows you to create new workflows more quickly by building on the work of others, just as you do with actions. Workflow reuse also promotes best practice by helping you to use workflows that are well designed, have already been tested, and have been proven to be effective. Your organization can build up a library of reusable workflows that can be centrally maintained. The diagram below shows three build jobs on the left of the diagram. After each of these jobs completes successfully a dependent job called "Deploy" runs. This job calls a reusable workflow that contains three jobs: "Staging", "Review", and "Production." The "Production" deployment job only runs after the "Staging" job has completed successfully. Using a reusable workflow to run deployment jobs allows you to run those jobs for each build without duplicating code in workflows. @@ -127,7 +127,7 @@ You can define inputs and secrets, which can be passed from the caller workflow runs-on: ubuntu-latest environment: production steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.envPAT }} @@ -168,12 +168,13 @@ jobs: name: Pass input and secrets to my-action runs-on: ubuntu-latest steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.token }} ``` {% endraw %} + {% ifversion actions-reusable-workflow-matrix %} ## Using a matrix strategy with a reusable workflow diff --git a/translations/ja-JP/content/actions/using-workflows/workflow-commands-for-github-actions.md b/translations/ja-JP/content/actions/using-workflows/workflow-commands-for-github-actions.md index 61391dcc7d..8ea745b556 100644 --- a/translations/ja-JP/content/actions/using-workflows/workflow-commands-for-github-actions.md +++ b/translations/ja-JP/content/actions/using-workflows/workflow-commands-for-github-actions.md @@ -329,9 +329,15 @@ Write-Output "::add-mask::Mona The Octocat" {% endpowershell %} +{% warning %} + +**Warning:** Make sure you register the secret with 'add-mask' before outputting it in the build logs or using it in any other workflow commands. + +{% endwarning %} + ### Example: Masking an environment variable -変数 `MY_NAME` または値 `"Mona The Octocat"` をログに出力すると。`"Mona The Octocat"` の代わりに `"***"` が表示されます。 +変数 `MY_NAME` または値 `"Mona The Octocat"` をログに出力すると、`"Mona The Octocat"` の代わりに `"***"` が表示されます。 {% bash %} diff --git a/translations/ja-JP/content/actions/using-workflows/workflow-syntax-for-github-actions.md b/translations/ja-JP/content/actions/using-workflows/workflow-syntax-for-github-actions.md index 1587eb8129..93cef6d72c 100644 --- a/translations/ja-JP/content/actions/using-workflows/workflow-syntax-for-github-actions.md +++ b/translations/ja-JP/content/actions/using-workflows/workflow-syntax-for-github-actions.md @@ -365,9 +365,9 @@ For more information, see "[Context availability](/actions/learn-github-actions/ ジョブでステップの一部として実行されるアクションを選択します。 アクションとは、再利用可能なコードの単位です。 ワークフロー、パブリックリポジトリ、または[公開されているDockerコンテナイメージ](https://hub.docker.com/)と同じリポジトリで定義されているアクションを使用できます。 -Git ref、SHA、またはDockerタグ番号を指定して、使用しているアクションのバージョンを含めることを強く推奨します。 バージョンを指定しないと、アクションのオーナーがアップデートを公開したときに、ワークフローが中断したり、予期せぬ動作をしたりすることがあります。 +We strongly recommend that you include the version of the action you are using by specifying a Git ref, SHA, or Docker tag. バージョンを指定しないと、アクションのオーナーがアップデートを公開したときに、ワークフローが中断したり、予期せぬ動作をしたりすることがあります。 - リリースされたアクションバージョンのコミットSHAを使用するのが、安定性とセキュリティのうえで最も安全です。 -- 特定のメジャーアクションバージョンを使用すると、互換性を維持したまま重要な修正とセキュリティパッチを受け取ることができます。 ワークフローが引き続き動作することも保証できます。 +- If the action publishes major version tags, you should expect to receive critical fixes and security patches while still retaining compatibility. Note that this behavior is at the discretion of the action's author. - アクションのデフォルトブランチを使用すると便利なこともありますが、別のユーザが破壊的変更を加えた新しいメジャーバージョンをリリースすると、ワークフローが動作しなくなる場合があります。 入力が必要なアクションもあり、入力を[`with`](#jobsjob_idstepswith)キーワードを使って設定する必要があります。 必要な入力を判断するには、アクションのREADMEファイルをお読みください。 diff --git a/translations/ja-JP/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md b/translations/ja-JP/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md new file mode 100644 index 0000000000..bd29f0a56c --- /dev/null +++ b/translations/ja-JP/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md @@ -0,0 +1,52 @@ +--- +title: Configuring dependency review for your appliance +shortTitle: 依存関係レビューの設定 +intro: 'To helps users understand dependency changes when reviewing pull requests, you can enable, configure, and disable dependency review for {% data variables.product.product_location %}.' +product: '{% data reusables.gated-features.dependency-review %}' +miniTocMaxHeadingLevel: 3 +versions: + feature: dependency-review-action-ghes +type: how_to +topics: + - Advanced Security + - Enterprise + - Dependency review + - Security +--- + +{% data reusables.dependency-review.beta %} + +## 依存関係のレビューについて + +{% data reusables.dependency-review.feature-overview %} + +Some additional features, such as license checks, blocking of pull requests, and CI/CD integration, are available with the [dependency review action](https://github.com/actions/dependency-review-action). + +## Checking whether your license includes {% data variables.product.prodname_GH_advanced_security %} + +{% data reusables.advanced-security.check-for-ghas-license %} + +## Prerequisites for dependency review + +- A license for {% data variables.product.prodname_GH_advanced_security %}{% ifversion ghes %} (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 %} + +- The dependency graph enabled for the instance. Site administrators can enable the dependency graph via the management console or the administrative shell (see "[Enabling the dependency graph for your enterprise](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)"). + +- {% data variables.product.prodname_github_connect %} enabled to download and synchronize vulnerabilities from the {% data variables.product.prodname_advisory_database %}. This is usually configured as part of setting up {% data variables.product.prodname_dependabot %} (see "[Enabling Dependabot for your enterprise](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)"). + +## Enabling and disabling dependency review + +To enable or disable dependency review, you need to enable or disable the dependency graph for your instance. + +詳しい情報については「[Enterpriseでの依存関係グラフの有効化](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)」を参照してください。 + +## Running dependency review using {% data variables.product.prodname_actions %} + +{% data reusables.dependency-review.dependency-review-action-beta-note %} + +The dependency review action is included in your installation of {% data variables.product.prodname_ghe_server %}. It is available for all repositories that have {% data variables.product.prodname_GH_advanced_security %} and dependency graph enabled. + +{% data reusables.dependency-review.dependency-review-action-overview %} + +Users run the dependency review action using a {% data variables.product.prodname_actions %} workflow. If you have not already set up runners for {% data variables.product.prodname_actions %}, you must do this to enable users to run workflows. セルフホストランナーは、リポジトリ、Organization、または Enterprise アカウントレベルでプロビジョニングできます。 For 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)." + diff --git a/translations/ja-JP/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md b/translations/ja-JP/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md index f3ee256100..dcd835e93d 100644 --- a/translations/ja-JP/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md +++ b/translations/ja-JP/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md @@ -14,6 +14,7 @@ topics: children: - /enabling-github-advanced-security-for-your-enterprise - /configuring-code-scanning-for-your-appliance + - /configuring-dependency-review-for-your-appliance - /configuring-secret-scanning-for-your-appliance --- diff --git a/translations/ja-JP/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md b/translations/ja-JP/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md index 856e050666..25eca80421 100644 --- a/translations/ja-JP/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md +++ b/translations/ja-JP/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md @@ -23,7 +23,7 @@ You can enable the dependency graph via the {% data variables.enterprise.managem ## Enabling the dependency graph via the {% data variables.enterprise.management_console %} -If your {% data variables.product.product_location %} uses clustering, you cannot enable the dependency graph with the {% data variables.enterprise.management_console %} and must use the administrative shell instead. For more information, see "[Enabling the dependency graph via the administrative shell](#enabling-the-dependency-graph-via-the-administrative-shell)." +If {% data variables.product.product_location %} uses clustering, you cannot enable the dependency graph with the {% data variables.enterprise.management_console %} and must use the administrative shell instead. For more information, see "[Enabling the dependency graph via the administrative shell](#enabling-the-dependency-graph-via-the-administrative-shell)." {% data reusables.enterprise_site_admin_settings.sign-in %} {% data reusables.enterprise_site_admin_settings.access-settings %} diff --git a/translations/ja-JP/content/admin/configuration/configuring-github-connect/about-github-connect.md b/translations/ja-JP/content/admin/configuration/configuring-github-connect/about-github-connect.md index 801d3c5066..4b900f7f44 100644 --- a/translations/ja-JP/content/admin/configuration/configuring-github-connect/about-github-connect.md +++ b/translations/ja-JP/content/admin/configuration/configuring-github-connect/about-github-connect.md @@ -8,6 +8,7 @@ type: overview topics: - Enterprise - GitHub Connect +miniTocMaxHeadingLevel: 3 --- ## About {% data variables.product.prodname_github_connect %} @@ -37,6 +38,16 @@ Unified contributions | Allow users to include anonymized contribution counts fo ## Data transmission for {% data variables.product.prodname_github_connect %} +When {% data variables.product.prodname_github_connect %} is enabled, a record on {% data variables.product.prodname_ghe_cloud %} stores information about the connection. If you enable individual features of {% data variables.product.prodname_github_connect %}, additional data is transmitted. + +{% note %} + +**Note:** No repositories, issues, or pull requests are ever transmitted from {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} by {% data variables.product.prodname_github_connect %}. + +{% endnote %} + +### Data transmitted when {% data variables.product.prodname_github_connect %} is enabled + When you enable {% data variables.product.prodname_github_connect %} or specific {% data variables.product.prodname_github_connect %} features, a record on {% data variables.product.prodname_ghe_cloud %} stores the following information about the connection. {% ifversion ghes %} - The public key portion of your {% data variables.product.prodname_ghe_server %} license @@ -54,11 +65,7 @@ When you enable {% data variables.product.prodname_github_connect %} or specific {% data variables.product.prodname_github_connect %} syncs the above connection data between {% data variables.product.product_location %} and {% data variables.product.prodname_ghe_cloud %} weekly, from the day and approximate time that {% data variables.product.prodname_github_connect %} was enabled. -{% note %} - -**Note:** No repositories, issues, or pull requests are ever transmitted from {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} by {% data variables.product.prodname_github_connect %}. - -{% endnote %} +### Data transmitted by individual features of {% data variables.product.prodname_github_connect %} Additional data is transmitted if you enable individual features of {% data variables.product.prodname_github_connect %}. @@ -68,7 +75,7 @@ Automatic user license sync | Each {% data variables.product.product_name %} use {% data variables.product.prodname_dependabot_alerts %} | Vulnerability alerts | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %} | {% data variables.product.product_name %} |{% endif %}{% ifversion dependabot-updates-github-connect %} {% data variables.product.prodname_dependabot_updates %} | Dependencies and the metadata for each dependency's repository

If a dependency is stored in a private repository on {% data variables.product.prodname_dotcom_the_website %}, data will only be transmitted if {% data variables.product.prodname_dependabot %} is configured and authorized to access that repository. | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %} | {% data variables.product.product_name %} {% endif %} {% data variables.product.prodname_dotcom_the_website %} actions | Name of action, action (YAML file from {% data variables.product.prodname_marketplace %}) | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %}

From {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %}{% ifversion server-statistics %} -{% data variables.product.prodname_server_statistics %} | Aggregate {% data variables.product.prodname_ghe_server %} usage metrics
For the list of aggregate metrics collected, see "[{% data variables.product.prodname_server_statistics %} data collected](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." | From {% data variables.product.product_name %} to {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} +{% data variables.product.prodname_server_statistics %} | Aggregate metrics about your usage of {% data variables.product.prodname_ghe_server %}. For the complete list of metrics, see "[About {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." | From {% data variables.product.product_name %} to {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} Unified search | Search terms, search results | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %}

From {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %} | Unified contributions | Contribution counts | From {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.prodname_dotcom_the_website %} | diff --git a/translations/ja-JP/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md b/translations/ja-JP/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md index 223e405fce..cbebea07ba 100644 --- a/translations/ja-JP/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md +++ b/translations/ja-JP/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md @@ -19,6 +19,8 @@ topics: {% data variables.enterprise.management_console %} のホスト名の設定は、適切な完全修飾ドメイン名 (FQDN) に設定して、インターネット上または内部ネットワーク内で解決できるようにしてください。 For example, your hostname setting could be `github.companyname.com.` Web and API requests will automatically redirect to the hostname configured in the {% data variables.enterprise.management_console %}. Note that `localhost` is not a valid hostname setting. +Hostnames must be less than 63 characters in length per [Section 2.3.4 of the Domain Names Specification RFC](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4). + After you configure a hostname, you can enable subdomain isolation to further increase the security of {% data variables.product.product_location %}. 詳しい情報については"[Subdomain Isolationの有効化](/enterprise/admin/guides/installation/enabling-subdomain-isolation/)"を参照してください。 For more information on the supported hostname types, see [Section 2.1 of the HTTP RFC](https://tools.ietf.org/html/rfc1123#section-2). diff --git a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md index 1a0e48a7e4..3f1e658fb4 100644 --- a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md +++ b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md @@ -672,7 +672,7 @@ ghe-repo ユーザ名/reponame {% warning %} -**Warning**: Before using the `--prune` argument to remove unreachable Git objects, put {% data variables.product.product_location %} into maintenance mode, or ensure the repository is offline. 詳しい情報については"[メンテナンスモードの有効化とスケジューリング](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode)"を参照してください。 +**Warning**: Before using the `--prune` argument to remove unreachable Git objects, put {% data variables.product.product_location %} into maintenance mode, or ensure all repositories within the same repository network are locked. 詳しい情報については"[メンテナンスモードの有効化とスケジューリング](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode)"を参照してください。 {% endwarning %} diff --git a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md index 4c539b1e05..42195ffedd 100644 --- a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md +++ b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md @@ -78,6 +78,14 @@ Enterprise オーナーは、通知用のメールを設定できます。 You can enforce TLS encryption for all incoming SMTP connections, which can help satisfy an ISO-27017 certification requirement. +{%- ifversion ghes = 3.6 %} +{% note %} + +**Note**: Enforcement of TLS for SMTP connections is unavailable in {% data variables.product.product_name %} 3.6.0. The feature will be available in an upcoming release. + +{% endnote %} +{%- endif %} + {% data reusables.enterprise_site_admin_settings.email-settings %} 1. Under "Authentication," select **Enforce TLS auth (recommended)**. diff --git a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md index 1d70ad47bd..30b804c836 100644 --- a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md +++ b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md @@ -31,12 +31,15 @@ Azure NSG を使用したインスタンスレベルの制限については、E ## 許可 IP アドレスを追加する +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## {% data variables.product.prodname_github_apps %}によるアクセスの許可 @@ -44,6 +47,8 @@ Azure NSG を使用したインスタンスレベルの制限については、E ## 許可 IP アドレスを有効化する +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -52,6 +57,8 @@ Azure NSG を使用したインスタンスレベルの制限については、E ## 許可 IP アドレスを編集する +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -59,6 +66,18 @@ Azure NSG を使用したインスタンスレベルの制限については、E {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. [**Update**] をクリックします。 +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Checking if an IP address is permitted + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## 許可 IP アドレスを削除する diff --git a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md index e074b64fd8..5bd322dcae 100644 --- a/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md +++ b/translations/ja-JP/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md @@ -131,46 +131,49 @@ Key | Description {% ifversion ghes %} ## Indexing -GitHub's [code search][] features are powered by [ElasticSearch][]. This section of the site admin dashboard shows you the current status of your ElasticSearch cluster and provides you with several tools to control the behavior of searching and indexing. These tools are split into the following three categories. +GitHub's search features are powered by Elasticsearch. This section of the site admin dashboard shows you the current status of your Elasticsearch cluster and provides you with several tools to control search and index behavior. - [Code Search]: https://github.com/blog/1381-a-whole-new-code-search - [ElasticSearch]: http://www.elasticsearch.org/ +For more information about code search, see "[Searching for information on {% data variables.product.prodname_dotcom %}](/search-github)." For more information about Elasticsearch, see the [Elasticsearch website](https://elastic.co). + +{% note %} + +**Note**: In normal use, site administrators do not need to create new indices or schedule repair jobs. For troubleshooting or other support purposes, {% data variables.contact.github_support %} may instruct you to run a repair job. + +{% endnote %} + +### Index management + +{% data variables.product.product_name %} reconciles the state of the search index with data on the instance automatically and regularly. + +- Issues, pull requests, repositories, and users in the database +- Git repositories (source code) on disk + +Your instance uses repair jobs to reconcile the data, and schedules a repair job in the background when the following events occur. + +- A new search index is created. +- Missing data needs to be backfilled. +- Old search data needs to be updated. + +You can create a new index, or you can click on an existing index in the list to manage the index. You can perform the following operations on an index. + +- Make the index searchable. +- Make the index writable. +- Update the index. +- Delete the index +- Reset the index repair state. +- Start a new index repair job. +- Enable or disable index repair jobs. + +A progress bar shows the current status of a repair job across background workers. The bar is the percentage difference of the repair offset with the highest record ID in the database. You can ignore the value shown in the progress bar after a repair job has completed. The progress bar shows the difference between the repair offset and the highest record ID in the database, and will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. + +To minimize the effects on I/O performance and reduce the chances of operations timing out, run the repair job during off-peak hours. As the job reconciles the search index with database and Git repository data, one CPU will be used. Monitor your system's load averages and CPU usage with a utility like `top`. If you don't notice any significant increase in resource consumption, it should also be safe to run an index repair job during peak hours. + +Repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. ### Code search This allows you to enable or disable both search and index operations on source code. -### Code search index repair - -This controls how the code search index is repaired. You can - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state - -{% data variables.product.prodname_enterprise %} uses repair jobs to reconcile the state of the search index with data stored in a database (issues, pull requests, repositories, and users) and data stored in Git repositories (source code). This happens when - -- a new search index is created; -- missing data needs to be backfilled; or -- old search data needs to be updated. - -In other words, repair jobs are started as needed and run in the background—they are not scheduled by site admins in any way. - -Furthermore, repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. - -A progress bar shows the current status of a repair job across all of its background workers. It is the percentage difference of the repair offset with the highest record ID in the database. Don't worry about the value shown in the progress bar after a repair job has completed: because it shows the difference between the repair offset and the highest record ID in the database, it will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. - -You can start a new code-search index repair job at any time. It will use a single CPU as it reconciles the search index with database and Git repository data. To minimize the effects this will have on I/O performance and reduce the chances of operations timing out, try to run a repair job during off-peak hours first. Monitor your system's load averages and CPU usage with a utility like `top`; if you don't notice any significant changes, it should be safe to run an index repair job during peak hours, as well. - -### Issues index repair - -This controls how the [Issues][] index is repaired. You can - - [Issues]: https://github.com/blog/831-issues-2-0-the-next-generation - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state {% endif %} ## Reserved logins diff --git a/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md b/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md index f973191794..9466611747 100644 --- a/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md +++ b/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md @@ -20,7 +20,7 @@ shortTitle: Create HA replica ## High Availabilityレプリカの作成 1. 新しい {% data variables.product.prodname_ghe_server %} アプライアンスを希望するプラットフォームにセットアップします。 レプリカアプライアンスのCPU、RAM、ストレージ設定は、プライマリアプライアンスと同じにするべきです。 レプリカアプライアンスは、独立した環境にインストールすることをお勧めします。 下位層のハードウェア、ソフトウェア、ネットワークコンポーネントは、プライマリアプライアンスのそれらとは分離されているべきです。 クラウドプロバイダを利用している場合には、別個のリージョンもしくはゾーンを使ってください。 詳細は「["{% data variables.product.prodname_ghe_server %} インスタンスをセットアップする](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance)」を参照してください。 -1. Ensure that both the primary appliance and the new replica appliance can communicate with each other over ports 122/TCP and 1194/UDP. 詳しい情報については"[ネットワークポート](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)"を参照してください。 +1. Ensure that the new appliance can communicate with all other appliances in this high availability environment over ports 122/TCP and 1194/UDP. 詳しい情報については"[ネットワークポート](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)"を参照してください。 1. ブラウザで新しいレプリカアプライアンスのIPアドレスにアクセスして、所有する{% data variables.product.prodname_enterprise %}のライセンスをアップロードしてください。 {% data reusables.enterprise_installation.replica-steps %} 1. SSHを使ってレプリカアプライアンスのIPアドレスに接続してください。 diff --git a/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md b/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md index bd057690de..26c77b37b9 100644 --- a/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md +++ b/translations/ja-JP/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md @@ -15,7 +15,7 @@ topics: shortTitle: Initiate failover to appliance --- -フェイルオーバーに必要な時間は、レプリカを手動で昇格させてトラフィックをリダイレクトするのにかかる時間によって異なります。 平均的な時間は 2 分から 10 分です。 +フェイルオーバーに必要な時間は、レプリカを手動で昇格させてトラフィックをリダイレクトするのにかかる時間によって異なります。 平均的な時間は 20 分から 30 分です。 {% data reusables.enterprise_installation.promoting-a-replica %} diff --git a/translations/ja-JP/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md b/translations/ja-JP/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md index 2dab1e7ae7..3d2f8d9e29 100644 --- a/translations/ja-JP/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md +++ b/translations/ja-JP/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md @@ -83,7 +83,7 @@ You can create a runner group to manage access to the runner that you added to y {% data variables.product.product_name %} adds all new runners to a group. Runners can be in one group at a time. By default, {% data variables.product.product_name %} adds new runners to the "Default" group. -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} 1. To choose a policy for organization access, under "Organization access", select the **Organization access** drop-down, and click **Selected organizations**. 1. To the right of the drop-down with the organization access policy, click {% octicon "gear" aria-label="The Gear icon" %}. 1. Select the organizations you'd like to grant access to the runner group. @@ -100,7 +100,7 @@ You can create a runner group to manage access to the runner that you added to y {% endwarning %} {%- endif %} -{% data reusables.actions.self-hosted-runner-create-group %} +{% data reusables.actions.create-runner-group %} {%- ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} 1. Click the "Runners" tab. 1. In the list of runners, click the runner that you deployed in the previous section. diff --git a/translations/ja-JP/content/admin/guides.md b/translations/ja-JP/content/admin/guides.md index 7c7bd4d10c..ce248970b6 100644 --- a/translations/ja-JP/content/admin/guides.md +++ b/translations/ja-JP/content/admin/guides.md @@ -45,6 +45,7 @@ includeGuides: - /admin/configuration/configuring-built-in-firewall-rules - /admin/configuration/configuring-code-scanning-for-your-appliance - /admin/configuration/configuring-data-encryption-for-your-enterprise + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance - /admin/configuration/configuring-dns-nameservers - /admin/configuration/configuring-rate-limits - /admin/configuration/configuring-secret-scanning-for-your-appliance diff --git a/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md b/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md index 2bbd327b5a..b2a5d8490c 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md @@ -45,7 +45,7 @@ If you use a standalone organization with {% data variables.product.product_name ### Authentication with {% data variables.product.prodname_emus %} and federation -If you need more control of the accounts for your enterprise members on {% data variables.product.product_location %}, you can use {% data variables.product.prodname_emus %}. With {% data variables.product.prodname_emus %}, you provision and manage accounts for your enterprise members on {% data variables.product.product_location %} using your IdP. Each member signs into an account that you create, and your enterprise manages the account. Contributions to the rest of {% data variables.product.prodname_dotcom_the_website %} are restricted. For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)." +If you need more control of the accounts for your enterprise members on {% data variables.product.product_location %}, you can use {% data variables.product.prodname_emus %}. With {% data variables.product.prodname_emus %}, you provision and manage accounts for your enterprise members on {% data variables.product.product_location %} using your IdP. Each member signs into an account that you create, and your enterprise manages the account. Contributions to the rest of {% data variables.product.prodname_dotcom_the_website %} are restricted. 詳しい情報については「[{% data variables.product.prodname_emus %}について](/admin/identity-and-access-management/using-enterprise-managed-users-and-saml-for-iam/about-enterprise-managed-users)」を参照してください。 ## Identifying the best authentication method for your enterprise @@ -82,7 +82,11 @@ These restrictions are unacceptable for some enterprises. To determine whether { ### Do your developers rely on collaboration outside of your enterprise? -{% data variables.product.prodname_managed_users_caps %} can only contribute to repositories within your enterprise. If your developers need to collaborate in repositories outside your enterprise, even private repositories, to complete their work, {% data variables.product.prodname_emus %} may not be right for your enterprise, and SAML SSO may be a better solution. +{% data variables.product.prodname_managed_users_caps %} can only contribute to repositories within your enterprise. If your developers must contribute to both repositories within and outside of your enterprise, including private repositories, {% data variables.product.prodname_emus %} may not be right for your enterprise. SAML SSO may be a better solution. + +Some companies maintain repositories within an existing enterprise using SAML SSO on {% data variables.product.product_location %}, and also create an {% data variables.product.prodname_emu_enterprise %}. Developers who contribute to repositories owned by both enterprises from a single workstation must switch between the accounts on {% data variables.product.product_location %} within a single browser, or use a different browser for each account. The developer may also need to customize the workstation's Git configuration to accommodate the two accounts. The complexity of this workflow can increase the risk of mistakenly leaking internal code to the public. + +If you decide to create an {% data variables.product.prodname_emu_enterprise %} but require that developers contribute to resources outside of the enterprise from a single workstation, you can provide support for switching between the accounts in a developer's local Git configuration. 詳しい情報については「[{% data variables.product.prodname_emus %}について](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#supporting-developers-with-multiple-user-accounts-on-githubcom)」を参照してください。 ### Does your enterprise rely on outside collaborators? diff --git a/translations/ja-JP/content/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/accessing-your-enterprise-account-if-your-identity-provider-is-unavailable.md b/translations/ja-JP/content/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/accessing-your-enterprise-account-if-your-identity-provider-is-unavailable.md index 9e98bc2594..53dada8349 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/accessing-your-enterprise-account-if-your-identity-provider-is-unavailable.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/accessing-your-enterprise-account-if-your-identity-provider-is-unavailable.md @@ -15,7 +15,7 @@ permissions: Enterprise owners can use a recovery code to access an enterprise a You can use a recovery code to access your enterprise account when an authentication configuration error or an issue with your identity provider (IdP) prevents you from using SSO. -In order to access your enterprise account this way, you must have previously downloaded and stored the recovery codes for your enterprise. For more information, see "[Downloading your enterprise account's single sign-on recovery codes](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)." +In order to access your enterprise account this way, you must have previously downloaded and stored the recovery codes for your enterprise. 詳しい情報については「[Enterpriseアカウントのシングルサインオンリカバリコードのダウンロード](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)」を参照してください。 {% data reusables.saml.recovery-code-caveats %} diff --git a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 4f6da52c8b..c39730012a 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -36,8 +36,6 @@ You can grant {% data variables.product.prodname_managed_users %} access to and The usernames of your enterprise's {% data variables.product.prodname_managed_users %} and their profile information, such as display names and email addresses, are set by through your IdP and cannot be changed by the users themselves. For more information, see "[Usernames and profile information](#usernames-and-profile-information)." -{% data reusables.enterprise-accounts.emu-forks %} - Enterprise owners can audit all of the {% data variables.product.prodname_managed_users %}' actions on {% data variables.product.prodname_dotcom %}. For more information, see "[Audit log events for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise#about-audit-log-events-for-your-enterprise)." To use {% data variables.product.prodname_emus %}, you need a separate type of enterprise account with {% data variables.product.prodname_emus %} enabled. For more information about creating this account, see "[About enterprises with managed users](#about-enterprises-with-managed-users)." @@ -75,7 +73,8 @@ To use {% data variables.product.prodname_emus %}, you need a separate type of e * {% data variables.product.prodname_managed_users_caps %} cannot create gists or comment on gists. * {% data variables.product.prodname_managed_users_caps %} cannot install {% data variables.product.prodname_github_apps %} on their user accounts. * Other {% data variables.product.prodname_dotcom %} users cannot see, mention, or invite a {% data variables.product.prodname_managed_user %} to collaborate. -* {% data variables.product.prodname_managed_users_caps %} can only own private repositories and {% data variables.product.prodname_managed_users %} can only invite other enterprise members to collaborate on their owned repositories. +* You can choose whether {% data variables.product.prodname_managed_users %} are able to create repositories owned by their user accounts. 詳しい情報については、「[Enterprise でのリポジトリ管理ポリシーを適用する](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-repository-creation)」を参照してください。 +* If you allow {% data variables.product.prodname_managed_users %} to create repositories owned by their user accounts, they can only own private repositories and can only invite other enterprise members to collaborate on their user-owned repositories. * {% data reusables.enterprise-accounts.emu-forks %} * Only private and internal repositories can be created in organizations owned by an {% data variables.product.prodname_emu_enterprise %}, depending on organization and enterprise repository visibility settings. * {% data variables.product.prodname_managed_users_caps %} are limited in their use of {% data variables.product.prodname_pages %}. 詳しい情報については、「[{% data variables.product.prodname_pages %} について](/pages/getting-started-with-github-pages/about-github-pages#limitations-for-enterprise-managed-users)」を参照してください。 @@ -113,6 +112,8 @@ Before your developers can use {% data variables.product.prodname_ghe_cloud %} w 5. Once authentication and provisioning are configured, you can start provisioning members and managing teams. For more information, see "[Managing team memberships with identity provider groups](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups)." +If members of your enterprise must use one workstation to contribute to repositories on {% data variables.product.product_location %} from both a {% data variables.product.prodname_managed_user %} and a personal account, you can provide support. For more information, see "[Supporting developers with multiple user accounts on {% data variables.product.prodname_dotcom_the_website %}](#supporting-developers-with-multiple-user-accounts-on-githubcom)." + ## {% data variables.product.prodname_managed_user %} として認証を行う {% data variables.product.prodname_managed_users_caps %} must authenticate through their identity provider. To authenticate, a {% data variables.product.prodname_managed_user %} can visit their IdP application portal or use the login page on {% data variables.product.prodname_dotcom_the_website %}. @@ -132,3 +133,9 @@ Before your developers can use {% data variables.product.prodname_ghe_cloud %} w A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)." The profile name and email address of a {% data variables.product.prodname_managed_user %} is also provided by the IdP. {% data variables.product.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address. + +## Supporting developers with multiple user accounts on {% data variables.product.product_location %} + +People on your team may need to contribute to resources on {% data variables.product.product_location %} that are outside of your {% data variables.product.prodname_emu_enterprise %}. For example, you may wish to maintain a separate enterprise for your company's open source projects. Because a {% data variables.product.prodname_managed_user %} cannot contribute to public resources, users will need to maintain a separate, personal account for this work. + +People who must contribute from two user accounts on {% data variables.product.product_location %} using one workstation can configure Git to simplify the process. For more information, see "[Managing multiple accounts](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts)." diff --git a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md index 567cf18724..fc6e984083 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md @@ -22,9 +22,11 @@ CAP support is enabled automatically for any {% data variables.product.prodname_ For more information about using OIDC with {% data variables.product.prodname_emus %}, see "[Configuring OIDC for Enterprise Managed Users](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users)" and "[Migrating from SAML to OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)." -## About using CAP with IP allow lists +{% note %} -We recommend disabling your enterprise account's IP allow list and relying on your IdP's CAP. If you enable IP allow lists for your enterprise and also make use of your IdP's CAP, both the IP allow list and CAP will be enforced. If either restriction rejects a user's IP address, the request fails. For more information about IP allow lists, 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)." +**Note:** If you use Conditional Access (CA) network location policies in your Azure AD tenant, do not use the IP allow list feature on {% data variables.product.prodname_dotcom_the_website %}, with your enterprise account or with any of the organizations owned by the enterprise. Using both is unsupported and can result in the wrong policy applying. For more information about IP allow lists, see "[Enforcing 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)" and "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)." + +{% endnote %} ## Considerations for integrations and automations diff --git a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md index 273f3e7263..c88833c1d5 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md @@ -26,11 +26,12 @@ If you're new to {% data variables.product.prodname_emus %} and haven't yet conf {% note %} -**Note:** To sign in as the setup user, you will need a recovery code. If you do not already have your recovery codes, you can access the codes while signed in as an enterprise owner. For more information, see "[Downloading your enterprise account's single sign-on recovery codes](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)." +**Note:** To sign in as the setup user, you will need a recovery code. If you do not already have your recovery codes, you can access the codes while signed in as an enterprise owner. 詳しい情報については「[Enterpriseアカウントのシングルサインオンリカバリコードのダウンロード](/admin/identity-and-access-management/managing-recovery-codes-for-your-enterprise/downloading-your-enterprise-accounts-single-sign-on-recovery-codes)」を参照してください。 {% endnote %} 1. Before you begin the migration, sign in to Azure and disable provisioning in the existing {% data variables.product.prodname_emu_idp_application %} application. +1. If you use [Conditional Access (CA) network location policies](https://docs.microsoft.com/en-us/azure/active-directory/conditional-access/location-condition) in Azure AD, and you're currently using an IP allow list with your enterprise account or any of the organizations owned by the enterprise account on {% data variables.product.prodname_dotcom_the_website %}, disable the IP allow lists. For more information, see "[Enforcing 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)" and "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)." 1. Sign into {% data variables.product.prodname_dotcom_the_website %} as the setup user for your enterprise with the username **@SHORT-CODE_admin**. 1. When prompted to continue to your identity provider, click **Use a recovery code** and sign in using one of your enterprise's recovery codes. {% data reusables.enterprise-accounts.access-enterprise %} diff --git a/translations/ja-JP/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md b/translations/ja-JP/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md index 753fcca38a..d17cfa8c89 100644 --- a/translations/ja-JP/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md +++ b/translations/ja-JP/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md @@ -77,7 +77,7 @@ The following SAML attributes are available for {% data variables.product.produc | Name | Required? | Description | | :- | :- | :- | -| `NameID` | Yes | A persistent user identifier. Any persistent name identifier format may be used. {% ifversion ghec %}If you use an enterprise with {% data variables.product.prodname_emus %}, {% endif %}{% data variables.product.product_name %} will normalize the `NameID` element to use as a username unless one of the alternative assertions is provided. For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)." | +| `NameID` | Yes | A persistent user identifier. Any persistent name identifier format may be used. {% ifversion ghec %}If you use an enterprise with {% data variables.product.prodname_emus %}, {% endif %}{% data variables.product.product_name %} will normalize the `NameID` element to use as a username unless one of the alternative assertions is provided. For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)."

{% note %}**Note:** It's important to use a human-readable, persistent identifier. Using a transient identifier format like `urn:oasis:names:tc:SAML:2.0:nameid-format:transient` will result in re-linking of accounts on every sign-in, which can be detrimental to authorization management.{% endnote %} | | `SessionNotOnOrAfter` | No | The date that {% data variables.product.product_name %} invalidates the associated session. After invalidation, the person must authenticate once again to access {% ifversion ghec or ghae %}your enterprise's resources{% elsif ghes %}{% data variables.product.product_location %}{% endif %}. For more information, see "[Session duration and timeout](#session-duration-and-timeout)." | {%- ifversion ghes or ghae %} | `administrator` | No | When the value is `true`, {% data variables.product.product_name %} will automatically promote the user to be a {% ifversion ghes %}site administrator{% elsif ghae %}enterprise owner{% endif %}. Setting this attribute to anything but `true` will result in demotion, as long as the value is not blank. Omitting this attribute or leaving the value blank will not change the role of the user. | diff --git a/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md b/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md index 82ae28f7a5..f548ac98b4 100644 --- a/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md +++ b/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md @@ -44,7 +44,8 @@ You set up the audit log stream on {% data variables.product.product_name %} by - [Amazon S3](#setting-up-streaming-to-amazon-s3) - [Azure Blob Storage](#setting-up-streaming-to-azure-blob-storage) -- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs) +- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs){% ifversion streaming-datadog %} +- [Datadog](#setting-up-streaming-to-datadog){% endif %} - [Google Cloud Storage](#setting-up-streaming-to-google-cloud-storage) - [Splunk](#setting-up-streaming-to-splunk) @@ -60,7 +61,7 @@ You can set up streaming to S3 with access keys or, to avoid storing long-lived #### Setting up streaming to S3 with access keys {% endif %} -To stream audit logs to Amazon's S3 endpoint, you must have a bucket and access keys. For more information, see [Creating, configuring, and working with Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) in the the AWS documentation. Make sure to block public access to the bucket to protect your audit log information. +To stream audit logs to Amazon's S3 endpoint, you must have a bucket and access keys. For more information, see [Creating, configuring, and working with Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) in the AWS documentation. Make sure to block public access to the bucket to protect your audit log information. To set up audit log streaming from {% data variables.product.prodname_dotcom %} you will need: * The name of your Amazon S3 bucket @@ -231,6 +232,32 @@ You need two pieces of information about your event hub: its instance name and t {% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +{% ifversion streaming-datadog %} +### Setting up streaming to Datadog + +To set up streaming to Datadog, you must create a client token or an API key in Datadog, then configure audit log streaming in {% data variables.product.product_name %} using the token for authentication. You do not need to create a bucket or other storage container in Datadog. + +After you set up streaming to Datadog, you can see your audit log data by filtering by "github.audit.streaming." For more information, see [Log Management](https://docs.datadoghq.com/logs/). + +1. If you don't already have a Datadog account, create one. +1. In Datadog, generate a client token or an API key, then click **Copy key**. For more information, see [API and Application Keys](https://docs.datadoghq.com/account_management/api-app-keys/) in Datadog Docs. +{% data reusables.enterprise.navigate-to-log-streaming-tab %} +1. Select the **Configure stream** dropdown menu and click **Datadog**. + + ![Screenshot of the "Configure stream" dropdown menu with "Datadog" highlighted](/assets/images/help/enterprises/audit-stream-choice-datadog.png) +1. Under "Token", paste the token you copied earlier. + + ![Screenshot of the "Token" field](/assets/images/help/enterprises/audit-stream-datadog-token.png) +1. Select the "Site" dropdown menu and click your Datadog site. To determine your Datadog site, compare your Datadog URL to the table in [Datadog sites](https://docs.datadoghq.com/getting_started/site/) in Datadog Docs. + + ![Screenshot of the "Site" dropdown menu](/assets/images/help/enterprises/audit-stream-datadog-site.png) +1. To verify that {% data variables.product.prodname_dotcom %} can connect and write to the Datadog endpoint, click **Check endpoint**. + + ![エンドポイントのチェック](/assets/images/help/enterprises/audit-stream-check.png) +{% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +1. After a few minutes, confirm that audit log data is appearing on the **Logs** tab in Datadog. If audit log data is not appearing, confirm that your token and site are correct in {% data variables.product.prodname_dotcom %}. +{% endif %} + ### Setting up streaming to Google Cloud Storage To set up streaming to Google Cloud Storage, you must create a service account in Google Cloud with the appropriate credentials and permissions, then configure audit log streaming in {% data variables.product.product_name %} using the service account's credentials for authentication. @@ -291,6 +318,10 @@ To stream audit logs to Splunk's HTTP Event Collector (HEC) endpoint you must ma Pausing the stream allows you to perform maintenance on the receiving application without losing audit data. Audit logs are stored for up to seven days on {% data variables.product.product_location %} and are then exported when you unpause the stream. +{% ifversion streaming-datadog %} +Datadog only accepts logs from up to 18 hours in the past. If you pause a stream to a Datadog endpoint for more than 18 hours, you risk losing logs that Datadog won't accept after you resume streaming. +{% endif %} + {% data reusables.enterprise.navigate-to-log-streaming-tab %} 1. Click **Pause stream**. diff --git a/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md b/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md index 969d9ecc64..2930524ca1 100644 --- a/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md +++ b/translations/ja-JP/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md @@ -121,7 +121,7 @@ For more information about the audit log REST API, see "[Enterprise administrati The query below searches for audit log events created on Jan 1st, 2022 in the `avocado-corp` enterprise, and return the first page with a maximum of 100 items per page using [REST API pagination](/rest/overview/resources-in-the-rest-api#pagination): ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&page=1&per_page=100" ``` @@ -133,7 +133,7 @@ You can specify multiple search phrases, such as `created` and `actor`, by separ The query below searches for audit log events for pull requests, where the event occurred on or after Jan 1st, 2022 in the `avocado-corp` enterprise, and the action was performed by the `octocat` user: ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat" ``` diff --git a/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md b/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md index 423c60d41d..c6c4391149 100644 --- a/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md +++ b/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md @@ -77,12 +77,17 @@ Enterprise owners can restrict access to private assets owned by organizations i ### 許可 IP アドレスを追加する +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ### {% data variables.product.prodname_github_apps %}によるアクセスの許可 @@ -90,6 +95,8 @@ Enterprise owners can restrict access to private assets owned by organizations i ### 許可 IP アドレスを有効化する +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -98,6 +105,8 @@ Enterprise owners can restrict access to private assets owned by organizations i ### 許可 IP アドレスを編集する +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -105,6 +114,18 @@ Enterprise owners can restrict access to private assets owned by organizations i {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. [**Update**] をクリックします。 +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +### Checking if an IP address is permitted + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ### 許可 IP アドレスを削除する @@ -124,13 +145,13 @@ Enterprise owners can restrict access to private assets owned by organizations i ## 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 %}詳しい情報については、「[SSS 認証局について](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)」を参照してください。 +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 %}詳細については、「[SSH認証局について](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)」を参照してください。 {% data reusables.organizations.add-extension-to-cert %} ### SSH 認証局を追加する -If you require SSH certificates for your enterprise, enterprise members should use a special URL for Git operations over SSH. 詳しい情報については、「[SSH 認証局について](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities#about-ssh-urls-with-ssh-certificates)」を参照してください。 +EnterpriseでSSH証明書が必要な場合、EnterpriseのメンバーはSSH経由のGitの操作に特別なURLを使わなければなりません。 詳しい情報については、「[SSH 認証局について](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities#about-ssh-urls-with-ssh-certificates)」を参照してください。 {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} diff --git a/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md b/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md index 65a9d2af70..91be9722aa 100644 --- a/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md +++ b/translations/ja-JP/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md @@ -71,24 +71,28 @@ Enterprise オーナーがメンバーによる特定のタイプのリポジト {% endif %} -## Enforcing a policy for {% ifversion ghec or ghes or ghae %}base{% else %}default{% endif %} repository permissions +## Enforcing a policy for base repository permissions -Across all organizations owned by your enterprise, you can set a {% ifversion ghec or ghes or ghae %}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. +Across all organizations owned by your enterprise, 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 %} {% data reusables.enterprise-accounts.repositories-tab %} -4. Under "{% ifversion ghec or ghes or ghae %}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 or ghae %}Base{% else %}Default{% endif %} permissions", use the drop-down menu and choose a policy. - {% ifversion ghec or ghes or ghae %} - ![リポジトリ権限ポリシーオプションのドロップダウンメニュー](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) - {% else %} - ![リポジトリ権限ポリシーオプションのドロップダウンメニュー](/assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png) - {% endif %} +4. 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. ![リポジトリ権限ポリシーオプションのドロップダウンメニュー](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) + ## Enforcing 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. メンバーにリポジトリの作成を許可する場合は、パブリック、プライベート、内部の各リポジトリをどう組み合わせて作成するかを任意に選択できます。 {% data reusables.repositories.internal-repo-default %} 詳しい情報については「[内部リポジトリを作成する](/articles/creating-an-internal-repository)」を参照してください。 +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 in your organizations, you can choose which types of repositories (public, private, and internal) that members can create. + +{% ifversion enterprise-namespace-repo-setting %} +{% ifversion ghec %}If your enterprise uses {% data variables.product.prodname_emus %}, you{% else %}You{% endif %} can also prevent users from creating repositories owned by their user accounts. +{% endif %} + +{% data reusables.repositories.internal-repo-default %} 詳しい情報については「[内部リポジトリを作成する](/articles/creating-an-internal-repository)」を参照してください。 {% data reusables.organizations.repo-creation-constants %} @@ -96,33 +100,32 @@ Across all organizations owned by your enterprise, you can allow members to crea {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} 5. [Repository creation] で、設定変更に関する情報を読みます。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -{% ifversion ghes or ghae or ghec %} {% data reusables.enterprise-accounts.repo-creation-policy %} -{% data reusables.enterprise-accounts.repo-creation-types %} -{% else %} -6. [Repository creation(リポジトリの作成)] で、ドロップダウンメニューを使用してポリシーを選択します。 - - ![リポジトリ作成ポリシーのドロップダウンメニュー](/assets/images/enterprise/site-admin-settings/repository-creation-drop-down.png) -{% endif %} +{% data reusables.enterprise-accounts.repo-creation-types %}{% ifversion enterprise-namespace-repo-setting %} +1. Optionally, {% ifversion ghec %}if your enterprise uses {% data variables.product.prodname_emus %} and you want {% endif %}to prevent enterprise members from creating repositories owned by their user accounts, select **Block the creation of user namespace repositories**. ![Screenshot showing the list of disabled options from forking policy](/assets/images/help/business-accounts/restrict-personal-namespace-enabled-setting.png){% endif %} ## Enforcing a policy for forking private or internal repositories Enterprise が所有しているすべての Organization 全体で、ユーザーにリポジトリのフォーク用にプライベートまたは内部リポジトリへのアクセスを許可したり、プライベートまたは内部リポジトリのフォークを一切禁止したり、オーナーが Organization レベルで設定を管理できるようにしたりすることができます。 +{% ifversion enterprise-namespace-repo-setting %} +{% note %} + +**Note:** If {% ifversion ghec %}your enterprise uses {% data variables.product.prodname_emus %} and {% endif %}your "Repository creation" policy prevents enterprise members from creating repositories owned by their user accounts, members will not be allowed to fork a repository in their user accounts, regardless of your "Repository forking" policy. + +{% endnote %} +{% endif %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% 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. [Repository forking] で、ドロップダウンメニューを使用してポリシーを選択します。 - ![リポジトリ フォーク ポリシー オプションのドロップダウンメニュー](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png) - -{% ifversion innersource-fork-policies %} + ![リポジトリ フォーク ポリシー オプションのドロップダウンメニュー](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png){% ifversion innersource-fork-policies %} 5. If forking is enabled, you can specify where users are allowed to fork repositories. Review the information about changing the setting and choose a policy. - ![Screenshot showing the list of repository forking policy options](/assets/images/help/business-accounts/repository-forking-policy-settings.png) -{% endif %} - + ![Screenshot showing the list of repository forking policy options](/assets/images/help/business-accounts/repository-forking-policy-settings.png){% endif %} ## Enforcing a policy for inviting{% ifversion ghec %} outside{% endif %} collaborators to repositories @@ -140,8 +143,6 @@ Across all organizations owned by your enterprise, you can allow members to invi ![Drop-down menu with invitation policy options](/assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png) {% endif %} -{% ifversion ghec or ghes 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. すべての Organization 全体でそのデフォルトブランチ名を施行することも、Organization ごとに異なる名前を設定することもできます。 @@ -152,8 +153,6 @@ Across all organizations owned by your enterprise, you can set the default branc 4. オプションで、Enterprise のすべての Organization に対してデフォルトブランチ名を施行する場合は [**Enforce across this enterprise**] を選択します。 ![[Enforcement] チェックボックス](/assets/images/help/business-accounts/default-branch-name-enforce.png) 5. [**Update**] をクリックします。 ![[Update] ボタン](/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. メンバーがリポジトリの可視性を変更できないようにした場合、Enterprise のオーナーのみがリポジトリの可視性を変更できます。 @@ -163,9 +162,8 @@ Enterprise のオーナーがリポジトリの作成を Organization のオー {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} -5. [Repository visibility change] で、設定変更についての情報を確認します。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} - -{% data reusables.enterprise-accounts.repository-visibility-policy %} +1. [Repository visibility change] で、設定変更についての情報を確認します。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +1. "Repository visibility change(リポジトリの可視性の変更)"の下で、ドロップダウンメニューを使ってポリシーを選択してください。 ![リポジトリの可視性のポリシーの選択肢があるドロップダウンメニュー](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) ## Enforcing a policy for repository deletion and transfer diff --git a/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md b/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md index 77c7fffea0..d3757186db 100644 --- a/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md +++ b/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md @@ -44,7 +44,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * A [list of the repositories](/free-pro-team@latest/rest/repos#list-organization-repositories) you want to migrate: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X POST \ -H "Accept: application/vnd.github+json" \ -d'{"lock_repositories":true,"repositories":["orgname/reponame", "orgname/reponame"]}' \ @@ -59,7 +59,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id ``` @@ -74,7 +74,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ -L -o migration_archive.tar.gz \ https://api.github.com/orgs/orgname/migrations/id/archive @@ -84,7 +84,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X DELETE \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id/archive diff --git a/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md b/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md index 7d9124d0eb..b8a38edae4 100644 --- a/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md +++ b/translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md @@ -134,7 +134,7 @@ $ ghe-migrator audit -s failed_import,failed_map,failed_rename,failed_merge -g < * 移行のユニーク`id` * アンロックするリポジトリの名前 ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ -H "Accept: application/vnd.github.wyandotte-preview+json" \ https://api.github.com/orgs/orgname/migrations/id/repos/repo_name/lock ``` @@ -143,7 +143,7 @@ curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ {% data variables.product.prodname_dotcom_the_website %} Organization のリポジトリをロック解除した後、[リポジトリ削除エンドポイント](/rest/repos/#delete-a-repository)を使用して以前に移行したすべてのリポジトリを削除する必要があります。 認証のためのアクセストークンが必要になります。 ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ https://api.github.com/repos/orgname/repo_name ``` diff --git a/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/about-ssh.md b/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/about-ssh.md index 5293b50d56..acd9b5e15c 100644 --- a/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/about-ssh.md +++ b/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/about-ssh.md @@ -1,6 +1,6 @@ --- title: SSH について -intro: 'SSH プロトコルを利用すれば、リモートのサーバーやサービスに接続し、認証を受けられます。 SSH キーを使用すると、アクセスのたびにユーザ名と個人アクセストークンを入力することなく {% data variables.product.product_name %} に接続できます。' +intro: 'SSH プロトコルを利用すれば、リモートのサーバーやサービスに接続し、認証を受けられます。 With SSH keys, you can connect to {% data variables.product.product_name %} without supplying your username and personal access token at each visit.{% ifversion ssh-commit-verification %} You can also use an SSH key to sign commits.{% endif %}' redirect_from: - /articles/about-ssh - /github/authenticating-to-github/about-ssh @@ -16,7 +16,7 @@ topics: {% data reusables.ssh.about-ssh %} For more information about SSH, see [Secure Shell](https://en.wikipedia.org/wiki/Secure_Shell) on Wikipedia. -When you set up SSH, you will need to generate a new private SSH key and add it to the SSH agent. You must also add the public SSH key to your account on {% data variables.product.product_name %} before you use the key to authenticate. 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)" and "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)." +When you set up SSH, you will need to generate a new private SSH key and add it to the SSH agent. You must also add the public SSH key to your account on {% data variables.product.product_name %} before you use the key to authenticate{% ifversion ssh-commit-verification %} or sign commits{% 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)"{% ifversion ssh-commit-verification %}, {% else %} and{% endif %} "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account){% ifversion ssh-commit-verification %}" and "[About commit signature verification](/articles/about-commit-signature-verification){% endif %}." 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. 詳しい情報については[SSH キーのパスフレーズを使う](/github/authenticating-to-github/working-with-ssh-key-passphrases)を参照してください。 @@ -33,7 +33,6 @@ Organizations that use {% data variables.product.prodname_ghe_cloud %} can provi {% else ghec or ghes or ghae %} 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_name %}. You cannot use your certificate to access forks of the organization's repositories, if the forks is owned by your personal account. 詳しい情報については「[SSH認証局について](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)」を参照してください。 {% endif %} - ## 参考リンク - [SSH のトラブルシューティング](/articles/troubleshooting-ssh) diff --git a/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md b/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md index 06825e0163..36719a9de4 100644 --- a/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md +++ b/translations/ja-JP/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md @@ -19,6 +19,8 @@ shortTitle: Add a new SSH key {% data reusables.ssh.about-ssh %} For more information, see "[About SSH](/authentication/connecting-to-github-with-ssh/about-ssh)." +{% ifversion ssh-commit-verification %}You can also use SSH to sign commits and tags. For more information about commit signing, see "[About commit signature verification](/articles/about-commit-signature-verification)."{% endif %} + After you generate an SSH key pair, you must add the public key to {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} to enable SSH access for your account. ## 必要な環境 @@ -30,111 +32,45 @@ Before adding a new SSH key to your account on {% ifversion ghae %}{% data varia ## Adding a new SSH key to your account -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. 詳しい情報については[リモート URL の HTTPS から SSH への切り替え](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)を参照してください。 +After adding a new SSH authentication 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. 詳しい情報については[リモート URL の HTTPS から SSH への切り替え](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)を参照してください。 {% data reusables.ssh.key-type-support %} -{% mac %} - {% webui %} -1. SSH 公開鍵をクリップボードにコピーします。 - - SSH 公開鍵のファイル名がサンプルコードと異なる場合は、現在の設定に一致するようにファイル名を変更してください。 キーをコピーする際には、改行や空白を追加しないでください。 - - ```shell - $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **ヒント:** `pbcopy` がうまく動作しない場合は、隠れフォルダ `.ssh` にアクセスし、使い慣れたテキストエディタでこのファイルを開き、クリップボードにコピーしてください。 - - {% endtip %} - +{% data reusables.gpg.copy-ssh-public-key %} {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.ssh %} -4. [**New SSH key**] または [**Add SSH key**] をクリックします。 ![SSH キーボタン](/assets/images/help/settings/ssh-add-ssh-key.png) -5. [Title] フィールドで、新しいキーを説明するラベルを追加します。 たとえば、個人のMacを使っているなら、このキーを「Personal MacBook Air」とすることができるでしょう。 -6. キーを [Key] フィールドに貼り付けます。 ![キーフィールド](/assets/images/help/settings/ssh-key-paste.png) -7. **[Add SSH key]** をクリックしてください。 ![キーの追加ボタン](/assets/images/help/settings/ssh-add-key.png) +4. [**New SSH key**] または [**Add SSH key**] をクリックします。 +{% ifversion ssh-commit-verification %} + ![SSH キーボタン](/assets/images/help/settings/ssh-add-ssh-key-with-auth.png) +{% else %} + ![SSH キーボタン](/assets/images/help/settings/ssh-add-ssh-key.png) +{% endif %} +5. [Title] フィールドで、新しいキーを説明するラベルを追加します。 For example, if you're using a personal laptop, you might call this key "Personal laptop". +{% ifversion ssh-commit-verification %} +6. Select the type of key, either authentication or signing. For more information about commit signing, see "[About commit signature verification](/articles/about-commit-signature-verification)." +{% endif %} +7. キーを [Key] フィールドに貼り付けます。 +{% ifversion ssh-commit-verification %} + ![キーフィールド](/assets/images/help/settings/ssh-key-paste-with-type.png) +{% else %} + ![キーフィールド](/assets/images/help/settings/ssh-key-paste.png) +{% endif %} +8. **[Add SSH key]** をクリックしてください。 ![キーの追加ボタン](/assets/images/help/settings/ssh-add-key.png) {% data reusables.user-settings.sudo-mode-popup %} {% endwebui %} -{% endmac %} - -{% windows %} - -{% webui %} - -1. SSH 公開鍵をクリップボードにコピーします。 - - SSH 公開鍵のファイル名がサンプルコードと異なる場合は、現在の設定に一致するようにファイル名を変更してください。 キーをコピーする際には、改行や空白を追加しないでください。 - - ```shell - $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **ヒント:** `clip` がうまく動作しない場合は、隠しフォルダ `.ssh` にアクセスし、使い慣れたテキストエディタでこのファイルを開き、クリップボードにコピーしてください。 - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. [**New SSH key**] または [**Add SSH key**] をクリックします。 ![SSH キーボタン](/assets/images/help/settings/ssh-add-ssh-key.png) -5. [Title] フィールドで、新しいキーを説明するラベルを追加します。 たとえば、個人のMacを使っているなら、このキーを「Personal MacBook Air」とすることができるでしょう。 -6. キーを [Key] フィールドに貼り付けます。 ![キーフィールド](/assets/images/help/settings/ssh-key-paste.png) -7. **[Add SSH key]** をクリックしてください。 ![キーの追加ボタン](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endwindows %} - -{% linux %} - -{% webui %} - -1. SSH 公開鍵をクリップボードにコピーします。 - - SSH 公開鍵のファイル名がサンプルコードと異なる場合は、現在の設定に一致するようにファイル名を変更してください。 キーをコピーする際には、改行や空白を追加しないでください。 - - ```shell - $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Then select and copy the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file - # displayed in the terminal to your clipboard - ``` - - {% tip %} - - **Tip:** Alternatively, you can locate the hidden `.ssh` folder, open the file in your favorite text editor, and copy it to your clipboard. - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. [**New SSH key**] または [**Add SSH key**] をクリックします。 ![SSH キーボタン](/assets/images/help/settings/ssh-add-ssh-key.png) -5. [Title] フィールドで、新しいキーを説明するラベルを追加します。 たとえば、個人のMacを使っているなら、このキーを「Personal MacBook Air」とすることができるでしょう。 -6. キーを [Key] フィールドに貼り付けます。 ![キーフィールド](/assets/images/help/settings/ssh-key-paste.png) -7. **[Add SSH key]** をクリックしてください。 ![キーの追加ボタン](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endlinux %} - {% cli %} {% data reusables.cli.cli-learn-more %} Before you can use the {% data variables.product.prodname_cli %} to add an SSH key to your account, you must authenticate to the {% data variables.product.prodname_cli %}. For more information, see [`gh auth login`](https://cli.github.com/manual/gh_auth_login) in the {% data variables.product.prodname_cli %} documentation. -To add an SSH key to your GitHub account, use the `ssh-key add` subcommand, specifying your public key. +{% ifversion ssh-commit-verification %}At present, you can only use {% data variables.product.prodname_cli %} to add SSH authentication keys, you cannot add SSH signing keys.{% endif %} + +To add an SSH authentication key to your GitHub account, use the `ssh-key add` subcommand, specifying your public key. ```shell gh ssh-key add key-file diff --git a/translations/ja-JP/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md b/translations/ja-JP/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md index adb05a61f9..c53ee9bac6 100644 --- a/translations/ja-JP/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md +++ b/translations/ja-JP/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md @@ -1,6 +1,6 @@ --- -title: About commit signature verification -intro: 'Using GPG or S/MIME, you can sign tags and commits locally. These tags or commits are marked as verified on {% data variables.product.product_name %} so other people can be confident that the changes come from a trusted source.' +title: コミット署名の検証について +intro: 'Using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME, you can sign tags and commits locally. これらのタグやコミットは {% data variables.product.product_name %} で検証済みとしてマークされているため、他のユーザはその変更が信頼できるソースからのものであると確信できます。' redirect_from: - /articles/about-gpg-commit-and-tag-signatures - /articles/about-gpg @@ -17,11 +17,20 @@ topics: - Access management 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 or ghec %}"Verified" or "Partially verified."{% else %}"Verified."{% endif %} +## コミット署名の検証について -![Verified commit](/assets/images/help/commits/verified-commit.png) +コミットとタグにローカルで署名して、行った変更の根拠を他のユーザに信頼してもらうことができます。 If a commit or tag has a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME signature that is cryptographically verifiable, {% data variables.product.product_name %} marks the commit or tag {% ifversion fpt or ghec %}"Verified" or "Partially verified."{% else %}"Verified."{% endif %} + +![検証されたコミット](/assets/images/help/commits/verified-commit.png) + +{% ifversion ghes or ghae %} +If a commit or tag has a signature that can't be verified, {% data variables.product.product_name %} marks the commit or tag "Unverified." +{% endif %} + +{% ifversion ssh-commit-verification %} +For most individual users, GPG or SSH will be the best choice for signing commits. S/MIME signatures are usually required in the context of a larger organization. SSH signatures are the simplest to generate. You can even upload your existing authentication key to {% data variables.product.product_name %} to also use as a signing key. Generating a GPG signing key is more involved than generating an SSH key, but GPG has features that SSH does not. A GPG key can expire or be revoked when no longer used. {% data variables.product.product_name %} shows commits that were signed with such a key as "Verified" unless the key was marked as compromised. SSH keys don't have this capability. +{% endif %} {% 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)." @@ -30,27 +39,26 @@ Commits and tags have the following verification statuses, depending on whether Signing commits differs from signing off on a commit. For more information about signing off on commits, see "[Managing the commit signoff policy for your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository)." -### Default statuses +### デフォルトのステータス -| Status | Description | -| -------------- | ----------- | -| **Verified** | The commit is signed and the signature was successfully verified. -| **Unverified** | The commit is signed but the signature could not be verified. -| No verification status | The commit is not signed. +| 状況 | 説明 | +| ---------------------- | ----------------------------- | +| **Verified** | コミットが署名され、署名が正常に検証されました。 | +| **Unverified** | コミットは署名されていますが、署名を検証できませんでした。 | +| No verification status | コミットが署名されていません。 | ### Signature verification for rebase and merge {% data reusables.pull_requests.rebase_and_merge_verification %} For more information, see "[Rebasing and merging your commits](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/about-merge-methods-on-github#rebasing-and-merging-your-commits)." -### Statuses with vigilant mode enabled +### 警戒モードが有効になっているステータス {% data reusables.identity-and-permissions.vigilant-mode-verification-statuses %} -{% else %} -If a commit or tag has a signature that can't be verified, {% data variables.product.product_name %} marks the commit or tag "Unverified." {% endif %} + Repository administrators can enforce required commit signing on a branch to block all commits that are not signed and verified. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches#require-signed-commits)." {% data reusables.identity-and-permissions.verification-status-check %} @@ -59,10 +67,10 @@ Repository administrators can enforce required commit signing on a branch to blo {% ifversion ghes %}If a site administrator has enabled web commit signing, {% data variables.product.product_name %} will automatically use GPG to sign commits you make using the web interface. Commits signed by {% data variables.product.product_name %} will have a verified status. You can verify the signature locally using the public key available at `https://HOSTNAME/web-flow.gpg`. For more information, see "[Configuring web commit signing](/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing)." {% else %}{% data variables.product.prodname_dotcom %} will automatically use GPG to sign commits you make using the web interface. Commits signed by {% data variables.product.prodname_dotcom %} will have a verified status. 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.prodname_dotcom %} sign commits you make in {% data variables.product.prodname_github_codespaces %}. For more information about enabling GPG verification for your codespaces, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} +You can optionally choose to have {% data variables.product.prodname_dotcom %} GPG sign commits you make in {% data variables.product.prodname_github_codespaces %}. For more information about enabling GPG verification for your codespaces, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} {% endif %} -## GPG commit signature verification +## GPG コミット署名の検証 You can use GPG to sign commits with a GPG key that you generate yourself. @@ -70,13 +78,32 @@ You can use GPG to sign commits with a GPG key that you generate yourself. To sign commits using GPG and have those commits verified on {% data variables.product.product_name %}, follow these steps: -1. [Check for existing GPG keys](/articles/checking-for-existing-gpg-keys) -2. [Generate a new GPG key](/articles/generating-a-new-gpg-key) +1. [既存の GPG キーがあるかチェックする](/articles/checking-for-existing-gpg-keys) +2. [新しい GPG キーを生成する](/articles/generating-a-new-gpg-key) 3. [Add a GPG key to your GitHub account](/articles/adding-a-gpg-key-to-your-github-account) -4. [Tell Git about your signing key](/articles/telling-git-about-your-signing-key) -5. [Sign commits](/articles/signing-commits) -6. [Sign tags](/articles/signing-tags) +4. [Git へ署名キーを伝える](/articles/telling-git-about-your-signing-key) +5. [コミットに署名する](/articles/signing-commits) +6. [タグに署名する](/articles/signing-tags) +{% ifversion ssh-commit-verification %} +## SSH commit signature verification + +You can use SSH to sign commits with an SSH public key that you generate yourself. If you already use an SSH key to authenticate with {% data variables.product.product_name %}, you can also upload that same key again for use as a signing key. There's no limit on the number of signing keys you can add to your account. + +{% data variables.product.product_name %} uses [ssh_data](https://github.com/github/ssh_data), an open source Ruby library, 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 %}. + +{% data reusables.gpg.ssh-git-version %} + +To sign commits using SSH and have those commits verified on {% data variables.product.product_name %}, follow these steps: + +1. [Check for existing SSH keys](/articles/checking-for-existing-ssh-keys) +2. [Generate a new SSH key](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) +3. [Add a SSH signing key to your GitHub account](/articles/adding-a-new-ssh-key-to-your-github-account) +4. [Git へ署名キーを伝える](/articles/telling-git-about-your-signing-key) +5. [コミットに署名する](/articles/signing-commits) +6. [タグに署名する](/articles/signing-tags) + +{% endif %} ## S/MIME commit signature verification You can use S/MIME to sign commits with an X.509 key issued by your organization. @@ -87,9 +114,9 @@ You can use S/MIME to sign commits with an X.509 key issued by your organization To sign commits using S/MIME and have those commits verified on {% data variables.product.product_name %}, follow these steps: -1. [Tell Git about your signing key](/articles/telling-git-about-your-signing-key) -2. [Sign commits](/articles/signing-commits) -3. [Sign tags](/articles/signing-tags) +1. [Git へ署名キーを伝える](/articles/telling-git-about-your-signing-key) +2. [コミットに署名する](/articles/signing-commits) +3. [タグに署名する](/articles/signing-tags) You don't need to upload your public key to {% data variables.product.product_name %}. @@ -101,8 +128,8 @@ Organizations and {% data variables.product.prodname_github_apps %} that require Signature verification for bots will only work if the request is verified and authenticated as the {% data variables.product.prodname_github_app %} or bot and contains no custom author information, custom committer information, and no custom signature information, such as Commits API. {% endif %} -## Further reading +## 参考リンク -- "[Signing commits](/articles/signing-commits)" -- "[Signing tags](/articles/signing-tags)" -- "[Troubleshooting commit signature verification](/articles/troubleshooting-commit-signature-verification)" +- 「[コミットに署名する](/articles/signing-commits)」 +- 「[タグに署名する](/articles/signing-tags)」 +- 「[コミット署名検証のトラブルシューティング](/articles/troubleshooting-commit-signature-verification)」 diff --git a/translations/ja-JP/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md b/translations/ja-JP/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md index cfdecad083..83aa2c0f2f 100644 --- a/translations/ja-JP/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md +++ b/translations/ja-JP/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md @@ -19,7 +19,7 @@ redirect_from: コンピューターでローカルで作業する場合、Git を使用すると、変更の作者とコミッターのアイデンティティを設定できます。 これにより、他のユーザが、自分が作成したコミットとタグが実際に自分によって作成されたものであると確信することが困難になる可能性があります。 この問題を解決するため、コミットとタグに署名することができます。 詳しい情報については、「[コミットに署名する](/github/authenticating-to-github/signing-commits)」および「[タグに署名する](/github/authenticating-to-github/signing-tags)」を参照してください。 {% data variables.product.prodname_dotcom %} は、署名されたコミットとタグに検証ステータスのマークを付けます。 -デフォルトでは、コミットとタグは、正常に検証された GPG または S/MIME キーで署名されている場合、「検証済み」としてマークされます。 If a commit or tag has a signature that can't be verified by {% data variables.product.prodname_dotcom %}, we mark the commit or tag "Unverified." それ以外の場合、検証ステータスは表示されません。 +By default commits and tags are marked "Verified" if they are signed with a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME key that was successfully verified. If a commit or tag has a signature that can't be verified by {% data variables.product.prodname_dotcom %}, we mark the commit or tag "Unverified." それ以外の場合、検証ステータスは表示されません。 ただし、{% data variables.product.prodname_dotcom %} 設定で警戒モードを有効にすることで、他のユーザにコミットとタグに起因するアイデンティティの信頼性を高めることができます。 警戒モードを有効にすると、すべてのコミットとタグに 3 つの検証ステータスのいずれかがマークされます。 diff --git a/translations/ja-JP/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md b/translations/ja-JP/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md index ca5cd18d90..a51f2ff18b 100644 --- a/translations/ja-JP/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md +++ b/translations/ja-JP/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md @@ -29,11 +29,11 @@ topics: {% data reusables.command_line.open_the_multi_os_terminal %} 3. GPG キーペアを生成します。 GPG には複数のバージョンがあるため、関連する [_man ページ_](https://en.wikipedia.org/wiki/Man_page)を参考にして適切なキーの生成コマンドを見つける必要があります。 キーには RSA を使用する必要があります。 - バージョン 2.1.17 以降の場合は、以下のテキストを貼り付けて GPG キーペアを生成します。 - ```shell + ```shell{:copy} $ gpg --full-generate-key ``` - バージョン 2.1.17 およびそれ以降でない場合は、 `gpg --full-generate-key` コマンドが使えません。 以下のテキストを貼り付けてステップ 6 に進んでください。 - ```shell + ```shell{:copy} $ gpg --default-new-key-algo rsa4096 --gen-key ``` 4. At the prompt, specify the kind of key you want, or press `Enter` to accept the default. @@ -52,10 +52,10 @@ topics: {% data reusables.gpg.list-keys-with-note %} {% data reusables.gpg.copy-gpg-key-id %} 10. 以下のテキストを貼り付けます。GPG キー ID は実際に使用するものを入力してください。 この例では、GPG キー ID は `3AA5C34371567BD2` です。 - ```shell - $ gpg --armor --export 3AA5C34371567BD2 - # ASCII armor 形式で GPG キーを出力する - ``` + ```shell{:copy} + $ gpg --armor --export 3AA5C34371567BD2 + # Prints the GPG key ID, in ASCII armor format + ``` 11. `-----BEGIN PGP PUBLIC KEY BLOCK-----` で始まり、`-----END PGP PUBLIC KEY BLOCK-----` で終わる GPG キーをコピーします。 12. [GPG キーを GitHub アカウントに追加](/articles/adding-a-gpg-key-to-your-github-account)します。 diff --git a/translations/ja-JP/content/authentication/managing-commit-signature-verification/index.md b/translations/ja-JP/content/authentication/managing-commit-signature-verification/index.md index 03daae58a2..8a80a00e46 100644 --- a/translations/ja-JP/content/authentication/managing-commit-signature-verification/index.md +++ b/translations/ja-JP/content/authentication/managing-commit-signature-verification/index.md @@ -1,6 +1,6 @@ --- title: コミット署名の検証を管理する -intro: 'GPG または S/MIME を使用してローカルで作業に署名できます。 信頼できるソースによるコミットであることを他のユーザに知らせるために、{% data variables.product.product_name %} はこの署名を検証します。{% ifversion fpt %} {% data variables.product.product_name %} は、{% data variables.product.product_name %} Web インターフェイスを使用して自動的にコミットに署名します。{% endif %}' +intro: '{% data variables.product.product_name %} will verify GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME signatures so other people will know that your commits come from a trusted source.{% ifversion fpt %} {% data variables.product.product_name %} will automatically sign commits you make using the {% data variables.product.product_name %} web interface.{% endif %}' redirect_from: - /articles/generating-a-gpg-key - /articles/signing-commits-with-gpg diff --git a/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-commits.md b/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-commits.md index f945c1976e..d1a77b6bed 100644 --- a/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-commits.md +++ b/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-commits.md @@ -1,6 +1,6 @@ --- title: コミットに署名する -intro: GPG または S/MIME を使用してローカルでコミットに署名できます。 +intro: 'You can sign commits locally using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME.' redirect_from: - /articles/signing-commits-and-tags-using-gpg - /articles/signing-commits-using-gpg @@ -52,9 +52,5 @@ Git バージョン 2.0.0 以降で、ローカルリポジトリでデフォル ## 参考リンク -* [既存の GPG キーのチェック](/articles/checking-for-existing-gpg-keys) -* [新しい GPG キーの生成](/articles/generating-a-new-gpg-key) -* "[Adding a GPG key to your GitHub account](/articles/adding-a-gpg-key-to-your-github-account)" * 「[Git へ署名キーを伝える](/articles/telling-git-about-your-signing-key)」 -* [GPG キーとメールの関連付け](/articles/associating-an-email-with-your-gpg-key) * 「[タグに署名する](/articles/signing-tags)」 diff --git a/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-tags.md b/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-tags.md index 3dc0060ec7..c1d8787ab7 100644 --- a/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-tags.md +++ b/translations/ja-JP/content/authentication/managing-commit-signature-verification/signing-tags.md @@ -1,6 +1,6 @@ --- title: タグに署名する -intro: GPG または S/MIME を使用してローカルでタグに署名できます。 +intro: 'You can sign tags locally using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME.' redirect_from: - /articles/signing-tags-using-gpg - /articles/signing-tags @@ -32,9 +32,6 @@ topics: ## 参考リンク - [リポジトリのタグを表示する](/articles/viewing-your-repositorys-tags) -- [既存の GPG キーのチェック](/articles/checking-for-existing-gpg-keys) -- [新しい GPG キーの生成](/articles/generating-a-new-gpg-key) -- "[Adding a GPG key to your GitHub account](/articles/adding-a-gpg-key-to-your-github-account)" - 「[Git へ署名キーを伝える](/articles/telling-git-about-your-signing-key)」 - [GPG キーとメールの関連付け](/articles/associating-an-email-with-your-gpg-key) - 「[コミットに署名する](/articles/signing-commits)」 diff --git a/translations/ja-JP/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md b/translations/ja-JP/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md index b801c5a1df..9b0a093038 100644 --- a/translations/ja-JP/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md +++ b/translations/ja-JP/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md @@ -1,6 +1,6 @@ --- title: Git へ署名キーを伝える -intro: ローカルでコミットに署名するには、使用する GPG または X.509 キーがあることを Git に知らせる必要があります。 +intro: 'To sign commits locally, you need to inform Git that there''s a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or X.509 key you''d like to use.' redirect_from: - /articles/telling-git-about-your-gpg-key - /articles/telling-git-about-your-signing-key @@ -52,8 +52,6 @@ If you're using a GPG key that matches your committer identity and your verified $ killall gpg-agent ``` -{% data reusables.gpg.x-509-key %} - {% endmac %} {% windows %} @@ -75,8 +73,6 @@ If you're using a GPG key that matches your committer identity and your verified {% data reusables.gpg.copy-gpg-key-id %} {% data reusables.gpg.paste-gpg-key-id %} -{% data reusables.gpg.x-509-key %} - {% endwindows %} {% linux %} @@ -101,15 +97,25 @@ If you're using a GPG key that matches your committer identity and your verified ```bash $ [ -f ~/.bashrc ] && echo 'export GPG_TTY=$(tty)' >> ~/.bashrc ``` - {% endlinux %} +{% ifversion ssh-commit-verification %} +## Telling Git about your SSH key + +You can use an existing SSH key to sign commits and tags, or generate a new one specifically for signing. 詳しい情報については、「[新しい SSH キーを生成して ssh-agent に追加する](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)」を参照してください。 + +{% data reusables.gpg.ssh-git-version %} + +{% data reusables.command_line.open_the_multi_os_terminal %} +{% data reusables.gpg.configure-ssh-signing %} +{% data reusables.gpg.copy-ssh-public-key %} +{% data reusables.gpg.paste-ssh-public-key %} + +{% endif %} + +{% data reusables.gpg.x-509-key %} ## 参考リンク -- [既存の GPG キーのチェック](/articles/checking-for-existing-gpg-keys) -- [新しい GPG キーの生成](/articles/generating-a-new-gpg-key) -- [GPG キーで検証済みのメールアドレスを使う](/articles/using-a-verified-email-address-in-your-gpg-key) -- "[Adding a GPG key to your GitHub account](/articles/adding-a-gpg-key-to-your-github-account)" -- [GPG キーとメールの関連付け](/articles/associating-an-email-with-your-gpg-key) +- "[Adding a new SSH key to your GitHub account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)." - 「[コミットに署名する](/articles/signing-commits)」 - 「[タグに署名する](/articles/signing-tags)」 diff --git a/translations/ja-JP/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md b/translations/ja-JP/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md index 10c0e66819..a54630c5bc 100644 --- a/translations/ja-JP/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md +++ b/translations/ja-JP/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md @@ -22,7 +22,10 @@ shortTitle: Check verification status 1. {% data variables.product.product_name %}上で、プルリクエストに移動します。 {% data reusables.repositories.review-pr-commits %} 3. コミットの省略されたコミットハッシュの横に、コミット署名が検証済みか{% ifversion fpt or ghec %}、部分的に検証済みか、{% endif %}未検証かを示すボックスがあります。 ![署名されたコミット](/assets/images/help/commits/gpg-signed-commit-verified-without-details.png) -4. コミットシグニチャの詳細情報を表示するには、[**検証済み**]{% ifversion fpt or ghec %}、[**部分的に検証済み**]、{% endif %}または [**未検証**] をクリックします。 ![検証された署名済みコミット](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +4. コミットシグニチャの詳細情報を表示するには、[**検証済み**]{% ifversion fpt or ghec %}、[**部分的に検証済み**]、{% endif %}または [**未検証**] をクリックします。 GPG signed commits will show the ID of the key that was used. ![Verified GPG signed commit](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +{% ifversion ssh-commit-verification %} + SSH signed commits will show the signature of the public key that was used. ![Verified SSH signed commit](/assets/images/help/commits/ssh-signed-commit-verified-details.png) +{% endif %} ## タグの署名検証のステータスの確認 diff --git a/translations/ja-JP/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md b/translations/ja-JP/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md index 2d5feaab0a..1388e420aa 100644 --- a/translations/ja-JP/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md +++ b/translations/ja-JP/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md @@ -1,6 +1,7 @@ --- title: GitHub Actionsの支払いについて intro: 'アカウントに含まれるストレージや利用時間 (分) を超えて{% data variables.product.prodname_actions %}を使用したい場合は、追加の使用分が請求されます。' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-actions - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/about-billing-for-github-actions @@ -28,6 +29,13 @@ Microsoft Enterprise Agreement を通じて {% data variables.product.prodname_e ### 含まれるストレージと分 +{% ifversion actions-hosted-runners %} +{% note %} + +**ノート**: 利用権のある分は、2コア以上のWindows及びUbuntuランナーには使用できません。 これらのランナーは、パブリックリポジトリを含め、常に課金されます。 詳しい情報については「[ランナーの分ごとのレート](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)」を参照してください。 + +{% endnote %} +{% endif %} | 製品 | ストレージ | 分 (月あたり) | | ---------------------------------------------------------------- | ------ | -------- | | {% data variables.product.prodname_free_user %} | 500 MB | 2,000 | @@ -58,15 +66,15 @@ Microsoft Enterprise Agreement を通じて {% data variables.product.prodname_e ### 分あたりの料金 -| オペレーティングシステム | 分あたりの料金(米ドル) | -| ------------ | ------------ | -| Linux | $0.008 | -| macOS | $0.08 | -| Windows | $0.016 | +{% data reusables.billing.billing-standard-runners %} +{% ifversion actions-hosted-runners %}{% data reusables.billing.billing-hosted-runners %}{% endif %} -アカウントもしくはOrganization内のすべてのリポジトリにわたって同時に実行できるジョブ数は、あなたのGitHubのプランによります。 詳細については、{% data variables.product.prodname_dotcom %} ホストランナーの「[使用制限と支払い](/actions/reference/usage-limits-billing-and-administration)」、およびセルフホストランナーの使用制限については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)」を参照してください。 - -{% data reusables.user-settings.context_switcher %} +- アカウントもしくはOrganization内のすべてのリポジトリにわたって同時に実行できるジョブ数は、あなたのGitHubのプランによります。 詳細については、{% data variables.product.prodname_dotcom %} ホストランナーの「[使用制限と支払い](/actions/reference/usage-limits-billing-and-administration)」、およびセルフホストランナーの使用制限については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)」を参照してください。 +- {% data reusables.user-settings.context_switcher %} +{% ifversion actions-hosted-runners %} +- {% data variables.actions.hosted_runner %}については、{% data variables.actions.hosted_runner %}へパブリックの静的なIPアドレスを割り当てる設定について追加のコストはありません。 {% data variables.actions.hosted_runner %}に関する詳しい情報については「[{% data variables.actions.hosted_runner %}の利用](/actions/using-github-hosted-runners/using-larger-runners)」を参照してください。 +- 利用権のある分は{% data variables.actions.hosted_runner %}には使えません。 +{% endif %} ## 利用時間 (分) とストレージ消費量の計算 diff --git a/translations/ja-JP/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md b/translations/ja-JP/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md index e7fb70174a..81683b18f8 100644 --- a/translations/ja-JP/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md +++ b/translations/ja-JP/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md @@ -49,9 +49,9 @@ All data transferred out, when triggered by {% data variables.product.prodname_a Storage usage is shared with build artifacts produced by {% data variables.product.prodname_actions %} for repositories owned by your account. For more information, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)." -{% data variables.product.prodname_dotcom %} charges usage to the account that owns the repository where the package is published. If your account's usage surpasses these limits and you have set a spending limit above $0 USD, you will pay $0.25 USD per GB of storage per day and $0.50 USD per GB of data transfer. +{% data variables.product.prodname_dotcom %} charges usage to the account that owns the repository where the package is published. If your account's usage surpasses these limits and you have set a spending limit above $0 USD, you will pay $0.008 USD per GB of storage per day and $0.50 USD per GB of data transfer. -For example, if your organization uses {% data variables.product.prodname_team %}, allows unlimited spending, uses 150GB of storage, and has 50GB of data transfer out during a month, the organization would have overages of 148GB for storage and 40GB for data transfer for that month. The storage overage would cost $0.25 USD per GB per day or $37 USD. The overage for data transfer would cost $0.50 USD per GB or $20 USD. +For example, if your organization uses {% data variables.product.prodname_team %}, allows unlimited spending, uses 150GB of storage, and has 50GB of data transfer out during a month, the organization would have overages of 148GB for storage and 40GB for data transfer for that month. The storage overage would cost $0.008 USD per GB per day or approximately $37 USD for a 31-day month. The overage for data transfer would cost $0.50 USD per GB or $20 USD. {% data reusables.dotcom_billing.pricing_calculator.pricing_cal_packages %} diff --git a/translations/ja-JP/content/code-security/adopting-github-advanced-security-at-scale/phase-6-rollout-and-scale-secret-scanning.md b/translations/ja-JP/content/code-security/adopting-github-advanced-security-at-scale/phase-6-rollout-and-scale-secret-scanning.md index a66a670f5f..c2cba44e7f 100644 --- a/translations/ja-JP/content/code-security/adopting-github-advanced-security-at-scale/phase-6-rollout-and-scale-secret-scanning.md +++ b/translations/ja-JP/content/code-security/adopting-github-advanced-security-at-scale/phase-6-rollout-and-scale-secret-scanning.md @@ -32,7 +32,7 @@ There are a few approaches for tackling newly committed credentials, but one exa {% note %} - **Note:** You can automate this step. For large enterprises and organizations with hundreds of repositories, manually following up is unsustainable. You could incorporate automation into the webhook process defined in the first step. The webhook payload contains repository and organization information about the leaked secret. Using this information, you can contact the current maintainers on the repository and create a email/message to the responsible people or open an issue. + **Note:** You can automate this step. For large enterprises and organizations with hundreds of repositories, manually following up is unsustainable. You could incorporate automation into the webhook process defined in the first step. The webhook payload contains repository and organization information about the leaked secret. Using this information, you can contact the current maintainers on the repository and create an email/message to the responsible people or open an issue. {% endnote %} 3. **Educate**: Create an internal training document assigned to the developer who committed the secret. Within this training document, you can explain the risks created by committing secrets and direct them to your best practice information about using secrets securely in development. If the a developer doesn't learn from the experience and continues to commit secrets, you could create an escalation process, but education usually works well. diff --git a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md index 89a7a591d4..693aff8c64 100644 --- a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md +++ b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md @@ -359,7 +359,7 @@ In the following example, the `+` symbol ensures that the specified additional { ## Using a custom configuration file -A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries and to specify which directories to scan during analysis. +A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries{% ifversion code-scanning-exclude-queries-from-analysis %}, exclude or include specific queries,{% endif %} and to specify which directories to scan during analysis. In the workflow file, use the `config-file` parameter of the `init` action to specify the path to the configuration file you want to use. This example loads the configuration file _./.github/codeql/codeql-config.yml_. @@ -442,6 +442,41 @@ Optionally, you can give each array element a name, as shown in the example conf If you only want to run custom queries, you can disable the default security queries by using `disable-default-queries: true`. +{% ifversion code-scanning-exclude-queries-from-analysis %} +### Excluding specific queries from analysis + +You can add `exclude` and `include` filters to your custom configuration file, to specify the queries you want to exclude or include in the analysis. + +This is useful if you want to exclude, for example: +- Specific queries from the default suites (`security`, `security-extended` and `security-and-quality`). +- Specific queries whose results do not interest you. +- All the queries that generate warnings and recommendations. + +You can use `exclude` filters similar to those in the configuration file below to exclude queries that you want to remove from the default analysis. In the example of configuration file below, both the `js/redundant-assignment` and the `js/useless-assignment-to-local` queries are excluded from analysis. + +```yaml +query-filters: + - exclude: + id: js/redundant-assignment + - exclude: + id: js/useless-assignment-to-local +``` +To find the id of a query, you can click the alert in the list of alerts in the Security tab. This opens the alert details page. The `Rule ID` field contains the query id. For more information about the alert details page, see "[About {% data variables.product.prodname_code_scanning %} alerts](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-alerts#about-alert-details)." + +{% tip %} + +**Tips:** +- The order of the filters is important. The first filter instruction that appears after the instructions about the queries and query packs determines whether the queries are included or excluded by default. +- Subsequent instructions are executed in order and the instructions that appear later in the file take precedence over the earlier instructions. + +{% endtip %} + +You can find another example illustrating the use of these filters in the "[Example configuration files](#example-configuration-files)" section. + +For more information about using `exclude` and `include` filters in your custom configuration file, see "[Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/#filtering-the-queries-in-a-query-suite)." For information on the query metadata you can filter on, see "[Metadata for CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/metadata-for-codeql-queries/)." + +{% endif %} + ### Specifying directories to scan For the interpreted languages that {% data variables.product.prodname_codeql %} supports (Python{% ifversion fpt or ghes > 3.3 or ghae-issue-5017 %}, Ruby{% endif %} and JavaScript/TypeScript), you can restrict {% data variables.product.prodname_code_scanning %} to files in specific directories by adding a `paths` array to the configuration file. You can exclude the files in specific directories from analysis by adding a `paths-ignore` array. diff --git a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md index a5948aba46..23e20a25a3 100644 --- a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md +++ b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md @@ -43,8 +43,8 @@ By default, the code scanning alerts page is filtered to show alerts for the def ![Summary of alerts](/assets/images/help/repository/code-scanning-click-alert.png) {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} - {% data reusables.code-scanning.alert-default-branch %} - ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} + {% data reusables.code-scanning.alert-default-branch %} + ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} 1. Optionally, if the alert highlights a problem with data flow, click **Show paths** to display the path from the data source to the sink where it's used. {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} ![The "Show paths" link on an alert](/assets/images/help/repository/code-scanning-show-paths.png) diff --git a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md index 686a099b7b..5f3939294a 100644 --- a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md +++ b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md @@ -32,6 +32,12 @@ topics: {% data variables.product.prodname_codeql %}は、コードをビルドするコンテナ内で実行しなければなりません。 これは、{% data variables.product.prodname_codeql_cli %}{% ifversion codeql-runner-supported %}、{% data variables.product.prodname_codeql_runner %}{% endif %}、{% data variables.product.prodname_actions %}のいずれを使っていても当てはまります。 {% data variables.product.prodname_codeql_cli %}{% ifversion codeql-runner-supported %}あるいは{% data variables.product.prodname_codeql_runner %}{% endif %}については、詳しい情報は「[CIシステムへの{% data variables.product.prodname_codeql_cli %}のインストール](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system)」{% ifversion codeql-runner-supported %}あるいは「[CIシステムでの{% data variables.product.prodname_codeql_runner %}の実行](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)」{% endif %}を参照してください。 {% data variables.product.prodname_actions %} を使用している場合は、同じコンテナですべてのアクションを実行するようワークフローを設定します。 詳しい情報については「[ワークフローの例](#example-workflow)」を参照してください。 +{% note %} + +**ノート:** {% data reusables.code-scanning.non-glibc-linux-support %} + +{% endnote %} + ## 依存関係 使用しているコンテナで特定の依存関係がない場合 (たとえば、Git は PATH 変数にインストールされ、追加されている必要がある)、{% data variables.product.prodname_code_scanning %} を実行する上で困難が生じる場合があります。 依存関係の問題が生じた場合は、通常{% data variables.product.prodname_dotcom %}のランナーのイメージに含まれているソフトウェアのリストをレビューしてください。 詳しい情報については、次の場所にある特定のバージョンの `readme` ファイルを参照してください。 diff --git a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md index 52e0b98fd3..32cea9db26 100644 --- a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md +++ b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md @@ -151,25 +151,29 @@ 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 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. +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. -{% ifversion fpt or ghes > 3.2 or ghae or ghec %} - ![Analysis not found for commit message](/assets/images/help/repository/code-scanning-analysis-not-found.png) +{% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-7095 %} + +{% elsif ghes < 3.5 or ghae %} +If you used a pull request to add {% data variables.product.prodname_code_scanning %} to the repository, you will initially see {% ifversion ghes > 3.2 or ghae %}an "Analysis not found"{% elsif ghes = 3.2 %}a "Missing analysis"{% endif %} message when you click **Details** on the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" check. + +{% ifversion ghes > 3.2 or ghae %} + ![Analysis not found for commit message](/assets/images/enterprise/3.4/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. For example, in the screenshot above, {% data variables.product.prodname_code_scanning %} found an analysis for the merge commit of the pull request, but no analysis for the head of the main branch. -{% else %} - ![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 or ghec %} ### Reasons for the "Analysis not found" message -{% else %} + +{% elsif ghes = 3.2 %} + ![Missing analysis for commit message](/assets/images/enterprise/3.2/repository/code-scanning-missing-analysis.png) + ### 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 or ghec %}"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 ghes > 3.2 or ghae %}"Analysis not found"{% elsif ghes = 3.2 %}"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: @@ -177,7 +181,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. -![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) + ![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) The solution in this situation is to add the name of the base branch to the `on:push` and `on:pull_request` specification in the {% data variables.product.prodname_code_scanning %} workflow on that branch and then make a change that updates the open pull request that you want to scan. @@ -189,6 +193,8 @@ There are other situations where there may be no analysis for the latest commit Merge a trivial change into the base branch to trigger {% data variables.product.prodname_code_scanning %} on this latest commit, then push a change to the pull request to retrigger {% data variables.product.prodname_code_scanning %}. +{% endif %} + ## Next steps After setting up {% data variables.product.prodname_code_scanning %}, and allowing its actions to complete, you can: diff --git a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md index c983e246ac..5cad113a82 100644 --- a/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md +++ b/translations/ja-JP/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md @@ -33,8 +33,6 @@ In repositories where {% data variables.product.prodname_code_scanning %} is con - The **Conversation** tab of the pull request, as part of a pull request review {% endif %} - The **Files changed** tab of the pull request -{% ifversion code-scanning-pr-conversations-tab %} {% endif %} - 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 or ghec %} diff --git a/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md b/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md index daeb17e483..74df7049d2 100644 --- a/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md +++ b/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md @@ -45,9 +45,15 @@ If you upload a second SARIF file for a commit with the same category and from t If you're new to SARIF and want to learn more, see Microsoft's [`SARIF tutorials`](https://github.com/microsoft/sarif-tutorials) repository. -## Preventing duplicate alerts using fingerprints +## Providing data to track {% data variables.product.prodname_code_scanning %} alerts across runs -Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the right line of code when files are edited. +Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the correct line of code when files are edited. The `ruleID` for a result has to be the same across analysis. + +### Reporting consistent filepaths + +The filepath has to be consistent across the runs to enable a computation of a stable fingerprint. If the filepaths differ for the same result, each time there is a new analysis a new alert will be created, and the old one will be closed. This will cause having multiple alerts for the same result. + +### Including data for fingerprint generation {% data variables.product.prodname_dotcom %} uses the `partialFingerprints` property in the OASIS standard to detect when two results are logically identical. For more information, see the "[partialFingerprints property](https://docs.oasis-open.org/sarif/sarif/v2.1.0/cs01/sarif-v2.1.0-cs01.html#_Toc16012611)" entry in the OASIS documentation. @@ -77,6 +83,12 @@ You can check a SARIF file is compatible with {% data variables.product.prodname If you use a code analysis engine other than {% data variables.product.prodname_codeql %}, you can review the supported SARIF properties to optimize how your analysis results will appear on {% data variables.product.prodname_dotcom %}. +{% note %} + +**Note:** You must supply an explicit value for any property marked as "required". The empty string is not supported for required properties. + +{% endnote %} + Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.product.prodname_code_scanning %} will only use the following supported properties. ### `sarifLog` object @@ -138,7 +150,7 @@ Each `result` object contains details for one alert in the codebase. Within the | `level`| **Optional.** The severity of the result. This level overrides the default severity defined by the rule. {% data variables.product.prodname_code_scanning_capc %} uses the level to filter results by severity on {% data variables.product.prodname_dotcom %}. | `message.text`| **Required.** A message that describes the result. {% data variables.product.prodname_code_scanning_capc %} displays the message text as the title of the result. Only the first sentence of the message will be displayed when visible space is limited. | `locations[]`| **Required.** The set of locations where the result was detected up to a maximum of 10. Only one location should be included unless the problem can only be corrected by making a change at every specified location. **Note:** At least one location is required for {% data variables.product.prodname_code_scanning %} to display a result. {% data variables.product.prodname_code_scanning_capc %} will use this property to decide which file to annotate with the result. Only the first value of this array is used. All other values are ignored. -| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Preventing duplicate alerts using fingerprints](#preventing-duplicate-alerts-using-fingerprints)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. +| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Providing data to track code scanning alerts across runs](#providing-data-to-track-code-scanning-alerts-across-runs)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. | `codeFlows[].threadFlows[].locations[]`| **Optional.** An array of `location` objects for a `threadFlow` object, which describes the progress of a program through a thread of execution. A `codeFlow` object describes a pattern of code execution used to detect a result. If code flows are provided, {% data variables.product.prodname_code_scanning %} will expand code flows on {% data variables.product.prodname_dotcom %} for the relevant result. For more information, see the [`location` object](#location-object). | `relatedLocations[]`| A set of locations relevant to this result. {% data variables.product.prodname_code_scanning_capc %} will link to related locations when they are embedded in the result message. For more information, see the [`location` object](#location-object). @@ -204,7 +216,7 @@ These example SARIF output files show supported properties and example values. ### Example with minimum required properties -This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties or don't include values, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. +This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties, omit values, or use an empty string, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. ```json { diff --git a/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md b/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md index 1e03a239f3..193ee54f5a 100644 --- a/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md +++ b/translations/ja-JP/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md @@ -58,7 +58,7 @@ For more information see the [`upload-sarif` action](https://github.com/github/c The `upload-sarif` action can be configured to run when the `push` and `scheduled` event occur. For more information about {% data variables.product.prodname_actions %} events, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)." -If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#preventing-duplicate-alerts-using-fingerprints)." +If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#providing-data-to-track-code-scanning-alerts-across-runs)." {% data reusables.code-scanning.upload-sarif-alert-limit %} diff --git a/translations/ja-JP/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md b/translations/ja-JP/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md index 54ca86d3af..a9c8d47e23 100644 --- a/translations/ja-JP/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md +++ b/translations/ja-JP/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md @@ -78,7 +78,8 @@ You can display the command-line help for any command using the `--help``--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. | | `--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). -| `--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. | +| `--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. |{% ifversion fpt or ghec or ghes > 3.2 or ghae %} +| `--codescanning-config` | | Optional (Advanced). Use if you have a configuration file that specifies how to create the {% data variables.product.prodname_codeql %} databases and what queries to run in later steps. For more information, see "[Using a custom configuration file](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-a-custom-configuration-file)" and "[database create](https://codeql.github.com/docs/codeql-cli/manual/database-create/#cmdoption-codeql-database-create-codescanning-config)." |{% endif %} 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 %}. diff --git a/translations/ja-JP/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md b/translations/ja-JP/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md index f6812cd278..1a2e15b3a5 100644 --- a/translations/ja-JP/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md +++ b/translations/ja-JP/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md @@ -40,24 +40,24 @@ topics: それぞれの{% data variables.product.prodname_dependabot %}アラートは一意の数値識別子を持っており、{% data variables.product.prodname_dependabot_alerts %}タブにはすべての検出された脆弱性に対するアラートがリストされます。 旧来の{% data variables.product.prodname_dependabot_alerts %}は依存関係で脆弱性をグループ化し、依存関係ごとに1つのアラートを生成しました。 旧来の{% data variables.product.prodname_dependabot %}アラートにアクセスすると、そのパッケージでフィルタされた{% data variables.product.prodname_dependabot_alerts %}タブにリダイレクトされます。 {% endif %} {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5638 %} -You can filter and sort {% data variables.product.prodname_dependabot_alerts %} using a variety of filters and sort options available on the user interface. For more information, see "[Prioritizing {% data variables.product.prodname_dependabot_alerts %}](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)" below. +ユーザインターフェースで利用できる様々なフィルタとソートのオプションを使って、{% data variables.product.prodname_dependabot_alerts %}をフィルタリング及びソートできます。 詳しい情報については下の「[{% data variables.product.prodname_dependabot_alerts %}の優先順位付け](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)」を参照してください。 -## Prioritizing {% data variables.product.prodname_dependabot_alerts %} +## {% data variables.product.prodname_dependabot_alerts %}の優先順位付け -{% data variables.product.company_short %} helps you prioritize fixing {% data variables.product.prodname_dependabot_alerts %}. {% ifversion dependabot-most-important-sort-option %} By default, {% data variables.product.prodname_dependabot_alerts %} are sorted by importance. The "Most important" sort order helps you prioritize which {% data variables.product.prodname_dependabot_alerts %} to focus on first. アラートは、潜在的な影響、行動可能性、関連性に基づいてランク付けされます。 優先順位の計算は常に改善されており、CSVVスコア、依存関係スコープ、脆弱性のある関数呼び出しがアラートで見つかっているかといった要素を含みます。 +{% data variables.product.company_short %}は{% data variables.product.prodname_dependabot_alerts %}の修正の優先順位付けに役立ちます。 {% ifversion dependabot-most-important-sort-option %}デフォルトでは、{% data variables.product.prodname_dependabot_alerts %}は重要度でソートされます。 "Most important(重要な順)"のソート順は、まず焦点を置くべき{% data variables.product.prodname_dependabot_alerts %}の優先順位付けを助けてくれます。 アラートは、潜在的な影響、行動可能性、関連性に基づいてランク付けされます。 優先順位の計算は常に改善されており、CSVVスコア、依存関係スコープ、脆弱性のある関数呼び出しがアラートで見つかっているかといった要素を含みます。 !["Most important"ソートのあるソートドロップダウンのスクリーンショット](/assets/images/help/dependabot/dependabot-alerts-sort-dropdown.png) {% endif %} {% data reusables.dependabot.dependabot-alerts-filters %} -In addition to the filters available via the search bar, you can sort and filter {% data variables.product.prodname_dependabot_alerts %} using the dropdown menus at the top of the alert list. The search bar also allows for full text searching of alerts and related security advisories. You can search for part of a security advisory name or description to return the alerts in your repository that relate to that security advisory. For example, searching for `yaml.load() API could execute arbitrary code` will return {% data variables.product.prodname_dependabot_alerts %} linked to "[PyYAML insecurely deserializes YAML strings leading to arbitrary code execution](https://github.com/advisories/GHSA-rprw-h62v-c2w7)" as the search string appears in the advisory description. +検索バーを通じて利用できるフィルタに加えて、アラートリストの上部にあるドロップダウンメニューを使って{% data variables.product.prodname_dependabot_alerts %}をソート及びフィルタリングできます。 検索バーでは、アラートと関連するセキュリティアドバイザリの全文検索もできます。 セキュリティアドバイザリ名または説明の一部を検索して、そのセキュリティアドバイザリに関連するリポジトリ内のアラートを返させることができます。 たとえば`yaml.load() API could execute arbitrary code`を検索すれば、この検索文字列はアドバイザリの説明にあるので「[PyYAML insecurely deserializes YAML strings leading to arbitrary code execution](https://github.com/advisories/GHSA-rprw-h62v-c2w7)」にリンクされた{% data variables.product.prodname_dependabot_alerts %}が返されます。 {% endif %} {% ifversion dependabot-bulk-alerts %} ![{% data variables.product.prodname_dependabot_alerts %}タブ中のフィルタ及びソートメニューのスクリーンショット](/assets/images/help/graphs/dependabot-alerts-filters-checkbox.png){% elsif ghes = 3.5 %} -You can select a filter in a dropdown menu at the top of the list, then click the filter that you would like to apply. ![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %} +リストの上部にあるドロップダウンメニューでフィルタを選択し、続いて適用したいフィルタをクリックできます。 ![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %} {% ifversion dependabot-alerts-development-label %} ## 依存関係のスコープに対してサポートされているエコシステムとマニフェスト @@ -110,7 +110,7 @@ You can select a filter in a dropdown menu at the top of the list, then click th {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-security %} {% data reusables.repositories.sidebar-dependabot-alerts %} -1. Optionally, to filter alerts, select a filter in a dropdown menu then click the filter that you would like to apply. 検索バーにフィルタを入力することもできます。 For more information about filtering and sorting alerts, see "[Prioritizing {% data variables.product.prodname_dependabot_alerts %}](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)." +1. あるいは、アラートをフィルタリングするには、ドロップダウンメニューでフィルタを選択し、続いて適用したいフィルタをクリックしてください。 検索バーにフィルタを入力することもできます。 アラートのフィルタリングとソートに関する詳しい情報については「[{% data variables.product.prodname_dependabot_alerts %}の優先順位付け](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)」を参照してください。 {%- ifversion dependabot-bulk-alerts %} ![{% data variables.product.prodname_dependabot_alerts %}タブ中のフィルタ及びソートメニューのスクリーンショット](/assets/images/help/graphs/dependabot-alerts-filters-checkbox.png){% else %} ![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %} @@ -163,7 +163,12 @@ You can select a filter in a dropdown menu at the top of the list, then click th 依存関係のアップグレードのための広汎な作業をスケジュールしていたり、アラートを修正する必要はないと判断したりした場合、アラートを却下できます。 すでに評価済みのアラートを却下すると、新しいアラートが現れたときにトリアージしやすくなります。 1. アラートの詳細を表示させます。 詳しい情報については上の「[脆弱性のある依存関係の表示](#viewing-dependabot-alerts)」を参照してください。 -1. "Dismiss(却下)"ドロップダウンを選択し、アラートを却下する理由をクリックしてください。{% ifversion reopen-dependabot-alerts %}却下された未修正のアラートは、後で再度オープンできます。{% endif %} ![[Dismiss] ドロップダウンでアラートを却下する理由を選択する](/assets/images/help/repository/dependabot-alert-dismiss-drop-down-ungrouped.png) +1. "Dismiss(却下)"ドロップダウンを選択し、アラートを却下する理由をクリックしてください。{% ifversion reopen-dependabot-alerts %}却下された未修正のアラートは、後で再度オープンできます。{% endif %} +{% ifversion dependabot-alerts-dismissal-comment %}1. あるいは、却下のコメントを追加してください。 却下のコメントはアラートのタイムラインに追加され、監査とレポートの際の正当性として利用できます。 GraphQL APIを使って、コメントの取得や設定ができます。 コメントは`dismissComment`フィールドに含まれます。 詳しい情報については、GraphQL APIドキュメンテーションの「[{% data variables.product.prodname_dependabot_alerts %}](/graphql/reference/objects#repositoryvulnerabilityalert)を参照してください。 + ![却下のコメントを追加するオプション付きで、"Dismiss"ドロップダウンからアラートを却下する方法を示しているスクリーンショット](/assets/images/help/repository/dependabot-alerts-dismissal-comment.png) +1. **Dismiss alert(アラートを却下)**をクリックしてください。 +{% else %} + ![[Dismiss] ドロップダウンでアラートを却下する理由を選択する](/assets/images/help/repository/dependabot-alert-dismiss-drop-down-ungrouped.png){% endif %} {% ifversion dependabot-bulk-alerts %} ### 複数のアラートを一度に却下する diff --git a/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index aafa359dad..25efa92f84 100644 --- a/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/translations/ja-JP/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -415,7 +415,7 @@ updates: ### `open-pull-requests-limit` -デフォルトでは、{% data variables.product.prodname_dependabot %} は、バージョン更新に対して最大 5 つのプルリクエストをオープンします。 5 つのプルリクエストがオープンになると、オープンになっているリクエストの一部をマージまたはクローズするまで、新しいリクエストはブロックされます。オープンになっているリクエストの一部をマージまたはクローズしたら、その後の更新で新しいプルリクエストを開くことができます。 この制限を変更するには、`open-pull-requests-limit` を使用します。 これは、パッケージマネージャーのバージョン更新を一時的に無効にする簡単な方法としても使用できます。 +デフォルトでは、{% data variables.product.prodname_dependabot %} は、バージョン更新に対して最大 5 つのプルリクエストをオープンします。 {% data variables.product.prodname_dependabot %}からのオープンなPull Requestが5つあると、それらのオープンなリクエストからマージもしくはクローズされたものが出てくるまでは、{% data variables.product.prodname_dependabot %}は新しいリクエストをオープンしません。 この制限を変更するには、`open-pull-requests-limit` を使用します。 これは、パッケージマネージャーのバージョン更新を一時的に無効にする簡単な方法としても使用できます。 このオプションはセキュリティアップデートに影響を与えません。セキュリティアップデートには、10 件のオープンプルリクエストの内部制限があります。 diff --git a/translations/ja-JP/content/code-security/secret-scanning/about-secret-scanning.md b/translations/ja-JP/content/code-security/secret-scanning/about-secret-scanning.md index 481ec138e4..0110c45c23 100644 --- a/translations/ja-JP/content/code-security/secret-scanning/about-secret-scanning.md +++ b/translations/ja-JP/content/code-security/secret-scanning/about-secret-scanning.md @@ -39,7 +39,7 @@ Service providers can partner with {% data variables.product.company_short %} to {% ifversion secret-scanning-push-protection %} -You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." +You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. {% ifversion push-protection-custom-link-orgs %}Admins can also specify a custom link that is displayed to the contributor when a push is blocked; the link can contain resources specific to the organization to aid contributors. {% endif %}For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." {% endif %} diff --git a/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md b/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md index af2fe9a6c9..5dad5906eb 100644 --- a/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md +++ b/translations/ja-JP/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md @@ -60,8 +60,20 @@ shortTitle: プッシュ保護の有効化 コマンドラインでは、一度に最大で5つの検出されたシークレットが表示されます。 特定のシークレットが既にリポジトリ中で検出されており、アラートが既に存在するなら、{% data variables.product.prodname_dotcom %}はそのシークレットをブロックしません。 +{% ifversion push-protection-custom-link-orgs %} + +Organizationの管理者は、プッシュがブロックされたときに表示されるカスタムリンクを提供できます。 このカスタムリンクには、Organization固有のリソースと、利用を進めるシークレットの保管庫や、ブロックされたシークレットに関連して質問の連絡を取る相手といったアドバイスを含めることができます。 + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +![ユーザがシークレットをリポジトリにプッシュしようとしたときにプッシュがブロックされたことを示しているスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) + +{% else %} + ![ユーザがシークレットをリポジトリにプッシュしようとしたときにプッシュがブロックされたことを示しているスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-with-link.png) +{% endif %} + {% data reusables.secret-scanning.push-protection-remove-secret %} ブロックされたシークレットの修復に関する詳しい情報については「[プッシュ保護によってブロックされたブランチのプッシュ](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)」を参照してください。 シークレットが本物であることが確認され、後で修復しようと考えているなら、できるかぎり早くそのシークレットを修復すべきです。 たとえば、そのシークレットを取り消して、リポジトリのコミット履歴から削除することになるでしょう。 露出してしまった実際のシークレットは、不正アクセスを避けるために取り消さなければなりません。 取り消す前にシークレットをまずローテートすることを検討すべきかもしれません。 詳しい情報については「[センシティブなデータをリポジトリから削除する](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)」を参照してください。 @@ -88,6 +100,14 @@ shortTitle: プッシュ保護の有効化 Web UIでは、{% data variables.product.prodname_dotcom %}は検出されたシークレットを一度に1つだけしか表示しません。 特定のシークレットが既にリポジトリ中で検出されており、アラートが既に存在するなら、{% data variables.product.prodname_dotcom %}はそのシークレットをブロックしません。 +{% ifversion push-protection-custom-link-orgs %} + +Organizationの管理者は、プッシュがブロックされたときに表示されるカスタムリンクを提供できます。 このカスタムリンクには、Organization固有のリソースやアドバイスを含めることができます。 たとえば、このカスタムリンクはOrganizationのシークレットの保管庫に関する情報を持つREADMEファイルや、質問のエスカレート先のチームや個人、あるいはOrganizationで承認されたシークレットの扱いやコミット履歴の書き換えのポリシーなどを指すようにすることができます。 + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + Web UIを使って、シークレットをファイルから削除できます。 シークレットを削除すると、ページ上部のバナーは変化し、変更をコミットできるようになったことを知らせてくれます。 ![シークレットの修正後にコミットが許可されたことをWeb Uiで表示しているスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png) diff --git a/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md b/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md index e9aba789dd..f8cb7656a3 100644 --- a/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md +++ b/translations/ja-JP/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md @@ -26,6 +26,14 @@ shortTitle: ブロックされたブランチのプッシュ {% endtip %} +{% ifversion push-protection-custom-link-orgs %} + +Organizationの管理者は、プッシュがブロックされた際の{% data variables.product.product_name %}からのメッセージに含められるカスタムリンクを提供できます。 このカスタムリンクには、Organization固有のリソースやアドバイスと、Organizationのポリシーを含めることができます。 + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + ## ブロックされたプッシュのコマンドラインでの解決 {% data reusables.secret-scanning.push-protection-command-line-choice %} diff --git a/translations/ja-JP/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md b/translations/ja-JP/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md index 8cd2a8c8bd..fc7c3c8b88 100644 --- a/translations/ja-JP/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md +++ b/translations/ja-JP/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md @@ -72,7 +72,7 @@ topics: {% endtip %} {% endif %} -この{% data variables.product.prodname_dependency_review_action %}のサンプルファイルは、これらの設定オプションの使い方を示しています。 +この{% data variables.product.prodname_dependency_review_action %}のサンプルファイルは、これらの設定オプションの使い方を示しています。 Notice that the example uses short version number for the action (`v2`) instead of a semver release number (for example, `v2.0.8`). This ensures that you use the most recent minor version of the action. ```yaml{:copy} name: 'Dependency Review' diff --git a/translations/ja-JP/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md b/translations/ja-JP/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md index 7f94a835ea..f71712faf0 100644 --- a/translations/ja-JP/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md +++ b/translations/ja-JP/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md @@ -12,25 +12,25 @@ shortTitle: プライベートイメージレジストリ ## About private image registries and {% data variables.product.prodname_github_codespaces %} -A registry is a secure space for storing, managing, and fetching private container images. You may use one to store one or more images. There are many examples of registries, such as {% data variables.product.prodname_dotcom %} Container Registry, Azure Container Registry, or DockerHub. +A registry is a secure space for storing, managing, and fetching private container images. You may use one to store one or more images. There are many examples of registries, such as {% data variables.product.prodname_container_registry %}, {% data variables.product.prodname_npm_registry %}, Azure Container Registry, or DockerHub. -{% data variables.product.prodname_dotcom %} Container Registry can be configured to pull container images seamlessly, without having to provide any authentication credentials to {% data variables.product.prodname_github_codespaces %}. For other image registries, you must create secrets in {% data variables.product.prodname_dotcom %} to store the access details, which will allow {% data variables.product.prodname_codespaces %} to access images stored in that registry. +{% data variables.product.prodname_ghcr_and_npm_registry %} can be configured to allow container images to be pulled seamlessly into {% data variables.product.prodname_github_codespaces %} during codespace creation, without having to provide any authentication credentials. For other image registries, you must create secrets in {% data variables.product.prodname_dotcom %} to store the access details, which will allow {% data variables.product.prodname_codespaces %} to access images stored in that registry. -## Accessing images stored in {% data variables.product.prodname_dotcom %} Container Registry +## Accessing images stored in {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data variables.product.prodname_dotcom %} Container Registry is the easiest way for {% data variables.product.prodname_codespaces %} to consume devcontainer container images. +{% data variables.product.prodname_ghcr_and_npm_registry %} provide the easiest way for {% data variables.product.prodname_codespaces %} to consume dev container images. -For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)". +For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)" and "[Working with the npm registry](/packages/working-with-a-github-packages-registry/working-with-the-npm-registry)". ### Accessing an image published to the same repository as the codespace -If you publish a container image to {% data variables.product.prodname_dotcom %} Container Registry in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. You won't have to provide any additional credentials, unless the **Inherit access from repo** option was unselected when the container image was published. +If you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %} in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. You won't have to provide any additional credentials, unless the **Inherit access from repo** option was unselected when the container image was published. #### Inheriting access from the repository from which an image was published -By default, when you publish a container image to {% data variables.product.prodname_dotcom %} Container Registry, the image inherits the access setting of the repository from which the image was published. For example, if the repository is public, the image is also public. If the repository is private, the image is also private, but is accessible from the repository. +By default, when you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %}, the image inherits the access setting of the repository from which the image was published. For example, if the repository is public, the image is also public. If the repository is private, the image is also private, but is accessible from the repository. -This behavior is controlled by the **Inherit access from repo** option. **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.product.prodname_dotcom %} Container Registry using a Personal Access Token (PAT). +This behavior is controlled by the **Inherit access from repo** option. **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.product.prodname_ghcr_or_npm_registry %} using a Personal Access Token (PAT). If the **Inherit access from repo** option was not selected when the image was published, you can manually add the repository to the published container image's access controls. 詳しい情報については「[パッケージのアクセス制御と可視性](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#inheriting-access-for-a-container-image-from-a-repository)」を参照してください。 @@ -46,13 +46,13 @@ If you want to allow a subset of an organization's repositories to access a cont ### Publishing a container image from a codespace -Seamless access from a codespace to {% data variables.product.prodname_dotcom %} Container Registry is limited to pulling container images. If you want to publish a container image from inside a codespace, you must use a personal access token (PAT) with the `write:packages` scope. +Seamless access from a codespace to {% data variables.product.prodname_ghcr_or_npm_registry %} is limited to pulling container images. If you want to publish a container image from inside a codespace, you must use a personal access token (PAT) with the `write:packages` scope. -We recommend publishing images via {% data variables.product.prodname_actions %}. For more information, see "[Publishing Docker images](/actions/publishing-packages/publishing-docker-images)." +We recommend publishing images via {% data variables.product.prodname_actions %}. For more information, see "[Publishing Docker images](/actions/publishing-packages/publishing-docker-images)" and "[Publishing Node.js packages](/actions/publishing-packages/publishing-nodejs-packages)." ## Accessing images stored in other container registries -If you are accessing a container image from a registry that isn't {% data variables.product.prodname_dotcom %} Container Registry, {% data variables.product.prodname_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. これらのシークレットが見つかった場合、{% data variables.product.prodname_github_codespaces %} はレジストリを codespace 内で使用できるようにします。 +If you are accessing a container image from a registry that isn't {% data variables.product.prodname_ghcr_or_npm_registry %}, {% data variables.product.prodname_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. これらのシークレットが見つかった場合、{% data variables.product.prodname_github_codespaces %} はレジストリを codespace 内で使用できるようにします。 - `<*>_CONTAINER_REGISTRY_SERVER` - `<*>_CONTAINER_REGISTRY_USER` diff --git a/translations/ja-JP/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md b/translations/ja-JP/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md index fe5c5af7c4..3515dfcd64 100644 --- a/translations/ja-JP/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md +++ b/translations/ja-JP/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md @@ -17,7 +17,7 @@ redirect_from: ## {% data variables.product.prodname_vscode_command_palette %} について -The Command Palette is one of the focal features of {% data variables.product.prodname_vscode %} and is available for you to use in {% data variables.product.prodname_github_codespaces %}. The {% data variables.product.prodname_vscode_command_palette %} allows you to access many commands for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_vscode_shortname %}. For more information on using the {% data variables.product.prodname_vscode_command_palette_shortname %}, see "[User Interface](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" in the {% data variables.product.prodname_vscode_shortname %} documentation. +The Command Palette is one of the focal features of {% data variables.product.prodname_vscode %} and is available for you to use in {% data variables.product.prodname_github_codespaces %}. コマンドパレットを使用すると、{% data variables.product.prodname_codespaces %} および {% data variables.product.prodname_vscode_shortname %} の多くのコマンドにアクセスできます。 For more information on using the {% data variables.product.prodname_vscode_command_palette_shortname %}, see "[User Interface](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" in the {% data variables.product.prodname_vscode_shortname %} documentation. ## Accessing the {% data variables.product.prodname_vscode_command_palette_shortname %} diff --git a/translations/ja-JP/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md b/translations/ja-JP/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md index 77bd7be249..9781ece278 100644 --- a/translations/ja-JP/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md +++ b/translations/ja-JP/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md @@ -90,15 +90,13 @@ You can add further script, preferences, configuration files to your dotfiles re If your codespace fails to pick up configuration settings from dotfiles, see "[Troubleshooting dotfiles for {% data variables.product.prodname_codespaces %}](/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces)." -## Other available settings - You can also personalize {% data variables.product.prodname_codespaces %} using additional [{% data variables.product.prodname_codespaces %} settings](https://github.com/settings/codespaces): -- To set your default region, see "[Setting your default region for {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-region-for-github-codespaces)." -- To set your editor, see "[Setting your default editor for {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-editor-for-github-codespaces)." -- To add encrypted secrets, see "[Managing encrypted secrets for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-github-codespaces)." - To enable GPG verification, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)." -- To allow your codespaces to access other repositories, see "[Managing repository access for your organization's codespaces](/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces)." +- To set your editor, see "[Setting your default editor for {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-editor-for-github-codespaces)." +- To set how long a codespace can remain unused before it is automatically stopped, see "[Setting your timeout period for GitHub Codespaces](/codespaces/customizing-your-codespace/setting-your-timeout-period-for-github-codespaces)." +- To set the period for which your unused codespaces are retained, see "[Configuring automatic deletion of your codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)." +- To set your default region, see "[Setting your default region for {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-region-for-github-codespaces)." ## Further reading diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/creating-a-codespace.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/creating-a-codespace.md index 0712d93197..8b9766e0d6 100644 --- a/translations/ja-JP/content/codespaces/developing-in-codespaces/creating-a-codespace.md +++ b/translations/ja-JP/content/codespaces/developing-in-codespaces/creating-a-codespace.md @@ -46,23 +46,20 @@ If you want to use Git hooks for your codespace, then you should set up hooks us When you have access to {% data variables.product.prodname_github_codespaces %}, you'll see a "Codespaces" tab within the **{% octicon "code" aria-label="The code icon" %} Code** drop-down menu when you view a repository. -You'll have access to codespaces under the following conditions: +You'll have access to {% data variables.product.prodname_github_codespaces %} under the following conditions: -* You are a member of an organization that has enabled {% data variables.product.prodname_codespaces %} and set a spending limit. -* An organization owner has granted you access to {% data variables.product.prodname_codespaces %}. -* The repository is owned by the organization that has enabled {% data variables.product.prodname_codespaces %}. +Either all of these are true: +* You are a member, or outside collaborator, of an organization that has enabled {% data variables.product.prodname_codespaces %} and set a spending limit. +* The organization owner has allowed you to create codespaces at the organization's expense. +* The repository for which you want to create a codespace is owned by this organization. -{% note %} - -**Note:** Individuals who have already joined the beta with their personal {% data variables.product.prodname_dotcom %} account will not lose access to {% data variables.product.prodname_codespaces %}, however {% data variables.product.prodname_codespaces %} for individuals will continue to remain in beta. - -{% endnote %} - -Organization owners can allow all members of the organization to create codespaces, limit codespace creation to selected organization members, or disable codespace creation. For more information about managing access to codespaces within your organization, see "[Enable Codespaces for users in your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#enable-codespaces-for-users-in-your-organization)." +Or both of these are true: +* You are participating in the beta of {% data variables.product.prodname_codespaces %} for individual users. +* Either you own the repository for which you want to create a codespace, or it is owned by an organization of which you are either a member or an outside collaborator. Before {% data variables.product.prodname_codespaces %} can be used in an organization, an owner or billing manager must have set a spending limit. For more information, see "[About spending limits for Codespaces](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces#about-spending-limits-for-codespaces)." -If you would like to create a codespace for a repository owned by your personal account or another user, and you have permission to create repositories in an organization that has enabled {% data variables.product.prodname_github_codespaces %}, you can fork user-owned repositories to that organization and then create a codespace for the fork. +Organization owners can specify who can create and use codespaces at the organization's expense. Organization owners can also prevent any codespace usage being charged to the organization. For more information, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." ## codespace を作成する diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md new file mode 100644 index 0000000000..f33a542c76 --- /dev/null +++ b/translations/ja-JP/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md @@ -0,0 +1,120 @@ +--- +title: Getting started with GitHub Codespaces for machine learning +shortTitle: Machine learning +intro: 'Learn about working on machine learning projects with {% data variables.product.prodname_github_codespaces %} and its out-of-the-box tools.' +product: '{% data reusables.gated-features.codespaces %}' +versions: + fpt: '*' + ghec: '*' +type: tutorial +topics: + - Codespaces + - Developer +--- + +## はじめに + +This guide introduces you to machine learning with {% data variables.product.prodname_github_codespaces %}. You’ll build a simple image classifier, learn about some of the tools that come preinstalled in {% data variables.product.prodname_github_codespaces %}, configure your development environment for NVIDIA CUDA, and use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab. + +## Prerequisite + +You have access to {% data variables.product.prodname_github_codespaces %}. 詳しい情報については、「[codespace を作成する](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)」を参照してください。 + +## Build a simple image classifier + +We'll use a Jupyter notebook to build a simple image classifier. + +Jupyter notebooks are sets of cells that you can execute one after another. The notebook we'll use includes a number of cells that build an image classifier using [PyTorch](https://pytorch.org/). Each cell is a different phase of that process: download a dataset, set up a neural network, train a model, and then test that model. + +We'll run all of the cells, in sequence, to perform all phases of building the image classifier. When we do this Jupyter saves the output back into the notebook so that you can examine the results. + +### Creating a repository and a codespace + +1. Go to the [github/codespaces-getting-started-ml](https://github.com/github/codespaces-getting-started-ml) template repository and click **Use this template**. +{% data reusables.codespaces.open-codespace-from-template-repo %} + + By default, a codespace for this repository opens in a web-based version of {% data variables.product.prodname_vscode %}. + +### Open the image classifier notebook + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes a set of machine learning libraries that are preinstalled in your codespace. For example, Numpy, pandas, SciPy, Matplotlib, seaborn, scikit-learn, TensorFlow, Keras, PyTorch, Requests, and Plotly. For more information about the default image, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)" and [the `devcontainers/images` repository](https://github.com/devcontainers/images/tree/main/src/codespaces#github-codespaces-default-linux-universal). + +1. In the {% data variables.product.prodname_vscode_shortname %} editor, close any "Get Started" tabs that are displayed. +1. Open the `image-classifier.ipynb` notebook file. +1. Click the Python kernel link at the top right of the editor. + + ![Screenshot of the Python kernal link](/assets/images/help/codespaces/jupyter-python-kernel-link.png) + +1. In the drop-down menu, choose the kernel in the directory `/opt/python/latest/bin/python`. + + ![Screenshot of the Python kernal drop-down menu](/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png) + +### Build the image classifier + +The image classifier notebook contains all the code you need to download a dataset, train a neural network, and evaluate its performance. + +1. Click **Run All** to execute all of the notebook’s cells. + + ![Screenshot of the Run All button](/assets/images/help/codespaces/jupyter-run-all.png) + +1. Scroll down to view the output of each cell. + + ![Screenshot of Step 3 in the editor](/assets/images/help/codespaces/jupyter-notebook-step3.png) + +## Configure NVIDIA CUDA for your codespace + +Some software, such as TensorFlow, requires you to install NVIDIA CUDA to use your codespace’s GPU. Where this is the case, you can create your own custom configuration, by using a `devcontainer.json` file, and specify that CUDA should be installed. For more information on creating a custom configuration, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#creating-a-custom-dev-container-configuration)." + +{% note %} + +**Note**: For full details of the script that's run when you add the `nvidia-cuda` feature, see [the devcontainers/features repository](https://github.com/devcontainers/features/tree/main/src/nvidia-cuda). + +{% endnote %} + +1. Within a codespace, open the `.devcontainer/devcontainer.json` file in the editor. +1. Add a top-level `features` object with the following contents: + + ```json{:copy} + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + ``` + + For more information about the `features` object, see the [development containers specification](https://containers.dev/implementors/features/#devcontainer-json-properties). + + If you are using the `devcontainer.json` file from the image classifier repository you created for this tutorial, your `devcontainer.json` file will now look like this: + + ``` + { + "customizations": { + "vscode": { + "extensions": [ + "ms-python.python", + "ms-toolsai.jupyter" + ] + } + }, + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + } + ``` + +1. Save the change. +{% data reusables.codespaces.rebuild-command %} + The codespace container will be rebuilt. This will take several minutes. When the rebuild is complete the codespace is automatically reopened. +1. Commit the change to the repository so that CUDA will be installed in any new codespaces you create from this repository in future. + +## Open your codespace in JupyterLab + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes JupyterLab, the web-based Jupyter IDE. You can use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab without having to install anything else on your codespace. + +1. In the terminal, enter the {% data variables.product.prodname_cli %} command `gh cs jupyter`. +1. Choose the codespace you want to open. + + ![Screenshot of opening a codespace from the terminal](/assets/images/help/codespaces/open-codespace-in-jupyter.png) + diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md index 061964fee1..d91e90dfa7 100644 --- a/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md +++ b/translations/ja-JP/content/codespaces/developing-in-codespaces/index.md @@ -18,6 +18,7 @@ children: - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network + - /getting-started-with-github-codespaces-for-machine-learning - /using-github-codespaces-in-visual-studio-code - /using-github-codespaces-with-github-cli --- diff --git a/translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md index cc0ca02af9..fb0484b87d 100644 --- a/translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ b/translations/ja-JP/content/codespaces/developing-in-codespaces/renaming-a-codespace.md @@ -27,7 +27,9 @@ To find the display name of a codespace: ![Screenshot of the Remote Explorer in VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png) +{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %} - In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. + ### Permanent codespace names In addition to the display name, when you create a codespace, a permanent name is also assigned to the codespace. The name is a combination of your {% data variables.product.company_short %} handle, the repository name, and some random characters. For example: `octocat-myrepo-gmc7`. You can't change this name. diff --git a/translations/ja-JP/content/codespaces/getting-started/deep-dive.md b/translations/ja-JP/content/codespaces/getting-started/deep-dive.md index f1696544d8..daee2615f3 100644 --- a/translations/ja-JP/content/codespaces/getting-started/deep-dive.md +++ b/translations/ja-JP/content/codespaces/getting-started/deep-dive.md @@ -73,7 +73,7 @@ As you develop in your codespace, it will save any changes to your files every f ### Closing or stopping your codespace -To stop your codespace you can [use the {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)). If you exit your codespace without running the stop command (for example, closing the browser tab), or if you leave the codespace running without interaction, the codespace and its running processes will continue until a window of inactivity occurs, after which the codespace will stop. By default, the window of inactivity is 30 minutes. +To stop your codespace you can [use the {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)). If you exit your codespace without running the stop command (for example, closing the browser tab), or if you leave the codespace running without interaction, the codespace and its running processes will continue until a window of inactivity occurs, after which the codespace will stop. By default, the window of inactivity is 30 minutes. When you close or stop your codespace, all uncommitted changes are preserved until you connect to the codespace again. diff --git a/translations/ja-JP/content/codespaces/getting-started/quickstart.md b/translations/ja-JP/content/codespaces/getting-started/quickstart.md index 8257434b67..6e7616a77d 100644 --- a/translations/ja-JP/content/codespaces/getting-started/quickstart.md +++ b/translations/ja-JP/content/codespaces/getting-started/quickstart.md @@ -1,6 +1,6 @@ --- -title: 'Quickstart for {% data variables.product.prodname_github_codespaces %}' -shortTitle: 'Quickstart for {% data variables.product.prodname_codespaces %}' +title: '{% data variables.product.prodname_github_codespaces %}のクイックスタート' +shortTitle: '{% data variables.product.prodname_codespaces %}のクイックスタート' intro: 'Try out {% data variables.product.prodname_github_codespaces %} in 5 minutes.' allowTitleToDifferFromFilename: true product: '{% data reusables.gated-features.codespaces %}' @@ -25,12 +25,7 @@ For more information on exactly how {% data variables.product.prodname_github_co ## codespace を作成する 1. Navigate to the [template repository](https://github.com/github/haikus-for-codespaces) and select **Use this template**. - -1. Choose an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. - -1. Navigate to the main page of the newly created repository. Under the repository name, use the **{% octicon "code" aria-label="The code icon" %} Code** drop-down menu, and in the **Codespaces** tab, click **Create codespace on main**. - - ![[New codespace] ボタン](/assets/images/help/codespaces/new-codespace-button.png) +{% data reusables.codespaces.open-codespace-from-template-repo %} ## Running the application diff --git a/translations/ja-JP/content/codespaces/guides.md b/translations/ja-JP/content/codespaces/guides.md index 8349120fb8..59bdf9721a 100644 --- a/translations/ja-JP/content/codespaces/guides.md +++ b/translations/ja-JP/content/codespaces/guides.md @@ -40,7 +40,6 @@ includeGuides: - /codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization - /codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization - /codespaces/managing-codespaces-for-your-organization/managing-encrypted-secrets-for-your-repository-and-organization-for-codespaces - - /codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces - /codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types - /codespaces/managing-codespaces-for-your-organization/retricting-the-idle-timeout-period - /codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces diff --git a/translations/ja-JP/content/codespaces/index.md b/translations/ja-JP/content/codespaces/index.md index 9a79bd2714..cd1444eae7 100644 --- a/translations/ja-JP/content/codespaces/index.md +++ b/translations/ja-JP/content/codespaces/index.md @@ -7,11 +7,11 @@ introLinks: quickstart: /codespaces/getting-started/quickstart featuredLinks: guides: - - /billing/managing-billing-for-github-codespaces/about-billing-for-codespaces - /codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization - - /codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project - - /codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces - /codespaces/developing-in-codespaces/codespaces-lifecycle + - /codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project + - /codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces + - /billing/managing-billing-for-github-codespaces/about-billing-for-codespaces popular: - /codespaces/getting-started-with-codespaces/getting-started-with-your-nodejs-project-in-codespaces - /codespaces/getting-started-with-codespaces/getting-started-with-your-python-project-in-codespaces diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md index db2f279779..8a9f270e83 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md @@ -1,9 +1,9 @@ --- title: Enabling GitHub Codespaces for your organization -shortTitle: Enable Codespaces -intro: 'Organization 内のどのユーザが {% data variables.product.prodname_github_codespaces %} を使用できるかを制御できます。' +shortTitle: 'Enable {% data variables.product.prodname_codespaces %}' +intro: 'You can control which users in your organization can use {% data variables.product.prodname_github_codespaces %} at the organization''s expense.' product: '{% data reusables.gated-features.codespaces %}' -permissions: 'To manage user permissions for {% data variables.product.prodname_github_codespaces %} for an organization, you must be an organization owner.' +permissions: 'To alter an organization''s billing settings, you must be an organization owner.' redirect_from: - /codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization - /codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization @@ -13,25 +13,23 @@ versions: type: how_to topics: - Codespaces - - Permissions + - Billing - Administrator --- - ## About enabling {% data variables.product.prodname_github_codespaces %} for your organization -Organization のオーナーは、Organization 内のどのユーザが Codespaces を作成および使用できるかを制御できます。 +Organization owners can control which users in your organization can create and use codespaces at the organization's expense. -To use codespaces in your organization, you must do the following: +Only people who can clone a repository can create a codespace for that repository. To allow people to create codespaces for repositories owned by your organization, you must: + +- Ensure that users have at least write access to the repositories where they want to use a codespace. 詳しい情報については「[リポジトリへのアクセスを持つTeamや人の管理](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)」を参照してください。 +- Ensure that your organization does not have an IP address allow list enabled. For more information, see "[Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} + +To allow people to create codespaces for which your organization will be billed, you must: -- Ensure that users have [at least write access](/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization) to the repositories where they want to use a codespace. -- [Enable {% data variables.product.prodname_github_codespaces %} for users in your organization](#enable-codespaces-for-users-in-your-organization). You can choose to allow {% data variables.product.prodname_codespaces %} for selected users or only for specific users. - [Set a spending limit](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces) -- Ensure that your organization does not have an IP address allow list enabled. For more information, see "[Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} - -By default, a codespace can only access the repository from which it was created. Organization 内の Codespaces で、codespace の作者がアクセスできる他の Organization リポジトリにアクセスできるようにする場合は、「[{% data variables.product.prodname_codespaces %} のアクセスとセキュリティを管理する](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)」を参照してください。 - -## Enable {% data variables.product.prodname_codespaces %} for users in your organization +- [Choose who can create codespaces that are billed to your organization](#choose-who-can-create-codespaces-that-are-billed-to-your-organization) {% ifversion fpt %} {% note %} @@ -40,31 +38,44 @@ By default, a codespace can only access the repository from which it was created {% endnote %} {% endif %} + +By default, a codespace can only access the repository from which it was created. If you want codespaces in your organization to be able to access other organization repositories that the codespace creator can access, see "[Managing repository access for your organization's codespaces](/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces)." + +## Choose who can create codespaces that are billed to your organization + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. [User permissions] で、次のいずれかのオプションを選択します。 +1. Under "Billing," select one of the following options: - * [**Selected users**] にすると、{% data variables.product.prodname_codespaces %} を使用する特定の Organization メンバーを選択できます。 - * **Allow for all members** to allow all your organization members to use {% data variables.product.prodname_codespaces %}. - * **Allow for all members and outside collaborators** to allow all your organization members as well as outside collaborators to use {% data variables.product.prodname_codespaces %}. + * **Disabled** - Your organization will not be charged for codespace usage. {% data variables.product.prodname_codespaces %} created for your organization's repositories will be billed to the individual users who create them. + * **Selected members** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by selected members will be billed to the organization. + * **All members** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by members of your organization will be billed to the organization. + * **All members and outside collaborators** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by organization members and outside collaborators will be billed to the organization. - !["User permissions" のラジオボタン](/assets/images/help/codespaces/org-user-permission-settings-outside-collaborators.png) + ![Radio buttons for "Billing"](/assets/images/help/codespaces/codespaces-org-billing-settings.png) {% note %} - **Note:** When you select **Allow for all members and outside collaborators**, all outside collaborators who have been added to specific repositories can create and use {% data variables.product.prodname_codespaces %}. Your organization will be billed for all usage incurred by outside collaborators. For more information on managing outside collaborators, see "[About outside collaborators](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)." + **Note:** When you select **All members and outside collaborators**, all outside collaborators who have been added to specific repositories can create and use {% data variables.product.prodname_codespaces %} for those repositories, and your organization will be billed for this usage. For more information on managing outside collaborators, see "[About outside collaborators](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)." {% endnote %} 1. [**Save**] をクリックします。 +1. If you chose **Selected members**, an input box is displayed for you to enter the names of users you want to select. + + ![Input box for selecting users](/assets/images/help/codespaces/codespaces-org-billing-add-users.png) ## Disabling {% data variables.product.prodname_codespaces %} for your organization +You can prevent the creation and use of codespaces billable to your organization. + +{% data reusables.codespaces.codespaces-disabling-org-billing %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. Under "User permissions", select **Disabled**. +1. Under "Billing," select **Disabled**. ## 利用限度の設定 diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md index ca50b3f071..6ab2c5e722 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md @@ -35,11 +35,15 @@ You can set a usage limit for the codespaces in your organization or repository. ## Disabling or limiting {% data variables.product.prodname_codespaces %} -You can disable the use of {% data variables.product.prodname_codespaces %} in your organization or repository. For more information, see "[Managing repository access for your organization's codespaces](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)." +You can disable all use of {% data variables.product.prodname_github_codespaces %} that would be billed to your organization. Alternatively, you can specify which organization members or collaborators can use {% data variables.product.prodname_codespaces %} at your organization's expense. For more information, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)." -You can also limit the individual users who can use {% data variables.product.prodname_codespaces %}. For more information, see "[Managing user permissions for your organization](/codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization)." +{% data reusables.codespaces.codespaces-disabling-org-billing %} -You can limit the choice of machine types that are available for repositories owned by your organization. This allows you to prevent people using overly resourced machines for their codespaces. 詳しい情報については「[マシンタイプへのアクセス制限](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)」を参照してください。 +You can configure which repositories can be accessed from codespaces created for a particular repository. For more information, see "[Managing access to other repositories within your codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)." + +You can limit the choice of types of machine that are available for codespaces created from repositories owned by your organization. This allows you to prevent people using overly resourced machines for their codespaces, and incurring unnecessary charges. 詳しい情報については「[マシンタイプへのアクセス制限](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)」を参照してください。 + +You can also restrict how long a codespace can remain unused before it is automatically deleted. This can help to reduce storage costs for {% data variables.product.prodname_codespaces %}. For more information, see "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." ## Deleting unused codespaces @@ -47,6 +51,6 @@ Your users can delete their codespaces in https://github.com/codespaces and from {% note %} -**注釈:** codespace を作成したユーザだけが削除できます。 現在、Organization のオーナーが Organization 内で作成された Codespaces を削除する方法はありません。 +**Note:** Codespaces are automatically deleted after they have been stopped and have remained inactive for a defined number of days. For more information, see "[Restricting the retention period for codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)." A codespace can only be manually deleted by the person who created the codespace. {% endnote %} diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md index 04cb517ff7..b4e181be5b 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md @@ -20,7 +20,7 @@ redirect_from: {% warning %} -**Deprecation note**: The access and security setting described below is now deprecated and is documented here for reference only. To enable expanded access to other repositories, add the requested permissions to your dev container definition. For more information, see "[Managing access to other repositories within your codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)." +**Deprecation note**: The access and security setting described below is now deprecated and is documented here for reference only. To enable expanded access to other repositories, add the requested permissions to your `devcontainer.json` configuration file. For more information, see "[Managing access to other repositories within your codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)." {% endwarning %} diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 415f43e055..6a55e8dc43 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -43,6 +43,8 @@ For example, you could create an organization-wide policy that restricts the mac If you add an organization-wide policy, you should set it to the largest choice of machine types that will be available for any repository in your organization. You can then add repository-specific policies to further restrict the choice. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adding a policy to limit the available machine types {% data reusables.profile.access_org %} diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index fc28f2cf6e..06c9c95946 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -40,6 +40,8 @@ When you create a policy, you choose whether it applies to all repositories in y If you add an organization-wide policy with a timeout constraint, you should set the timeout to the longest acceptable period. You can then add separate policies that set the maximum timeout to a shorter period for specific repositories in your organization. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adding a policy to set a maximum idle timeout period {% data reusables.profile.access_org %} diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index 06d0b8f5e8..68dda36c9c 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -26,6 +26,8 @@ When you create a policy, you choose whether it applies to all repositories in y If you add an organization-wide policy with a retention constraint, you should set the retention period to the longest acceptable period. You can then add separate policies that set the maximum retention to a shorter period for specific repositories in your organization. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adding a policy to set a maximum codespace retention period {% data reusables.profile.access_org %} diff --git a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index 32407ca041..81f43ee279 100644 --- a/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/translations/ja-JP/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -36,6 +36,8 @@ For example, you could create an organization-wide policy that restricts the vis If you add an organization-wide policy, you should set it to the most lenient visibility option that will be available for any repository in your organization. You can then add repository-specific policies to further restrict the choice. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adding a policy to limit the port visibility options {% data reusables.profile.access_org %} diff --git a/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md b/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md index d99f845a82..850b43433f 100644 --- a/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md +++ b/translations/ja-JP/content/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces.md @@ -132,7 +132,3 @@ When you enable access and security for a repository owned by your personal acco 1. [Selected repositories] を選択した場合、ドロップダウンメニューを選択してから、あなたの所有するその他のリポジトリにアクセスを許可する、リポジトリのコードスペースをクリックします。 所有するその他のリポジトリにコードスペースによるアクセスを許可したい、すべてのリポジトリについて同じ手順を繰り返します。 ![[Selected repositories]ドロップダウンメニュー](/assets/images/help/settings/codespaces-access-and-security-repository-drop-down.png) - -## 参考リンク - -- "[Managing repository access for your organization's codespaces](/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces)" diff --git a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 0ce9332868..e08d31dbce 100644 --- a/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/translations/ja-JP/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -155,9 +155,9 @@ You can add features to your predefined container configuration to customize whi You can add some of the most common features by selecting them when configuring your predefined container. For more information on the available features, see the [script library](https://github.com/microsoft/vscode-dev-containers/tree/main/script-library#scripts) in the `vscode-dev-containers` repository. -1. Access the Command Palette (`Shift + Command + P` / `Ctrl + Shift + P`), then start typing "configure". Select **Codespaces: Configure Devcontainer Features**. +1. Access the Command Palette (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "configure". Select **Codespaces: Configure Devcontainer Features**. - ![The Configure Devcontainer Features command in the command palette](/assets/images/help/codespaces/codespaces-configure-features.png) + ![The Configure Devcontainer Features command in the Command Palette](/assets/images/help/codespaces/codespaces-configure-features.png) 1. Update your feature selections, then click **OK**. @@ -165,7 +165,7 @@ You can add some of the most common features by selecting them when configuring 1. To apply the changes, in the bottom right corner of the screen, click **Rebuild now**. For more information about rebuilding your container, see "[Applying changes to your configuration](#applying-configuration-changes-to-a-codespace)." - !["Codespaces: Rebuild Container" in the command palette](/assets/images/help/codespaces/rebuild-prompt.png) + !["Codespaces: Rebuild Container" in the Command Palette](/assets/images/help/codespaces/rebuild-prompt.png) ## Creating a custom dev container configuration diff --git a/translations/ja-JP/content/codespaces/troubleshooting/github-codespaces-logs.md b/translations/ja-JP/content/codespaces/troubleshooting/github-codespaces-logs.md index 90a6b34faf..6b720dea67 100644 --- a/translations/ja-JP/content/codespaces/troubleshooting/github-codespaces-logs.md +++ b/translations/ja-JP/content/codespaces/troubleshooting/github-codespaces-logs.md @@ -28,7 +28,7 @@ These logs contain detailed information about the codespace, the container, the {% webui %} 1. If you are using {% data variables.product.prodname_codespaces %} in the browser, ensure that you are connected to the codespace you want to debug. -1. Open the {% data variables.product.prodname_vscode %} Command Palette (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. 1. Define where to save the zip archive of logs then click **Save** (desktop) or click **OK** (web). 1. If you are using {% data variables.product.prodname_codespaces %} in the browser, right-click on the zip archive of logs from the Explorer view and select **Download…** to download them to your local machine. @@ -36,7 +36,7 @@ These logs contain detailed information about the codespace, the container, the {% vscode %} -1. Open the {% data variables.product.prodname_vscode %} Command Palette (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. Select **Codespaces: Export Logs** from the list to download the logs. 1. Define where to save the zip archive of logs then click **Save** (desktop) or click **OK** (web). {% endvscode %} @@ -55,7 +55,7 @@ These logs contain information about the container, dev container, and their con {% webui %} 1. Connect to the codespace you want to debug. -2. Open the {% data variables.product.prodname_vscode_command_palette %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. +2. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. If you want to share the log with support, you can copy the text from the creation log into a text editor and save the file locally. @@ -63,7 +63,7 @@ If you want to share the log with support, you can copy the text from the creati {% vscode %} -Open the Command Palette (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. +Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. Select **Codespaces: View Creation Log** from the list to open the `creation.log` file. If you want to share the log with support, you can copy the text from the creation log into a text editor and save the file locally. diff --git a/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md b/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md index 4afe402686..27a5c18eb9 100644 --- a/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md +++ b/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md @@ -1,5 +1,5 @@ --- -title: Troubleshooting creation and deletion of Codespaces +title: Troubleshooting creation and deletion of codespaces intro: 'This article provides troubleshooting steps for common issues you may experience when creating or deleting a codespace, including storage and configuration issues.' product: '{% data reusables.gated-features.codespaces %}' versions: @@ -16,6 +16,8 @@ shortTitle: Creation and deletion ### 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_github_codespaces %} may not be available for that repository. 詳しい情報については、「[codespace を作成する](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces)」を参照してください。 +You can't create a codespace for a private repository that is owned by an organization, unless you have write access to the repository or the organization has enabled forking for it. + 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 %}. 詳しい情報については「[{% data variables.product.prodname_codespaces %}の利用上限の管理](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces)」を参照してください。 ### Codespace does not open when created diff --git a/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md b/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md index b1b17e697b..1cd2b24f4d 100644 --- a/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md +++ b/translations/ja-JP/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md @@ -18,7 +18,7 @@ redirect_from: Codespaces are set to stop after 30 minutes without any activity. If you try to interact with a codespace after it has stopped, you may see a `503 service unavailable` error. - If a **Start** button is shown in {% data variables.product.prodname_vscode %} or in your browser window, click **Start** to reconnect to the codespace. -- Reset your codespace by reloading the window. From the [command palette](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) in {% data variables.product.prodname_vscode %}, click **Developer: Reload Window**. +- Reset your codespace by reloading the window. From the [Command Palette](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) in {% data variables.product.prodname_vscode %}, click **Developer: Reload Window**. ## Browser cannot connect diff --git a/translations/ja-JP/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md b/translations/ja-JP/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md index 5094075f8b..a64f9e0920 100644 --- a/translations/ja-JP/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md +++ b/translations/ja-JP/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md @@ -31,6 +31,7 @@ The name the codespace is also included in many of the log files. For example, i Every codespace also has an ID (identifier). This is not shown by default in {% data variables.product.prodname_vscode %} so you may need to update the settings for the {% data variables.product.prodname_github_codespaces %} extension before you can access the ID. 1. In {% data variables.product.prodname_vscode %}, browser or desktop, in the Activity Bar on the left, click **Remote Explorer** to show details for the codespace. -2. If the sidebar includes a "Codespace Performance" section, hover over the "Codespace ID" and click the clipboard icon to copy the ID. -3. If the information is not shown, click {% octicon "gear" aria-label="The gear icon" %}, in the bottom-left corner of the Activity Bar, to display the "Settings" tab. -4. Expand **Extensions** and click **{% data variables.product.prodname_github_codespaces %}** to display the settings for the extension. Then enable **Show Performance Explorer** to display the "Codespace Performance" section in the sidebar. ![Codespace ID and settings required to display performance information](/assets/images/help/codespaces/find-codespace-id.png) +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} +1. If the sidebar includes a "Codespace Performance" section, hover over the "Codespace ID" and click the clipboard icon to copy the ID. +1. If the information is not shown, click {% octicon "gear" aria-label="The gear icon" %}, in the bottom-left corner of the Activity Bar, to display the "Settings" tab. +1. Expand **Extensions** and click **{% data variables.product.prodname_github_codespaces %}** to display the settings for the extension. Then enable **Show Performance Explorer** to display the "Codespace Performance" section in the sidebar. ![Codespace ID and settings required to display performance information](/assets/images/help/codespaces/find-codespace-id.png) diff --git a/translations/ja-JP/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md b/translations/ja-JP/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md index 81b210ccbe..0f59c4c991 100644 --- a/translations/ja-JP/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md +++ b/translations/ja-JP/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md @@ -539,7 +539,7 @@ Errors with `body` will be prefixed with `body[i]` where `i` represents the inde ### サンプル -``` +```yaml body: - type: dropdown attributes: @@ -552,7 +552,7 @@ body: The error can be fixed by ensuring that no duplicate choices exist in the `options` array. -``` +```yaml body: - type: dropdown attributes: @@ -570,7 +570,7 @@ Errors with `body` will be prefixed with `body[i]` where `i` represents the inde ### サンプル -``` +```yaml body: - type: dropdown attributes: @@ -585,7 +585,7 @@ body: The error can be fixed by removing "None" as an option. If you want a contributor to be able to indicate that they like none of those types of pies, you can additionally remove the `required` validation. -``` +```yaml body: - type: dropdown attributes: @@ -605,7 +605,7 @@ Errors with `body` will be prefixed with `body[i]` where `i` represents the inde ### サンプル -``` +```yaml body: - type: dropdown attributes: @@ -618,7 +618,7 @@ body: The error can be fixed by wrapping each offending option in quotes, to prevent them from being processed as Boolean values. -``` +```yaml body: - type: dropdown attributes: @@ -629,6 +629,36 @@ body: - Maybe ``` +## Body cannot be empty + +The template body `key:value` pair can not be empty. For more information about which top-level keys are required, see "[Syntax for issue forms](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms#top-level-syntax)." + +The error can be fixed by adding the `body:` section. + +### サンプル + +```yaml +name: Support Request +description: Something went wrong and you need help? +--- +body: +- type: textarea + attributes: + label: "What's wrong?" +``` + +In this example, the error can be fixed by deleting the `---` (document separator) between the headers and the `body` section. + +```yaml +name: Support Request +description: Something went wrong and you need help? + +body: +- type: textarea + attributes: + label: "What's wrong?" +``` + ## 参考リンク - [YAML](https://yaml.org/) diff --git a/translations/ja-JP/content/developers/apps/building-github-apps/authenticating-with-github-apps.md b/translations/ja-JP/content/developers/apps/building-github-apps/authenticating-with-github-apps.md index 62275c90b6..d08318c307 100644 --- a/translations/ja-JP/content/developers/apps/building-github-apps/authenticating-with-github-apps.md +++ b/translations/ja-JP/content/developers/apps/building-github-apps/authenticating-with-github-apps.md @@ -147,18 +147,24 @@ $ curl -i -X POST \ ```shell $ curl -i \ --H "Authorization: token YOUR_INSTALLATION_ACCESS_TOKEN" \ +-H "Authorization: Bearer YOUR_INSTALLATION_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ {% data variables.product.api_url_pre %}/installation/repositories ``` `YOUR_INSTALLATION_ACCESS_TOKEN` の値は置き換えてください。 +{% note %} + +**ノート:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + ## インストールとして API エンドポイントにアクセスする インストールアクセストークンを使用して {% data variables.product.prodname_github_apps %} の概要を取得するために利用できる REST API エンドポイントの一覧については、「[利用可能なエンドポイント](/rest/overview/endpoints-available-for-github-apps)」を参照してください。 -インストールに関連するエンドポイントの一覧については、「[インストール](/rest/reference/apps#installations)」を参照してください。 +For a list of endpoints related to installations, see "[Installations](/rest/reference/apps#installations)." ## インストールによる HTTP ベースの Git アクセス diff --git a/translations/ja-JP/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md b/translations/ja-JP/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md index 0baabc0649..ca471d9731 100644 --- a/translations/ja-JP/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md +++ b/translations/ja-JP/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md @@ -108,13 +108,13 @@ GitHub Appが`login`パラメータを指定すると、ユーザに対して利 ユーザのアクセストークンを使用すると、GitHub App がユーザの代わりに API にリクエストを発行できます。 - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user たとえば、curlでは以下のようにAuthorizationヘッダを設定できます。 ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## デバイスフロー @@ -133,12 +133,12 @@ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre ユーザの OAuth トークンを取得したら、そのユーザがアクセスできるインストールされたアプリケーションを確認できます。 - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations また、インストールされたアプリケーションでユーザがアクセスできるリポジトリも確認できます。 - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations/:installation_id/repositories 詳細については、[ユーザアクセストークンがアクセスできるインストールされたアプリケーションの一覧表示](/rest/apps#list-app-installations-accessible-to-the-user-access-token)および[ユーザアクセストークンがアクセスできるリポジトリの一覧表示](/rest/apps#list-repositories-accessible-to-the-user-access-token)でご確認ください。 diff --git a/translations/ja-JP/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md b/translations/ja-JP/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md index 9741288825..135c0354d0 100644 --- a/translations/ja-JP/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md +++ b/translations/ja-JP/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md @@ -23,6 +23,8 @@ Organization に許可リストがある場合、{% data variables.product.prodn ## {% data variables.product.prodname_github_app %} に IPアドレス許可リストを追加する +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.apps.settings-step %} {% data reusables.user-settings.developer_settings %} {% data reusables.user-settings.github_apps %} diff --git a/translations/ja-JP/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md b/translations/ja-JP/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md index 1f4c4dd83c..30d4a58471 100644 --- a/translations/ja-JP/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md +++ b/translations/ja-JP/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md @@ -47,7 +47,7 @@ Rate limits for {% data variables.product.prodname_github_apps %} and {% data va {% ifversion fpt or ghec %} -{% data variables.product.prodname_github_apps %} that are installed on an organization or a repository within an enterprise on {% data variables.product.product_location %} are subject to a limit of 15,000 requests per hour. +{% data variables.product.prodname_github_apps %} that are installed on an organization within an enterprise on {% data variables.product.product_location %} are subject to a limit of 15,000 requests per hour per organization that has installed the app. {% endif %} diff --git a/translations/ja-JP/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md b/translations/ja-JP/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md index 134182eb65..16619daebe 100644 --- a/translations/ja-JP/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md +++ b/translations/ja-JP/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md @@ -106,13 +106,13 @@ Accept: application/xml The access token allows you to make requests to the API on a behalf of a user. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user For example, in curl you can set the Authorization header like this: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## Device flow diff --git a/translations/ja-JP/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md b/translations/ja-JP/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md index 828e2ca508..2a7df28d12 100644 --- a/translations/ja-JP/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md +++ b/translations/ja-JP/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md @@ -28,7 +28,7 @@ CLIツールなど、{% data variables.product.prodname_oauth_app %}がブラウ どのOAuthスコープを所有しているか、そしてAPIアクションが何を受け付けるかを知るには、ヘッダを確認してください。 ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I HTTP/2 200 X-OAuth-Scopes: repo, user X-Accepted-OAuth-Scopes: user diff --git a/translations/ja-JP/content/developers/overview/about-githubs-apis.md b/translations/ja-JP/content/developers/overview/about-githubs-apis.md index 60b39e4749..dd06e18dae 100644 --- a/translations/ja-JP/content/developers/overview/about-githubs-apis.md +++ b/translations/ja-JP/content/developers/overview/about-githubs-apis.md @@ -15,17 +15,3 @@ topics: --- GitHub APIには、[REST API](/rest)と[GraphQL API](/graphql)という2つの安定バージョンがあります。 - -## 非推奨のバージョン - -### ベータ - -ベータAPIは2014年4月22日に非推奨となりました。 - -### v2 - -API v2のサポートは2012年6月12日に廃止されました。 - -### v1 - -API v1のサポートは2012年6月12日に廃止されました。 diff --git a/translations/ja-JP/content/developers/overview/github-developer-program.md b/translations/ja-JP/content/developers/overview/github-developer-program.md index 149d6c63a7..138cf03191 100644 --- a/translations/ja-JP/content/developers/overview/github-developer-program.md +++ b/translations/ja-JP/content/developers/overview/github-developer-program.md @@ -23,9 +23,9 @@ Email partnerships@github.com to re ## GitHubと連携するインテグレーションがありますか? 素晴らしいです! プログラムに参加していただければ嬉しく思います。 以下のようにすれば、情報を展開できます。

-* [あなたのインテグレーションについてお知らせください。](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration) -* [OctocatもしくはGitHubロゴ](https://github.com/logos)を使って、あなたの製品がGitHubと動作することを示してください。 -* Webサイトにインテグレーションに関するビデオあるいはブログをポストしてください。 +* [Let us know about your integration](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration). +* Use the [Octocat or GitHub logo](https://github.com/logos) to identify that your product works with GitHub. +* Post a video or a blog on your website about your integration. ## GitHub開発者プログラムに参加する準備はできましたか? diff --git a/translations/ja-JP/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md b/translations/ja-JP/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md index a0fae35e8f..cf8e39bfa0 100644 --- a/translations/ja-JP/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md +++ b/translations/ja-JP/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md @@ -37,12 +37,12 @@ $ export SECRET_TOKEN=your_token ## GitHub からのペイロードを検証する -シークレットトークンが設定されると、{% data variables.product.product_name %} はそれを使用して各ペイロードでハッシュ署名を作成します。 This hash signature is included with the headers of each request as `X-Hub-Signature-256`. +シークレットトークンが設定されると、{% data variables.product.product_name %} はそれを使用して各ペイロードでハッシュ署名を作成します。 This hash signature is included with the headers of each request as `x-hub-signature-256`. {% ifversion fpt or ghes or ghec %} {% note %} -**注釈:** 下位互換性のために、SHA-1 ハッシュ関数を使用して生成される `X-Hub-Signature` ヘッダーも含まれています。 可能であれば、セキュリティを向上させるために `X-Hub-Signature-256` ヘッダを使用することをお勧めします。 以下は、`X-Hub-Signature-256` ヘッダの使用例です。 +**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. {% endnote %} {% endif %} diff --git a/translations/ja-JP/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md b/translations/ja-JP/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md index f6016ea693..d0ffb7013e 100644 --- a/translations/ja-JP/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md +++ b/translations/ja-JP/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md @@ -9,8 +9,8 @@ redirect_from: versions: fpt: '*' children: - - /use-github-at-your-educational-institution - /github-global-campus-for-students - /github-global-campus-for-teachers + - /use-github-at-your-educational-institution --- diff --git a/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md b/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md index 7ebf8bf01e..eabef81206 100644 --- a/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md +++ b/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md @@ -25,23 +25,22 @@ LMSを{% data variables.product.prodname_classroom %}に接続するよう構成 ## サポートするLMS -{% data variables.product.prodname_classroom %}は、Learning Tools Interoperability (LTI) 規格を実装するLMSからの、名簿データのインポートをサポートしています。 +{% note %} -- LTIバージョン1.0および1.1 -- LTI Names and Roles Provisioning 1.X +**Note:** {% data variables.product.prodname_classroom %} previously supported import of roster data from LMSes that implement Learning Tools Interoperability (LTI) versions 1.0 and 1.1. On June 30, 2022, the Instructional Management System (IMS) Global Learning Consortium [ended support for LTI versions 1.0 and 1.1](https://www.imsglobal.org/lti-security-announcement-and-deprecation-schedule). In the interest of keeping sensitive student information safe and secure, {% data variables.product.company_short %} has temporarily disabled importing roster data from LTI-compliant LMSes.

-LTIは、情報の安全性と機密性を保つために役立ちます。 LTIは業界標準のプロトコルであり、GitHub ClassroomによるLTIの使用は、教育管理システム (IMS) グローバル・ラーニング・コンソーシアムにより認定されています。 詳しい情報については、IMSグローバル・ラーニング・コンソーシアムのウェブサイト上にある[Learning Tools Interoperability (学習ツールの相互運用性) ](https://www.imsglobal.org/activity/learning-tools-interoperability)および[About IMS Global Learning Consortium (IMSグローバル・ラーニング・コンソーシアムについて) ](http://www.imsglobal.org/aboutims.html)を参照してください。 +Support for the latest version of Learning Tools Interoperability, [LTI 1.3](https://www.imsglobal.org/activity/learning-tools-interoperability), is currently being worked on and will be made available in {% data variables.product.prodname_classroom %} very soon. + +{% endnote %} + +LTIは業界標準のプロトコルであり、GitHub ClassroomによるLTIの使用は、教育管理システム (IMS) グローバル・ラーニング・コンソーシアムにより認定されています。 詳しい情報については、IMSグローバル・ラーニング・コンソーシアムのウェブサイト上にある[Learning Tools Interoperability (学習ツールの相互運用性) ](https://www.imsglobal.org/activity/learning-tools-interoperability)および[About IMS Global Learning Consortium (IMSグローバル・ラーニング・コンソーシアムについて) ](http://www.imsglobal.org/aboutims.html)を参照してください。 {% data variables.product.company_short %}は、以下のLMSから{% data variables.product.prodname_classroom %}への名簿のインポートを確認しています。 -- Canvas - Google Classroom -- Moodle -- Sakai -現在のところ、{% data variables.product.prodname_classroom %}はBlackboardおよびBrightspaceからの名簿のインポートはサポートしていません。 -## クラスルームの構成認証情報を生成する +## Connecting to Google Classroom {% data reusables.classroom.sign-into-github-classroom %} {% data reusables.classroom.click-classroom-in-list %} @@ -49,88 +48,15 @@ LTIは、情報の安全性と機密性を保つために役立ちます。 LTI 1. クラスルームに既に名簿がある場合は、その名簿を更新するか、その名簿を削除して新しい名簿を作成できます。 - 名簿の削除や作成に関する詳細については、「[クラスルームの名簿を削除する](/education/manage-coursework-with-github-classroom/manage-classrooms#deleting-a-roster-for-a-classroom)」および「[クラスルームの名簿を作成する](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)」を参照してください。 - 名簿の更新に関する詳細については、「[クラスルームの名簿に学生を追加する](/education/manage-coursework-with-github-classroom/manage-classrooms#adding-students-to-the-roster-for-your-classroom)」を参照してください。 -1. LMSのリストの中から、お使いのLMSをクリックします。 お使いのLMSがサポートされていない場合、[**Other LMS**] をクリックします。 ![LMSのリスト](/assets/images/help/classroom/classroom-settings-click-lms.png) -1. LMSの接続について読み、[**Connect to _LMS_**] をクリックします。 -1. クラスルームへの接続に用いる、[Consumer Key]、[Shared Secret]、および [Launch URL] をコピーします。 ![認証情報のコピー](/assets/images/help/classroom/classroom-copy-credentials.png) +1. In the list of LMSes, click Google Classroom. ![Google Classroom](/assets/images/help/classroom/classroom-settings-click-google-classroom.png) +1. Sign in to Google, then select the Classroom to link to. -## 一般的なLMSを設定する -外部ツールが名簿情報を受信できるよう、LMSのプライバシー設定を行う必要があります。 +## Connecting to Canvas, Moodle, Sakai, and other LMSes -1. お使いのLMSに移動します。 -1. 外部ツールを設定します。 -1. {% data variables.product.prodname_classroom %}で生成された構成認証情報を入力します。 - - Consumer key - - 共有シークレット - - Launch URL (「ツールURL」などと呼ばれることもあります) +Connecting to other LMSes is temporarily unavailable as {% data variables.product.company_short %} updates to Learning Tools Interoperability (LTI) version 1.3. For more information, see "[Supported LMSes](#supported-lmses)." -## Canvasを設定する - -{% data variables.product.prodname_classroom %}をCanvasの外部アプリケーションとして設定し、クラスルームに名簿データをインポートできます。 Canvasに関する詳細は、[Canvasのウェブサイト](https://www.instructure.com/canvas/)を参照してください。 - -1. [Canvas](https://www.instructure.com/canvas/#login)にサインインします。 -1. {% data variables.product.prodname_classroom %}と連携するCanvasのコースを選択します。 -1. 左のサイドバーで、**Settings(設定)**をクリックしてください。 -1. [**Apps**] タブをクリックします。 -1. [**View app configurations**] をクリックします。 -1. [**+App**] をクリックします。 -1. [**Configuration Type**] ドロップダウンメニューで、[**By URL**] をクリックします。 -1. {% data variables.product.prodname_classroom %}からコピーした構成認証情報を貼り付けます。 詳しい情報については、「[クラスルームの構成認証情報を生成する](#generating-configuration-credentials-for-your-classroom)」を参照してください。 - - | Canvasアプリケーション構成のフィールド | 値または設定 | - |:------------------------------------------------------------------------- |:--------------------------------------------------------------- | - | **Consumer Key** | {% data variables.product.prodname_classroom %}からのConsumer key | - | **Shared Secret** | {% data variables.product.prodname_classroom %}からのShared secret | - | **Allow this tool to access the IMS Names and Role Provisioning Service** | 有効 | - | **Configuration URL** | {% data variables.product.prodname_classroom %}からのLaunch URL | - - {% note %} - - **注釈**: [Allow this tool to access the IMS Names and Role Provisioning Service] というラベルのチェックボックスがCanvasで表示されていない場合、Canvasの管理者がCanvasサポートに連絡し、お使いのCanvasアカウントでメンバーシップサービス設定を有効化する必要があります。 この機能を有効化しないと、Canvasから名簿を同期できません。 詳しい情報については、Canvasウェブサイトの[How do I contact Canvas Support? (Canvasサポートに連絡する方法)](https://community.canvaslms.com/t5/Canvas-Basics-Guide/How-do-I-contact-Canvas-Support/ta-p/389767) を参照してください。 - - {% endnote %} - -1. **Submit(サブミット)**をクリックしてください。 -1. 左のサイドバーで [**Home**] をクリックします。 -1. 左のサイドバーで [**GitHub Classroom**] をクリックし、Canvasが確認メールを送信するようにします。 メールの指示に従い、{% data variables.product.prodname_classroom %}との連携を完了します。 - -## Moodleを設定する - -{% data variables.product.prodname_classroom %}をMoodleのアクティビティとして設定し、クラスルームに名簿データをインポートできます。 Moodleに関する詳細は、[Moodleのウェブサイト](https://moodle.org)を参照してください。 - -Moodleのバージョンは3.0以上である必要があります。 - -1. [Moodle](https://moodle.org/login/)にサインインします。 -1. {% data variables.product.prodname_classroom %}と連携するMoodleのコースを選択します。 -1. [**Turn editing on**] をクリックします。 -1. Moodleで{% data variables.product.prodname_classroom %}を使用するところで、[**Add an activity or resource**] をクリックします。 -1. [**External tool**] を選択し、[**Add**] をクリックします。 -1. [Activity name] フィールドに、「GitHub Classroom」と入力します。 -1. [**Preconfigured tool**] フィールドで、ドロップダウンメニューの右にある [**+**] をクリックします。 -1. [External tool configuration] の下に、{% data variables.product.prodname_classroom %} からコピーしたした構成認証情報を貼り付けます。 詳しい情報については、「[クラスルームの構成認証情報を生成する](#generating-configuration-credentials-for-your-classroom)」を参照してください。 - - | Moodleアプリケーション設定のフィールド | 値または設定 | - |:---------------------------- |:--------------------------------------------------------------------------------------------------------------------------------- | - | **Tool name** | {% data variables.product.prodname_classroom %} - _あなたのクラスルーム名_

**注釈**: 任意の名前を設定できますが、わかりやすいよう、この値をお勧めします。 | - | **Tool URL** | {% data variables.product.prodname_classroom %}からのLaunch URL | - | **LTI version** | LTI 1.0/1.1 | - | **Default launch container** | 新規ウィンドウ | - | **Consumer key** | {% data variables.product.prodname_classroom %}からのConsumer key | - | **共有シークレット** | {% data variables.product.prodname_classroom %}からのShared secret | - -1. [**Services**] までスクロールしてクリックします。 -1. [IMS LTI Names and Role Provisioning] の右にあるドロップダウンメニューを選択し、[**Use this service to retrieve members' information as per privacy settings**] をクリックします。 -1. [**Privacy**] までスクロールしてクリックします。 -1. [**Share launcher's name with tool**] と [**Share launcher's email with tool**] の右にあるドロップダウンメニューをそれぞれ選択し、[**Always**] をクリックします。 -1. ページの下部で**Save changes(変更の保存)**をクリックしてください。 -1. [**Preconfigure tool**] メニューで、[**GitHub Classroom - _あなたのクラスルーム名_**] をクリックします。 -1. [Common module settings] で、[Availability] の右にあるドロップダウンメニューを選択し、[**Hide from students**] をクリックします。 -1. ページの下部で、[**Save and return to course**] をクリックします -1. {% data variables.product.prodname_classroom %} を表示したい場所に移動し、{% data variables.product.prodname_classroom %}アクティビティをクリックします。 - -## LMSから名簿をインポートする - -LMSから{% data variables.product.prodname_classroom %}への名簿のインポートに関する詳細については、「[クラスルームの管理](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)」を参照してください。 +In the meantime, you may manually input your roster for your class. For more information about manually importing the roster from your LMS into {% data variables.product.prodname_classroom %}, see "[Manage classrooms](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." ## LMSを切断する diff --git a/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md b/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md index 71d5ab24d3..c0f1a67bca 100644 --- a/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md +++ b/translations/ja-JP/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md @@ -55,7 +55,7 @@ redirect_from: ### 課題のタイプを選択する -[Individual or group assignment] の下で、ドロップダウンメニューを選択し、[**Group assignment**] をクリックします。 課題の作成後は、課題タイプを変更できません。 個人課題を作成する場合は、「[個人課題の作成](/education/manage-coursework-with-github-classroom/create-an-individual-assignment)」を参照してください。 +[Individual or group assignment] の下で、ドロップダウンメニューを選択し、[**Group assignment**] をクリックします。 課題の作成後は、課題タイプを変更できません。 If you'd rather create an individual assignment, see "[Create an individual assignment](/education/manage-coursework-with-github-classroom/create-an-individual-assignment)." ### 課題のTeamを定義する diff --git a/translations/ja-JP/content/get-started/exploring-projects-on-github/following-organizations.md b/translations/ja-JP/content/get-started/exploring-projects-on-github/following-organizations.md index 8599a83369..a6385b86bd 100644 --- a/translations/ja-JP/content/get-started/exploring-projects-on-github/following-organizations.md +++ b/translations/ja-JP/content/get-started/exploring-projects-on-github/following-organizations.md @@ -7,15 +7,11 @@ topics: - Profile --- -{% note %} - -**Note:** The ability to follow organizations is currently in public beta and subject to change. - -{% endnote %} +{% data reusables.organizations.follow-organizations-beta %} ## About followers on {% data variables.product.product_name %} -When you follow organizations, you'll see their public activity on your personal dashboard. 詳細は「[パーソナルダッシュボードについて](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)」を参照してください。 +{% data reusables.organizations.about-following-organizations %} For more information, see "[About your personal dashboard](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)." You can unfollow an organization if you do not wish to see their {% ifversion fpt or ghec %}public{% endif %} activity on {% data variables.product.product_name %}. diff --git a/translations/ja-JP/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md b/translations/ja-JP/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md index ecbabbb9d7..eddab6d9bf 100644 --- a/translations/ja-JP/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md +++ b/translations/ja-JP/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md @@ -57,11 +57,21 @@ If you have existing source code or repositories stored locally on your computer 1. {% data variables.product.product_location %}上で[新しいリポジトリを作成](/repositories/creating-and-managing-repositories/creating-a-new-repository)します。 エラーを避けるため、新しいリポジトリは*README*、ライセンス、あるいは `gitignore` で初期化しないでください。 これらのファイルは、プロジェクトを {% data variables.product.product_name %}にプッシュした後で追加できます。 ![[Create New Repository] ドロップダウン](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. ワーキングディレクトリをローカルプロジェクトに変更します。 -4. ローカルディレクトリを Git リポジトリとして初期化します。 - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. ファイルを新しいローカルリポジトリに追加します。 これで、それらのファイルが最初のコミットに備えてステージングされます。 + ```shell $ git add . # ローカルリポジトリにファイルを追加し、コミットに備えてステージします。 {% data reusables.git.unstage-codeblock %} @@ -92,10 +102,19 @@ If you have existing source code or repositories stored locally on your computer 1. {% data variables.product.product_location %}上で[新しいリポジトリを作成](/articles/creating-a-new-repository)します。 エラーを避けるため、新しいリポジトリは*README*、ライセンス、あるいは `gitignore` で初期化しないでください。 これらのファイルは、プロジェクトを {% data variables.product.product_name %}にプッシュした後で追加できます。 ![[Create New Repository] ドロップダウン](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. ワーキングディレクトリをローカルプロジェクトに変更します。 -4. ローカルディレクトリを Git リポジトリとして初期化します。 - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. ファイルを新しいローカルリポジトリに追加します。 これで、それらのファイルが最初のコミットに備えてステージングされます。 ```shell $ git add . @@ -127,10 +146,19 @@ If you have existing source code or repositories stored locally on your computer 1. {% data variables.product.product_location %}上で[新しいリポジトリを作成](/articles/creating-a-new-repository)します。 エラーを避けるため、新しいリポジトリは*README*、ライセンス、あるいは `gitignore` で初期化しないでください。 これらのファイルは、プロジェクトを {% data variables.product.product_name %}にプッシュした後で追加できます。 ![[Create New Repository] ドロップダウン](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. ワーキングディレクトリをローカルプロジェクトに変更します。 -4. ローカルディレクトリを Git リポジトリとして初期化します。 - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. ファイルを新しいローカルリポジトリに追加します。 これで、それらのファイルが最初のコミットに備えてステージングされます。 ```shell $ git add . diff --git a/translations/ja-JP/content/get-started/quickstart/be-social.md b/translations/ja-JP/content/get-started/quickstart/be-social.md index f2ae29f7f0..3bd6a70bc6 100644 --- a/translations/ja-JP/content/get-started/quickstart/be-social.md +++ b/translations/ja-JP/content/get-started/quickstart/be-social.md @@ -58,7 +58,23 @@ From your dashboard, click the drop down menu of your username on the left side ![アカウントのコンテキストの切り替えのドロップダウン](/assets/images/help/overview/dashboard-contextswitcher.png) -### {% data variables.product.prodname_dotcom %} 上の他のプロジェクトを調べる +{% ifversion for-you-feed %} + +## Following organizations + +{% data reusables.organizations.follow-organizations-beta %} + +{% data reusables.organizations.about-following-organizations %} + +To follow an organization, in the header of the organization's page, click **Follow**. + +![Screenshot of the organization header, with the follow button highlighted](/assets/images/help/profile/organization-profile-following.png) + +For more information, see "[Following organizations](/get-started/exploring-projects-on-github/following-organizations)." + +{% endif %} + +## {% data variables.product.prodname_dotcom %} 上の他のプロジェクトを調べる You can discover new and interesting projects on {% data variables.product.prodname_dotcom %}'s Explore page. You can star interesting projects to make them easy to find again later. Visit your stars page to see all your starred projects. For more information about stars, see "[Saving repositories with stars](/get-started/exploring-projects-on-github/saving-repositories-with-stars)." diff --git a/translations/ja-JP/content/get-started/quickstart/fork-a-repo.md b/translations/ja-JP/content/get-started/quickstart/fork-a-repo.md index 761eedd63d..85aeaac6b5 100644 --- a/translations/ja-JP/content/get-started/quickstart/fork-a-repo.md +++ b/translations/ja-JP/content/get-started/quickstart/fork-a-repo.md @@ -113,7 +113,7 @@ Right now, you have a fork of the Spoon-Knife repository, but you do not have th > Cloning into `Spoon-Knife`... > remote: Counting objects: 10, done. > remote: Compressing objects: 100% (8/8), done. - > remove: Total 10 (delta 1), reused 10 (delta 1) + > remote: Total 10 (delta 1), reused 10 (delta 1) > Unpacking objects: 100% (10/10), done. ``` diff --git a/translations/ja-JP/content/graphql/guides/migrating-graphql-global-node-ids.md b/translations/ja-JP/content/graphql/guides/migrating-graphql-global-node-ids.md index 3f4d167846..544b7f5e9d 100644 --- a/translations/ja-JP/content/graphql/guides/migrating-graphql-global-node-ids.md +++ b/translations/ja-JP/content/graphql/guides/migrating-graphql-global-node-ids.md @@ -32,7 +32,7 @@ GraphQLグローバルノードIDへの参照を保存している場合にの ``` $ curl \ - -H "Authorization: token $GITHUB_TOKEN" \ + -H "Authorization: Bearer $GITHUB_TOKEN" \ -H "X-Github-Next-Global-ID: 1" \ https://api.github.com/graphql \ -d '{ "query": "{ node(id: \"MDQ6VXNlcjM0MDczMDM=\") { id } }" }' diff --git a/translations/ja-JP/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md b/translations/ja-JP/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md index 5b0a136253..bfeb800caa 100644 --- a/translations/ja-JP/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md +++ b/translations/ja-JP/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md @@ -70,7 +70,7 @@ Organization名とプロジェクト番号が分かっていれば、Organizatio ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{organization(login: \"ORGANIZATION\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -94,7 +94,7 @@ Organization中のすべてのプロジェクトのノードIDを見つけるこ ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{organization(login: \"ORGANIZATION\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -125,7 +125,7 @@ APIを通じてプロジェクトを更新するには、プロジェクトの ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{user(login: \"USER\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -149,7 +149,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{user(login: \"USER\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -180,7 +180,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2Field { id name } ... on ProjectV2IterationField { id name configuration { iterations { startDate id }}} ... on ProjectV2SingleSelectField { id name options { id name }}}}}}}"}' ``` {% endcurl %} @@ -284,7 +284,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2FieldCommon { id name }}}}}}"}' ``` {% endcurl %} @@ -354,7 +354,7 @@ APIでクエリを行い、プロジェクト中のアイテムに関する情 ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { items(first: 20) { nodes{ id fieldValues(first: 8) { nodes{ ... on ProjectV2ItemFieldTextValue { text field { ... on ProjectV2FieldCommon { name }}} ... on ProjectV2ItemFieldDateValue { date field { ... on ProjectV2FieldCommon { name } } } ... on ProjectV2ItemFieldSingleSelectValue { name field { ... on ProjectV2FieldCommon { name }}}}} content{ ... on DraftIssue { title body } ...on Issue { title assignees(first: 10) { nodes{ login }}} ...on PullRequest { title assignees(first: 10) { nodes{ login }}}}}}}}}"}' ``` {% endcurl %} @@ -446,7 +446,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {addProjectV2ItemById(input: {projectId: \"PROJECT_ID\" contentId: \"CONTENT_ID\"}) {item {id}}}"}' ``` {% endcurl %} @@ -488,8 +488,8 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ - --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {item {id}}}"}' + --header 'Authorization: Bearer TOKEN' \ + --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {projectItem {id}}}"}' ``` {% endcurl %} @@ -498,7 +498,7 @@ curl --request POST \ gh api graphql -f query=' mutation { addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) { - item { + projectItem { id } } @@ -512,7 +512,7 @@ gh api graphql -f query=' { "data": { "addProjectV2ItemById": { - "item": { + "projectItem": { "id": "PVTI_lADOANN5s84ACbL0zgBbxFc" } } @@ -528,7 +528,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ ---header 'Authorization: token TOKEN' \ +--header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation { updateProjectV2(input: { projectId: \"PROJECT_ID\", title: \"Project title\", public: false, readme: \"# Project README\n\nA long description\", shortDescription: \"A short description\"}) { projectV2 { id, title, readme, shortDescription }}}"}' ``` {% endcurl %} @@ -565,7 +565,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { text: "Updated text" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -619,7 +619,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -659,7 +659,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -694,7 +694,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {deleteProjectV2Item(input: {projectId: \"PROJECT_ID\" itemId: \"ITEM_ID\"}) {deletedItemId}}"}' ``` {% endcurl %} diff --git a/translations/ja-JP/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md b/translations/ja-JP/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md index 7e46a5395c..cfd6821b28 100644 --- a/translations/ja-JP/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md +++ b/translations/ja-JP/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md @@ -23,7 +23,7 @@ To transfer an open issue to another repository, you must have write access to t {% endnote %} -When you transfer an issue, comments, labels and assignees are retained. The issue's 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)." +When you transfer an issue, comments and assignees are retained. Labels and milestones are also retained if they're present in the target repository, with labels matching by name and milestones matching by both name and due date. 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)." People or teams who are mentioned in the issue will receive a notification letting them know that the issue has been transferred to a new repository. The original URL redirects to the new issue's URL. People who don't have read permissions in the new repository will see a banner letting them know that the issue has been transferred to a new repository that they can't access. diff --git a/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md b/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md index 0d3646f467..66d1d9f1e0 100644 --- a/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md +++ b/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md @@ -36,15 +36,22 @@ Enterprise アカウントで Organization に対して許可される IP アド ## 許可 IP アドレスを追加する +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## 許可 IP アドレスを有効化する +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -69,6 +76,8 @@ Enterprise アカウントで Organization に対して許可される IP アド ## 許可 IP アドレスを編集する +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -76,6 +85,18 @@ Enterprise アカウントで Organization に対して許可される IP アド {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 1. [**Update**] をクリックします。 +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Checking if an IP address is permitted + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.organizations.security %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## 許可 IP アドレスを削除する diff --git a/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md b/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md index d5cee8b617..686a427ea5 100644 --- a/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md +++ b/translations/ja-JP/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization.md @@ -740,7 +740,7 @@ For more information, see "[Managing the publication of {% data variables.produc | Action | Description |------------------|------------------- |`create` | Triggered when an organization owner creates a new custom repository role. For more information, see "[Managing custom repository roles for an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)." -|`destroy` | Triggered when a organization owner deletes a custom repository role. For more information, see "[Managing custom repository roles for an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)." +|`destroy` | Triggered when an organization owner deletes a custom repository role. For more information, see "[Managing custom repository roles for an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)." |`update` | Triggered when an organization owner edits an existing custom repository role. For more information, see "[Managing custom repository roles for an organization](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)." {% endif %} diff --git a/translations/ja-JP/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md b/translations/ja-JP/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md index da08bc8c9d..f90c8934e7 100644 --- a/translations/ja-JP/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md +++ b/translations/ja-JP/content/organizations/managing-git-access-to-your-organizations-repositories/managing-your-organizations-ssh-certificate-authorities.md @@ -23,7 +23,7 @@ SSH CAをOrganizationに追加すると、メンバーはあなたが提供し ## SSH 認証局を追加する -If you require SSH certificates for your enterprise, enterprise members should use a special URL for Git operations over SSH. 詳しい情報については、「[SSH 認証局について](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities#about-ssh-urls-with-ssh-certificates)」を参照してください。 +EnterpriseでSSH証明書が必要な場合、EnterpriseのメンバーはSSH経由のGitの操作に特別なURLを使わなければなりません。 詳しい情報については、「[SSH 認証局について](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities#about-ssh-urls-with-ssh-certificates)」を参照してください。 {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} diff --git a/translations/ja-JP/content/packages/index.md b/translations/ja-JP/content/packages/index.md index df29da2cf1..968eddf1d9 100644 --- a/translations/ja-JP/content/packages/index.md +++ b/translations/ja-JP/content/packages/index.md @@ -18,6 +18,7 @@ featuredLinks: guideCards: - '{% ifversion docker-ghcr-enterprise-migration %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' - '{% ifversion fpt or ghec or ghes > 3.4 %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' + - '{% ifversion packages-npm-v2 %}/packages/working-with-a-github-packages-registry/working-with-the-npm-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry changelog: label: packages diff --git a/translations/ja-JP/content/packages/learn-github-packages/about-permissions-for-github-packages.md b/translations/ja-JP/content/packages/learn-github-packages/about-permissions-for-github-packages.md index 6bedc6b0bb..15b8a24c93 100644 --- a/translations/ja-JP/content/packages/learn-github-packages/about-permissions-for-github-packages.md +++ b/translations/ja-JP/content/packages/learn-github-packages/about-permissions-for-github-packages.md @@ -18,20 +18,22 @@ shortTitle: 権限について リポジトリスコープのパッケージは、パッケージを所有するリポジトリの権限と可視性を継承します。 リポジトリをスコープとするパッケージは、リポジトリのメインページにアクセスし、ページ右にある**パッケージ**リンクをクリックすれば見つかります。 {% ifversion fpt or ghec %}詳しい情報については「[リポジトリのパッケージへの接続](/packages/learn-github-packages/connecting-a-repository-to-a-package)」を参照してください。{% endif %} -以下の{% data variables.product.prodname_registry %}レジストリは、リポジトリスコープの権限を使います。 +以下の{% data variables.product.prodname_registry %}レジストリは、リポジトリスコープの権限**のみ**を使います。 {% ifversion not fpt or ghec %}-Dockerレジストリ(`docker.pkg.github.com`){% endif %} - - npmレジストリ + {% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - RubyGemsレジストリ - Apache Mavenレジストリ - NuGetレジストリ +{% ifversion packages-npm-v2 %}{% data variables.product.prodname_ghcr_and_npm_registry %}については、パッケージがユーザ、Organizationをスコープとするか、あるいはリポジトリにリンクするかを選択できます。{% endif %} + {% ifversion fpt or ghec %} ## ユーザ/Organizationスコープのパッケージの詳細な権限 詳細な権限を持つパッケージは、個人ユーザもしくはOrganizationアカウントをスコープとします。 パッケージのアクセス制御と可視性は、パッケージに接続された(あるいはリンクされた)リポジトリは別個に変更できます。 -現在の処、{% data variables.product.prodname_container_registry %}だけがコンテナイメージパッケージに関する詳細な権限を提供しています。 +現在のところ、{% data variables.product.prodname_ghcr_and_npm_registry %}だけがコンテナイメージパッケージに関する詳細な権限を提供しています。 ## コンテナイメージの可視性とアクセス権限 diff --git a/translations/ja-JP/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md b/translations/ja-JP/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md index 7577c081f5..0624ca0bcb 100644 --- a/translations/ja-JP/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md +++ b/translations/ja-JP/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md @@ -16,7 +16,7 @@ shortTitle: アクセスコントロールと可視性 詳細な権限を持つパッケージは、個人ユーザもしくはOrganizationアカウントをスコープとします。 パッケージのアクセス制御と可視性は、パッケージに接続された(あるいはリンクされた)リポジトリは別個に変更できます。 -現在は、{% data variables.product.prodname_container_registry %}でのみ詳細な権限を使うことができます。 詳細な権限は、npmレジストリのような他のパッケージレジストリではサポートされていません。{% ifversion docker-ghcr-enterprise-migration %}{% data variables.product.prodname_container_registry %}への移行に関する詳しい情報については「[Dockerレジストリから{% data variables.product.prodname_container_registry %}への移行](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)」を参照してください。{% endif %} +現在は、{% data variables.product.prodname_ghcr_and_npm_registry %}でのみ詳細な権限を使うことができます。 詳細な権限は、RubyGemsレジストリのような他のパッケージレジストリではサポートされていません。{% ifversion docker-ghcr-enterprise-migration %}{% data variables.product.prodname_container_registry %}への移行に関する詳しい情報については「[Dockerレジストリから{% data variables.product.prodname_container_registry %}への移行](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)」を参照してください。{% endif %} リポジトリをスコープとするパッケージの権限や、PATに関するパッケージ関連のスコープ、Actionsのワークフローの権限の管理についての詳しい情報は、「[GitHub Packagesの権限について](/packages/learn-github-packages/about-permissions-for-github-packages)」を参照してください。 @@ -95,7 +95,7 @@ Organization が所有するコンテナイメージに対する管理者権限 {% ifversion fpt or ghec %} ## パッケージへの{% data variables.product.prodname_codespaces %}アクセスの確保 -デフォルトでは、codespaceは**Inherit access(アクセスの継承)**オプションが選択された同じリポジトリ内で公開されたパッケージなど、{% data variables.product.prodname_dotcom %} Container Registry内の特定パッケージにシームレスにアクセスできます。 自動的に設定されるアクセスに関する詳しい情報については「[{% data variables.product.prodname_dotcom %} Container Registryに保存されたイメージへのアクセス](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-github-container-registry)」を参照してください。 +デフォルトでは、codespaceは**Inherit access(アクセスの継承)**オプションが選択された同じリポジトリ内で公開されたパッケージなど、{% data variables.product.prodname_ghcr_and_npm_registry %} 内の特定パッケージにシームレスにアクセスできます。 自動的に設定されるアクセスに関する詳しい情報については「[codespaceへのプライベートイメージレジストリへのアクセスの許可](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-container-registry-and-npm-registry) 」を参照してください。 あるいは、codespaceがパッケージに確実にアクセスできるようにするには、codespaceが起動されたリポジトリへのアクセスを許可しなければなりません。 diff --git a/translations/ja-JP/content/packages/learn-github-packages/deleting-and-restoring-a-package.md b/translations/ja-JP/content/packages/learn-github-packages/deleting-and-restoring-a-package.md index 2290c045b1..75b849f90e 100644 --- a/translations/ja-JP/content/packages/learn-github-packages/deleting-and-restoring-a-package.md +++ b/translations/ja-JP/content/packages/learn-github-packages/deleting-and-restoring-a-package.md @@ -23,12 +23,12 @@ shortTitle: パッケージの削除と復元 - プライベートパッケージ全体 - パッケージの全バージョンでダウンロード数が5000以下の場合、パブリックパッケージ全体 - プライベートパッケージの特定のバージョン -- パッケージバージョンのダウンロード数が5000以下の場合、パブリックパッケージの特定のバージョン +- パッケージバージョンのダウンロード数が5,000以下の場合、パブリックパッケージの特定のバージョン {% note %} **注釈:** -- パッケージのいずれかのパージョンでダウンロード数が5000を超えている場合は、パブリックパッケージを削除できません。 この場合は、[GitHubサポート](https://support.github.com/contact?tags=docs-packages)までお問い合わせください。 +- パッケージのいずれかのパージョンでダウンロード数が5,000を超えている場合は、パブリックパッケージを削除できません。 この場合は、[GitHubサポート](https://support.github.com/contact?tags=docs-packages)までお問い合わせください。 - パブリックパッケージを削除する場合、そのパッケージに依存するプロジェクトを破壊する可能性があることに注意してください。 {% endnote %} @@ -46,7 +46,7 @@ REST APIを使用してパッケージを管理できます。 詳しい情報 {% endif %} -権限とアクセスをリポジトリから継承するパッケージでは、GraphQLを使って特定のパッケージバージョンを削除できます。{% ifversion fpt or ghec %}{% data variables.product.prodname_registry %}GraphQL APIは、パッケージの名前空間`https://ghcr.io/OWNER/PACKAGE-NAME`を使うコンテナあるいはDockerイメージをサポートしません。{% endif %}GraphQLサポートに関する詳しい情報については「[GraphQLでリポジトリをスコープとするパッケージのバージョンを削除する](#deleting-a-version-of-a-repository-scoped-package-with-graphql)」を参照してください。 +権限とアクセスをリポジトリから継承するパッケージでは、GraphQLを使って特定のパッケージバージョンを削除できます。{% data reusables.package_registry.no-graphql-to-delete-packages %}GraphQLサポートに関する詳しい情報については「[GraphQLでリポジトリをスコープとするパッケージのバージョンを削除する](#deleting-a-version-of-a-repository-scoped-package-with-graphql)」を参照してください。 {% endif %} @@ -54,17 +54,19 @@ REST APIを使用してパッケージを管理できます。 詳しい情報 リポジトリからアクセス権限を継承しているパッケージの場合、そのリポジトリに対する管理者権限がある場合はパッケージを削除できます。 -{% data variables.product.prodname_registry %}上でリポジトリのスコープが付いたパッケージには、以下が挙げられます。 -- npm -- RubyGems -- maven -- Gradle -- NuGet -{% ifversion not fpt or ghec %}-`docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`にあるDockerイメージ{% endif %} +以下の{% data variables.product.prodname_registry %}レジストリは、リポジトリスコープの権限**のみ**を使います。 + + {% ifversion not fpt or ghec %}-`docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`にあるDockerイメージ{% endif %} + {% ifversion packages-npm-v2 %}{% else %}- npm{% endif %} + - RubyGemsレジストリ + - Apache Mavenレジストリ + - NuGetレジストリ + +{% ifversion packages-npm-v2 %}{% data variables.product.prodname_ghcr_and_npm_registry %}については、パッケージがユーザ、Organizationをスコープとするか、あるいはリポジトリにリンクするかを選択できます。{% endif %} {% ifversion fpt or ghec %} -`https://ghcr.io/OWNER/PACKAGE-NAME`に保存されたコンテナイメージなど、リポジトリとは別に詳細な権限を持つパッケージを削除する場合は、そのパッケージに対するアクセス権限が必要です。 詳しい情報については「[{% data variables.product.prodname_registry %}の権限について](/packages/learn-github-packages/about-permissions-for-github-packages)」を参照してください。 +`https://ghcr.io/OWNER/PACKAGE-NAME`あるいは`https://npm.pkg.github.com/OWNER/PACKAGE-NAME`に保存されたコンテナイメージなど、リポジトリとは別に詳細な権限を持つパッケージを削除する場合は、そのパッケージに対するアクセス権限が必要です。 詳しい情報については「[{% data variables.product.prodname_registry %}の権限について](/packages/learn-github-packages/about-permissions-for-github-packages)」を参照してください。 {% endif %} @@ -86,9 +88,7 @@ REST APIを使用してパッケージを管理できます。 詳しい情報 リポジトリから権限とアクセスを継承しているパッケージの場合、GraphQLを使用して特定のパッケージバージョンを削除できます。 -{% ifversion fpt or ghec %} -`ghcr.io`にあるコンテナあるいはDockerイメージについては、GraphQLはサポートされていませんがREST APIが使えます。 詳しい情報については、「[{% data variables.product.prodname_registry %} API](/rest/reference/packages)」を参照してください。 -{% endif %} +{% data reusables.package_registry.no-graphql-to-delete-packages %}{% ifversion fpt or ghec %}ただし、REST APIを使うことはできます。 詳しい情報については「[{% data variables.product.prodname_registry %} API](/rest/reference/packages)」を参照してください。{% endif %} GraphQL APIの`deletePackageVersion`ミューテーションを使ってください。 `read:packages`、`delete:packages`、`repo`スコープを持つトークンを使わなければなりません。 トークンに関する詳しい情報については「[{% data variables.product.prodname_registry %}について](/packages/publishing-and-managing-packages/about-github-packages#authenticating-to-github-packages)」を参照してください。 diff --git a/translations/ja-JP/content/packages/learn-github-packages/introduction-to-github-packages.md b/translations/ja-JP/content/packages/learn-github-packages/introduction-to-github-packages.md index fc5090006e..5450ffcff9 100644 --- a/translations/ja-JP/content/packages/learn-github-packages/introduction-to-github-packages.md +++ b/translations/ja-JP/content/packages/learn-github-packages/introduction-to-github-packages.md @@ -51,7 +51,7 @@ For more information about the configuration of {% data variables.product.prodna | | | |--------------------|--------------------| -| 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 %} | +| 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_ghcr_and_npm_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)." @@ -101,7 +101,9 @@ For more information about Docker and the {% data variables.product.prodname_con ## Managing 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)." +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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." + +{% data reusables.package_registry.no-graphql-to-delete-packages %} {% endif %} {% ifversion ghes %} @@ -112,7 +114,9 @@ You can delete a private or public package in the {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" 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 ghes or ghae %}"[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and {% endif %}"[Forming calls with GraphQL](/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)." diff --git a/translations/ja-JP/content/packages/learn-github-packages/viewing-packages.md b/translations/ja-JP/content/packages/learn-github-packages/viewing-packages.md index cfb53cbd2b..4e9f2d9ac4 100644 --- a/translations/ja-JP/content/packages/learn-github-packages/viewing-packages.md +++ b/translations/ja-JP/content/packages/learn-github-packages/viewing-packages.md @@ -23,15 +23,15 @@ versions: パッケージを見ることができるかどうかは、いくつかの要素に依存します。 デフォルトでは、公開したパッケージはすべて見ることができます。 -リポジトリをスコープとするパッケージは、そのパッケージを所有するリポジトリから権限と可視性を継承します。 以下のレジストリは、この種の権限を使用します。{% ifversion not fpt or ghec %} +リポジトリをスコープとするパッケージは、そのパッケージを所有するリポジトリから権限と可視性を継承します。 以下のレジストリは、この種類の権限**のみ**を利用します:{% ifversion not fpt or ghec %} - Dockerレジストリ (`docker.pkg.github.com`){% endif %} -- npmレジストリ +{% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - RubyGemsレジストリ - Apache Mavenレジストリ - NuGetレジストリ {% ifversion fpt or ghec %} -コンテナレジストリは、個人ユーザもしくはOrganizationアカウントが所有する各パッケージごとにカスタマイズできる、詳細な権限及び可視性の設定のオプションを提供します。 詳細な権限を利用することも、パッケージをレジストリに接続してその権限を継承することもできます。 詳しい情報については「[リポジトリのパッケージへの接続](/packages/learn-github-packages/connecting-a-repository-to-a-package)」を参照してください。 +{% data variables.product.prodname_ghcr_and_npm_registry %}は、個人ユーザもしくはOrganizationアカウントが所有する各パッケージごとにカスタマイズできる、詳細な権限及び可視性の設定のオプションを提供します。 詳細な権限を利用することも、パッケージをレジストリに接続してその権限を継承することもできます。 詳しい情報については「[リポジトリのパッケージへの接続](/packages/learn-github-packages/connecting-a-repository-to-a-package)」を参照してください。 {% endif %} 詳しい情報については「[GitHub Packagesの権限について](/packages/learn-github-packages/about-permissions-for-github-packages)」{% ifversion fpt or ghec %}及び「[パッケージのアクセス制御と可視性の設定](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)」{% endif %}を参照してください。 diff --git a/translations/ja-JP/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md b/translations/ja-JP/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md index abf40d8435..6b3f8fc7cd 100644 --- a/translations/ja-JP/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md +++ b/translations/ja-JP/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md @@ -24,9 +24,9 @@ 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 or ghec %} -### Authenticating to the {% data variables.product.prodname_container_registry %} +### Authenticating to the {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} {% endif %} @@ -40,7 +40,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 or ghec %}and Gradle. {% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`.{% endif %} +**Note:** Some registries, such as RubyGems, {% ifversion packages-npm-v2 %}{% else %}npm, {% endif %}Apache Maven, NuGet, {% ifversion fpt or ghec %}and Gradle{% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`{% endif %}, only allow repository-owned packages. With {% data variables.product.prodname_ghcr_and_npm_registry_full %} you can choose to allow packages to be owned by a user, an organization, or linked to a repository. {% endnote %} @@ -49,11 +49,11 @@ 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 or ghec %} -## About permissions and package access for {% data variables.product.prodname_container_registry %} +## About permissions and package access for {% data variables.product.prodname_ghcr_and_npm_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 account and you can customize access to each of your containers separately from repository permissions. +The {% data variables.product.prodname_ghcr_and_npm_registry_full %} allows users to create and administer packages as free-standing resources at the organization level. Packages can be owned by an organization or personal account and you can customize access to each of your packages separately from repository permissions. -All workflows accessing the {% data variables.product.prodname_container_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)." +All workflows accessing the {% data variables.product.prodname_ghcr_and_npm_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)." ## Default permissions and access settings for containers modified through workflows @@ -484,9 +484,9 @@ Installing packages hosted by {% data variables.product.prodname_registry %} thr {% data reusables.package_registry.actions-configuration %} {% ifversion fpt or ghec %} -## Upgrading a workflow that accesses `ghcr.io` +## Upgrading a workflow that accesses a registry using a PAT -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`. +The {% data variables.product.prodname_ghcr_and_npm_registry %} support the `GITHUB_TOKEN` for easy and secure authentication in your workflows. If your workflow is using a personal access token (PAT) to authenticate to the registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." @@ -504,9 +504,9 @@ Using the `GITHUB_TOKEN` instead of a PAT, which includes the `repo` scope, incr {% endnote %} 1. Optionally, using the "role" drop-down menu, select the default access level that you'd like the repository to have to your container image. ![Permission access levels to give to repositories](/assets/images/help/package-registry/repository-permission-options-for-package-access-through-actions.png) -1. Open your workflow file. On the line where you log in to `ghcr.io`, replace your PAT with {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. +1. Open your workflow file. On the line where you log in to the registry, replace your PAT with {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. -For example, this workflow publishes a Docker image using {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. +For example, this workflow publishes a Docker image to the {% data variables.product.prodname_container_registry %} and uses {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. ```yaml{:copy} name: Demo Push diff --git a/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md b/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md index 02708a404d..98ac905c0a 100644 --- a/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md +++ b/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md @@ -42,7 +42,9 @@ When installing or publishing a Docker image, the {% data variables.product.prod ## Authenticating to the {% data variables.product.prodname_container_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% ifversion fpt or ghec or ghes > 3.4 %} +To authenticate to the {% data variables.product.prodname_container_registry %} (`ghcr.io`) within a {% data variables.product.prodname_actions %} workflow, use the `GITHUB_TOKEN` for the best security and experience. {% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} +{% endif %} {% ifversion ghes %}Ensure that you replace `HOSTNAME` with {% data variables.product.product_location_enterprise %} hostname or IP address in the examples below.{% endif %} diff --git a/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md b/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md index 6714384e4d..8007cd2b6f 100644 --- a/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md +++ b/translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md @@ -21,6 +21,8 @@ shortTitle: npm registry {% data reusables.package_registry.admins-can-configure-package-types %} +{% ifversion packages-npm-v2 %} +{% else %} ## 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. @@ -28,12 +30,17 @@ If you publish over 1,000 npm package versions to {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" or "[Contacting Support](/packages/learn-github-packages/about-github-packages#contacting-support)." +{% endif %} ## Authenticating to {% data variables.product.prodname_registry %} {% data reusables.package_registry.authenticate-packages %} -{% data reusables.package_registry.authenticate-packages-github-token %} +{% ifversion packages-npm-v2 %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} + +You can also choose to give access permissions to packages independently for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_actions %}. For more information, see "[Ensuring Codespaces access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-codespaces-access-to-your-package) and [Ensuring workflow access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." +{% endif %} ### Authenticating with a personal access token @@ -94,12 +101,24 @@ $ npm login --scope=@OWNER --registry=https://HOSTNAME/_regist {% endnote %} -By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. You can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. +{% ifversion packages-npm-v2 %} +The {% data variables.product.prodname_registry %} registry stores npm packages within your organization or personal account, and allows you to associate a package with a repository. You can choose whether to inherit permissions from a repository, or set granular permissions independently of a repository. +{% endif %} + +By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. If you're running [npm v8.5.3](https://github.com/npm/cli/releases/tag/v8.5.3) or later, you can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. You can publish multiple packages to the same {% data variables.product.prodname_dotcom %} repository by including a `URL` field in the *package.json* file. For more information, see "[Publishing multiple packages to the same repository](#publishing-multiple-packages-to-the-same-repository)." +{% ifversion fpt or ghec %} +When a package is published, it isn't automatically linked to a repository. You can however choose to link your published package to a repository using the user interface or command line. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)." +{% endif %} + You can set up the scope mapping for your project using either a local *.npmrc* file in the project or using the `publishConfig` option in the *package.json*. {% data variables.product.prodname_registry %} only supports scoped npm packages. Scoped packages have names with the format of `@owner/name`. Scoped packages always begin with an `@` symbol. You may need to update the name in your *package.json* to use the scoped name. For example, `"name": "@codertocat/hello-world-npm"`. +{% ifversion packages-npm-v2 %} +When you first publish a package, the default visibility is private. When a package is linked to repository, the package visibility is dependent on the repository's visibility. To change the visibility or set access permissions, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." +{% endif %} + {% data reusables.package_registry.viewing-packages %} ### Publishing a package using a local *.npmrc* file diff --git a/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md b/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md index a5c0f73d4c..faead37ea4 100644 --- a/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md +++ b/translations/ja-JP/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md @@ -46,7 +46,7 @@ DNS レコードの設定が正しいかどうかを検証するために利用 {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} 4. "Custom domain(カスタムドメイン)" の下で、カスタムドメインを入力して**Save(保存)**をクリックします。 サイトをブランチから公開しているなら、これで`CNAME`ファイルをソースブランチのルートに追加するコミットが作成されます。 サイトをカスタムの{% data variables.product.prodname_actions %}ワークフローで公開しているなら、`CNAME`ファイルは作成されません。 公開ソースに関する詳しい情報については「[GitHub Pagesサイトの公開ソースの設定](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)」を参照してください。 ![カスタムドメインの保存ボタン](/assets/images/help/pages/save-custom-subdomain.png) -5. お使いの DNS プロバイダにアクセスし、サブドメインがサイトのデフォルトドメインを指す `CNAME` レコードを作成します。 たとえば、サイトで `www.example.com` というサブドメインを使いたい場合、`www.example.com` が `.github.io` を指す`CNAME` レコードを作成します。 Organization サイトで `www.anotherexample.com` というサブドメインを使用する場合、`www.anotherexample.com` が `.github.io` を指す`CNAME` レコードを作成します。 `CNAME` レコードは、リポジトリ名を除いて、常に`.github.io` または `.github.io` を指している必要があります。 {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} +5. お使いの DNS プロバイダにアクセスし、サブドメインがサイトのデフォルトドメインを指す `CNAME` レコードを作成します。 たとえば、サイトで `www.example.com` というサブドメインを使いたい場合、`www.example.com` が `.github.io` を指す`CNAME` レコードを作成します。 Organization サイトで `another.example.com` というサブドメインを使用する場合、`another.example.com` が `.github.io` を指す`CNAME` レコードを作成します。 `CNAME` レコードは、リポジトリ名を除いて、常に`.github.io` または `.github.io` を指している必要があります。 {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} {% indented_data_reference reusables.pages.wildcard-dns-warning spaces=3 %} {% data reusables.command_line.open_the_multi_os_terminal %} diff --git a/translations/ja-JP/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md b/translations/ja-JP/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md deleted file mode 100644 index af19845c4e..0000000000 --- a/translations/ja-JP/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Adding a theme to your GitHub Pages site with the theme chooser -intro: 'You can add a theme to your {% data variables.product.prodname_pages %} site to customize your site’s look and feel.' -redirect_from: - - /articles/creating-a-github-pages-site-with-the-jekyll-theme-chooser - - /articles/adding-a-jekyll-theme-to-your-github-pages-site-with-the-jekyll-theme-chooser - - /articles/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser - - /github/working-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser -product: '{% data reusables.gated-features.pages %}' -versions: - fpt: '*' - ghec: '*' -topics: - - Pages -shortTitle: Add theme to a Pages site -permissions: People with admin permissions for a repository can use the theme chooser to add a theme to a {% data variables.product.prodname_pages %} site. ---- - -## About the theme chooser - -{% ifversion pages-custom-workflow %} - -{% note %} - -**Note**: The Jekyll theme chooser is not supported for {% data variables.product.prodname_pages %} sites that are published with a custom {% data variables.product.prodname_actions %} workflow. If you build your site with Jekyll and publish your site with a custom {% data variables.product.prodname_actions %} workflow, you can add a theme by editing the `_config.yml` file. For more information, see "[Adding a theme to your GitHub Pages site using Jekyll](/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll)." - -{% endnote %} - -{% endif %} - -The theme chooser adds a Jekyll theme to your repository. For more information about Jekyll, see "[About {% data variables.product.prodname_pages %} and Jekyll](/articles/about-github-pages-and-jekyll)." - -How the theme chooser works depends on whether your repository is public or private. - - If {% data variables.product.prodname_pages %} is already enabled for your repository, the theme chooser will add your theme to the current publishing source. - - If your repository is public and {% data variables.product.prodname_pages %} is disabled for your repository, using the theme chooser will enable {% data variables.product.prodname_pages %} and configure the default branch as your publishing source. - - If your repository is private and {% data variables.product.prodname_pages %} is disabled for your repository, you must enable {% data variables.product.prodname_pages %} by configuring a publishing source before you can use the theme chooser. - -For more information about publishing sources, see "[About {% data variables.product.prodname_pages %}](/articles/about-github-pages#publishing-sources-for-github-pages-sites)." - -If you manually added a Jekyll theme to your repository in the past, those files may be applied even after you use the theme chooser. To avoid conflicts, remove all manually added theme folders and files before using the theme chooser. For more information, see "[Adding a theme to your {% data variables.product.prodname_pages %} site using Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)." - -## Adding a theme with the theme chooser - -{% data reusables.pages.navigate-site-repo %} -{% data reusables.repositories.sidebar-settings %} -{% data reusables.pages.sidebar-pages %} -3. Under "{% data variables.product.prodname_pages %}," click **Choose a theme** or **Change theme**. - ![Choose a theme button](/assets/images/help/pages/choose-a-theme.png) -4. On the top of the page, click the theme you want, then click **Select theme**. - ![Theme options and Select theme button](/assets/images/help/pages/select-theme.png) -5. You may be prompted to edit your site's *README.md* file. - - To edit the file later, click **Cancel**. - ![Cancel link when editing a file](/assets/images/help/pages/cancel-edit.png) - - To edit the file now, see "[Editing files](/repositories/working-with-files/managing-files/editing-files)." - -Your chosen theme will automatically apply to markdown files in your repository. To apply your theme to HTML files in your repository, you need to add YAML front matter that specifies a layout to each file. For more information, see "[Front Matter](https://jekyllrb.com/docs/front-matter/)" on the Jekyll site. - -## Further reading - -- [Themes](https://jekyllrb.com/docs/themes/) on the Jekyll site diff --git a/translations/ja-JP/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md b/translations/ja-JP/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md index 4c79409386..0edee4e672 100644 --- a/translations/ja-JP/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md +++ b/translations/ja-JP/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md @@ -59,9 +59,9 @@ shortTitle: GitHub Pagesのサイトの作成 新しいファイルを追加で作成することにより、ページを追加できます。 各ファイルは、公開元と同じディレクトリ構造で、サイト上に表示されます。 たとえば、プロジェクトサイトの公開元が `gh-pages` ブランチで、新しいファイル `/about/contact-us.md` を `gh-pages` ブランチに作成した場合、ファイルは {% ifversion fpt or ghec %}`https://.github.io//{% else %}`http(s):///pages///{% endif %}about/contact-us.html` で表示されます。 -また、サイトの見た目をカスタマイズするため、テーマを追加できます。 詳しい情報については、{% ifversion fpt or ghec %}「[テーマ選択画面で {% data variables.product.prodname_pages %} サイトにテーマを追加する](/articles/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser){% else %}「[Jekyll テーマ選択画面で {% data variables.product.prodname_pages %} サイトにテーマを追加する](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll){% endif %}」を参照してください。 +また、サイトの見た目をカスタマイズするため、テーマを追加できます。 詳しい情報については、「[Jekyll を使用して {% data variables.product.prodname_pages %} サイトにテーマを追加する](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)」を参照してください。 -サイトを更にカスタマイズするには、Jekyll を使用できます。Jekyll は、{% data variables.product.prodname_pages %} に組み込まれている静的サイトジェネレータです。 詳しい情報については、「[{% data variables.product.prodname_pages %} と Jekyll](/articles/about-github-pages-and-jekyll)」を参照してください。 +サイトを更にカスタマイズするには、Jekyll を使用できます。Jekyll は、{% data variables.product.prodname_pages %} に組み込まれている静的サイトジェネレータです。 詳しい情報については、「[{% data variables.product.prodname_pages %} と Jekyllについて](/articles/about-github-pages-and-jekyll)」を参照してください。 ## 参考リンク diff --git a/translations/ja-JP/content/pages/getting-started-with-github-pages/index.md b/translations/ja-JP/content/pages/getting-started-with-github-pages/index.md index 1714b813ba..f748c506c8 100644 --- a/translations/ja-JP/content/pages/getting-started-with-github-pages/index.md +++ b/translations/ja-JP/content/pages/getting-started-with-github-pages/index.md @@ -17,7 +17,6 @@ topics: children: - /about-github-pages - /creating-a-github-pages-site - - /adding-a-theme-to-your-github-pages-site-with-the-theme-chooser - /configuring-a-publishing-source-for-your-github-pages-site - /changing-the-visibility-of-your-github-pages-site - /creating-a-custom-404-page-for-your-github-pages-site diff --git a/translations/ja-JP/content/pages/index.md b/translations/ja-JP/content/pages/index.md index b0bd3c3c8c..d84c347fd4 100644 --- a/translations/ja-JP/content/pages/index.md +++ b/translations/ja-JP/content/pages/index.md @@ -12,7 +12,6 @@ featuredLinks: - '{% ifversion fpt or ghec %}/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site{% endif %}' - '{% ifversion ghes or ghae %}/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll{% endif %}' - '{% ifversion ghec %}/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site{% endif %}' - - '{% ifversion fpt %}/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser{% endif %}' - '{% ifversion ghes or ghae %}/pages/setting-up-a-github-pages-site-with-jekyll/adding-content-to-your-github-pages-site-using-jekyll{% endif %}' popular: - '{% ifversion fpt or ghec %}/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages{% endif %}' diff --git a/translations/ja-JP/content/pages/quickstart.md b/translations/ja-JP/content/pages/quickstart.md index 34ebe0cad1..7dc9af525b 100644 --- a/translations/ja-JP/content/pages/quickstart.md +++ b/translations/ja-JP/content/pages/quickstart.md @@ -26,11 +26,12 @@ product: '{% data reusables.gated-features.pages %}' 1. リポジトリ名として`username.github.io`を入力してください。 `username`を自分の{% data variables.product.prodname_dotcom %}ユーザ名で置き換えてください。 たとえば、ユーザ名が`octocat`なら、リポジトリ名は`octocat.github.io`となります。 ![リポジトリ名フィールド](/assets/images/help/pages/create-repository-name-pages.png) {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} -1. **Choose a theme(テーマの選択)**をクリックしてください。 ![[Choose a theme] ボタン](/assets/images/help/pages/choose-theme.png) -2. テーマ選択画面が開きます。 利用可能なテーマをブラウズし、**Select theme(テーマの選択)**をクリックしてテーマを選択してください。 後でテーマを変更することも容易なので、はっきりしない場合はとりあえずどれか1つを選択しておいてください。 ![テーマのオプションおよび [Select theme] ボタン](/assets/images/help/pages/select-theme.png) -3. テーマとを選択すると、ファイルエディタで`README.md`ファイルが開かれます。 `README.md`ファイルは、サイトの内容を書くところです。 このファイルを編集することも、あるいはとりあえずデフォルトの内容をそのままにしておくこともできます。 -4. ファイルの編集が終わったら、**Commit changes(変更をコミット)**をクリックしてください。 -5. `username.github.io`にアクセスして、新しいWebサイトを見てみてください。 **メモ:** サイトに対する変更は、その変更を{% data variables.product.product_name %}にプッシュしてから公開されるまでに、最大20分かかることがあります。 +1. "Build and deployment(ビルドとデプロイ)"の下の"Source(ソース)"の下で、**Deploy from a branch(ブランチからデプロイ)**を選択してください。 +1. "Build and deployment(ビルドとデプロイ)"の下の"Branch(ブランチ)"の下で、**None(無し)**もしくは**Branch(ブランチ)**ドロップダウンメニューを使って公開ソースを選択してください。 + + ![公開元を選択するドロップダウンメニュー](/assets/images/help/pages/publishing-source-drop-down.png) +1. あるいは、リポジトリの`README.md`ファイルを開いてください。 `README.md`ファイルは、サイトの内容を書くところです。 このファイルを編集することも、あるいはとりあえずデフォルトの内容をそのままにしておくこともできます。 +1. `username.github.io`にアクセスして、新しいWebサイトを見てみてください。 **メモ:** サイトに対する変更は、その変更を{% data variables.product.product_name %}にプッシュしてから公開されるまでに、最大10分かかることがあります。 ## タイトルと説明の変更 diff --git a/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md b/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md index 9491879d40..68434b0b94 100644 --- a/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md +++ b/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md @@ -75,9 +75,9 @@ 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 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)." +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 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)." +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. @@ -96,7 +96,7 @@ You can download or create Jekyll plugins to extend the functionality of Jekyll - [`jekyll-titles-from-headings`](https://github.com/benbalter/jekyll-titles-from-headings) - [`jekyll-relative-links`](https://github.com/benbalter/jekyll-relative-links) -You can enable additional plugins by adding the plugin's gem to the `plugins` setting in your *_config.yml* file. For more information, see "[Configuration](https://jekyllrb.com/docs/configuration/)" in the Jekyll documentation. +You can enable additional plugins by adding the plugin's gem to the `plugins` setting in your *_config.yml* file. For more information, see "[Configuration](https://jekyllrb.com/docs/configuration/)" in the Jekyll documentation. For a list of supported plugins, see "[Dependency versions](https://pages.github.com/versions/)" on the {% data variables.product.prodname_pages %} site. For usage information for a specific plugin, see the plugin's documentation. diff --git a/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md b/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md index 9e84172aa2..8579be29e2 100644 --- a/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md +++ b/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md @@ -26,7 +26,7 @@ shortTitle: Jekyll build errors for Pages {% note %} -**Note:** It can take up to 20 minutes for changes to your site to publish after you push the changes to {% data variables.product.product_name %}. +**Note:** It can take up to 10 minutes for changes to your site to publish after you push the changes to {% data variables.product.product_name %}. {% endnote %} diff --git a/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md b/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md index ee88d5b4e1..ebc8c85eca 100644 --- a/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md +++ b/translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/adding-a-theme-to-your-github-pages-site-using-jekyll.md @@ -6,6 +6,7 @@ redirect_from: - /articles/adding-a-jekyll-theme-to-your-github-pages-site - /articles/adding-a-theme-to-your-github-pages-site-using-jekyll - /github/working-with-github-pages/adding-a-theme-to-your-github-pages-site-using-jekyll + - /pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser product: '{% data reusables.gated-features.pages %}' versions: fpt: '*' diff --git a/translations/ja-JP/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md b/translations/ja-JP/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md index a8698de14e..a2a2deeb50 100644 --- a/translations/ja-JP/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md +++ b/translations/ja-JP/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md @@ -18,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 all required status checks have passed. 自動マージにより、要件が満たされるのを待つ必要がなくなるため、他のタスクに進むことができます。 プルリクエストで自動マージを使用する前に、リポジトリで自動マージを有効にする必要があります。 詳しい情報については、「[リポジトリ内のプルリクエストの自動マージを管理する](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository)」を参照してください。 diff --git a/translations/ja-JP/content/rest/apps/installations.md b/translations/ja-JP/content/rest/apps/installations.md index d83948fc68..9a2a2972aa 100644 --- a/translations/ja-JP/content/rest/apps/installations.md +++ b/translations/ja-JP/content/rest/apps/installations.md @@ -17,4 +17,4 @@ versions: _インストール_とは、アプリケーションをインストールしたユーザまたは Organization のアカウントを指します。 インストールして認証し、特定のリポジトリへのアクセスを制限する方法については、「[インストールとして認証する](/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation)」を参照してください。 -Organization のすべての GitHub App インストールを一覧表示するには、「[Organization のアプリケーションインストールの一覧表示](/rest/reference/orgs#list-app-installations-for-an-organization)」を参照してください。 +Organization のすべての GitHub App インストールを一覧表示するには、「[Organization のアプリケーションインストールの一覧表示](/rest/orgs/orgs#list-app-installations-for-an-organization)」を参照してください。 diff --git a/translations/ja-JP/content/rest/deployments/deployments.md b/translations/ja-JP/content/rest/deployments/deployments.md index 93f1e9d649..489e58df7e 100644 --- a/translations/ja-JP/content/rest/deployments/deployments.md +++ b/translations/ja-JP/content/rest/deployments/deployments.md @@ -19,7 +19,7 @@ miniTocMaxHeadingLevel: 3 デプロイメントのステータスには、オプションとして `description` と `log_url` を含めることもできます。これによりデプロイメントのステータスがより有用なものになるので、非常におすすめです。 `log_url` はデプロイメントの出力の完全な URL で、`description` はデプロイメントで発生したことの概要を示すものです。 -GitHub は、新しいデプロイメント、デプロイメントのステータスが作成されたときに、`deployment` イベント、`deployment_status` イベントをディスパッチします。 これらのイベントにより、サードパーティのインテグレーションがデプロイメントのリクエストに対する応答を受けとり、進展があるたびにステータスを更新できます。 +GitHub は、新しいデプロイメント、デプロイメントのステータスが作成されたときに、`deployment` イベント、`deployment_status` イベントをディスパッチします。 これらのイベントにより、サードパーティのインテグレーションがデプロイメントのリクエストに対する応答を受けとって反応し、進展があるたびにステータスを更新できます。 以下は、これらの相互作用がどのように機能するかを示す簡単なシーケンス図です。 diff --git a/translations/ja-JP/content/rest/guides/getting-started-with-the-rest-api.md b/translations/ja-JP/content/rest/guides/getting-started-with-the-rest-api.md index e4f9dfe075..8c54d89f60 100644 --- a/translations/ja-JP/content/rest/guides/getting-started-with-the-rest-api.md +++ b/translations/ja-JP/content/rest/guides/getting-started-with-the-rest-api.md @@ -1,9 +1,6 @@ --- title: Getting started with the REST API -intro: 'Learn the foundations for using the REST API, starting with authentication and some endpoint examples.' -redirect_from: - - /guides/getting-started - - /v3/guides/getting-started +intro: 'Learn how to use the {% data variables.product.prodname_dotcom %} REST API.' versions: fpt: '*' ghes: '*' @@ -11,477 +8,754 @@ versions: ghec: '*' topics: - API -shortTitle: Get started - REST API +shortTitle: Using the API +miniTocMaxHeadingLevel: 3 --- +## About the {% data variables.product.prodname_dotcom %} REST API -Let's walk through core API concepts as we tackle some everyday use cases. +This article describes how to use the {% data variables.product.prodname_dotcom %} REST API using {% data variables.product.prodname_cli %}, JavaScript, or cURL. For a quickstart guide, see "[Quickstart for GitHub REST API](/rest/quickstart)." -{% data reusables.rest-api.dotcom-only-guide-note %} +When you make a request to the REST API, you will specify an HTTP method and a path. Additionally, you might also specify request headers and path, query, or body parameters. The API will return the response status code, response headers, and potentially a response body. -## Overview +The REST API reference documentation describes the HTTP method, path, and parameters for every operation. It also displays example requests and responses for each operation. For more information, see the [REST reference documentation](/rest). -Most applications will use an existing [wrapper library][wrappers] in the language -of your choice, but it's important to familiarize yourself with the underlying API -HTTP methods first. +## Making a request -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 %} +To make a request, first find the HTTP method and the path for the operation that you want to use. For example, the "Get Octocat" operation uses the `GET` method and the `/octocat` path. For the full reference documentation for this operation, see "[Get Octocat](/rest/meta#get-octocat)." -### Hello World +{% cli %} -Let's start by testing our setup. Open up a command prompt and enter the -following command: +{% note %} + +**Note**: You must install {% data variables.product.prodname_cli %} in order to use the commands in the {% data variables.product.prodname_cli %} examples. For installation instructions, see the [{% data variables.product.prodname_cli %} repository](https://github.com/cli/cli#installation). + +{% endnote %} + +If you are not already authenticated to {% data variables.product.prodname_cli %}, you must use the `gh auth login` subcommand to authenticate before making any requests. For more information, see "[Authenticating](#authenticating)." + +To make a request using {% data variables.product.prodname_cli %}, use the `api` subcommand along with the path. Use the `--method` or `-X` flag to specify the method. ```shell -$ curl https://api.github.com/zen - -> Keep it logically awesome. +gh api /octocat --method GET ``` -The response will be a random selection from our design philosophies. +{% endcli %} -Next, let's `GET` [Chris Wanstrath's][defunkt github] [GitHub profile][users api]: +{% javascript %} + +{% note %} + +**Note**: You must install and import `octokit` in order to use the Octokit.js library used in the JavaScript examples. For more information, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). + +{% endnote %} + +To make a request using JavaScript, you can use Octokit.js. For more information, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). + +First, create an instance of `Octokit`.{% ifversion ghes or ghae %} Set the base URL to `{% data variables.product.api_url_code %}`. Replace `[hostname]` with the name of {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}", +{% endif %}}); +``` + +Then, use the `request` method to make requests. Pass the HTTP method and path as the first argument. + +```javascript +await octokit.request("GET /octocat", {}); +``` + +{% endjavascript %} + +{% curl %} + +Prepend the base URL for the {% data variables.product.prodname_dotcom %} REST API, `{% data variables.product.api_url_code %}`, to the path to get the full URL: `{% data variables.product.api_url_code %}/octocat`.{% ifversion ghes or ghae %} Replace `[hostname]` with the name of {% data variables.product.product_location %}.{% endif %} + +Use the `curl` command in your command line. Use the `--request` or `-X` flag followed by the HTTP method. Use the `--url` flag followed by the full URL. ```shell -# GET /users/defunkt -$ curl https://api.github.com/users/defunkt - -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> ... -> } +curl --request GET \ +--url "https://api.github.com/octocat" ``` -Mmmmm, tastes like [JSON][json]. Let's add the `-i` flag to include headers: +{% note %} + +**Note**: If you get a message similar to "command not found: curl", you may need to download and install cURL. For more information, see [the cURL project download page](https://curl.se/download.html). + +{% endnote %} + +{% endcurl %} + +Continue reading to learn how to authenticate, send parameters, and use the response. + +## Authenticating + +Many operations require authentication or return additional information if you are authenticated. Additionally, you can make more requests per hour when you are authenticated.{% cli %} Although some REST API operations are accessible without authentication, you must authenticate to {% data variables.product.prodname_cli %} in order to use the `api` subcommand.{% endcli %} + +### About tokens + +You can authenticate your request by adding a token. + +If you want to use the {% data variables.product.company_short %} REST API for personal use, you can create a personal access token (PAT). The REST API operations used in this article require `repo` scope for personal access tokens. Other operations may require different scopes. For more information about creating a personal access token, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." + +If you want to use the API on behalf of an organization or another user, {% data variables.product.company_short %} recommends that you use a {% data variables.product.prodname_github_app %}. If an operation is available to {% data variables.product.prodname_github_apps %}, the REST reference documentation for that operation will say "Works with GitHub Apps." The REST API operations used in this article require `issues` read and write permissions for {% data variables.product.prodname_github_apps %}. Other operations may require different permissions. For more information, see "[Creating a GitHub App](/developers/apps/building-github-apps/creating-a-github-app)", "[Authenticating with GitHub Apps](/developers/apps/building-github-apps/authenticating-with-github-apps), and "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + +If you want to use the API in a {% data variables.product.prodname_actions %} workflow, {% data variables.product.company_short %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. You can grant permissions to the `GITHUB_TOKEN` with the `permissions` key. For more information, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)." + +### Authentication example + +{% cli %} + +With {% data variables.product.prodname_cli %}, you don't need to create an access token in advance. Use the `auth login` subcommand to authenticate to {% data variables.product.prodname_cli %}: ```shell -$ curl -i https://api.github.com/users/defunkt - -> HTTP/2 200 -> server: GitHub.com -> date: Thu, 08 Jul 2021 07:04:08 GMT -> content-type: application/json; charset=utf-8 -> cache-control: public, max-age=60, s-maxage=60 -> vary: Accept, Accept-Encoding, Accept, X-Requested-With -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" -> last-modified: Fri, 01 Nov 2019 21:56:00 GMT -> x-github-media-type: github.v3; format=json -> access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, Deprecation, Sunset -> access-control-allow-origin: * -> strict-transport-security: max-age=31536000; includeSubdomains; preload -> x-frame-options: deny -> x-content-type-options: nosniff -> x-xss-protection: 0 -> referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin -> content-security-policy: default-src 'none' -> x-ratelimit-limit: 60 -> x-ratelimit-remaining: 53 -> x-ratelimit-reset: 1625731053 -> x-ratelimit-resource: core -> x-ratelimit-used: 7 -> accept-ranges: bytes -> content-length: 1305 -> x-github-request-id: 9F60:7019:ACC5CD5:B03C931:60E6A368 -> -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> -> ... -> } +gh auth login ``` -There are a few interesting bits in the response headers. As expected, the -`Content-Type` is `application/json`. +You can use the `--scopes` flag to specify what scopes you want. If you want to authenticate with a token that you created, you can use the `--with-token` flag. For more information, see the [{% data variables.product.prodname_cli %} `auth login` documentation](https://cli.github.com/manual/gh_auth_login). -Any headers beginning with `X-` are custom headers, and are not included in the -HTTP spec. For example, take note of the `X-RateLimit-Limit` and `X-RateLimit-Remaining` headers. This -pair of headers indicate [how many requests a client can make][rate-limiting] in -a rolling time period (typically an hour) and how many of those requests the -client has already spent. +{% endcli %} -## 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 {% 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 {% 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: - -```shell -$ curl -i -u your_username {% data variables.product.api_url_pre %}/users/octocat - -``` - -When prompted, you can enter your OAuth token, but we recommend you set up a variable for it: - -You can use `-u "your_username:$token"` and set up a variable for `token` to avoid leaving your token in shell history, which should be avoided. - -```shell -$ curl -i -u your_username:$token {% data variables.product.api_url_pre %}/users/octocat - -``` - -When authenticating, you should see your rate limit bumped to 5,000 requests an hour, as indicated in the `X-RateLimit-Limit` header. In addition to providing more calls per hour, authentication enables you to read and write private information using the API. - -You can easily [create a **personal access token**][personal token] using your [Personal access tokens settings page][tokens settings]: +{% javascript %} {% warning %} -To help keep your information secure, we highly recommend setting an expiration for your personal access tokens. +**Warning**: Treat your access token like a password. + +To keep your token secure, you can store your token as a secret and run your script through {% data variables.product.prodname_actions %}. For more information, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." + +{% ifversion ghec or fpt %}You can also store your token as a {% data variables.product.prodname_codespaces %} secret and run your script in {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + +If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. {% endwarning %} -{% ifversion fpt or ghes or ghec %} -![Personal Token selection](/assets/images/personal_token.png) +To authenticate with the Octokit.js library, you can pass your token when you create an instance of `Octokit`. Replace `YOUR-TOKEN` with your token.{% ifversion ghes or ghae %} Replace `[hostname]` with the name of {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: 'YOUR-TOKEN', +}); +``` + +{% endjavascript %} + +{% curl %} + +{% warning %} + +**Warning**: Treat your access token like a password. + +To help keep your account secure, you can use {% data variables.product.prodname_cli %} instead of cURL. {% data variables.product.prodname_cli %} will take care of authentication for you. For more information, see the {% data variables.product.prodname_cli %} version of this page. + +{% ifversion ghec or fpt %}You can also store your token as a {% data variables.product.prodname_codespaces %} secret and use the command line through {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + +If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. + +{% endwarning %} + +With cURL, you will send an `Authorization` header with your token. Replace `YOUR-TOKEN` with your token: + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% note %} + +**Note:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + +{% endcurl %} + +### Authentication example for {% data variables.product.prodname_actions %} + +{% cli %} + +You can also use the `run` keyword to execute {% data variables.product.prodname_cli %} commands in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +Instead of using the `gh auth login` command, pass your token as an environment variable called `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api /octocat +``` + +{% endcli %} + +{% javascript %} + +You can also use the `run` keyword to execute your JavaScript scripts in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." + +The following example workflow: + +1. Checks out the repository content +1. Sets up Node.js +1. Installs `octokit` +1. Stores the value of `GITHUB_TOKEN` as an environment variable called `TOKEN` and runs `.github/actions-scripts/use-the-api.mjs`, which can access that environment variable as `process.env.TOKEN` + +Example workflow: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + node .github/actions-scripts/use-the-api.mjs +``` + +Example JavaScript script, with the file path `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit"; + +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: process.env.TOKEN, +}); + +await octokit.request("GET /octocat", {}); +``` + +Instead of storing your script in a separate file and executing the script from your workflow, you can use the `actions/github-script` action to run a script. For more information, see the [actions/github-script README](https://github.com/actions/github-script). + +```yaml +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - uses: {% data reusables.actions.action-github-script %} + with: + github-token: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + script: | + await github.request('GET /octocat', {}) +``` + +{% endjavascript %} + +{% curl %} + +You can also use the `run` keyword to execute cURL commands in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/octocat" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## Using headers + +Most operations specify that you should pass an `Accept` header with a value of `application/vnd.github.v3+json`. Other operations may specify that you should send a different `Accept` header or additional headers. + +{% cli %} + +To send a header with {% data variables.product.prodname_cli %}, use the `--header` or `-H` flag followed by the header in `key: value` format. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /octocat +``` + +{% endcli %} + +{% javascript %} + +The Octokit.js library automatically passes the `Accept: application/vnd.github.v3+json` header. To pass additional headers or a different `Accept` header, add a `headers` property to the object that is passed as a second argument to the `request` method. The value of the `headers` property is an object with the header names as keys and header values as values. For example, to send a `content-type` header with a value of `text/plain`: + +```javascript +await octokit.request("GET /octocat", { + headers: { + "content-type": "text/plain", + }, +}); +``` + +{% endjavascript %} + +{% curl %} + +To send a header with cURL, use the `--header` or `-H` flag followed by the header in `key: value` format. + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% endcurl %} + +## Using path parameters + +Path parameters modify the operation path. For example, the "List repository issues" path is `/repos/{owner}/{repo}/issues`. The curly brackets `{}` denote path parameters that you need to specify. In this case, you must specify the repository owner and name. For the reference documentation for this operation, see "[List repository issues](/rest/issues/issues#list-repository-issues)." + +{% cli %} + +{% ifversion ghes or ghae %} +{% note %} + +**Note:** In order for this command to work for {% data variables.product.product_location %}, replace `octocat/Spoon-Knife` with a repository owned by {% data variables.product.product_location %}. Otherwise, rerun the `gh auth login` command to authenticate to {% data variables.product.prodname_dotcom_the_website %} instead of {% data variables.product.product_location %}. + +{% endnote %} {% endif %} -{% ifversion ghae %} -![Personal Token selection](/assets/images/help/personal_token_ghae.png) +To get issues from the `octocat/Spoon-Knife` repository, replace `{owner}` with `octocat` and `{repo}` with `Spoon-Knife`. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +{% ifversion ghes or ghae %} +{% note %} + +**Note:** In order for this example to work for {% data variables.product.product_location %}, replace `octocat/Spoon-Knife` with a repository owned by {% data variables.product.product_location %}. Otherwise, create a new `Octokit` instance and do not specify `baseURL`. + +{% endnote %} {% endif %} -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. +When you make a request with Octokit.js, all parameters, including path parameters, are passed in an object as the second argument to the `request` method. To get issues from the `octocat/Spoon-Knife` repository, specify `owner` as `octocat` and `repo` as `Spoon-Knife`. -### Get your own user profile - -When properly authenticated, you can take advantage of the permissions -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 -$ curl -i -u your_username:your_token {% data variables.product.api_url_pre %}/user - -> { -> ... -> "plan": { -> "space": 2516582, -> "collaborators": 10, -> "private_repos": 20, -> "name": "medium" -> } -> ... -> } +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife" +}); ``` -This time, in addition to the same set of public information we -retrieved for [@defunkt][defunkt github] earlier, you should also see the non-public information for your user profile. For example, you'll see a `plan` object in the response which gives details about the {% data variables.product.product_name %} plan for the account. +{% endjavascript %} -### Using OAuth tokens for apps +{% curl %} -Apps that need to read or write private information using the API on behalf of another user should use [OAuth][oauth]. +To get issues from the `octocat/Spoon-Knife` repository, replace `{owner}` with `octocat` and `{repo}` with `Spoon-Knife`. To build the full path, prepend the base URL for the {% data variables.product.prodname_dotcom %} REST API, `https://api.github.com`: `https://api.github.com/repos/octocat/Spoon-Knife/issues`. -OAuth uses _tokens_. Tokens provide two big features: +{% ifversion ghes or ghae %} +{% note %} -* **Revokable access**: users can revoke authorization to third party apps at any time -* **Limited access**: users can review the specific access that a token - will provide before authorizing a third party app +**Note:** If you want to use {% data variables.product.product_location %} instead of {% data variables.product.prodname_dotcom_the_website %}, use `{% data variables.product.api_url_code %}` instead of `https://api.github.com` and replace `[hostname]` with the name of {% data variables.product.product_location %}. Replace `octocat/Spoon-Knife` with a repository owned by {% data variables.product.product_location %}. -Tokens should be created via a [web flow][webflow]. An application -sends users to {% data variables.product.product_name %} to log in. {% data variables.product.product_name %} then presents a dialog -indicating the name of the app, as well as the level of access the app -has once it's authorized by the user. After a user authorizes access, {% data variables.product.product_name %} -redirects the user back to the application: - -![GitHub's OAuth Prompt](/assets/images/oauth_prompt.png) - -**Treat OAuth tokens like passwords!** Don't share them with other users or store -them in insecure places. The tokens in these examples are fake and the names have -been changed to protect the innocent. - -Now that we've got the hang of making authenticated calls, let's move along to -the [Repositories API][repos-api]. - -## Repositories - -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: +{% endnote %} +{% endif %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/twbs/bootstrap +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -In the same way, we can [view repositories for the authenticated user][user repos api]: +{% endcurl %} + +The operation returns a list of issues and data about each issue. For more information about using the response, see the "[Using the response](#using-the-response)" section. + +## Using query parameters + +Query parameters allow you to control what data is returned for a request. For example, a query parameter may let you specify how many items are returned when the response is paginated. + +By default, the "List repository issues" operation returns thirty issues, sorted in descending order by the date they were created. You can use the `per_page` parameter to return two issues instead of 30. You can use the `sort` parameter to sort the issues by the date they were last updated instead of by the date they were created. You can use the `direction` parameter to sort the results in ascending order instead of descending order. + +{% cli %} + +For {% data variables.product.prodname_cli %}, use the `-F` flag to pass a parameter that is a number, Boolean, or null. Use `-f` to pass string parameters. + +{% note %} + +**Note**: {% data variables.product.prodname_cli %} does not currently accept parameters that are arrays. For more information, see [this issue](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 -f sort=updated -f direction=asc ``` -Or, we can [list repositories for another user][other user repos api]: +{% endcli %} + +{% javascript %} + +When you make a request with Octokit.js, all parameters, including query parameters, are passed in an object as the second argument to the `request` method. + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + sort: "updated", + direction: "asc", +}); +``` + +{% endjavascript %} + +{% curl %} + +For cURL, add a `?` to the end of the path, then append your query parameter name and value in the form `parameter_name=value`. Separate multiple query parameters with `&`. ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/octocat/repos +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2&sort=updated&direction=asc" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -Or, we can [list repositories for an organization][org repos api]: +{% endcurl %} + +The operation returns a list of issues and data about each issue. For more information about using the response, see the "[Using the response](#using-the-response)" section. + +## Using body parameters + +Body parameters allow you to pass additional data to the API. For example, the "Create an issue" operation requires you to specify a title for the new issue. It also lets you specify other information, such as text to put in the issue body. For the full reference documentation for this operation, see "[Create an issue](/rest/issues/issues#create-an-issue)." + +The "Create an issue" operation uses the same path as the "List repository issues" operation in the examples above, but it uses a `POST` method instead of a `GET` method. + +{% cli %} + +For {% data variables.product.prodname_cli %}, use the `-F` flag to pass a parameter that is a number, Boolean, or null. Use `-f` to pass string parameters. + +{% note %} + +**Note**: {% data variables.product.prodname_cli %} does not currently accept parameters that are arrays. For more information, see [this issue](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/orgs/octo-org/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method POST /repos/octocat/Spoon-Knife/issues -f title="Created with the REST API" -f body="This is a test issue created by the REST API" ``` -The information returned from these calls will depend on which scopes our token has when we authenticate: +{% endcli %} -{%- ifversion fpt or ghec or ghes %} -* A token with `public_repo` [scope][scopes] returns a response that includes all public repositories we have access to see on {% data variables.product.product_location %}. -{%- endif %} -* A token with `repo` [scope][scopes] returns a response that includes all {% ifversion fpt %}public or private{% elsif ghec or ghes %}public, private, or internal{% elsif ghae %}private or internal{% endif %} repositories we have access to see on {% data variables.product.product_location %}. +{% javascript %} -As the [docs][repos-api] indicate, these methods take a `type` parameter that -can filter the repositories returned based on what type of access the user has -for the repository. In this way, we can fetch only directly-owned repositories, -organization repositories, or repositories the user collaborates on via a team. +When you make a request with Octokit.js, all parameters, including body parameters, are passed in an object as the second argument to the `request` method. + +```javascript +await octokit.request("POST /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + title: "Created with the REST API", + body: "This is a test issue created by the REST API", +}); +``` + +{% endjavascript %} + +{% curl %} + +For cURL, use the `--data` flag to pass the body parameters in a JSON object. ```shell -$ curl -i "{% data variables.product.api_url_pre %}/users/octocat/repos?type=owner" +curl --request POST \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--data '{ + "title": "Created with the REST API", + "body": "This is a test issue created by the REST API" +}' ``` -In this example, we grab only those repositories that octocat owns, not the -ones on which she collaborates. Note the quoted URL above. Depending on your -shell setup, cURL sometimes requires a quoted URL or else it ignores the -query string. +{% endcurl %} -### Create a repository +The operation creates an issue and returns data about the new issue. In the response, find the `html_url` of your issue and navigate to your issue in the browser. For more information about using the response, see the "[Using the response](#using-the-response)" section. -Fetching information for existing repositories is a common use case, but the -{% 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. +## Using the response + +### About the response code and headers + +Every request will return an HTTP status code that indicates the success of the response. For more information about response codes, see [the MDN HTTP response status code documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status). + +Additionally, the response will include headers that give more details about the response. Headers that start with `X-` or `x-` are custom to {% data variables.product.company_short %}. For example, the `x-ratelimit-remaining` and `x-ratelimit-reset` headers tell you how many requests you can make in a time period. + +{% cli %} + +To view the status code and headers, use the `--include` or `--i` flag when you send your request. + +For example, this request: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - -d '{ - "name": "blog", - "auto_init": true, - "private": true, - "gitignore_template": "nanoc" - }' \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 --include ``` -In this minimal example, we create a new private repository for our blog (to be served -on [GitHub Pages][pages], perhaps). Though the blog {% ifversion not ghae %}will be public{% else %}is accessible to all enterprise members{% endif %}, we've made the repository private. In this single step, we'll also initialize it with a README and a [nanoc][nanoc]-flavored [.gitignore template][gitignore templates]. - -The resulting repository will be found at `https://github.com//blog`. -To create a repository under an organization for which you're -an owner, just change the API method from `/user/repos` to `/orgs//repos`. - -Next, let's fetch our newly created repository: +returns the response code and headers like: ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/pengwynn/blog - -> HTTP/2 404 - -> { -> "message": "Not Found" -> } +HTTP/2.0 200 OK +Access-Control-Allow-Origin: * +Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +Cache-Control: private, max-age=60, s-maxage=60 +Content-Security-Policy: default-src 'none' +Content-Type: application/json; charset=utf-8 +Date: Thu, 04 Aug 2022 19:56:41 GMT +Etag: W/"a63dfbcfdb73621e9d2e89551edcf9856731ced534bd7f1e114a5da1f5f73418" +Link: ; rel="next", ; rel="last" +Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin +Server: GitHub.com +Strict-Transport-Security: max-age=31536000; includeSubdomains; preload +Vary: Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding, Accept, X-Requested-With +X-Accepted-Oauth-Scopes: repo +X-Content-Type-Options: nosniff +X-Frame-Options: deny +X-Github-Api-Version-Selected: 2022-08-09 +X-Github-Media-Type: github.v3; format=json +X-Github-Request-Id: 1C73:26D4:E2E500:1EF78F4:62EC2479 +X-Oauth-Client-Id: 178c6fc778ccc68e1d6a +X-Oauth-Scopes: gist, read:org, repo, workflow +X-Ratelimit-Limit: 15000 +X-Ratelimit-Remaining: 14996 +X-Ratelimit-Reset: 1659645499 +X-Ratelimit-Resource: core +X-Ratelimit-Used: 4 +X-Xss-Protection: 0 ``` -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 {% 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." +In this example, the response code is `200`, which indicates a successful request. -## Issues +{% endcli %} -The UI for Issues on {% data variables.product.product_name %} aims to provide 'just enough' workflow while -staying out of your way. With the {% data variables.product.product_name %} [Issues API][issues-api], you can pull -data out or create issues from other tools to create a workflow that works for -your team. +{% javascript %} -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`: +When you make a request with Octokit.js, the `request` method returns a promise. If the request was successful, the promise resolves to an object that includes the HTTP status code of the response (`status`) and the response headers (`headers`). If an error occurs, the promise resolves to an object that includes the HTTP status code of the response (`status`) and the response headers (`response.headers`). + +You can use a `try/catch` block to catch an error if it occurs. For example, if the request in the following script is successful, the script will log the status code and the value of the `x-ratelimit-remaining` header. If the request was not successful, the script will log the status code, the value of the `x-ratelimit-remaining` header, and the error message. + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + console.log(`Success! Status: ${result.status}. Rate limit remaining: ${result.headers["x-ratelimit-remaining"]}`) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Rate limit remaining: ${error.headers["x-ratelimit-remaining"]}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +To view the status code and headers, use the `--include` or `--i` flag when you send your request. + +For example, this request: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/issues +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--include ``` -To get only the [issues under one of your {% data variables.product.product_name %} organizations][get issues api], call `GET -/orgs//issues`: +returns the response code and headers like: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/orgs/rails/issues +HTTP/2 200 +server: GitHub.com +date: Thu, 04 Aug 2022 20:07:51 GMT +content-type: application/json; charset=utf-8 +cache-control: public, max-age=60, s-maxage=60 +vary: Accept, Accept-Encoding, Accept, X-Requested-With +etag: W/"7fceb7e8c958d3ec4d02524b042578dcc7b282192e6c939070f4a70390962e18" +x-github-media-type: github.v3; format=json +link: ; rel="next", ; rel="last" +access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +access-control-allow-origin: * +strict-transport-security: max-age=31536000; includeSubdomains; preload +x-frame-options: deny +x-content-type-options: nosniff +x-xss-protection: 0 +referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin +content-security-policy: default-src 'none' +x-ratelimit-limit: 15000 +x-ratelimit-remaining: 14996 +x-ratelimit-reset: 1659645535 +x-ratelimit-resource: core +x-ratelimit-used: 4 +accept-ranges: bytes +content-length: 4936 +x-github-request-id: 14E0:4BC6:F1B8BA:208E317:62EC2715 ``` -We can also get [all the issues under a single repository][repo issues api]: +In this example, the response code is `200`, which indicates a successful request. + +{% endcurl %} + +### About the response body + +Many operations will return a response body. Unless otherwise specified, the response body is in JSON format. For example, this request returns a list of issues with data about each issue: + +{% cli %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 ``` -### Pagination +{% endcli %} -A project the size of Rails has thousands of issues. We'll need to [paginate][pagination], -making multiple API calls to get the data. Let's repeat that last call, this -time taking note of the response headers: +{% javascript %} + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, +}); +``` + +{% endjavascript %} + +{% curl %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues - -> HTTP/2 200 - -> ... -> Link: <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=2>; rel="next", <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=30>; rel="last" -> ... +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -The [`Link` header][link-header] provides a way for a response to link to -external resources, in this case additional pages of data. Since our call found -more than thirty issues (the default page size), the API tells us where we can -find the next page and the last page of results. +{% endcurl %} -### Creating an issue +Unlike the GraphQL API where you specify what information you want, the REST API typically returns more information than you need. If desired, you can parse the response to pull out specific pieces of information. -Now that we've seen how to paginate lists of issues, let's [create an issue][create issue] from -the API. +{% cli %} -To create an issue, we need to be authenticated, so we'll pass an -OAuth token in the header. Also, we'll pass the title, body, and labels in the JSON -body to the `/issues` path underneath the repository in which we want to create -the issue: +For example, you can use `>` to redirect the response to a file: ```shell -$ curl -i -H 'Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a' \ -$ -d '{ \ -$ "title": "New logo", \ -$ "body": "We should have one", \ -$ "labels": ["design"] \ -$ }' \ -$ {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues - -> HTTP/2 201 -> Location: {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17 -> X-RateLimit-Limit: 5000 - -> { -> "pull_request": { -> "patch_url": null, -> "html_url": null, -> "diff_url": null -> }, -> "created_at": "2012-11-14T15:25:33Z", -> "comments": 0, -> "milestone": null, -> "title": "New logo", -> "body": "We should have one", -> "user": { -> "login": "pengwynn", -> "gravatar_id": "7e19cd5486b5d6dc1ef90e671ba52ae0", -> "avatar_url": "https://secure.gravatar.com/avatar/7e19cd5486b5d6dc1ef90e671ba52ae0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png", -> "id": 865, -> "url": "{% data variables.product.api_url_pre %}/users/pengwynn" -> }, -> "closed_at": null, -> "updated_at": "2012-11-14T15:25:33Z", -> "number": 17, -> "closed_by": null, -> "html_url": "https://github.com/pengwynn/api-sandbox/issues/17", -> "labels": [ -> { -> "color": "ededed", -> "name": "design", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/labels/design" -> } -> ], -> "id": 8356941, -> "assignee": null, -> "state": "open", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17" -> } +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 > data.json ``` -The response gives us a couple of pointers to the newly created issue, both in -the `Location` response header and the `url` field of the JSON response. - -## Conditional requests - -A big part of being a good API citizen is respecting rate limits by caching information that hasn't changed. The API supports [conditional -requests][conditional-requests] and helps you do the right thing. Consider the -first call we made to get defunkt's profile: +Then you can use jq to get the title and author ID of each issue: ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 200 -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" +jq '.[] | {title: .title, authorID: .user.id}' data.json ``` -In addition to the JSON body, take note of the HTTP status code of `200` and -the `ETag` header. -The [ETag][etag] is a fingerprint of the response. If we pass that on subsequent calls, -we can tell the API to give us the resource again, only if it has changed: +The previous two commands return something like: + +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` + +For more information about jq, see [the jq documentation](https://stedolan.github.io/jq/) and [jq play](https://jqplay.org/). + +{% endcli %} + +{% javascript %} + +For example, you can get the title and author ID of each issue: + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +For example, you can use `>` to redirect the response to a file: ```shell -$ curl -i -H 'If-None-Match: "61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0"' \ -$ {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 304 +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" > data.json ``` -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]. +Then you can use jq to get the title and author ID of each issue: -Now you know the basics of the {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API! +```shell +jq '.[] | {title: .title, authorID: .user.id}' data.json +``` -* Basic & OAuth authentication -* Fetching and creating repositories and issues -* Conditional requests +The previous two commands return something like: -Keep learning with the next API guide [Basics of Authentication][auth guide]! +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` -[wrappers]: /libraries/ -[curl]: http://curl.haxx.se/ -[media types]: /rest/overview/media-types -[oauth]: /apps/building-integrations/setting-up-and-registering-oauth-apps/ -[webflow]: /apps/building-oauth-apps/authorizing-oauth-apps/ -[scopes]: /apps/building-oauth-apps/understanding-scopes-for-oauth-apps/ -[repos-api]: /rest/reference/repos -[pages]: http://pages.github.com -[nanoc]: http://nanoc.ws/ -[gitignore templates]: https://github.com/github/gitignore -[issues-api]: /rest/reference/issues -[link-header]: https://www.w3.org/wiki/LinkHeader -[conditional-requests]: /rest#conditional-requests -[rate-limiting]: /rest/overview/resources-in-the-rest-api#rate-limit-http-headers -[users api]: /rest/reference/users#get-a-user -[auth user api]: /rest/reference/users#get-the-authenticated-user -[defunkt github]: https://github.com/defunkt -[json]: http://en.wikipedia.org/wiki/JSON -[authentication]: /rest#authentication -[2fa]: /articles/about-two-factor-authentication -[2fa header]: /rest/overview/other-authentication-methods#working-with-two-factor-authentication -[oauth section]: /rest/guides/getting-started-with-the-rest-api#oauth -[personal token]: /articles/creating-an-access-token-for-command-line-use -[tokens settings]: https://github.com/settings/tokens -[pagination]: /rest#pagination -[get repo]: /rest/reference/repos#get-a-repository -[create repo]: /rest/reference/repos#create-a-repository-for-the-authenticated-user -[create issue]: /rest/reference/issues#create-an-issue -[auth guide]: /guides/basics-of-authentication -[user repos api]: /rest/reference/repos#list-repositories-for-the-authenticated-user -[other user repos api]: /rest/reference/repos#list-repositories-for-a-user -[org repos api]: /rest/reference/repos#list-organization-repositories -[get issues api]: /rest/reference/issues#list-issues-assigned-to-the-authenticated-user -[repo issues api]: /rest/reference/issues#list-repository-issues -[etag]: http://en.wikipedia.org/wiki/HTTP_ETag -[2fa section]: /rest/guides/getting-started-with-the-rest-api#two-factor-authentication +For more information about jq, see [the jq documentation](https://stedolan.github.io/jq/) and [jq play](https://jqplay.org/). + +{% endcurl %} + +## Next steps + +This article demonstrated how to list and create issues in a repository. For more practice, try to comment on an issue, edit the title of an issue, or close an issue. For more information about these operations, see "[Create an issue comment](/rest/issues#create-an-issue-comment)" and "[Update an issue](/rest/issues/issues#update-an-issue)." + +For more information about the operations that you can use, see the [REST reference documentation](/rest). diff --git a/translations/ja-JP/content/rest/index.md b/translations/ja-JP/content/rest/index.md index d33d08bdc6..fa25d957c1 100644 --- a/translations/ja-JP/content/rest/index.md +++ b/translations/ja-JP/content/rest/index.md @@ -3,7 +3,8 @@ title: GitHubのREST API shortTitle: REST API intro: 'インテグレーションを作成し、データを取り出し、ワークフローを自動化するために、{% data variables.product.prodname_dotcom %}のREST APIで構築してください。' introLinks: - quickstart: /rest/guides/getting-started-with-the-rest-api + quickstart: /rest/quickstart + overview: /rest/guides/getting-started-with-the-rest-api featuredLinks: guides: - /rest/guides/getting-started-with-the-rest-api @@ -31,6 +32,7 @@ versions: ghae: '*' ghec: '*' children: + - /quickstart - /overview - /guides - /actions diff --git a/translations/ja-JP/content/rest/overview/other-authentication-methods.md b/translations/ja-JP/content/rest/overview/other-authentication-methods.md index 9b78b65c4c..9948e2eacc 100644 --- a/translations/ja-JP/content/rest/overview/other-authentication-methods.md +++ b/translations/ja-JP/content/rest/overview/other-authentication-methods.md @@ -76,10 +76,16 @@ $ curl -u username {% data variables.product.api_url_pre %}/user {% endnote %} +{% note %} + +**ノート:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + 認証に[SAML SSO][saml-sso]を強制しているOrganizationにアクセスするためAPIを使用している場合は、個人アクセストークン (PAT) を作成し、Organizationに対して[そのトークンを認証する][allowlist]必要があります。 `X-GitHub-SSO` で指定された URL にアクセスして、Organization のトークンを承認します。 ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test > X-GitHub-SSO: required; url=https://github.com/orgs/octodocs-test/sso?authorization_request=AZSCKtL4U8yX1H3sCQIVnVgmjmon5fWxks5YrqhJgah0b2tlbl9pZM4EuMz4 { @@ -91,7 +97,7 @@ $ curl -v -H "Authorization: token TOKEN" {% data variables.product.api 複数の Organization からのデータをリクエストする場合(たとえば、[ユーザが作成した Issue のリストをリクエストする場合][user-issues])、`X-GitHub-SSO` ヘッダは、個人アクセストークンを承認する必要がある Organization を示します。 ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/user/issues +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/user/issues > X-GitHub-SSO: partial-results; organizations=21955855,20582480 ``` diff --git a/translations/ja-JP/content/rest/overview/resources-in-the-rest-api.md b/translations/ja-JP/content/rest/overview/resources-in-the-rest-api.md index a4c4c64697..0668815a6b 100644 --- a/translations/ja-JP/content/rest/overview/resources-in-the-rest-api.md +++ b/translations/ja-JP/content/rest/overview/resources-in-the-rest-api.md @@ -79,7 +79,7 @@ $ curl -u "username" {% data variables.product.api_url_pre %} ### OAuth2 トークン(ヘッダに送信) ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %} +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %} ``` {% note %} @@ -88,6 +88,12 @@ $ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product. {% endnote %} +{% note %} + +**ノート:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + [OAuth2 の詳細](/apps/building-oauth-apps/)をお読みください。 OAuth2 トークンは、本番アプリケーションの [Web アプリケーションフロー](/developers/apps/authorizing-oauth-apps#web-application-flow)で取得できることに注意してください。 {% ifversion fpt or ghes or ghec %} diff --git a/translations/ja-JP/content/rest/overview/troubleshooting.md b/translations/ja-JP/content/rest/overview/troubleshooting.md index 4d97fa8f13..094cd17e7c 100644 --- a/translations/ja-JP/content/rest/overview/troubleshooting.md +++ b/translations/ja-JP/content/rest/overview/troubleshooting.md @@ -44,13 +44,13 @@ curl -u my_user:my_password https://api.github.com/user/repos エンドポイントをテストするとき、またはローカル開発を実行するときには、かわりに[個人アクセストークン](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)を使用してください。 ```bash -curl -H 'Authorization: token my_access_token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my_access_token' https://api.github.com/user/repos ``` OAuth App の場合は、[Web アプリケーションフロー](/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow)を使用して、API 呼び出しのヘッダーで使用する OAuth トークンを生成する必要があります。 ```bash -curl -H 'Authorization: token my-oauth-token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my-oauth-token' https://api.github.com/user/repos ``` ## タイムアウト diff --git a/translations/ja-JP/content/rest/quickstart.md b/translations/ja-JP/content/rest/quickstart.md new file mode 100644 index 0000000000..7c56fcf402 --- /dev/null +++ b/translations/ja-JP/content/rest/quickstart.md @@ -0,0 +1,351 @@ +--- +title: Quickstart for GitHub REST API +intro: 'Learn how to get started with the {% data variables.product.prodname_dotcom %} REST API.' +allowTitleToDifferFromFilename: true +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +shortTitle: Quickstart +topics: + - API +redirect_from: + - /guides/getting-started + - /v3/guides/getting-started +miniTocMaxHeadingLevel: 3 +--- + +This article describes how to quickly get started with the {% data variables.product.prodname_dotcom %} REST API using {% data variables.product.prodname_cli %}, JavaScript, or cURL. For a more detailed guide, see "[Getting started with the REST API](/rest/guides/getting-started-with-the-rest-api)." + +{% cli %} + +## Getting started using {% data variables.product.prodname_cli %} + +### Using {% data variables.product.prodname_cli %} in the command line + +{% data variables.product.prodname_cli %} is the easiest way to use the {% data variables.product.prodname_dotcom %} REST API from the command line. + +1. Install {% data variables.product.prodname_cli %} if you haven't installed it yet. For installation instructions, see the [{% data variables.product.prodname_cli %} repository](https://github.com/cli/cli#installation). +1. Use the `auth login` subcommand to authenticate to {% data variables.product.prodname_cli %}. For more information, see the [{% data variables.product.prodname_cli %} `auth login` documentation](https://cli.github.com/manual/gh_auth_login). + + ```shell + gh auth login + ``` + +1. Use the `api` subcommand to make your API request. For more information, see the [{% data variables.product.prodname_cli %} `api` documentation](https://cli.github.com/manual/gh_api). + + ```shell + gh api repos/octocat/Spoon-Knife/issues + ``` + +### Using {% data variables.product.prodname_cli %} in {% data variables.product.prodname_actions %} + +You can also use {% data variables.product.prodname_cli %} in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Using GitHub CLI in workflows](/actions/using-workflows/using-github-cli-in-workflows)." + +Instead of using the `gh auth login` command, pass an access token as an environment variable called `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recommends that you use the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +If you are authenticating with a {% data variables.product.prodname_github_app %}, you can create an installation access token within your workflow: + +1. Store your {% data variables.product.prodname_github_app %}'s ID as a secret. In the following example, replace `APP_ID` with the name of the secret. You can find your app ID on the settings page for your app or through the App API. For more information, see "[Apps](/rest/apps/apps#get-an-app)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." +1. Generate a private key for your app. Store the contents of the resulting file as a secret. (Store the entire contents of the file, including `-----BEGIN RSA PRIVATE KEY-----` and `-----END RSA PRIVATE KEY-----`.) In the following example, replace `APP_PEM` with the name of the secret. For more information, see "[Authenticating with {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)." +1. Add a step to generate a token, and use that token instead of `GITHUB_TOKEN`. Note that this token will expire after 60 minutes. For example: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + track_pr: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +## Getting started using JavaScript + +You can use Octokit.js to interact with the {% data variables.product.prodname_dotcom %} REST API in your JavaScript scripts. For more information, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). + +### Using Octokit.js + +1. Create an access token. For example, create a personal access token (PAT) or a {% data variables.product.prodname_github_app %} user-to-server access token. For more information, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" or "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + + {% warning %} + + **Warning**: Treat your access token like a password. + + To keep your token secure, you can store your token as a secret and run your script through {% data variables.product.prodname_actions %}. For more information, see the "[Using Octokit.js in {% data variables.product.prodname_actions %}](#using-octokitjs-in-github-actions)" section. + + {%- ifversion fpt or ghec %} + + You can also store your token as a {% data variables.product.prodname_codespaces %} secret and run your script in {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + + If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. + + {% endwarning %} + +1. Install `octokit`. For example, `npm install octokit`. For other ways to install or load `octokit`, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). +1. Import `octokit` in your script. For example, `import { Octokit } from "octokit";`. For other ways to import `octokit`, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). +1. Create an instance of `Octokit` with your token. Replace `YOUR-TOKEN` with your token. + + ```javascript + const octokit = new Octokit({ + auth: 'YOUR-TOKEN' + }); + ``` + +1. Use `octokit.request` to execute your request. Send the HTTP method and path as the first argument. Specify any path, query, and body parameters in an object as the second argument. For example, in the following request the HTTP method is `GET`, the path is `/repos/{owner}/{repo}/issues`, and the parameters are `owner: "octocat"` and `repo: "Spoon-Knife"`. + + ```javascript + await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + ``` + +### Using Octokit.js in {% data variables.product.prodname_actions %} + +You can also execute your JavaScript scripts in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recommends that you use the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." + +The following example workflow: + +1. Checks out the repository content +1. Sets up Node.js +1. Installs `octokit` +1. Stores the value of `GITHUB_TOKEN` as an environment variable called `TOKEN` and runs `.github/actions-scripts/use-the-api.mjs`, which can access that environment variable as `process.env.TOKEN` + +Example workflow: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} +``` + +Example JavaScript script, with the file path `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit" + +const octokit = new Octokit({ + auth: process.env.TOKEN +}); + +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +If you are authenticating with a {% data variables.product.prodname_github_app %}, you can create an installation access token within your workflow: + +1. Store your {% data variables.product.prodname_github_app %}'s ID as a secret. In the following example, replace `APP_ID` with the name of the secret. You can find your app ID on the settings page for your app or through the App API. For more information, see "[Apps](/rest/apps/apps#get-an-app)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." +1. Generate a private key for your app. Store the contents of the resulting file as a secret. (Store the entire contents of the file, including `-----BEGIN RSA PRIVATE KEY-----` and `-----END RSA PRIVATE KEY-----`.) In the following example, replace `APP_PEM` with the name of the secret. For more information, see "[Authenticating with {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)." +1. Add a step to generate a token, and use that token instead of `GITHUB_TOKEN`. Note that this token will expire after 60 minutes. For example: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} +``` + +{% endjavascript %} + +{% curl %} + +## Getting started using cURL + +### Using cURL in the command line + +{% note %} + +**Note:** If you want to make API requests from the command line, {% data variables.product.prodname_dotcom %} recommends that you use {% data variables.product.prodname_cli %}, which simplifies authentication and requests. For more information about getting started with the REST API using {% data variables.product.prodname_cli %}, see the {% data variables.product.prodname_cli %} version of this article. + +{% endnote %} + +1. Install cURL if cURL isn't already installed on your machine. To check if cURL is installed, execute `curl --version` in the command line. If the output is information about the cURL version, cURL is installed. If you get a message similar to `command not found: curl`, you need to download and install cURL. For more information, see [the cURL project download page](https://curl.se/download.html). +1. Create an access token. For example, create a personal access token (PAT) or a {% data variables.product.prodname_github_app %} user-to-server access token. For more information, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" or "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + + {% warning %} + + **Warning**: Treat your access token like a password. + + {%- ifversion fpt or ghec %} + + To keep your token secure, you can store your token as a {% data variables.product.prodname_codespaces %} secret and use the command line through {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + + You can also use {% data variables.product.prodname_cli %} instead of cURL. {% data variables.product.prodname_cli %} will take care of authentication for you. For more information, see the {% data variables.product.prodname_cli %} version of this page. + + If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. + + {% endwarning %} + +1. Use the `cURL` command to make your request. Pass your token in an `Authorization` header. Replace `YOUR-TOKEN` with your token. + + ```shell + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer YOUR-TOKEN" + ``` + + {% note %} + + **Note:** {% data reusables.getting-started.bearer-vs-token %} + + {% endnote %} + +### Using cURL in {% data variables.product.prodname_actions %} + +You can also use cURL in your {% data variables.product.prodname_actions %} workflows. + +{% data variables.product.prodname_dotcom %} recommends that you use the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +If you are authenticating with a {% data variables.product.prodname_github_app %}, you can create an installation access token within your workflow: + +1. Store your {% data variables.product.prodname_github_app %}'s ID as a secret. In the following example, replace `APP_ID` with the name of the secret. You can find your app ID on the settings page for your app or through the App API. For more information, see "[Apps](/rest/apps/apps#get-an-app)." For more information about secrets, see "[Encrypted secrets](/actions/security-guides/encrypted-secrets)." +1. Generate a private key for your app. Store the contents of the resulting file as a secret. (Store the entire contents of the file, including `-----BEGIN RSA PRIVATE KEY-----` and `-----END RSA PRIVATE KEY-----`.) In the following example, replace `APP_PEM` with the name of the secret. For more information, see "[Authenticating with {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)." +1. Add a step to generate a token, and use that token instead of `GITHUB_TOKEN`. Note that this token will expire after 60 minutes. For example: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## Next steps + +For a more detailed guide, see "[Getting started with the REST API](/rest/guides/getting-started-with-the-rest-api)." diff --git a/translations/ja-JP/content/rest/teams/external-groups.md b/translations/ja-JP/content/rest/teams/external-groups.md index de118fd6e8..b7f0356418 100644 --- a/translations/ja-JP/content/rest/teams/external-groups.md +++ b/translations/ja-JP/content/rest/teams/external-groups.md @@ -19,7 +19,7 @@ miniTocMaxHeadingLevel: 3 **ノート:** -- 外部グループAPIは、{% data variables.product.prodname_emus %}を使用しているEnterpriseの一部であるOrganizationでのみ利用できます。 詳しい情報については「[Enterpriseが管理しているユーザ](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)」を参照してください。 +- External groups APIは、{% data variables.product.prodname_emus %}を使用しているEnterpriseの一部であるOrganizationでのみ利用できます。 詳しい情報については「[Enterpriseが管理しているユーザ](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)」を参照してください。 - OrganizationがTeam同期を使用している場合、Team Synchronization APIが利用できます。 詳しい情報については「[Team synchronization API](#team-synchronization)」を参照してください。 {% endnote %} diff --git a/translations/ja-JP/content/rest/users/index.md b/translations/ja-JP/content/rest/users/index.md index cd57b26e0d..74913338d3 100644 --- a/translations/ja-JP/content/rest/users/index.md +++ b/translations/ja-JP/content/rest/users/index.md @@ -19,5 +19,6 @@ children: - /followers - /gpg-keys - /keys + - /ssh-signing-keys --- diff --git a/translations/ja-JP/content/rest/users/ssh-signing-keys.md b/translations/ja-JP/content/rest/users/ssh-signing-keys.md new file mode 100644 index 0000000000..910254d9df --- /dev/null +++ b/translations/ja-JP/content/rest/users/ssh-signing-keys.md @@ -0,0 +1,13 @@ +--- +title: SSH署名キー +intro: '' +versions: + fpt: '*' + ghes: '>=3.7' + ghec: '*' +topics: + - API +miniTocMaxHeadingLevel: 3 +allowTitleToDifferFromFilename: true +--- + diff --git a/translations/ja-JP/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md b/translations/ja-JP/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md index 8cf626bbd0..88705321ab 100644 --- a/translations/ja-JP/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md +++ b/translations/ja-JP/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md @@ -21,9 +21,9 @@ GitHub を利用する際、数多くの追加製品や機能 (「追加製品 「追加製品および機能」を利用することにより、お客様は以下に挙げた該当する「GitHub 追加製品および機能の利用規約」にも同意することとなります。 A violation of these GitHub Terms for Additional Products and Features is a violation of the Agreement. かぎ括弧に括られた用語のうち、ここで定義されていないものについては、「契約」に示された意味を持つものとします。 **Enterprise ユーザ向け** -- **GitHub Enterprise Cloud** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Codespaces, Dependabot Preview, GitHub Enterprise Importer, Learning Lab, Packages, and Pages. +- **GitHub Enterprise Cloud** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Codespaces, Dependabot Preview, GitHub Enterprise Importer, Packages, and Pages. -- **GitHub Enterprise Server** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Connect, Dependabot Preview, GitHub Enterprise Importer, Learning Lab, Packages, Pages, and SQL Server Images. +- **GitHub Enterprise Server** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Connect, Dependabot Preview, GitHub Enterprise Importer, Packages, Pages, and SQL Server Images. - **GitHub AE** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Connect, Dependabot Preview, GitHub Enterprise Importer, Packages and Pages. @@ -106,19 +106,6 @@ GitHub Copilot (i) may, depending on your preferred telemetry settings, collect ## GitHub Enterprise Importer Importer is a framework for exporting data from other sources to be imported to the GitHub platform. Importer is provided “AS-IS”. -## Learning Lab -GitHub Learning Lab では、GitHub に組み込まれたインタラクティブなコースを無料で提供しており、自動の即時フィードバックやヘルプも備わっています。 - -*コース資料。*GitHubは、自らが提供するコース資料の所有者であり、Learning Labの使用に関連した内部的な業務目的で、かかるコース資料を複製、保守、使用、および実行するための世界的で非独占的、期間限定、譲渡不可の無料ライセンスをお客様に付与します。 - -コース資料で提供されるソースコードの一部には、オープンソースライセンスの条項が適用される場合があります。 - -お客様が作成するコースはお客様が所有し、GitHubに対して、かかるコース資料を複製、保守、使用、および実行するための世界的で非独占的、期間限定、譲渡不可の無料ライセンスをGitHubに付与します。 - -GitHubコースの使用、ならびにお客様ご自身によるコース資料の作成および保管は、いずれかの当事者による相手方の知的所有権の共同所有権を構成するものではありません。 - -「個人データ」の利用には、「[GitHubのプライバシーについての声明](/github/site-policy/github-privacy-statement)」が適用されます。 - ## npm npm はソフトウェアパッケージのホスティングサービスであり、ソフトウェアパッケージをプライベートまたパブリックでホストでき、パッケージをプロジェクト中で依存関係として使えるようになります。 npm はJavaScriptエコシステムのためのレコードのレジストリです。 npm 公開レジストリの利用は無料ですが、プライベートパッケージを公開したり、チームを使用してプライベートパッケージを管理したい場合には有料となります。 [npm ドキュメント](https://docs.npmjs.com/)にはアカウントの種類の制限や、[プライベートパッケージ](https://docs.npmjs.com/about-private-packages)および[Organization](https://docs.npmjs.com/organizations)の管理方法についての詳細が記載されています。 npm registryレジストリの利用規程は、[オープンソース規約](https://www.npmjs.com/policies/open-source-terms)に概説されています。 また、npm [solo](https://www.npmjs.com/policies/solo-plan)と[org](https://www.npmjs.com/policies/orgs-plan)の両方のプランに補足条項があります。 npmの利用には、npm[利用規約](https://www.npmjs.com/policies/terms)が適用されます。 diff --git a/translations/ja-JP/content/site-policy/privacy-policies/github-privacy-statement.md b/translations/ja-JP/content/site-policy/privacy-policies/github-privacy-statement.md index 4fbe56791c..4e30590821 100644 --- a/translations/ja-JP/content/site-policy/privacy-policies/github-privacy-statement.md +++ b/translations/ja-JP/content/site-policy/privacy-policies/github-privacy-statement.md @@ -15,7 +15,7 @@ topics: - Legal --- -Effective date: May 31, 2022 +Effective date: September 1, 2022 Thanks for entrusting GitHub Inc. or GitHub B.V. (“GitHub”, “we”, "us" or "our") with your source code, your projects, and your personal data. This Privacy Statement explains our practices regarding the collection, use, and disclosure of your data, including any personal data we collect and process in connection with our website and any applications, software, products, and services provided by GitHub, including any Beta Previews (collectively “Service”). @@ -25,28 +25,28 @@ Thanks for entrusting GitHub Inc. or GitHub B.V. (“GitHub”, “we”, "us" o ## ショートバージョン -Githubではお客様の個人情報をプライバシーステートメントに記載のとおり使用します。 お客様の所在地や住所、どこの国の市民かに関係なく、出身国や所在地を問わず世界中のすべてのユーザーに対して等しく高水準のプライバシー保護を提供します。 +Githubではお客様の個人情報をプライバシーステートメントに記載のとおり使用します。 No matter where you are, where you live, or what your citizenship is, you have the same high standard of privacy protection when using GitHub's products as all our users around the world, regardless of their country of origin or location. To see our Privacy Notice to residents of California, please go to [GitHub's Notice about the California Consumer Privacy Act](#githubs-notice-to-california-residents) or scroll down. ## 概要 -| セクション | 各セクションの内容 | -| --------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [Who is responsible for the processing of your information](#who-is-responsible-for-the-processing-of-your-information) | Subject to limited exceptions, GitHub is the controller and entity responsible for the processing of your personal data in connection with the Website or Service. | -| [GitHubが収集する情報](#what-information-github-collects) | GitHubは、お客様の登録内容や支払い、取引、ユーザプロフィールから直接情報を収集します。 当社は、また、お客様の同意が必要な場合は同意を得て、自動的に利用情報、クッキー、およびデバイス情報から収集します。 GitHub may also collect personal data from third parties. We only collect the minimum amount of personal data necessary from you, unless you choose to provide more. | -| [当社のお客様情報の利用方法](#how-github-uses-your-information) | In this section, we describe the ways in which we use your information, including to provide you the Service, to communicate with you, for security and compliance purposes, and to improve our Website or Service or develop new features and functionality of our Website or Service. 法令が要求している場合、さらに、お客様の情報を処理する法的な根拠を記載します。 | -| [当社が収集したお客様の情報の共有方法](#how-we-share-the-information-we-collect) | 次のいずれかの場合において、当社はお客様の情報を第三者と共有することがあります。 ・お客様の同意がある場合 ・当社のサービスプロバイダ間と共有する場合 ・セキュリティを目的とする場合 ・当社の法的義務を遵守する必要がある場合 ・事業法人または事業部門について支配者の変更または売却が行われた場合 当社が個人情報を販売することはありません。GitHubでは広告を掲載することもありません。 | -| [Your choices regarding our processing of your personal data](#your-choices-regarding-our-processing-of-your-personal-data) | 当社は、お客様に対して、お客様の個人情報にアクセス、変更または削除する方法を提供します。 | -| [クッキー](#cookies) | We only use strictly necessary cookies to provide, secure, and improve our Website or Service or develop new features and functionality of our Website or Service. 当社は、このクッキーとトラッキングについて透明性の高いページを提供します。 We do not send any information to third-party analytics services. | -| [お客様情報についての当社の保護方法](#how-github-secures-your-information) | We take all measures reasonably necessary to protect the confidentiality, integrity, and availability of your personal data on GitHub and to protect the resilience of our servers. | -| [Communication preferences](#communication-preferences) | 当社は、お客様にemailでご連絡します。 アカウント設定または当社にご連絡いただければ、当社からお客様への方法を管理できます。 | -| [苦情の解決](#resolving-complaints) | 万が一、当社がプライバシーに関する懸念を迅速かつ十分に解決できない場合、当社は紛争解決の方法を提案します。 | -| [プライバシーステートメントの変更](#changes-to-our-privacy-statement) | 当社は、本プライバシーステートメントの重大な変更について当該変更が有効となる30日前に、お客様に通知します。 お客様は、変更を当社のサイトポリシーリポジトリにおいて確認することもできます。 | -| [ライセンス](#license) | 本プライバシーステートメントは、[Creative Commons Zero license](https://creativecommons.org/publicdomain/zero/1.0/)の元でライセンス付与されています。 | -| [GitHubへの連絡](#contacting-github) | 当社のプライバシーステートメントに関するご質問がある場合はお気軽にお問い合わせください。 | -| [翻訳](#translations) | 当社では、一部のプライバシーステートメントの翻訳のリンクを提供しています。 | +| セクション | 各セクションの内容 | +| --------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [Who is responsible for the processing of your information](#who-is-responsible-for-the-processing-of-your-information) | Subject to limited exceptions, GitHub is the controller and entity responsible for the processing of your personal data in connection with the Website or Service if you are in North America. For individuals outside North America the data controller is GitHub B.V. | +| [GitHubが収集する情報](#what-information-github-collects) | GitHubは、お客様の登録内容や支払い、取引、ユーザプロフィールから直接情報を収集します。 当社は、また、お客様の同意が必要な場合は同意を得て、自動的に利用情報、クッキー、およびデバイス情報から収集します。 GitHub may also collect personal data from third parties. We only collect the minimum amount of personal data necessary from you, unless you choose to provide more. | +| [当社のお客様情報の利用方法](#how-github-uses-your-information) | In this section, we describe the ways in which we use your information, including to provide you the Service, to communicate with you, for security and compliance purposes, and to improve our Website or Service or develop new features and functionality of our Website or Service. 法令が要求している場合、さらに、お客様の情報を処理する法的な根拠を記載します。 | +| [当社が収集したお客様の情報の共有方法](#how-we-share-the-information-we-collect) | 次のいずれかの場合において、当社はお客様の情報を第三者と共有することがあります。 ・お客様の同意がある場合 ・当社のサービスプロバイダ間と共有する場合 ・セキュリティを目的とする場合 ・当社の法的義務を遵守する必要がある場合 ・事業法人または事業部門について支配者の変更または売却が行われた場合 当社が個人情報を販売することはありません。GitHubでは広告を掲載することもありません。 | +| [Your choices regarding our processing of your personal data](#your-choices-regarding-our-processing-of-your-personal-data) | 当社は、お客様に対して、お客様の個人情報にアクセス、変更または削除する方法を提供します。 | +| [クッキー](#cookies) | Except for cookies used on our Enterprise Marketing Pages, we only use strictly necessary cookies to provide, secure, and improve our Website or Service or develop new features and functionality of our Website or Service.

As described below, we may use non-essential cookies on certain pages of our website to support our enterprise marketing efforts and market our products and services to enterprise customers, for example on resources.github.com (collectively “Enterprise Marketing Pages”).

We offer a [page](https://github.com/privacy/cookies) that makes all uses of cookies very transparent. | +| [お客様情報についての当社の保護方法](#how-github-secures-your-information) | We take all measures reasonably necessary to protect the confidentiality, integrity, and availability of your personal data on GitHub and to protect the resilience of our servers. | +| [Communication preferences](#communication-preferences) | 当社は、お客様にemailでご連絡します。 アカウント設定または当社にご連絡いただければ、当社からお客様への方法を管理できます。 | +| [苦情の解決](#resolving-complaints) | 万が一、当社がプライバシーに関する懸念を迅速かつ十分に解決できない場合、当社は紛争解決の方法を提案します。 | +| [プライバシーステートメントの変更](#changes-to-our-privacy-statement) | 当社は、本プライバシーステートメントの重大な変更について当該変更が有効となる30日前に、お客様に通知します。 お客様は、変更を当社のサイトポリシーリポジトリにおいて確認することもできます。 | +| [ライセンス](#license) | 本プライバシーステートメントは、[Creative Commons Zero license](https://creativecommons.org/publicdomain/zero/1.0/)の元でライセンス付与されています。 | +| [GitHubへの連絡](#contacting-github) | 当社のプライバシーステートメントに関するご質問がある場合はお気軽にお問い合わせください。 | +| [翻訳](#translations) | 当社では、一部のプライバシーステートメントの翻訳のリンクを提供しています。 | ## GitHubのプライバシーについての声明 @@ -122,13 +122,14 @@ We may use your information to provide, administer, analyze, manage, and operate - Personalization of our Service by understanding you and your preferences to enhance your experience and enjoyment using our Service. - Provide customer support and respond to your questions. - Deliver promotional communications with you about new services, features, offers, promotions, and other information about our Service. +- Personalize and measure the effectiveness of enterprise business ads, promotional communications or marketing you receive related to the Enterprise Marketing Pages. - Send you information, including confirmations, invoices, technical notices, updates, security alerts, support and administrative messages. We combine data we collect from different sources for these purposes and to give you a more seamless, consistent, and personalized experience. ## 当社が収集したお客様の情報の共有方法 -We share personal data with your consent or as necessary to complete your transactions or provide the services you have requested or authorized. In addition, we may share each of the categories of your personal data described above with the types of third parties described below for the following business purposes: +We share personal data as described below, including with your consent or as necessary to complete your transactions or provide the services you have requested or authorized. In addition, we may share each of the categories of your personal data described above with the types of third parties described below for the following business purposes: ### Public information You may select options available through our Service to publicly display and share your name and/or username and certain other information, such as your profile, demographic data, content and files, or geolocation data. For example, if you would like your email address to remain private, even when you’re commenting on public repositories, [you can adjust your setting for your email address to be private in your user profile](https://github.com/settings/emails). You can also [update your local Git configuration to use your private email address](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address). コミットメッセージ内のメールアドレスに関する詳細については、[こちら](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address)を参照してください。 @@ -144,9 +145,9 @@ You can enable or add third-party applications, known as "Developer Products" to You may indicate, through your actions on GitHub, that you are willing to share your personal data. If you collaborate on or become a member of an organization, then its Account owners may receive your personal data. When you accept an invitation to an organization, you will be notified of the types of information owners may be able to see (for more information, see [About Organization Membership](/github/setting-up-and-managing-your-github-user-account/about-organization-membership)). Please contact the Account owners for more information about how they might process your personal data in their Organization and the ways for you to access, update, alter, or delete your personal data stored in the Account. ### サービスプロバイダ -We share your personal data with service providers who process the information on our behalf to provide or improve our Service. For example, our service providers may perform payment processing, customer support ticketing, network data transmission, security, and other similar services. While GitHub processes all personal data in the United States, our service providers may process data outside of the United States or the European Union. Such processing by service providers will be in compliance with applicable law including any relevant transfer mechanism. +We share your personal data with service providers who process the information on our behalf to provide or improve our Service. For example, our service providers may perform payment processing, customer support ticketing, network data transmission, web analytics, marketing operations, security, and other similar services. While GitHub processes all personal data in the United States, our service providers may process data outside of the United States or the European Union. Such processing by service providers will be in compliance with applicable law including any relevant transfer mechanism. - ### Affiliates We enable access to personal data across our subsidiaries, affiliates, and related companies, for example, where we share common data systems or where access is needed to operate and provide the Service. + ### Affiliates We enable access to personal data across our subsidiaries, affiliates, and related companies, for example, where we share common data systems, when affiliates provide services on our behalf, or where access is needed to operate and provide the Service. ### セキュリティを目的とする場合 We will disclose personal data if we believe it is necessary to: @@ -171,7 +172,7 @@ We *do not* sell your personal data for monetary or other consideration as defin ## Your choices regarding our processing of your personal data We provide choices about the personal data we collect about you. The choices you make will not apply to any personal data associated with an Organization under your Account. -Access, correction, and deletion. If you're a GitHub user, you may access, update, alter, or delete your basic user profile information by [editing your user profile](https://github.com/settings/profile) or contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). 当社がお客様について収集する情報は、プロフィールに掲載する情報を限定する、お客様の情報を最新に保つ、または[GitHub Support](https://support.github.com/contact)もしくは[GitHubPremium Support](https://enterprise.githubsupport.com/hc/en-us)に連絡することにより管理できます。 +Access, correction, and deletion. If you're a GitHub user, you may access, update, alter, or delete your basic user profile information by [editing your user profile](https://github.com/settings/profile) or contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). You can control the information we collect about you by limiting what information is in your profile, by keeping your information current, by changing your cookie preferences, or by contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). We retain and use your information as described in this Privacy Statement, but barring legal requirements, we will delete your full profile within 90 days of your request. アカウントが削除された後でも、他のユーザのリポジトリへのコントリビューションおよび他のIssueのコメントなどの一定のデータは残存します。 However, we will delete or de-identify your personal data, including your username and email address, from the author field of issues, pull requests, and comments by associating them with a ghost user. That said, the email address you have provided via your Git commit settings will always be associated with your commits in the Git system. メールアドレスを非公開にする場合、Gitコミット設定もアップデートする必要があります。 当社は、Gitコミット履歴のデータを変更または削除することはできません。Gitソフトウェアは記録を保持する設計になっています。ただし、当社は、お客様がその記録に入力する情報を管理できるようにします。 @@ -208,13 +209,65 @@ We rely on different lawful bases for collecting and processing personal data ab ### Cookies and tracking technologies -GitHub uses cookies to provide, secure and improve our Service or to develop new features and functionality of our Service. For example, we use them to keep you logged in, remember your preferences, identify your device for security purposes, compile statistical reports, and provide information for future development of GitHub. We use our own cookies and do not use any third-party service providers in this context. If you disable your browser or device’s ability to accept these cookies, you will not be able to log in or use our Service. [GitHub上のクッキー](/github/site-policy/github-subprocessors-and-cookies#cookies-on-github)については、[GitHubの当社のサブプロセッサーおよびクッキー](/github/site-policy/github-subprocessors-and-cookies)のページで、当社が設定するクッキー、クッキーの必要性、およびクッキーの有効期限について詳しく説明しています。 +GitHub uses cookies to provide, secure and improve our Service or to develop new features and functionality of our Service. For example, we use them to (i) keep you logged in, (ii) remember your preferences, (iii) identify your device for security and fraud purposes, including as needed to maintain the integrity of our Service, (iv) compile statistical reports, and (v) provide information and insight for future development of GitHub. We provide more information about [cookies on GitHub](https://github.com/privacy/cookies) that describes the cookies we set, the needs we have for those cookies, and the expiration of such cookies. + +For Enterprise Marketing Pages, we may also use non-essential cookies to (i) gather information about enterprise users’ interests and online activities to personalize their experiences, including by making the ads, content, recommendations, and marketing seen or received more relevant and (ii) serve and measure the effectiveness of targeted advertising and other marketing efforts. If you disable the non-essential cookies on the Enterprise Marketing Pages, the ads, content, and marketing you see may be less relevant. Our emails to users may contain a pixel tag, which is a small, clear image that can tell us whether or not you have opened an email and what your IP address is. We use this pixel tag to make our email communications more effective and to make sure we are not sending you unwanted email. -### DNT +The length of time a cookie will stay on your browser or device depends on whether it is a “persistent” or “session” cookie. Session cookies will only stay on your device until you stop browsing. Persistent cookies stay until they expire or are deleted. The expiration time or retention period applicable to persistent cookies depends on the purpose of the cookie collection and tool used. You may be able to delete cookie data as described here. + +#### What are cookies and similar technologies? + +We use cookies and similar technologies, such as web beacons, local storage, and mobile analytics, to operate and provide our Services. When visiting Enterprise Marketing Pages, like resources.github.com, these and additional cookies, like advertising IDs, may be used for sales and marketing purposes. + +Cookies are small text files stored by your browser on your device. A cookie can later be read when your browser connects to a web server in the same domain that placed the cookie. The text in a cookie contains a string of numbers and letters that may uniquely identify your device and can contain other information as well. This allows the web server to recognize your browser over time, each time it connects to that web server. + +Web beacons are electronic images (also called “single-pixel” or “clear GIFs”) that are contained within a website or email. When your browser opens a webpage or email that contains a web beacon, it automatically connects to the web server that hosts the image (typically operated by a third party). This allows that web server to log information about your device and to set and read its own cookies. In the same way, third-party content on our websites (such as embedded videos, plug-ins, or ads) results in your browser connecting to the third-party web server that hosts that content. + +Mobile identifiers for analytics can be accessed and used by apps on mobile devices in much the same way that websites access and use cookies. When visiting Enterprise Marketing pages, like resources.github.com, on a mobile device these may allow us and our third-party analytics and advertising partners to collect data for sales and marketing purposes. + +We may also use so-called “flash cookies” (also known as “Local Shared Objects” or “LSOs”) to collect and store information about your use of our Services. Flash cookies are commonly used for advertisements and videos. + +#### How do we and our partners use cookies and similar technologies? + +The GitHub Services use cookies and similar technologies for a variety of purposes, including to store your preferences and settings, enable you to sign-in, analyze how our Services perform, track your interaction with the Services, develop inferences, combat fraud, and fulfill other legitimate purposes. Some of these cookies and technologies may be provided by third parties, including service providers and advertising partners. For example, our analytics and advertising partners may use these technologies in our Services to collect personal information (such as the pages you visit, the links you click on, and similar usage information, identifiers, and device information) related to your online activities over time and across Services for various purposes, including targeted advertising. GitHub will place non-essential cookies on pages where we market products and services to enterprise customers, for example, on resources.github.com. + +We and/or our partners also share the information we collect or infer with third parties for these purposes. + +The table below provides additional information about how we use different types of cookies: + +| 目的 | 説明 | +|:---------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Required Cookies | GitHub uses required cookies to perform essential website functions and to provide the services. For example, cookies are used to log you in, save your language preferences, provide a shopping cart experience, improve performance, route traffic between web servers, detect the size of your screen, determine page load times, improve user experience, and for audience measurement. These cookies are necessary for our websites to work. | +| 分析 | We allow third parties to use analytics cookies to understand how you use our websites so we can make them better. For example, cookies are used to gather information about the pages you visit and how many clicks you need to accomplish a task. We also use some analytics cookies to provide personalized advertising. | +| Social Media | GitHub and third parties use social media cookies to show you ads and content based on your social media profiles and activity on GitHub’s websites. This ensures that the ads and content you see on our websites and on social media will better reflect your interests. This also enables third parties to develop and improve their products, which they may use on websites that are not owned or operated by GitHub. | +| Advertising | In addition, GitHub and third parties use advertising cookies to show you new ads based on ads you've already seen. Cookies also track which ads you click or purchases you make after clicking an ad. This is done both for payment purposes and to show you ads that are more relevant to you. For example, cookies are used to detect when you click an ad and to show you ads based on your social media interests and website browsing history. | + +#### What are your cookie choices and controls? + + You have several options to disable non-essential cookies: + + 1. **Specifically on GitHub Enterprise Marketing Pages** + + Any GitHub page that serves non-essential cookies will have a link in the page’s footer to cookie settings. You can express your preferences at any time by clicking on that linking and updating your settings. + + Some users will also be able to manage non-essential cookies via a cookie consent banner, including the options to accept, manage, and reject all non-essential cookies. + 2. **Generally for all websites** + + You can control the cookies you encounter on the web using a variety of widely-available tools. 例: + - If your browser sends a [Do Not Track](https://en.wikipedia.org/wiki/Do_Not_Track) (DNT) signal, GitHub will not set non-essential cookies and will not load third party resources which set non-essential cookies. + - Many browsers provide cookie controls which may limit the types of cookies you encounter online. Check out the documentation for your browser to learn more. + - If you enable a browser extension designed to block tracking, such as [Privacy Badger](https://en.wikipedia.org/wiki/Privacy_Badger), non-essential cookies set by a website or third parties may be disabled. + - If you enable a browser extension designed to block unwanted content, such as [uBlock Origin](https://en.wikipedia.org/wiki/UBlock_Origin), non-essential cookies will be disabled to the extent that content that sets non-essential cookies will be blocked. + - Advertising controls. Our advertising partners may participate in associations that provide simple ways to opt out of ad targeting, which you can access at: + - United States: [NAI](http://optout.networkadvertising.org) and [DAA](http://optout.aboutads.info/) + - Canada: [Digital Advertising Alliance of Canada](https://youradchoices.ca/) + - Europe: [European Digital Advertising Alliance](http://www.youronlinechoices.com/) + + These choices are specific to the browser you are using. If you access our Services from other devices or browsers, take these actions from those systems to ensure your choices apply to the data collected when you use those systems. + -「[Do Not Track](https://www.eff.org/issues/do-not-track)」(DNT) とは、オンラインサービスに対して、第三者のトラッキングサービスからお客様のオンライン活動についての特定の種類の情報を収集して共有することを望まない場合に、ブラウザで設定できるプライバシー設定です。 GitHubは、ブラウザのDNTシグナルに応答し、[DNTシグナルへの応答についてのW3C基準](https://www.w3.org/TR/tracking-dnt/)に従います。 トラッキングを望まないことを通知するようブラウザに対して設定したい場合、この通知を有効化する方法について、ブラウザのドキュメントをご確認ください。 [Privacy Badger](https://privacybadger.org/)など、トラッキングをブロックする良いアプリケーションもあります。 ## Retention of personal data We retain personal data for as long as necessary to provide the services and fulfill the transactions you have requested, comply with our legal obligations, resolve disputes, enforce our agreements, and other legitimate and lawful business purposes. Because these needs can vary for different data types in the context of different services, actual retention periods can vary significantly based on criteria such as user expectations or consent, the sensitivity of the data, the availability of automated controls that enable users to delete data, and our legal or contractual obligations. For example, we may retain your personal data for longer periods, where necessary, subject to applicable law, for security purposes. @@ -238,15 +291,11 @@ GitHub processes personal data both inside and outside of the United States and ### 苦情の解決 If you have concerns about the way GitHub is handling your personal data, please let us know immediately. 当社はお客様を手助けしたいと考えています。 お客様は、[プライバシー連絡フォーム](https://support.github.com/contact/privacy)に記入することで、当社に連絡できます。 You may also email us directly at **(privacy [at] github [dot] com)** with the subject line "Privacy Concerns." 当社は、遅くとも45日以内に速やかに返信します。 -お客様は、当社のデータ保護責任者に直接連絡することもできます。 +You may also contact our Data Protection Officer directly at at **github [at]dp-officer [dot] com** -| 当社の米国本社 | 当社のEU事務所 | -| --------------------------------- | --------------------------------- | -| GitHub Data Protection Officer | GitHub BV | -| 88 Colin P. Kelly Jr. St. | Vijzelstraat 68-72 | -| San Francisco, CA 94107 | 1017 HL Amsterdam | -| 米国 | The Netherlands | -| **privacy [at] github [dot] com** | **privacy [at] github [dot] com** | +**If you are in North America:**
GitHub Data Protection Officer
88 Colin P. Kelly Jr. St.
San Francisco, CA 94107
United States
**privacy [at] github [dot] com**
+ +**If you are outside of North America:**
Github Data Protection Officer
c/o DP Dock DPO Services GmbH,
Attn: GitHub BV, Gut Projensdorf,
24161 Altenholz, Germany
github@dp-officer.com cc: **privacy [at] github [dot] com**
CC: GitHub BV, Vijzelstraat 68-72, 1017 HL Amsterdam, The Netherlands ### 紛争解決プロセス @@ -298,7 +347,7 @@ We use the categories of personal information described above for the purposes l CCPAの下では、カリフォルニア州住民の個人情報を他者に販売する企業は、1) 個人情報を他者に販売する前にカリフォルニア州住民に通知する義務があり、2) カリフォルニア州住民に個人情報の販売をオプトアウトする権利を与える義務があります。 GitHub does not sell personal information, including personal information of anyone under 16 years old. ### CCPAに基づくあなたの権利 -CCPAは、カリフォルニア州住民に、個人情報に関する特定の権利を付与します。 この権利に基づく請求を提出するには、[連絡フォーム](https://support.github.com/contact?tags=docs-policy)からご連絡ください。 +CCPAは、カリフォルニア州住民に、個人情報に関する特定の権利を付与します。 To submit a request based on these rights, please contact us via our [contact form](https://support.github.com/contact?tags=docs-policy). diff --git a/translations/ja-JP/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md b/translations/ja-JP/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md index 0e514db1d1..ea2b21b52f 100644 --- a/translations/ja-JP/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md +++ b/translations/ja-JP/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md @@ -14,74 +14,23 @@ topics: - Legal --- -発効日:**2021年4月2日** +Effective date: **September 1, 2022** -{% note %} - -**Note:** Changes to the list of cookies on this page are currently pending. - -{% endnote %} GitHubは、お客様のデータを当社が利用する方法、お客様のデータを当社が収集する方法、およびお客様のデータを共有する対象について、高い透明性を提供します。 この目的のため、[当社のサブプロセッサ](#github-subprocessors)および[クッキー](#cookies-on-github)の使用方法ついて説明するページをご用意しました。 ## GitHubのサブプロセッサ -当社がお客様の情報を、ベンダーやサービスプロバイダなどのサードパーティーのサブプロセッサと共有する場合、それについては当社が責任を負います。 新たなベンダーとのやり取りを行う際に、当社はお客様の信頼を維持するため努力し、全てのベンダーに対して、 ユーザの個人情報 ([プライバシーについての声明](/articles/github-privacy-statement/)の定義による) に関する取り扱いを制限する、データ保護契約を締結するよう要求しています。 You can sign up to receive subprocessor list updates [here](https://www.github.com/privacy/subprocessors). +当社がお客様の情報を、ベンダーやサービスプロバイダなどのサードパーティーのサブプロセッサと共有する場合、それについては当社が責任を負います。 新たなベンダーとのやり取りを行う際に、当社はお客様の信頼を維持するため努力し、全てのベンダーに対して、 ユーザの個人情報 ([プライバシーについての声明](/articles/github-privacy-statement/)の定義による) に関する取り扱いを制限する、データ保護契約を締結するよう要求しています。 -| サブプロセッサ名 | 処理の内容 | 処理の場所 | 会社所在地 | -|:------------------------ |:--------------------------------- |:----- |:----- | -| Automattic | ブログサービス | 米国 | 米国 | -| AWS Amazon | データのホスティング | 米国 | 米国 | -| Braintree (PayPal) | プランのクレジットカード決済処理業者 | 米国 | 米国 | -| Clearbit | マーケティングデータのエンリッチメントサービス | 米国 | 米国 | -| Discourse | コミュニティフォーラムのソフトウェアプロバイダ | 米国 | 米国 | -| Eloqua | マーケティングキャンペーンの自動化 | 米国 | 米国 | -| Google Apps | 社内インフラストラクチャ | 米国 | 米国 | -| MailChimp | 顧客チケットメールサービスプロバイダ | 米国 | 米国 | -| Mailgun | トランザクションメールサービスプロバイダ | 米国 | 米国 | -| Microsoft | マイクロソフトサービス | 米国 | 米国 | -| Nexmo | SMS通知プロバイダ | 米国 | 米国 | -| Salesforce.com | 顧客関係管理 | 米国 | 米国 | -| Sentry.io | アプリケーション監視プロバイダ | 米国 | 米国 | -| Stripe | 決済プロバイダ | 米国 | 米国 | -| Twilio & Twilio Sendgrid | SMS通知プロバイダおよびトランザクションメールサービスプロバイダ | 米国 | 米国 | -| Zendesk | カスタマーサポートのチケットシステム | 米国 | 米国 | -| Zuora | 企業課金システム | 米国 | 米国 | +When we bring on a new subprocessor who handles our Users' Personal Information, or remove a subprocessor, or we change how we use a subprocessor, we will update the list of subprocessors. You can view the current list of subprocessors, and sign up to receive subprocessor list updates, at [https://www.github.com/privacy/subprocessors](https://www.github.com/privacy/subprocessors). -当社ユーザの個人情報を取り扱う新たなサブプロセッサとやり取りを始める際、サブプロセッサと解約する際、およびサブプロセッサの利用方法を変更する際は、このページを更新します。 新たなサブプロセッサについての質問や懸念がある場合は、 {% data variables.contact.contact_privacy %}からお気軽にお問い合わせください。 +新たなサブプロセッサについての質問や懸念がある場合は、 {% data variables.contact.contact_privacy %}からお気軽にお問い合わせください。 ## GitHubのCookie ウェブサイトを提供および保護し、ウェブサイトの利用状況を分析して優れたユーザエクスペリエンスを提供するために、GitHubはクッキーを使用します。 クッキーに関する詳細な情報や、その使用方法と理由について知りたい場合は、当社の[プライバシーについての声明](/github/site-policy/github-privacy-statement#our-use-of-cookies-and-tracking)を参照してください。 -クッキーの数や名前は変わることがあるため、以下の表も適時更新されることがあります。 - -| サービスプロバイダ | クッキーの名前 | 説明 | 有効期限* | -|:--------- |:------------------------------------ |:----------------------------------------------------------------------------------- |:---------------------------- | -| GitHub | `app_manifest_token` | このクッキーは、リダイレクト中のユーザセッションをフェッチし、フローの状態を維持するため、App Manifestフロー中に使用されます。 | 5分間 | -| GitHub | `color_mode` | このクッキーは、ユーザが選択したテーマ設定を示すために使用されます。 | セッション | -| GitHub | `_device_id` | このクッキーは、セキュリティ上の目的により、認識されたデバイスを追跡するために使用されます。 | 1年間 | -| GitHub | `dotcom_user` | このクッキーは、ユーザがすでにログインしていることを当社に通知するために使用されます。 | 1年間 | -| GitHub | `_gh_ent` | このクッキーは、お客様が複数のステップのうちどのステップにあるのかなど、一時アプリケーションおよびフレームワークにおけるページ間での状態を記録するために使用されます。 | 2週間 | -| GitHub | `_gh_sess` | このクッキーは、ユーザが複数のステップのうちどのステップにあるのかなど、一時アプリケーションおよびフレームワークにおけるページ間での状態を記録するために使用されます。 | セッション | -| GitHub | `gist_oauth_csrf` | このクッキーは、OAuthフローを開始したユーザが、それを完了したユーザと同一であることを保証するために、Gistによって設定されます。 | OAuth state の検証後に削除 | -| GitHub | `gist_user_session` | このクッキーは、別のホストで実行されている場合にGistによって使用されます。 | 2週間 | -| GitHub | `has_recent_activity` | このクッキーは、アプリケーションに最近アクセスしたユーザにセキュリティインタースティシャルを表示させないために使用されます。 | 1時間 | -| GitHub | `__Host-gist_user_session_same_site` | このクッキーは、SameSiteクッキーをサポートするブラウザが、リクエストがGitHubから発信されているかどうかを確認できるように設定されます。 | 2週間 | -| GitHub | `__Host-user_session_same_site` | このクッキーは、SameSiteクッキーをサポートするブラウザが、リクエストがGitHubから発信されているかどうかを確認できるように設定されます。 | 2週間 | -| GitHub | `logged_in` | このクッキーは、ユーザがすでにログインしていることを当社に通知するために使用されます。 | 1年間 | -| GitHub | `marketplace_repository_ids` | このクッキーは、Marketplaceのインストールフローに使用されます。 | 1時間 | -| GitHub | `marketplace_suggested_target_id` | このクッキーは、Marketplaceのインストールフローに使用されます。 | 1時間 | -| GitHub | `_octo` | このクッキーは、動的コンテンツのキャッシング、条件付き機能へのアクセス、サポートリクエストのメタデータ、ファーストパーティ分析などのセッション管理に使用されます。 | 1年間 | -| GitHub | `org_transform_notice` | このクッキーは、Organizationの変換時に通知を行うために使用されます。 | 1時間 | -| GitHub | `private_mode_user_session` | このクッキーは、Enterprise認証リクエストに使用されます。 | 2週間 | -| GitHub | `saml_csrf_token` | このクッキーは、トークンをクライアントに関連付けるために、SAML認証パスメソッドによって設定されます。 | ユーザがブラウザを閉じるか、認証リクエストを完了するまで | -| GitHub | `saml_csrf_token_legacy` | このクッキーは、トークンをクライアントに関連付けるために、SAML認証パスメソッドによって設定されます。 | ユーザがブラウザを閉じるか、認証リクエストを完了するまで | -| GitHub | `saml_return_to` | このクッキーは、SAML認証ループ時に、状態を維持するためSAML認証パスメソッドによって設定されます。 | ユーザがブラウザを閉じるか、認証リクエストを完了するまで | -| GitHub | `saml_return_to_legacy` | このクッキーは、SAML認証ループ時に、状態を維持するためSAML認証パスメソッドによって設定されます。 | ユーザがブラウザを閉じるか、認証リクエストを完了するまで | -| GitHub | `tz` | このクッキーを使用すると、タイムゾーンに合わせてタイムスタンプをカスタマイズできます。 | セッション | -| GitHub | `user_session` | このクッキーはログインに使用されます。 | 2週間 | - -_*_ 以下に挙げるクッキーの**有効期限**日は通常、随時適用されます。 +You can view the current list of cookies on GitHub, and sign up to receive cookie list updates, at [https://github.com/privacy/cookies](https://github.com/privacy/cookies). (!) 当社は第三者によるクッキーの使用を、外部コンテンツをレンダリングする際に必要な外部機能を提供するために必要なものに限って使用していますが、当社の特定のページにおいては第三者によるその他のクッキーが設置される場合があります。 たとえば、クッキーを設定するサイトから、動画などのコンテンツを埋め込むことがあります。 第三者のクッキーは最小限に保つよう努めていますが、当社は第三者のコンテンツが設定するクッキーを常に管理できるわけではありません。 diff --git a/translations/ja-JP/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md b/translations/ja-JP/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md index facad55b14..1824ba49a9 100644 --- a/translations/ja-JP/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md +++ b/translations/ja-JP/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md @@ -25,7 +25,7 @@ shortTitle: Sponsor a contributor You can sponsor an account on behalf of your personal account to invest in projects that you personally benefit from. Organization に代わってアカウントをスポンサーできますが、それには多くの理由があります。 - Organization の作業が依存する特定のライブラリを維持する -- Organization として依存しているエコシステム (たとえばブロックチェーン) に投資する +- Investing in the ecosystem you rely on as an organization (such as blockchain) - オープンソースを大切にする Organization としてブランド認知度を確立する - Organization が提供する製品を補完するライブラリを構築しているオープンソース開発者に感謝する diff --git a/translations/ja-JP/data/features/actions-hosted-runners.yml b/translations/ja-JP/data/features/actions-hosted-runners.yml new file mode 100644 index 0000000000..fcc88d707d --- /dev/null +++ b/translations/ja-JP/data/features/actions-hosted-runners.yml @@ -0,0 +1,5 @@ +#Reference: #6458 +#Larger GitHub-hosted runners +versions: + fpt: '*' + ghec: '*' diff --git a/translations/ja-JP/data/features/actions-oidc-hardening-config.yml b/translations/ja-JP/data/features/actions-oidc-hardening-config.yml new file mode 100644 index 0000000000..f3048bac8b --- /dev/null +++ b/translations/ja-JP/data/features/actions-oidc-hardening-config.yml @@ -0,0 +1,6 @@ +#Reference: #7336 +#General versioning for oidc hardening options +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' diff --git a/translations/ja-JP/data/features/code-scanning-exclude-queries-from-analysis.yml b/translations/ja-JP/data/features/code-scanning-exclude-queries-from-analysis.yml new file mode 100644 index 0000000000..2157533a6d --- /dev/null +++ b/translations/ja-JP/data/features/code-scanning-exclude-queries-from-analysis.yml @@ -0,0 +1,7 @@ +#Issue 7617 +#Users can easily exclude CodeQL queries from code scanning analyses - [GA] +versions: + fpt: '*' + ghec: '*' + ghes: '>3.6' + ghae: 'issue-7617' diff --git a/translations/ja-JP/data/features/dependabot-alerts-dismissal-comment.yml b/translations/ja-JP/data/features/dependabot-alerts-dismissal-comment.yml new file mode 100644 index 0000000000..e2c2294cea --- /dev/null +++ b/translations/ja-JP/data/features/dependabot-alerts-dismissal-comment.yml @@ -0,0 +1,6 @@ +#Reference: Issue #7673 - Dependabot alerts: optional comment with dismissal - [GA] +versions: + fpt: '*' + ghec: '*' + ghes: '>3.6' + ghae: 'issue-7673' diff --git a/translations/ja-JP/data/features/dependabot-alerts-vulnerable-calls.yml b/translations/ja-JP/data/features/dependabot-alerts-vulnerable-calls.yml index 84825c368b..a7f772a7c5 100644 --- a/translations/ja-JP/data/features/dependabot-alerts-vulnerable-calls.yml +++ b/translations/ja-JP/data/features/dependabot-alerts-vulnerable-calls.yml @@ -3,5 +3,4 @@ versions: fpt: '*' ghec: '*' - ghes: '>3.5' ghae: 'issue-6076' diff --git a/translations/ja-JP/data/features/dependency-review-action-ghes.yml b/translations/ja-JP/data/features/dependency-review-action-ghes.yml new file mode 100644 index 0000000000..2d8bca37f3 --- /dev/null +++ b/translations/ja-JP/data/features/dependency-review-action-ghes.yml @@ -0,0 +1,4 @@ +#Reference: Issue #7753 Dependency review action has shipped with GHES 3.6 and needs admin docs +versions: + ghes: '>3.5' + ghae: 'issue-7753' diff --git a/translations/ja-JP/data/features/enterprise-namespace-repo-setting.yml b/translations/ja-JP/data/features/enterprise-namespace-repo-setting.yml new file mode 100644 index 0000000000..e20549f3ea --- /dev/null +++ b/translations/ja-JP/data/features/enterprise-namespace-repo-setting.yml @@ -0,0 +1,6 @@ +#Reference: #7757 +#Setting to disable personal namespace repo creation for EMUs, GHES 3.7+ and GHAE 3.7+ users +versions: + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7757' diff --git a/translations/ja-JP/data/features/ip-allow-list-address-check.yml b/translations/ja-JP/data/features/ip-allow-list-address-check.yml new file mode 100644 index 0000000000..c4dda87a70 --- /dev/null +++ b/translations/ja-JP/data/features/ip-allow-list-address-check.yml @@ -0,0 +1,3 @@ +versions: + ghec: '*' + ghae: 'issue-7818' diff --git a/translations/ja-JP/data/features/multiple-accounts-one-workstation.yml b/translations/ja-JP/data/features/multiple-accounts-one-workstation.yml new file mode 100644 index 0000000000..9fce93b34e --- /dev/null +++ b/translations/ja-JP/data/features/multiple-accounts-one-workstation.yml @@ -0,0 +1,5 @@ +#Issue #7330 +#Documentation for managing multiple GitHub accounts on one workstation +versions: + fpt: '*' + ghec: '*' diff --git a/translations/ja-JP/data/features/packages-npm-v2.yml b/translations/ja-JP/data/features/packages-npm-v2.yml new file mode 100644 index 0000000000..572e412e4a --- /dev/null +++ b/translations/ja-JP/data/features/packages-npm-v2.yml @@ -0,0 +1,5 @@ +#Issue 7039 +#npm Package Registry Improvements (v2) GA +versions: + fpt: '*' + ghec: '*' diff --git a/translations/ja-JP/data/features/push-protection-custom-link-orgs-beta.yml b/translations/ja-JP/data/features/push-protection-custom-link-orgs-beta.yml new file mode 100644 index 0000000000..509caa9fb4 --- /dev/null +++ b/translations/ja-JP/data/features/push-protection-custom-link-orgs-beta.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links beta flags +#See "push-protection-custom-link-orgs" for the feature +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/ja-JP/data/features/push-protection-custom-link-orgs.yml b/translations/ja-JP/data/features/push-protection-custom-link-orgs.yml new file mode 100644 index 0000000000..fce23efa96 --- /dev/null +++ b/translations/ja-JP/data/features/push-protection-custom-link-orgs.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links +#See "push-protection-custom-link-orgs-beta" for the beta flags +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/ja-JP/data/features/ssh-commit-verification.yml b/translations/ja-JP/data/features/ssh-commit-verification.yml new file mode 100644 index 0000000000..7851b1c8b7 --- /dev/null +++ b/translations/ja-JP/data/features/ssh-commit-verification.yml @@ -0,0 +1,8 @@ +#Reference: github/docs-content#6709 +#Initial docs for showing SSH signed commits as verified and +#uploading SSH signing keys +versions: + fpt: '*' + ghec: '*' + ghes: '>= 3.7' + ghae: '*' diff --git a/translations/ja-JP/data/features/streaming-datadog.yml b/translations/ja-JP/data/features/streaming-datadog.yml new file mode 100644 index 0000000000..ab90546c8d --- /dev/null +++ b/translations/ja-JP/data/features/streaming-datadog.yml @@ -0,0 +1,4 @@ +#Reference #7495 +#Documentation for audit log streaming to a Datadog endpoint +versions: + ghec: '*' diff --git a/translations/ja-JP/data/graphql/ghec/graphql_upcoming_changes.public.yml b/translations/ja-JP/data/graphql/ghec/graphql_upcoming_changes.public.yml index f202844a78..4973103e87 100644 --- a/translations/ja-JP/data/graphql/ghec/graphql_upcoming_changes.public.yml +++ b/translations/ja-JP/data/graphql/ghec/graphql_upcoming_changes.public.yml @@ -996,7 +996,7 @@ upcoming_changes: owner: lukewar - location: ProjectView.groupedItems - description: '`groupedItems` will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement.' + description: '`groupedItems`は削除されます。適切な置き換えを見つけるには、https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/ にあるProjectV2ガイドに従ってください。' reason: '`ProjectNext`は、より多機能な`ProjectV2`に置き換えられて非推奨になりました。' date: '2022-10-01T00:00:00+00:00' criticality: 破壊的 diff --git a/translations/ja-JP/data/graphql/graphql_upcoming_changes.public.yml b/translations/ja-JP/data/graphql/graphql_upcoming_changes.public.yml index f202844a78..4973103e87 100644 --- a/translations/ja-JP/data/graphql/graphql_upcoming_changes.public.yml +++ b/translations/ja-JP/data/graphql/graphql_upcoming_changes.public.yml @@ -996,7 +996,7 @@ upcoming_changes: owner: lukewar - location: ProjectView.groupedItems - description: '`groupedItems` will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement.' + description: '`groupedItems`は削除されます。適切な置き換えを見つけるには、https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/ にあるProjectV2ガイドに従ってください。' reason: '`ProjectNext`は、より多機能な`ProjectV2`に置き換えられて非推奨になりました。' date: '2022-10-01T00:00:00+00:00' criticality: 破壊的 diff --git a/translations/ja-JP/data/learning-tracks/admin.yml b/translations/ja-JP/data/learning-tracks/admin.yml index a7aa266e92..23816673a1 100644 --- a/translations/ja-JP/data/learning-tracks/admin.yml +++ b/translations/ja-JP/data/learning-tracks/admin.yml @@ -120,6 +120,7 @@ configure_github_advanced_security: - /admin/advanced-security/about-licensing-for-github-advanced-security - /admin/advanced-security/enabling-github-advanced-security-for-your-enterprise - /admin/advanced-security/configuring-code-scanning-for-your-appliance + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance - /admin/advanced-security/configuring-secret-scanning-for-your-appliance - /admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise diff --git a/translations/ja-JP/data/release-notes/enterprise-server/3-2/18.yml b/translations/ja-JP/data/release-notes/enterprise-server/3-2/18.yml new file mode 100644 index 0000000000..0355db5ed3 --- /dev/null +++ b/translations/ja-JP/data/release-notes/enterprise-server/3-2/18.yml @@ -0,0 +1,16 @@ +date: '2022-08-30' +sections: + bugs: + - 重複したSSHキーがManagement Consoleと`/home/admin/.ssh/authorized_keys`ファイルの両方に現れることがあります。 + - スレッドセーフではないにもかかわらず並行に使われたライブラリのために、バックグラウンドタスクが停止する場合があります。 + changes: + - 並列化されたログのサニタイズの結果、Support Bundleの生成が速くなりました。Support Bundleに関する詳しい情報については「[GitHub Supportへのデータ提供](/support/contacting-github-support/providing-data-to-github-support)」を参照してください。 + known_issues: + - 新しくセットアップされたユーザを持たない{% data variables.product.prodname_ghe_server %}インスタンスで、攻撃者が最初の管理ユーザを作成できました。 + - アップグレードの過程で、カスタムのファイアウォールのルールが削除されます。 + - Git LFSが追跡するファイル[Webインターフェースからアップロードされたもの](https://github.com/blog/2105-upload-files-to-your-repositories)が、不正にリポジトリに直接追加されてしまいます。 + - 同じリポジトリ内のファイルパスが255文字を超えるblobへのパーマリンクを含むIssueをクローズできませんでした。 + - '{% data variables.product.prodname_github_connect %}で"Users can search GitHub.com(ユーザはGitHub.comの検索が可能)" が有効化されたとき、プライベート及びインターナルリポジトリのIssueが{% data variables.product.prodname_dotcom_the_website %}の検索結果に含まれません。' + - '{% data variables.product.prodname_registry %}のnpmレジストリは、メタデータのレスポンス中で時間の値を返さなくなります。これは、大きなパフォーマンス改善のために行われました。メタデータレスポンスの一部として時間の値を返すために必要なすべてのデータは保持し続け、既存のパフォーマンスの問題を解決した将来に、この値を返すことを再開します。' + - pre-receive フックの処理に固有のリソース制限によって、pre-receive フックに失敗するものが生じることがあります。 + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/ja-JP/data/release-notes/enterprise-server/3-3/13.yml b/translations/ja-JP/data/release-notes/enterprise-server/3-3/13.yml new file mode 100644 index 0000000000..1c2f2ee385 --- /dev/null +++ b/translations/ja-JP/data/release-notes/enterprise-server/3-3/13.yml @@ -0,0 +1,23 @@ +date: '2022-08-30' +sections: + bugs: + - リポジトリを一時的なアクセスのためにロック解除したあと、サイト管理者はそのリポジトリ中のセキュリティ製品の設定を管理できませんでした。 + - 重複したSSHキーがManagement Consoleと`/home/admin/.ssh/authorized_keys`ファイルの両方に現れることがあります。 + - '`ghe-cluster-config-apply`を実行すると、クラスタ内の既存ノードに空の設定がレプリケーションされることがありました。' + - '`ghe-config-apply`で開始された設定の実行か完了しなかったり、あるいは`Container count mismatch`エラーを返したりすることがありました。' + - GitHub Enterprise Serverインスタンス上の自己署名TLS署名書を更新したあと、Webインターフェースの一部のページのUI要素が表示されませんでした。 + - スレッドセーフではないにもかかわらず並行に使われたライブラリのために、バックグラウンドタスクが停止する場合があります。 + changes: + - 並列化されたログのサニタイズの結果、Support Bundleの生成が速くなりました。Support Bundleに関する詳しい情報については「[GitHub Supportへのデータ提供](/support/contacting-github-support/providing-data-to-github-support)」を参照してください。 + - 'Enterprise Audit logには、`project.create`といったより多くのユーザ生成イベントが含まれるようになりました。REST APIも、`repo.create`といった追加のユーザ生成イベントを返します。詳しい情報については「[EnterpriseのAudit logへのアクセス](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)」及び「[EnterpriseでのAudit log APIの利用](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)」を参照してください。' + known_issues: + - '{% data variables.product.prodname_ghe_server %} 3.3にアップグレード後、{% data variables.product.prodname_actions %}が自動起動に失敗することがあります。この問題を解決するためには、アプライアンスにSSHで接続し、`ghe-actions-start`コマンドを実行してください。' + - 新しくセットアップされたユーザを持たない{% data variables.product.prodname_ghe_server %}インスタンスで、攻撃者が最初の管理ユーザを作成できました。 + - アップグレードの過程で、カスタムのファイアウォールのルールが削除されます。 + - Git LFSが追跡するファイル[Webインターフェースからアップロードされたもの](https://github.com/blog/2105-upload-files-to-your-repositories)が、不正にリポジトリに直接追加されてしまいます。 + - 同じリポジトリ内のファイルパスが255文字を超えるblobへのパーマリンクを含むIssueをクローズできませんでした。 + - '{% data variables.product.prodname_github_connect %}で"Users can search GitHub.com(ユーザはGitHub.comの検索が可能)" が有効化されたとき、プライベート及びインターナルリポジトリのIssueが{% data variables.product.prodname_dotcom_the_website %}の検索結果に含まれません。' + - '{% data variables.product.prodname_registry %}のnpmレジストリは、メタデータのレスポンス中で時間の値を返さなくなります。これは、大きなパフォーマンス改善のために行われました。メタデータレスポンスの一部として時間の値を返すために必要なすべてのデータは保持し続け、既存のパフォーマンスの問題を解決した将来に、この値を返すことを再開します。' + - pre-receive フックの処理に固有のリソース制限によって、pre-receive フックに失敗するものが生じることがあります。 + - '{% data variables.product.prodname_actions %}のストレージ設定は、"Force Path Style(パススタイルの強制)"が選択されている場合、検証できず{% data variables.enterprise.management_console %}に保存できません。その代わりに、`ghe-actions-precheck`コマンドラインユーティリティで設定しなければなりません。' + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/ja-JP/data/release-notes/enterprise-server/3-4/8.yml b/translations/ja-JP/data/release-notes/enterprise-server/3-4/8.yml new file mode 100644 index 0000000000..8ab888503f --- /dev/null +++ b/translations/ja-JP/data/release-notes/enterprise-server/3-4/8.yml @@ -0,0 +1,26 @@ +date: '2022-08-30' +sections: + bugs: + - リポジトリを一時的なアクセスのためにロック解除したあと、サイト管理者はそのリポジトリ中のセキュリティ製品の設定を管理できませんでした。 + - 重複したSSHキーがManagement Consoleと`/home/admin/.ssh/authorized_keys`ファイルの両方に現れることがあります。 + - http(s)://HOSTNAME/stafftools/users/USERNAME/adminにある個人ユーザのためのサイトアドミンページに、GitHub Enterprise Serverのためのものではない機能が含まれていました。 + - '`ghe-cluster-config-apply`を実行すると、クラスタ内の既存ノードに空の設定がレプリケーションされることがありました。' + - '`ghe-config-apply`で開始された設定の実行か完了しなかったり、あるいは`Container count mismatch`エラーを返したりすることがありました。' + - GitHub Enterprise Serverインスタンス上の自己署名TLS署名書を更新したあと、Webインターフェースの一部のページのUI要素が表示されませんでした。 + - スレッドセーフではないにもかかわらず並行に使われたライブラリのために、バックグラウンドタスクが停止する場合があります。 + changes: + - 並列化されたログのサニタイズの結果、Support Bundleの生成が速くなりました。Support Bundleに関する詳しい情報については「[GitHub Supportへのデータ提供](/support/contacting-github-support/providing-data-to-github-support)」を参照してください。 + - '`organization`または`org`ルートを含むAPIは、OrganizationのスラグもしくはIDのいずれかを受け付けるようになりました。以前はAPIはスラグだけを受け付け、そのためにGitHub Advanced Securityのエンドポイントの`Link`ヘッダにはアクセスできなくなっていました。詳しい情報についてはREST APIドキュメンテーションの「[Organizations](https://docs.github.com/rest/orgs/orgs)」を参照してください。' + - 'Enterprise Audit logには、`project.create`といったより多くのユーザ生成イベントが含まれるようになりました。REST APIも、`repo.create`といった追加のユーザ生成イベントを返します。詳しい情報については「[EnterpriseのAudit logへのアクセス](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)」及び「[EnterpriseでのAudit log APIの利用](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)」を参照してください。' + known_issues: + - 新しくセットアップされたユーザを持たない{% data variables.product.prodname_ghe_server %}インスタンスで、攻撃者が最初の管理ユーザを作成できました。 + - アップグレードの過程で、カスタムのファイアウォールのルールが削除されます。 + - Git LFSが追跡するファイル[Webインターフェースからアップロードされたもの](https://github.com/blog/2105-upload-files-to-your-repositories)が、不正にリポジトリに直接追加されてしまいます。 + - 同じリポジトリ内のファイルパスが255文字を超えるblobへのパーマリンクを含むIssueをクローズできませんでした。 + - '{% data variables.product.prodname_github_connect %}で"Users can search GitHub.com(ユーザはGitHub.comの検索が可能)" が有効化されたとき、プライベート及びインターナルリポジトリのIssueが{% data variables.product.prodname_dotcom_the_website %}の検索結果に含まれません。' + - '{% data variables.product.prodname_registry %}のnpmレジストリは、メタデータのレスポンス中で時間の値を返さなくなります。これは、大きなパフォーマンス改善のために行われました。メタデータレスポンスの一部として時間の値を返すために必要なすべてのデータは保持し続け、既存のパフォーマンスの問題を解決した将来に、この値を返すことを再開します。' + - pre-receive フックの処理に固有のリソース制限によって、pre-receive フックに失敗するものが生じることがあります。 + - | + セルフホストランナーを--ephemeral`パラメータ付きで複数レベル(たとえばEnterpriseとOrganizationというように)に登録したあと、ランナーがアイドル状態で停止し、再登録が必要になることがあります。[更新: 2022年6月17日] + - '{% data variables.product.prodname_ghe_server %} 3.4にアップグレードしたあと、リリースがリポジトリから失われたように見えることがあります。これは、必要なElasticsearchのインデックスの移行が成功終了していない場合に起こります。' + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/ja-JP/data/release-notes/enterprise-server/3-5/5.yml b/translations/ja-JP/data/release-notes/enterprise-server/3-5/5.yml new file mode 100644 index 0000000000..3928c14441 --- /dev/null +++ b/translations/ja-JP/data/release-notes/enterprise-server/3-5/5.yml @@ -0,0 +1,27 @@ +date: '2022-08-30' +sections: + bugs: + - リポジトリを一時的なアクセスのためにロック解除したあと、サイト管理者はそのリポジトリ中のセキュリティ製品の設定を管理できませんでした。 + - 重複したSSHキーがManagement Consoleと`/home/admin/.ssh/authorized_keys`ファイルの両方に現れることがあります。 + - http(s)://HOSTNAME/stafftools/users/USERNAME/adminにある個人ユーザのためのサイトアドミンページに、GitHub Enterprise Serverのためのものではない機能が含まれていました。 + - '`ghe-cluster-config-apply`を実行すると、クラスタ内の既存ノードに空の設定がレプリケーションされることがありました。' + - '`ghe-config-apply`で開始された設定の実行か完了しなかったり、あるいは`Container count mismatch`エラーを返したりすることがありました。' + - GitHub Enterprise Serverインスタンス上の自己署名TLS署名書を更新したあと、Webインターフェースの一部のページのUI要素が表示されませんでした。 + - Webインターフェースの上部のサイトアドミンバーが、実行中のアプリケーションのバージョンのSHAへの壊れたリンクを含んでいました。 + - スレッドセーフではないにもかかわらず並行に使われたライブラリのために、バックグラウンドタスクが停止する場合があります。 + - サイト管理者がGitHub Enterprise Server 3.4に直接アップグレードしていない場合、GitHub Advanced Securityのお客様に対するSecret scanningのアラートがWeb UI及びREST APIから欠落していました。これらのアラートは表示されるようになりました。 + - ユーザがOrganizationにリポジトリをフォークしたとき、Organizationの長いリストは正しく表示されません。 + changes: + - 並列化されたログのサニタイズの結果、Support Bundleの生成が速くなりました。Support Bundleに関する詳しい情報については「[GitHub Supportへのデータ提供](/support/contacting-github-support/providing-data-to-github-support)」を参照してください。 + - '`organization`または`org`ルートを含むAPIは、OrganizationのスラグもしくはIDのいずれかを受け付けるようになりました。以前はAPIはスラグだけを受け付け、そのためにGitHub Advanced Securityのエンドポイントの`Link`ヘッダにはアクセスできなくなっていました。詳しい情報についてはREST APIドキュメンテーションの「[Organizations](https://docs.github.com/rest/orgs/orgs)」を参照してください。' + - 'Enterprise Audit logには、`project.create`といったより多くのユーザ生成イベントが含まれるようになりました。REST APIも、`repo.create`といった追加のユーザ生成イベントを返します。詳しい情報については「[EnterpriseのAudit logへのアクセス](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)」及び「[EnterpriseでのAudit log APIの利用](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)」を参照してください。' + - 最近更新されたリポジトリで、キャッシュレプリカが一部のGit操作を拒否することがありました。リポジトリキャッシングに関する詳しい情報については「[リポジトリキャッシングについて](/admin/enterprise-management/caching-repositories/about-repository-caching)」を参照してください。 + known_issues: + - 新しくセットアップされたユーザを持たない{% data variables.product.prodname_ghe_server %}インスタンスで、攻撃者が最初の管理ユーザを作成できました。 + - アップグレードの過程で、カスタムのファイアウォールのルールが削除されます。 + - Git LFSが追跡するファイル[Webインターフェースからアップロードされたもの](https://github.com/blog/2105-upload-files-to-your-repositories)が、不正にリポジトリに直接追加されてしまいます。 + - 同じリポジトリ内のファイルパスが255文字を超えるblobへのパーマリンクを含むIssueをクローズできませんでした。 + - GitHub Connectで"Users can search GitHub.com"が有効化されている場合、GitHub.comの検索結果にプライベート及びインターナルリポジトリのIssueが含まれません。 + - '{% data variables.product.prodname_registry %}のnpmレジストリは、メタデータのレスポンス中で時間の値を返さなくなります。これは、大きなパフォーマンス改善のために行われました。メタデータレスポンスの一部として時間の値を返すために必要なすべてのデータは保持し続け、既存のパフォーマンスの問題を解決した将来に、この値を返すことを再開します。' + - pre-receive フックの処理に固有のリソース制限によって、pre-receive フックに失敗するものが生じることがあります。 + - 別のホスト上で取られたバックアップからのアプライアンスのリストア後、Actionsサービスを再起動する必要があります。 diff --git a/translations/ja-JP/data/release-notes/enterprise-server/3-6/0.yml b/translations/ja-JP/data/release-notes/enterprise-server/3-6/0.yml index e563c6afeb..6af971dc73 100644 --- a/translations/ja-JP/data/release-notes/enterprise-server/3-6/0.yml +++ b/translations/ja-JP/data/release-notes/enterprise-server/3-6/0.yml @@ -25,7 +25,9 @@ sections: -「[Enterpriseでのリポジトリ管理ポリシーの施行](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)」 -「[インスタンスのホストキーの設定](/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance)」 - | - インスタンスに接続してくるSMTPコネクションにTLS暗号化を要求できます。詳しい情報については「[通知のメールの設定](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications)」を参照してください。 + インスタンスへのSMTP接続にTLS暗号化を必須とすることができます。詳しい情報については「[通知のためのメールの設定](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications#enforcing-tls-for-smtp-connections)」を参照してください。 + + -**ノート**: この機能はGitHub Enterprise Server 3.6.0では利用できません。この機能は今後のリリースで利用できるようになります。[更新: 2022 年8月26日] - heading: 監査ログ notes: @@ -61,10 +63,10 @@ sections: -「[Secret scanningでのプッシュの保護](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)」 -「[EnterpriseのAudit logイベント](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise#secret_scanning_push_protection-category-actions)」 - -「[OrganizationのAudit logのレビュー]/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization#secret_scanning_push_protection-category-actions)」 + -「[OrganizationのAudit logのレビュー](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/reviewing-the-audit-log-for-your-organization#secret_scanning_push_protection-category-actions)」 -REST APIドキュメンテーションの「[Secret scanning](/rest/secret-scanning#list-secret-scanning-alerts-for-an-enterprise)」 - | - GitHub Advanced Securityのライセンスがあるインスタンス上のEnterpriseのオーナーは、EntepriseのカスタムのSecret scanningパターンのdry runを実行でき、すべてのユーザはパターンを編集する際にdry runを実行できます。dry runを行うことによって、パターンがインスタンス全体に与える影響を理解し、公開してアラートを生成する前にパターンを磨き上げることができます。詳しい情報については「Secret scanningのカスタムパターンの定義](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning)」を参照してください。 + GitHub Advanced Securityのライセンスがあるインスタンス上のEnterpriseのオーナーは、EntepriseのカスタムのSecret scanningパターンのdry runを実行でき、すべてのユーザはパターンを編集する際にdry runを実行できます。dry runを行うことによって、パターンがインスタンス全体に与える影響を理解し、公開してアラートを生成する前にパターンを磨き上げることができます。詳しい情報については「[Secret scanningのカスタムパターンの定義](/code-security/secret-scanning/defining-custom-patterns-for-secret-scanning)」を参照してください。 - | GitHub Advanced Securityのライセンスがあるインスタンス上のユーザは、Secret scanningのアラートを取得する際にREST APIで`sort`及び`direction`パラメータを使い、アラートの`created`あるいは`updated`フィールドに基づいてソートすることができます。この新しいパラメータはインスタンス全体で、あるいは個々のOrganizationあるいはリポジトリで使用できます。詳しい情報については以下のドキュメンテーションを参照してください。 @@ -94,7 +96,7 @@ sections: インスタンスでGitHub Connectが有効化されているなら、ユーザは[GitHub Advisory Database](https://github.com/advisories)内のセキュリティアドバイザリの改善に貢献できます。貢献するには、アドバイザリの詳細を表示しているときに**Suggest improvements for this vulnerability(この脆弱性に改善を提案)**をクリックしてください。詳しい情報については以下の記事を参照してください。 - 「[GitHub Connectの管理](/admin/configuration/configuring-github-connect/managing-github-connect)」 - - GitHub Enterprise Cloudのドキュメンテーションの「「GitHub Advisory Database内のセキュリティ脆弱性の閲覧](/enterprise-cloud@latest/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database)」 + - GitHub Enterprise Cloudのドキュメンテーションの「[GitHub Advisory Database内のセキュリティ脆弱性の閲覧](/enterprise-cloud@latest/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/browsing-security-vulnerabilities-in-the-github-advisory-database)」 - GitHub Enterprise Cloudのドキュメンテーションの「[リポジトリのGitHub Security Advisoriesについて](/enterprise-cloud@latest/code-security/repository-security-advisories/about-github-security-advisories-for-repositories)」 - GitHub Enterprise Cloudのドキュメンテーションの「[GitHub Advisory Database中のセキュリティアドバイザリの編集](/enterprise-cloud@latest/code-security/supply-chain-security/managing-vulnerabilities-in-your-projects-dependencies/editing-security-advisories-in-the-github-advisory-database)」 - @@ -150,7 +152,7 @@ sections: - | ユーザは、**Restrict pushes that create matching branches(マッチするブランチを作成するプッシュの制限)**ブランチ保護ルールで、設定された名前のパターンにマッチするブランチの作成をブロックできます。たとえば、リポジトリのデフォルトブランチを`master`から`main`に変更した場合、リポジトリの管理者はそれ以降`master`ブランチの作成やプッシュを防ぐことができます。詳しい情報については「[保護されたブランチについて](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#restrict-who-can-push-to-matching-branches)」及び[ブランチの保護ルールの管理](/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule#creating-a-branch-protection-rule)」を参照してください。 - | - ユーザは、リポジトリの**Branches(ブランチ)**ページから、**New branch(新規ブランチ)**をクリックすることで直接ブランチを作成できます。詳しい情報については「[リポジトリ内でのブランチの作成と削除(/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)」を参照してください。 + ユーザは、リポジトリの**Branches(ブランチ)**ページから、**New branch(新規ブランチ)**をクリックすることで直接ブランチを作成できます。詳しい情報については「[リポジトリ内でのブランチの作成と削除](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)」を参照してください。 - | ユーザはオープンなPull Requestに関連づけられたブランチを削除できます。詳しい情報については「[リポジトリ内でのブランチの作成と削除](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)」を参照してください。 - | @@ -173,7 +175,7 @@ sections: heading: プルリクエスト notes: - | - Pull Requestの**Files changed(変更されたファイル)**タブにあるファイルツリーを使って、ユーザは変更されたファイルに見ていき、変更のサイズとスコープを理解し、レビューに集中できます。このファイルツリーは、Pull Requestが少なくとも2つのファイルを変更しており、ブラウザのウィンドウが十分に広いときに表示されます。詳しい情報については「[Pull Requestで提案された変更のレビュー(/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request)」及び「[Pull Requestのファイルのフィルタリング](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/filtering-files-in-a-pull-request)」を参照してください。 + Pull Requestの**Files changed(変更されたファイル)**タブにあるファイルツリーを使って、ユーザは変更されたファイルに見ていき、変更のサイズとスコープを理解し、レビューに集中できます。このファイルツリーは、Pull Requestが少なくとも2つのファイルを変更しており、ブラウザのウィンドウが十分に広いときに表示されます。詳しい情報については「[Pull Requestで提案された変更のレビュー](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request)」及び「[Pull Requestのファイルのフィルタリング](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/filtering-files-in-a-pull-request)」を参照してください。 - | ユーザは、すべてのsquashマージでPull Requestのタイトルをコミットメッセージとして使うことをデフォルトにできます。詳しい情報については「[Pull Requestのコミットsquashの設定](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests)」を参照してください。 - @@ -210,3 +212,4 @@ sections: - リポジトリの設定で、読み取りアクセスを持つユーザにディスカッションの作成を許可するオプションを有効化しても、この機能は有効化されません。 - ユーザが既存のIssueをディスカッションに変換できないことがあります。 - Secret scanningのカスタムパターンは、特に"After secret"パターンにおいて`.*`を終了の区切り文字として持ちます。この区切り文字は、リポジトリにまたがるシークレットのスキャンにおいて矛盾を生じさせ、スキャンがまったく完了していないというリポジトリの履歴のギャップに気づくかもしれません。インクリメンタルなスキャンにも影響があるかもしれません。スキャンの問題を回避するために、パターンの終わりから`.*`という区切り文字を取り除く修正をしてください。 + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/ja-JP/data/release-notes/enterprise-server/3-6/1.yml b/translations/ja-JP/data/release-notes/enterprise-server/3-6/1.yml new file mode 100644 index 0000000000..2a1fba924f --- /dev/null +++ b/translations/ja-JP/data/release-notes/enterprise-server/3-6/1.yml @@ -0,0 +1,33 @@ +date: '2022-08-30' +sections: + bugs: + - リポジトリを一時的なアクセスのためにロック解除したあと、サイト管理者はそのリポジトリ中のセキュリティ製品の設定を管理できませんでした。 + - 重複したSSHキーがManagement Consoleと`/home/admin/.ssh/authorized_keys`ファイルの両方に現れることがあります。 + - http(s)://HOSTNAME/stafftools/users/USERNAME/adminにある個人ユーザのためのサイトアドミンページに、GitHub Enterprise Serverのためのものではない機能が含まれていました。 + - '`ghe-cluster-config-apply`を実行すると、クラスタ内の既存ノードに空の設定がレプリケーションされることがありました。' + - '`ghe-config-apply`で開始された設定の実行か完了しなかったり、あるいは`Container count mismatch`エラーを返したりすることがありました。' + - GitHub Enterprise Serverインスタンス上の自己署名TLS署名書を更新したあと、Webインターフェースの一部のページのUI要素が表示されませんでした。 + - スレッドセーフではないにもかかわらず並行に使われたライブラリのために、バックグラウンドタスクが停止する場合があります。 + - Webインターフェースの上部のサイトアドミンバーが、実行中のアプリケーションのバージョンのSHAへの壊れたリンクを含んでいました。 + - Organizationオーナーは、ディスカッションの作成に必要なアクセスレベルを設定できませんでした。 + - ディスカッションのユーザは、GitHub.comのコミュニティガイドラインに誤って誘導されました。 + - ディスカッションの作成前に、ユーザは誤ってメールを検証するよう指示されることがありました。 + - サイト管理者がGitHub Enterprise Server 3.4に直接アップグレードしていない場合、GitHub Advanced Securityのお客様に対するSecret scanningのアラートがWeb UI及びREST APIから欠落していました。これらのアラートは表示されるようになりました。 + changes: + - 並列化されたログのサニタイズの結果、Support Bundleの生成が速くなりました。Support Bundleに関する詳しい情報については「[GitHub Supportへのデータ提供](/support/contacting-github-support/providing-data-to-github-support)」を参照してください。 + - '`organization`または`org`ルートを含むAPIは、OrganizationのスラグもしくはIDのいずれかを受け付けるようになりました。以前はAPIはスラグだけを受け付け、そのためにGitHub Advanced Securityのエンドポイントの`Link`ヘッダにはアクセスできなくなっていました。詳しい情報についてはREST APIドキュメンテーションの「[Organizations](https://docs.github.com/rest/orgs/orgs)」を参照してください。' + - 'Enterprise Audit logには、`project.create`といったより多くのユーザ生成イベントが含まれるようになりました。REST APIも、`repo.create`といった追加のユーザ生成イベントを返します。詳しい情報については「[EnterpriseのAudit logへのアクセス](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)」及び「[EnterpriseでのAudit log APIの利用](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)」を参照してください。' + - 最近更新されたリポジトリで、キャッシュレプリカが一部のGit操作を拒否することがありました。リポジトリキャッシングに関する詳しい情報については「[リポジトリキャッシングについて](/admin/enterprise-management/caching-repositories/about-repository-caching)」を参照してください。 + - 'REST APIを使ったグローバルアナウンスのバナーの却下を可能にするよう設定できるようになりました。詳しい情報については「[Enterpriseでのユーザメッセージのカスタマイズ](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)」を参照してください。' + known_issues: + - 新しくセットアップされたユーザを持たない{% data variables.product.prodname_ghe_server %}インスタンスで、攻撃者が最初の管理ユーザを作成できました。 + - アップグレードの過程で、カスタムのファイアウォールのルールが削除されます。 + - Git LFSが追跡するファイル[Webインターフェースからアップロードされたもの](https://github.com/blog/2105-upload-files-to-your-repositories)が、不正にリポジトリに直接追加されてしまいます。 + - 同じリポジトリ内のファイルパスが255文字を超えるblobへのパーマリンクを含むIssueをクローズできませんでした。 + - GitHub Connectで"Users can search GitHub.com"が有効化されている場合、GitHub.comの検索結果にプライベート及びインターナルリポジトリのIssueが含まれません。 + - '{% data variables.product.prodname_registry %}のnpmレジストリは、メタデータのレスポンス中で時間の値を返さなくなります。これは、大きなパフォーマンス改善のために行われました。メタデータレスポンスの一部として時間の値を返すために必要なすべてのデータは保持し続け、既存のパフォーマンスの問題を解決した将来に、この値を返すことを再開します。' + - pre-receive フックの処理に固有のリソース制限によって、pre-receive フックに失敗するものが生じることがあります。 + - 他のホストで取られたバックアップからインスタンスを復元したあと、Actionsサービスは再起動する必要があります。 + - リポジトリの設定で、読み取りアクセスを持つユーザにディスカッションの作成を許可するオプションを有効化しても、この機能は有効化されません。 + - ユーザが既存のIssueをディスカッションに変換できないことがあります。 + - Secret scanningのカスタムパターンは、特に"After secret"パターンにおいて`.*`を終了の区切り文字として持ちます。この区切り文字は、リポジトリにまたがるシークレットのスキャンにおいて矛盾を生じさせ、スキャンがまったく完了していないというリポジトリの履歴のギャップに気づくかもしれません。インクリメンタルなスキャンにも影響があるかもしれません。スキャンの問題を回避するために、パターンの終わりから`.*`という区切り文字を取り除く修正をしてください。 diff --git a/translations/ja-JP/data/reusables/accounts/create-personal-access-tokens.md b/translations/ja-JP/data/reusables/accounts/create-personal-access-tokens.md new file mode 100644 index 0000000000..fef12d84dd --- /dev/null +++ b/translations/ja-JP/data/reusables/accounts/create-personal-access-tokens.md @@ -0,0 +1 @@ +1. 各アカウントに`repo`スコープを持つ専用のPATを作成してください。 詳しい情報については、「[個人アクセストークンを作成する](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)」を参照してください。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/about-runner-groups.md b/translations/ja-JP/data/reusables/actions/about-runner-groups.md new file mode 100644 index 0000000000..61c01f3c83 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/about-runner-groups.md @@ -0,0 +1,18 @@ +{% ifversion fpt %} +{% note %} + +**ノート:** すべてのOrganizationは1つのデフォルトランナーグループを持ちます。 Enterpriseアカウント及びEnterpriseアカウントが所有するOrganizationだけが、追加のランナーグループを作成して管理できます。 + +{% endnote %} + +ランナーグループは、ランナーへのアクセスを制御するために使われます。 Organization の管理者は、Organization 内のどのリポジトリがランナーグループにアクセスできるかを制御するアクセスポリシーを設定できます。 + +{% data variables.product.prodname_ghe_cloud %}を使っているなら、追加のランナーグループを作成できます。Enterpriseの管理者は、Enterprise内でランナーグループにアクセスできるOrganizationを制御するアクセスポリシーを設定でき、Organizationの管理者は、Enterpriseランナーグループに追加の詳細なリポジトリアクセスポリシーを割り当てる事ができます。 +{% endif -%} +{% ifversion ghec or ghes or ghae %} + +{% data reusables.actions.runner-group-enterprise-overview %} + +新しいランナーが作成されると、それらは自動的にデフォルトグループに割り当てられます。 ランナーは一度に1つのグループにのみ参加できます。 ランナーはデフォルトグループから別のグループに移動できます。 詳しい情報については「[ランナーのグループへの移動](#moving-a-runner-to-a-group)」を参照してください。 + +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/actions-billing.md b/translations/ja-JP/data/reusables/actions/actions-billing.md index 157e667d26..c1efc3814c 100644 --- a/translations/ja-JP/data/reusables/actions/actions-billing.md +++ b/translations/ja-JP/data/reusables/actions/actions-billing.md @@ -1 +1 @@ -{% data variables.product.prodname_actions %} パブリックリポジトリとセルフホストランナーでは、どちらも利用は無料です。 プライベートリポジトリでは、それぞれの{% data variables.product.prodname_dotcom %}アカウントは使用している製品に応じて一定量の無料の分とストレージを受け取ります。 含まれる金額を超える利用については、支出制限によって管理されます。 +{% data variables.product.prodname_actions %}の利用は、パブリックリポジトリにおける標準の{% data variables.product.prodname_dotcom %}ホストランナーと、セルフホストランナーでは無料です。 プライベートリポジトリでは、それぞれの{% data variables.product.prodname_dotcom %}アカウントは使用している製品に応じて{% data variables.product.prodname_dotcom %}ホストランナーで利用できる一定量の無料の分とストレージを受け取ります。 含まれる金額を超える利用については、支出制限によって管理されます。 diff --git a/translations/ja-JP/data/reusables/actions/add-hosted-runner-overview.md b/translations/ja-JP/data/reusables/actions/add-hosted-runner-overview.md new file mode 100644 index 0000000000..b382211eab --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/add-hosted-runner-overview.md @@ -0,0 +1,3 @@ +利用可能な選択肢のリストから、オペレーティングシステムとハードウェア構成を選択できます。 このランナーの新しいインスタンスが自動スケーリングを通じてデプロイされると、それらはここで定義したのと同じオペレーティングシステムとハードウェア設定を使用します。 + +ランナーを特定するラベルを定義することもできます。これは、ワークフローが処理のためにランナーにジョブを送信できる方法です(`runs-on`を利用)。 新しいランナーは自動的にデフォルトグループに割り当てられるか、ランナーの作成プロセスの過程でランナーが参加するグループを選択することができます。 加えて、ランナーを登録したあとにランナーのグループメンバーシップを変更できます。 詳しい情報については「[{% data variables.actions.hosted_runner %}へのアクセスの制御](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)」を参照してください。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/add-hosted-runner.md b/translations/ja-JP/data/reusables/actions/add-hosted-runner.md new file mode 100644 index 0000000000..b94ed1df13 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/add-hosted-runner.md @@ -0,0 +1,11 @@ +1. **New runner(新規ランナー)**をクリックし、続いて**{% octicon "mark-github" aria-label="New hosted runner" %} New Github-hosted runner(新規GitHubホストランナー)**をクリックしてください。 +1. 新しいランナーを設定するために必要な詳細を入力してください。 + + - **Name(名前)**: 新しいランナーの名前を入力してください。 識別しやすいように、これは`ubuntu-20.04-16core`というように、ハードウェアとオペレーティングシステムの構成を示すようにすべきです。 + - **Runner image(ランナーイメージ)**: 利用可能な選択肢からオペレーティングシステムを選択してください。 オペレーティングシステムを選択すると、特定のバージョンを選択できるようになります。 + - **Runner size(ランナーサイズ)**: 利用可能な選択肢のドロップダウンリストから、ハードウェア構成を選択してください。 + - **Auto-scaling(オートスケーリング)**: いつでもアクティブにできるランナーの最大数を選択してください。 + - **Runner group(ランナーグループ)**: ランナーがメンバーになるグループを選択してください。 ランナーは要求に合わせてスケールアップやダウンをするので、このグループはランナーの複数のインスタンスをホストすることになります。 + - **Networking(ネットワーキング)**: {% data variables.product.prodname_ghe_cloud %}の場合のみ: {% data variables.actions.hosted_runner %}のインスタンスに静的IPアドレスの範囲が割り当てられるかどうかを選択してください。 合計で最大10個の静的IPアドレスを使用できます。 + +1. **Create runner(ランナーを作成)**をクリックしてください。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/automatically-adding-a-runner-to-a-group.md b/translations/ja-JP/data/reusables/actions/automatically-adding-a-runner-to-a-group.md new file mode 100644 index 0000000000..8d37492757 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/automatically-adding-a-runner-to-a-group.md @@ -0,0 +1,11 @@ +設定スクリプトを使って、自動的に新しいランナーをグループに追加できます。 たとえば、このコマンドは新しいランナーを登録し、 `--runnergroup`パラメータを使ってそのランナーを`rg-runnergroup`という名前のグループに追加します。 + +```sh +./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup +``` + +このコマンドは、ランナーグループが存在しなければ失敗します。 + +``` +Could not find any self-hosted runner group named "rg-runnergroup". +``` \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md b/translations/ja-JP/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md new file mode 100644 index 0000000000..2cfc450dbe --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md @@ -0,0 +1,38 @@ +{% comment %} + +この手順の上には、必ずセキュリティの警告を含めてください。 これは、コンテキストがセルフホストランナーなのか、大きなランナーなのかによって、以下のいずれかになります。 + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +Enterprise内のランナーグループに対しては、Enterprise内のどのOrganizationがランナーグループにアクセスできるか{% ifversion restrict-groups-to-workflows %}、あるいはランナーグループが実行できるワークフローの制限{% endif %}を変更できます。 Organization内のランナーグループに対しては、Organization内のどのリポジトリがランナーグループにアクセスできるか{% ifversion restrict-groups-to-workflows %}、あるいはランナーグループが実行できるワークフローの制限{% endif %}を変更できます。 + +### ランナーグループにアクセスできるOrganizationあるいはリポジトリの変更 + +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Enterprise内のランアーグループについては、**Organization access(Organizationのアクセス)**の下で、ランナーグループにアクセスできるOrganizationを変更してください。 Organization内のランナーグループについては、**Repository access(リポジトリアクセス)**の下で、ランナーグループにアクセスできるリポジトリを変更してください。 + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group-access %} +{% endif %} + +{% ifversion restrict-groups-to-workflows %} +### Changing what workflows can access a runner group +You can configure a runner group to run either selected workflows or all workflows. For example, you might use this setting to protect secrets that are stored on runners or to standardize deployment workflows by restricting a runner group to run only a specific reusable workflow. This setting cannot be overridden if you are configuring an organization's runner group that was shared by an enterprise. +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Under **Workflow access**, select the dropdown menu and click **Selected workflows**. +1. {% octicon "gear" aria-label="the gear icon" %} をクリックします。 +1. Enter a comma separated list of the workflows that can access the runner group. Use the full path, including the repository name and owner. Pin the workflow to a branch, tag, or full SHA. 例: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main` + + Only jobs directly defined within the selected workflows will have access to the runner group. + + Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group. + +1. [**Save**] をクリックします。 + +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/changing-the-name-of-a-runner-group.md b/translations/ja-JP/data/reusables/actions/changing-the-name-of-a-runner-group.md new file mode 100644 index 0000000000..0c97c37769 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/changing-the-name-of-a-runner-group.md @@ -0,0 +1,9 @@ +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Change the runner group name. + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group %} +1. Change the runner group name. +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md b/translations/ja-JP/data/reusables/actions/configure-runner-group-access.md similarity index 87% rename from translations/ja-JP/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md rename to translations/ja-JP/data/reusables/actions/configure-runner-group-access.md index afab34d350..474e187b50 100644 --- a/translations/ja-JP/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md +++ b/translations/ja-JP/data/reusables/actions/configure-runner-group-access.md @@ -1,4 +1,4 @@ -{% data reusables.actions.self-hosted-runner-configure-runner-group %} +{% data reusables.actions.configure-runner-group %} 1. ポリシーオプションを変更してください。 {% ifversion not ghae %} diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-configure-runner-group.md b/translations/ja-JP/data/reusables/actions/configure-runner-group.md similarity index 100% rename from translations/ja-JP/data/reusables/actions/self-hosted-runner-configure-runner-group.md rename to translations/ja-JP/data/reusables/actions/configure-runner-group.md diff --git a/translations/ja-JP/data/reusables/actions/contacting-support.md b/translations/ja-JP/data/reusables/actions/contacting-support.md index b8d9451425..56623f757b 100644 --- a/translations/ja-JP/data/reusables/actions/contacting-support.md +++ b/translations/ja-JP/data/reusables/actions/contacting-support.md @@ -5,5 +5,5 @@ あなたの利用方法、もしくは意図する利用方法が利用制限のカテゴリに当てはまるかどうかに関わらず、以下のいずれかの場合は{% data variables.contact.contact_support %}に連絡してください。 * アカウントに間違った制約が課されていると思われる場合 -* たとえばユニークIDのような予想外のエラーに、アクションの実行時に遭遇した場合 +* いずれかのアクションを実行した際に予想外のエラーが生じた場合 * 既存の動作が期待される、ただし必ずしもドキュメント化されてはいない動作と矛盾するような状況に遭遇した場合 diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-create-group.md b/translations/ja-JP/data/reusables/actions/create-runner-group.md similarity index 100% rename from translations/ja-JP/data/reusables/actions/self-hosted-runner-create-group.md rename to translations/ja-JP/data/reusables/actions/create-runner-group.md diff --git a/translations/ja-JP/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md b/translations/ja-JP/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md new file mode 100644 index 0000000000..f708130016 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md @@ -0,0 +1,28 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +Enterprises can add their runners to groups for access management. Enterprises can create groups of runners that are accessible to specific organizations in the enterprise account{% ifversion restrict-groups-to-workflows %} or to specific workflows{% endif %}. Organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} or workflow{% endif %} access policies to the enterprise runner groups. For information about how to create a runner group with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runner-groups). + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. 登録処理中にランナーを特定のグループに割り当てることも、後でランナーをデフォルトグループからカスタムグループに移動することもできます。 + +グループを作成するときは、ランナーグループにアクセスできる Organization を定義するポリシーを選択する必要があります。 + +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} +1. To choose a policy for organization access, select the **Organization access** drop-down, and click a policy. You can configure a runner group to be accessible to a specific list of organizations, or all organizations in the enterprise.{% ifversion ghes %} By default, only private repositories can access runners in a runner group, but you can override this.{% endif %} + + {%- ifversion ghec or ghes %} + + ![ランナーグループのオプションを追加](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) + {%- elsif ghae %} + + ![ランナーグループのオプションを追加](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) + {%- endif %} +{% data reusables.actions.runner-group-assign-policy-workflow %} +1. [**Save group**] をクリックしてグループを作成し、ポリシーを適用します。 + diff --git a/translations/ja-JP/data/reusables/actions/creating-a-runner-group-for-an-organization.md b/translations/ja-JP/data/reusables/actions/creating-a-runner-group-for-an-organization.md new file mode 100644 index 0000000000..8d1b7aa0be --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/creating-a-runner-group-for-an-organization.md @@ -0,0 +1,38 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +All organizations have a single default runner group. Organizations within an enterprise account can create additional groups. Organization の管理者は、個々のリポジトリにランナーグループへのアクセスを許可できます。 For information about how to create a runner group with the REST API, see "[Self-hosted runner groups](/rest/reference/actions#self-hosted-runner-groups)." + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. ランナーはデフォルトグループから作成した任意のグループに移動できます。 + +When creating a group, you must choose a policy that defines which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} have access to the runner group. + +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. In the "Runner groups" section, click **New runner group**. +1. Enter a name for your runner group. + {% data reusables.actions.runner-group-assign-policy-repo %} +{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} Organization-owned runner groups cannot access workflows from a different organization in the enterprise; instead, you must create an enterprise-owned runner group.{% endif %} +{% data reusables.actions.create-runner-group %} +{% elsif ghae or ghes < 3.4 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. Under {% ifversion ghes or ghae %}"Runners"{% endif %}, click **Add new**, and then **New group**. + + ![新しいランナーを追加](/assets/images/help/settings/actions-org-add-runner-group.png) +1. ランナーグループの名前を入力し、リポジトリアクセスのポリシーを割り当てます。 + + ランナーグループを、特定のリポジトリのリスト、もしくはEnterprise内のすべてのリポジトリからアクセスできるように設定できます。{% ifversion ghec or ghes %}デフォルトでは、プライベートリポジトリのみがランナーグループ内のランナーにアクセスできますが、これは上書きできます。 この設定は、Enterpriseによって共有されているOrganizationのランナーグループを設定している場合には上書きできません。{% endif %} + + ![ランナーグループのオプションを追加](/assets/images/help/settings/actions-org-add-runner-group-options.png) +1. [**Save group**] をクリックしてグループを作成し、ポリシーを適用します。 +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/hosted-runner-security-admonition.md b/translations/ja-JP/data/reusables/actions/hosted-runner-security-admonition.md new file mode 100644 index 0000000000..8c33797d55 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/hosted-runner-security-admonition.md @@ -0,0 +1,5 @@ +{% warning %} + +**Warning**: {% data reusables.actions.hosted-runner-security %} + +{% endwarning %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/hosted-runner-security.md b/translations/ja-JP/data/reusables/actions/hosted-runner-security.md new file mode 100644 index 0000000000..ed12d189db --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/hosted-runner-security.md @@ -0,0 +1,3 @@ +We recommend that you only use {% data variables.actions.hosted_runner %}s with private repositories: +- Forks of your repository can potentially run dangerous code on your {% data variables.actions.hosted_runner %} by creating a pull request that executes the code in a workflow. +- You could incur unexpected costs if you allow forked repositories to run jobs on your {% data variables.actions.hosted_runner %}s. \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/jobs/section-running-jobs-in-a-container.md b/translations/ja-JP/data/reusables/actions/jobs/section-running-jobs-in-a-container.md index e7807da5b0..a5835ffc68 100644 --- a/translations/ja-JP/data/reusables/actions/jobs/section-running-jobs-in-a-container.md +++ b/translations/ja-JP/data/reusables/actions/jobs/section-running-jobs-in-a-container.md @@ -2,6 +2,12 @@ `container`を設定しない場合は、コンテナで実行されるよう設定されているアクションを参照しているステップを除くすべてのステップが、`runs-on`で指定したホストで直接実行されます。 +{% note %} + +**ノート:** コンテナ内の`run`ステップのデフォルトシェルは`bash`ではなく`sh`です。 これは、[`jobs..defaults.run`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iddefaultsrun)もしくは[`jobs..steps[*].shell`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell)で上書きできます。 + +{% endnote %} + ### 例: コンテナ内でのジョブの実行 ```yaml{:copy} diff --git a/translations/ja-JP/data/reusables/actions/moving-a-runner-to-a-group.md b/translations/ja-JP/data/reusables/actions/moving-a-runner-to-a-group.md new file mode 100644 index 0000000000..25f31b9753 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/moving-a-runner-to-a-group.md @@ -0,0 +1,12 @@ +If you don't specify a runner group during the registration process, your new runners are automatically assigned to the default group, and can then be moved to another group. + +{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +1. In the "Runners" list, click the runner that you want to configure. +2. Select the **Runner group** drop-down. +3. In "Move runner to group", choose a destination group for the runner. +{% elsif ghae or ghes < 3.4 %} +1. In the {% ifversion ghes or ghae %}"Runner groups"{% endif %} section of the settings page, locate the current group of the runner you want to move and expand the list of group members. ![ランナーグループのメンバーを表示](/assets/images/help/settings/actions-org-runner-group-members.png) +2. セルフホストランナーの横にあるチェックボックスを選択し、[**Move to group**] をクリックして、利用可能な移動先を確認します。 ![ランナーグループのメンバーを移動](/assets/images/help/settings/actions-org-runner-group-member-move.png) +3. 移動先のグループをクリックして、ランナーを移動します。 ![ランナーグループのメンバーを移動](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/removing-a-runner-group.md b/translations/ja-JP/data/reusables/actions/removing-a-runner-group.md new file mode 100644 index 0000000000..2aaac0b4b1 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/removing-a-runner-group.md @@ -0,0 +1,9 @@ +Runners are automatically returned to the default group when their group is removed. + +{% ifversion ghes or ghae or ghec %} +{% data reusables.actions.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" %}. +2. グループを削除するには、[**Remove group**] をクリックします。 +3. 確認プロンプトを確認し、[**Remove this runner group**] をクリックします。 Any runners still in this group will be automatically moved to the default group, where they will inherit the access permissions assigned to that group. + +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/runner-group-enterprise-overview.md b/translations/ja-JP/data/reusables/actions/runner-group-enterprise-overview.md new file mode 100644 index 0000000000..516bccdefe --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/runner-group-enterprise-overview.md @@ -0,0 +1,3 @@ +Runner groups are used to control access to runners at the organization and enterprise level. Enterprise owners can configure access policies that control which organizations {% ifversion restrict-groups-to-workflows %}and workflows {% endif %}in an enterprise have access to the runner group. Organization owners can configure access policies that control which repositories{% ifversion restrict-groups-to-workflows %} and workflows{% endif %} in an organization have access to the runner group. + +When an enterprise owner grants access to a runner group, organization owners can see the runner group listed in the organization's runner settings. The organization owners can then assign additional granular repository{% ifversion restrict-groups-to-workflows %} and workflow{% endif %} access policies to the enterprise runner group. \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md b/translations/ja-JP/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md similarity index 100% rename from translations/ja-JP/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md rename to translations/ja-JP/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md b/translations/ja-JP/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md similarity index 83% rename from translations/ja-JP/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md rename to translations/ja-JP/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md index 2415e0fb31..a8fcbd8570 100644 --- a/translations/ja-JP/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md +++ b/translations/ja-JP/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md @@ -1,9 +1,9 @@ {% ifversion fpt %} -1. セルフホストランナーがあるリポジトリもしくはOrganizationのメインページにアクセスしてください。 +1. Navigate to the main page of the repository or organization where your runner groups are located. 2. {% octicon "gear" aria-label="The Settings gear" %} **Settings(設定)**をクリックしてください。 {% data reusables.organizations.settings-sidebar-actions-runner-groups %} {% elsif ghec or ghes or ghae %} -1. セルフホストランナーがあるところへアクセスしてください。 +1. Navigate to where your runner groups are located: * **Organizationの場合**: メインページにアクセスして{% octicon "gear" aria-label="The Settings gear" %} **Settings(設定)**をクリックしてください。 * **Enterpriseレベルのグループを使っている場合**: diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-add-to-enterprise.md b/translations/ja-JP/data/reusables/actions/self-hosted-runner-add-to-enterprise.md index 32481799be..c5f1a13380 100644 --- a/translations/ja-JP/data/reusables/actions/self-hosted-runner-add-to-enterprise.md +++ b/translations/ja-JP/data/reusables/actions/self-hosted-runner-add-to-enterprise.md @@ -3,7 +3,7 @@ {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.actions-tab %} {% data reusables.enterprise-accounts.actions-runners-tab %} -1. [**New runner**]をクリックしてください。 +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {%- elsif ghae or ghes < 3.4 %} セルフホストランナーをEnterpriseに追加するには、Enterpriseのオーナーでなければなりません。 diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md b/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md index 8bc6470562..e47b0bd922 100644 --- a/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md +++ b/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md @@ -3,7 +3,7 @@ 2. {% octicon "gear" aria-label="The Settings gear" %} **Settings(設定)**をクリックしてください。 {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. セルフホストランナーが登録されているところへアクセスしてください: +1. Navigate to where your runner is registered: * **Organizationの場合**: メインページにアクセスして{% octicon "gear" aria-label="The Settings gear" %} **Settings(設定)**をクリックしてください。 * **Enterpriseレベルのランナーを使っている場合**: diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md b/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md index 9ebda8c1fd..de90482363 100644 --- a/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md +++ b/translations/ja-JP/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md @@ -3,7 +3,7 @@ 2. {% octicon "gear" aria-label="The Settings gear" %} **Settings(設定)**をクリックしてください。 {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. セルフホストランナーが登録されているところへアクセスしてください: +1. Navigate to where your runner is registered: * **Organizationもしくはリポジトリ内**: メインページにアクセスして{% octicon "gear" aria-label="The Settings gear" %}** Settings(設定)**をクリックしてください。 * **Enterpriseレベルのランナーを使っている場合**: diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-security-admonition.md b/translations/ja-JP/data/reusables/actions/self-hosted-runner-security-admonition.md new file mode 100644 index 0000000000..386ee2bad9 --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/self-hosted-runner-security-admonition.md @@ -0,0 +1,7 @@ +{% warning %} + +**Warning**: {% data reusables.actions.self-hosted-runner-security %} + +詳しい情報については「[セルフホストランナーについて](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)」を参照してください。 + +{% endwarning %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/self-hosted-runner-security.md b/translations/ja-JP/data/reusables/actions/self-hosted-runner-security.md index 38c55056ab..072c1de077 100644 --- a/translations/ja-JP/data/reusables/actions/self-hosted-runner-security.md +++ b/translations/ja-JP/data/reusables/actions/self-hosted-runner-security.md @@ -1 +1 @@ -セルフホストランナーは、プライベートリポジトリでのみ利用することをおすすめします。 これは、ワークフロー中でコードを実行するPull Requestを作成することによって、リポジトリのフォークが危険なコードをセルフホストランナーマシン上で実行できる可能性があるためです。 +セルフホストランナーは、プライベートリポジトリでのみ利用することをおすすめします。 This is because forks of your public repository can potentially run dangerous code on your self-hosted runner machine by creating a pull request that executes the code in a workflow. \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/actions/use-request-body-api.md b/translations/ja-JP/data/reusables/actions/use-request-body-api.md new file mode 100644 index 0000000000..716669acfd --- /dev/null +++ b/translations/ja-JP/data/reusables/actions/use-request-body-api.md @@ -0,0 +1 @@ +この設定を適用するには、APIエンドポイントにリクエストをサブミットし、そのリクエストのボディに必要な設定を含めてください。 詳しい情報については「[OrganizationのOIDCサブジェクトクレームのカスタマイズテンプレートの設定](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)」を参照してください。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/advanced-security/custom-link-beta.md b/translations/ja-JP/data/reusables/advanced-security/custom-link-beta.md new file mode 100644 index 0000000000..030762649a --- /dev/null +++ b/translations/ja-JP/data/reusables/advanced-security/custom-link-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**ノート:** ブロックされたプッシュメッセージにリソースリンクを追加する機能は、現在パブリックベータであり、変更されることがあります。 + +{% endnote %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md index 03b7a69cb8..a3af2685e3 100644 --- a/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/translations/ja-JP/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -1,2 +1,6 @@ 1. "{% data variables.product.prodname_secret_scanning_caps %}"の下の"Push protection(プッシュ保護)"の下で、**Enable all(すべて有効化)**をクリックしてください。 ![任意のOrganizationで{% data variables.product.prodname_secret_scanning %}のプッシュ保護を有効化する方法を示しているスクリーンショット](/assets/images/help/organizations/secret-scanning-enable-push-protection.png) -1. あるいは、"Automatically enable for private repositories added to {% data variables.product.prodname_secret_scanning %}"をクリックしてください。 +1. あるいは、"Automatically enable for private repositories added to {% data variables.product.prodname_secret_scanning %}"をクリックしてください。{% ifversion push-protection-custom-link-orgs %} +1. あるいは、シークレットをプッシュしようとしたときにメンバーに表示されるメッセージにカスタムリンクを含めるには、**Add a resource link in the CLI and web UI when a commit is blocked(コミットがブロックされた場合CLIやWeb UIにリソースリンクを追加)**を選択し、続いてURLを入力し、**Save link(リンクを保存)**をクリックしてください。 + {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} + + ![カスタムリンクを有効化するチェックボックスとテキストフィールドのスクリーンショット](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/billing/billing-hosted-runners.md b/translations/ja-JP/data/reusables/billing/billing-hosted-runners.md new file mode 100644 index 0000000000..2881396884 --- /dev/null +++ b/translations/ja-JP/data/reusables/billing/billing-hosted-runners.md @@ -0,0 +1 @@ +| Linux | 4 | $0.016 | | Linux | 8 | $0.032 | | Linux | 16 | $0.064 | | Linux | 32 | $0.128 | | Linux | 64 | $0.256 | | Windows | 8 | $0.064 | | Windows | 16 | $0.128 | | Windows | 32 | $0.256 | | Windows | 64 | $0.512 | \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/billing/billing-standard-runners.md b/translations/ja-JP/data/reusables/billing/billing-standard-runners.md new file mode 100644 index 0000000000..a31beb282d --- /dev/null +++ b/translations/ja-JP/data/reusables/billing/billing-standard-runners.md @@ -0,0 +1,5 @@ +| オペレーティングシステム | Cores | 分あたりの料金(米ドル) | +| ------------ | ----- | ------------ | +| Linux | 2 | $0.008 | +| macOS | 3 | $0.08 | +| Windows | 2 | $0.016 | diff --git a/translations/ja-JP/data/reusables/code-scanning/example-configuration-files.md b/translations/ja-JP/data/reusables/code-scanning/example-configuration-files.md index 18f4c8a7a0..00a1e2b31b 100644 --- a/translations/ja-JP/data/reusables/code-scanning/example-configuration-files.md +++ b/translations/ja-JP/data/reusables/code-scanning/example-configuration-files.md @@ -30,3 +30,22 @@ paths-ignore: - src/node_modules - '**/*.test.js' ``` + +{% ifversion code-scanning-exclude-queries-from-analysis %} + +以下の設定ファイルは、重要度がerrorのアラートを生成するクエリだけを実行します。 この設定は最初にすべてのデフォルトクエリ、`./my-queries`中のすべてのクエリ、`codeql/java-queries`中のデフォルトスイートを選択し、続いて警告や推奨事項を生成するすべてのクエリを除外します。 + +``` yaml +queries: + - name: Use an in-repository QL pack (run queries in the my-queries directory) + uses: ./my-queries +packs: + - codeql/java-queries +query-filters: +- exclude: + problem.severity: + - warning + - recommendation +``` + +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/code-scanning/licensing-note.md b/translations/ja-JP/data/reusables/code-scanning/licensing-note.md index 8a1df37865..a893b88321 100644 --- a/translations/ja-JP/data/reusables/code-scanning/licensing-note.md +++ b/translations/ja-JP/data/reusables/code-scanning/licensing-note.md @@ -1,8 +1,12 @@ {% note %} **ノート:** {% ifversion fpt %} -{% data variables.product.prodname_codeql_cli %}はパブリックリポジトリでは無料で使用できます。 {% data variables.product.prodname_codeql_cli %}は、{% data variables.product.prodname_ghe_cloud %}を使用し、{% data variables.product.prodname_GH_advanced_security %}のライセンスを持っているOrganizationが所有するプライベートリポジトリでも使用できます。 詳細については「[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %}の利用規約](https://securitylab.github.com/tools/codeql/license)」及び「[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)」を参照してください。 -{%- elsif ghec %}{% data variables.product.prodname_codeql_cli %}は{% data variables.product.prodname_dotcom_the_website %}でメンテナンスされているパブリックリポジトリでは無料で使用でき、{% data variables.product.prodname_advanced_security %}ライセンスを持っているお客様が所有するプライベートリポジトリでも使用できます。 詳細については「[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %}の利用規約](https://securitylab.github.com/tools/codeql/license)」及び「[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)」を参照してください。 -{%- elsif ghes or ghae %}{% data variables.product.prodname_codeql_cli %}は、{% data variables.product.prodname_advanced_security %}ライセンスを持つお客様にご利用いただけます。 +- {% data variables.product.prodname_codeql_cli %}は、パブリックリポジトリでは無料で利用できます。 {% data variables.product.prodname_codeql_cli %}は、{% data variables.product.prodname_ghe_cloud %}を使用し、{% data variables.product.prodname_GH_advanced_security %}のライセンスを持っているOrganizationが所有するプライベートリポジトリでも使用できます。 詳細については「[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %}の利用規約](https://securitylab.github.com/tools/codeql/license)」及び「[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)」を参照してください。 +{%- elsif ghec %} +- {% data variables.product.prodname_codeql_cli %}は{% data variables.product.prodname_dotcom_the_website %}でメンテナンスされているパブリックリポジトリでは無料で使用でき、{% data variables.product.prodname_advanced_security %}ライセンスを持っているお客様が所有するプライベートリポジトリでも使用できます。 詳細については「[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %}の利用規約](https://securitylab.github.com/tools/codeql/license)」及び「[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)」を参照してください。 +{%- elsif ghes or ghae %} +- {% data variables.product.prodname_codeql_cli %}は{% data variables.product.prodname_advanced_security %}ライセンスを持つお客様にご利用いただけます。 {% endif %} +- {% data reusables.code-scanning.non-glibc-linux-support %} + {% endnote %} diff --git a/translations/ja-JP/data/reusables/code-scanning/non-glibc-linux-support.md b/translations/ja-JP/data/reusables/code-scanning/non-glibc-linux-support.md new file mode 100644 index 0000000000..e53d59424f --- /dev/null +++ b/translations/ja-JP/data/reusables/code-scanning/non-glibc-linux-support.md @@ -0,0 +1 @@ +{% data variables.product.prodname_codeql_cli %}は現時点で、(muslベースの)Alpine Linuxなどの非glibc Linuxディストリビューションとは互換性がありません。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/code-scanning/run-additional-queries.md b/translations/ja-JP/data/reusables/code-scanning/run-additional-queries.md index 3f25bd67d1..fddae57c62 100644 --- a/translations/ja-JP/data/reusables/code-scanning/run-additional-queries.md +++ b/translations/ja-JP/data/reusables/code-scanning/run-additional-queries.md @@ -1,5 +1,13 @@ When you use {% data variables.product.prodname_codeql %} to scan code, the {% data variables.product.prodname_codeql %} analysis engine generates a database from the code and runs queries on it. {% data variables.product.prodname_codeql %} analysis uses a default set of queries, but you can specify more queries to run, in addition to the default queries. +{% ifversion code-scanning-exclude-queries-from-analysis %} +{% tip %} + +You can also specify the queries you want to exclude from analysis, or include in the analysis. This requires the use of a custom configuration file. For more information, see "[Using a custom configuration file](#using-a-custom-configuration-file)" and "[Excluding specific queries from analysis](#excluding-specific-queries-from-analysis) " below. + +{% endtip %} +{% endif %} + {% ifversion codeql-packs %} You can run extra queries if they are part of a {% data variables.product.prodname_codeql %} pack (beta) published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} or a {% data variables.product.prodname_ql %} pack stored in a repository. For more 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#about-codeql-queries)." diff --git a/translations/ja-JP/data/reusables/codespaces/click-remote-explorer-icon-vscode.md b/translations/ja-JP/data/reusables/codespaces/click-remote-explorer-icon-vscode.md index 4e76a26911..351b36a5b8 100644 --- a/translations/ja-JP/data/reusables/codespaces/click-remote-explorer-icon-vscode.md +++ b/translations/ja-JP/data/reusables/codespaces/click-remote-explorer-icon-vscode.md @@ -1 +1,5 @@ -1. {% data variables.product.prodname_vscode_shortname %}の左サイドバーで、 Remote Explorerのアイコンをクリックしてください。 ![{% data variables.product.prodname_vscode %}のRemote Explorerアイコン](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) +1. {% data variables.product.prodname_vscode_shortname %}の左サイドバーで、 Remote Explorerのアイコンをクリックしてください。 + + ![{% data variables.product.prodname_vscode %}のRemote Explorerアイコン](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) + +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/codespaces/codespaces-disabling-org-billing.md b/translations/ja-JP/data/reusables/codespaces/codespaces-disabling-org-billing.md new file mode 100644 index 0000000000..2f638bed7e --- /dev/null +++ b/translations/ja-JP/data/reusables/codespaces/codespaces-disabling-org-billing.md @@ -0,0 +1,5 @@ +{% note %} + +**ノート**: Organizationで課金されるcodespacesの利用を無効化した場合でも、個人ユーザとしてcodespacesを作成でき、Organization内のリポジトリをクローンできるユーザは、引き続きそのリポジトリに対してcodespaceを作成できます。 しかし、これによってOrganizationに対する課金が生じることはありません。 リポジトリへのアクセスの制限に関する情報については「[リポジトリへのアクセスを持つTeamや人の管理](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)」を参照してください。 + +{% endnote %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md b/translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md new file mode 100644 index 0000000000..dc54b526de --- /dev/null +++ b/translations/ja-JP/data/reusables/codespaces/codespaces-org-policies-note.md @@ -0,0 +1,5 @@ +{% note %} + +**ノート**: {% data variables.product.prodname_codespaces %}に対して定義するOrganizationのポリシーは、そのOrganizationに対して課金されるcodespacesにのみ適用されます。 個人ユーザがOrganization内のリポジトリに対してcodespaceを作成し、Organizationが課金されない場合は、そのcodespaceはそれらのポリシーによる制約を受けません。 Organizationに課金されるcodespaceを作成できるユーザの選択方法に関する情報については「[Organizationでの{% data variables.product.prodname_github_codespaces %}の有効化](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)」を参照してください。 + +{% endnote %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/codespaces/codespaces-spending-limit-requirement.md b/translations/ja-JP/data/reusables/codespaces/codespaces-spending-limit-requirement.md index 8f72ade561..8ead919aff 100644 --- a/translations/ja-JP/data/reusables/codespaces/codespaces-spending-limit-requirement.md +++ b/translations/ja-JP/data/reusables/codespaces/codespaces-spending-limit-requirement.md @@ -1,9 +1,9 @@ {% note %} -**ノート:** {% data variables.product.prodname_codespaces %}を利用するには、利用上限を設定しなければなりません。 +**ノート:** {% data variables.product.prodname_codespaces %}を利用するには、0ではない利用上限を設定しなければなりません。 {% endnote %} -デフォルトでは、OrganizationもしくはEnterpriseは$0の{% data variables.product.prodname_github_codespaces %}の利用上限を持っており、これは新しいcodespaceの作成や、既存のcodespaceのオープンを禁止します。 Organiationでユーザがcodespaceを作成できるようにするには、この上限を$0よりも大きな値に設定してください。 +デフォルトでは、OrganizationもしくはEnterpriseは、$0の{% data variables.product.prodname_github_codespaces %}利用上限を持ちます。 これによって、OrganizationやEntepriseへの課金が発生する場合に、新しいcodespaceが作成されたり、既存のcodespacesがオープンされることを防げます。 Organiationでユーザがcodespaceを作成できるようにするには、この上限を$0よりも大きな値に設定してください。 {% data reusables.billing.overages-billed-monthly %} diff --git a/translations/ja-JP/data/reusables/codespaces/open-codespace-from-template-repo.md b/translations/ja-JP/data/reusables/codespaces/open-codespace-from-template-repo.md new file mode 100644 index 0000000000..4e37ab72c2 --- /dev/null +++ b/translations/ja-JP/data/reusables/codespaces/open-codespace-from-template-repo.md @@ -0,0 +1,8 @@ +1. Select an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. +1. On the main page of the newly created repository, click the **{% octicon "code" aria-label="The code icon" %} Code** button and select the **Codespaces** tab. + + ![[New codespace] ボタン](/assets/images/help/codespaces/new-codespace-button.png) + + If you don’t see this tab, {% data variables.product.prodname_github_codespaces %} isn't available for you. For more information about access to {% data variables.product.prodname_github_codespaces %}, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)." + +1. On the **Codespaces** tab, click **Create codespace on main**. diff --git a/translations/ja-JP/data/reusables/codespaces/rebuild-command.md b/translations/ja-JP/data/reusables/codespaces/rebuild-command.md index 9e79fd326b..a2491badcf 100644 --- a/translations/ja-JP/data/reusables/codespaces/rebuild-command.md +++ b/translations/ja-JP/data/reusables/codespaces/rebuild-command.md @@ -1,5 +1,3 @@ -1. {% data variables.product.prodname_vscode_command_palette %}にアクセスし(Shift + Command + P / Ctrl + Shift + P)、"rebuild"と入力し始めてください。 **Codespaces: Rebuild Container(Codespaces: コンテナをリビルド)**を選択してください。 +1. Access the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "rebuild". **Codespaces: Rebuild Container(Codespaces: コンテナをリビルド)**を選択してください。 ![コンテナリビルドの選択肢](/assets/images/help/codespaces/codespaces-rebuild.png) - - diff --git a/translations/ja-JP/data/reusables/codespaces/remote-explorer.md b/translations/ja-JP/data/reusables/codespaces/remote-explorer.md new file mode 100644 index 0000000000..4a8ab876fd --- /dev/null +++ b/translations/ja-JP/data/reusables/codespaces/remote-explorer.md @@ -0,0 +1,9 @@ +{% note %} + +**ノート**: Remote Explorerがアクティビティバーに表示されない場合: + +1. Access the Command Palette. たとえばShift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linuxを押します。 +1. `codespaces`と入力してください。 +1. **Codespaces: Details(Codespacesの詳細)**をクリックしてください。 + +{% endnote %} diff --git a/translations/ja-JP/data/reusables/dependabot/dependabot-alerts-filters.md b/translations/ja-JP/data/reusables/dependabot/dependabot-alerts-filters.md index 13b75a00f4..f2e1222930 100644 --- a/translations/ja-JP/data/reusables/dependabot/dependabot-alerts-filters.md +++ b/translations/ja-JP/data/reusables/dependabot/dependabot-alerts-filters.md @@ -1,17 +1,17 @@ -You can sort and filter {% data variables.product.prodname_dependabot_alerts %} by typing filters as `key:value` pairs into the search bar. +`key:value`ペアとしてフィルタを検索バーに入力することで、{% data variables.product.prodname_dependabot_alerts %}のソートとフィルタリングが行えます。 -| オプション | 説明 | サンプル | -|:---------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `エコシステム` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 %} -| `has` | Displays alerts meeting the selected filter criteria | Use `has:patch` to show alerts related to advisories that have a patch{% ifversion dependabot-alerts-vulnerable-calls %}
Use `has:vulnerable-calls` to show alerts relating to calls to vulnerable functions{% endif %} +| オプション | 説明 | サンプル | +|:------------ |:------------------------------------------------------------------------------------------------------------------------------------------------------------------ |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `ecosystem` | 選択されたエコシステムのアラートを表示 | `ecosystem:npm`を使ってnpmの{% data variables.product.prodname_dependabot_alerts %}を表示 |{% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-7891 %} +| `has` | 選択されたフィルタ条件を満たすアラートを表示 | `has:patch`を使ってパッチを持つアドバイザリに関連したアラートを表示{% ifversion dependabot-alerts-vulnerable-calls %}
`has:vulnerable-calls`を使って脆弱性のある関数の呼び出しに関連したアラートを表示{% endif %} {% endif %} -| `is` | Displays alerts based on their state | Use `is:open` to show open alerts | -| `manifest` | Displays alerts for the selected manifest | Use `manifest:webwolf/pom.xml` to show alerts on the pom.xml file of the webwolf application | -| `package` | Displays alerts for the selected package | Use `package:django` to show alerts for django | -| `解決策` | Displays alerts of the selected resolution status | Use `resolution:no-bandwidth` to show alerts previously parked due to lack of resources or time to fix them | -| `repo` | Displays alerts based on the repository they relate to
Note that this filter is only available on the security overview. For more information, see "[About the security overview](/code-security/security-overview/about-the-security-overview)" | Use `repo:octocat-repo` to show alerts in the repository called `octocat-repo` |{%- ifversion dependabot-alerts-development-label %} -| `スコープ` | Displays alerts based on the scope of the dependency they relate to | Use `scope:development` to show alerts for dependencies that are only used during development +| `is` | 状態に基づいてアラートを表示 | `is:open`を使ってオープンなアラートを表示 | +| `manifest` | 選択されたマニフェストのアラートを表示 | `manifest:webwolf/pom.xml`を使ってwebwolfアプリケーションのpom.xmlに対するアラートを表示 | +| `package` | 選択されたパッケージに対するアラートを表示 | `package:django`を使ってdjangoに対するアラートを表示 | +| `resolution` | 選択された解決のステータスに対するアラートを表示 | `resolution:no-bandwidth`を使って、以前にリソース不足あるいは修正する時間が無いことから置かれたアラートを表示 | +| `repo` | 関連するリポジトリに基づいてアラートを表示
このフィルタはセキュリティの概要でのみ利用できることに注意してください。 詳しい情報については「[セキュリティの概要について](/code-security/security-overview/about-the-security-overview)」を参照してください。 | `repo:octocat-repo`を使って`octocat-repo`というリポジトリ内のアラートを表示 |{%- ifversion dependabot-alerts-development-label %} +| `scope` | 関連する依存関係のスコープに基づいてアラートを表示 | `scope:development`を使って開発の間にだけ使われた依存関係に対するアラートを表示 {% endif %} -| `重要度` | Displays alerts based on their level of severity | Use `severity:high` to show alerts with a severity of High |{%- ifversion dependabot-most-important-sort-option %} -| `ソート` | Displays alerts according to the selected sort order | The default sorting option for alerts is `sort:most-important`, which ranks alerts by importance
Use `sort:newest` to show the latest alerts reported by {% data variables.product.prodname_dependabot %} +| `severity` | 重要度のレベルに基づいてアラートを表示 | `severity:high`を使って重要度がHighのアラートを表示 |{%- ifversion dependabot-most-important-sort-option %} +| `sort` | 選択されたソート順に従ってアラートを表示 | アラートのデフォルトのソートオプションは、アラートを重要度でランク付けする`sort:most-important`
`sort:newest`を使って、{% data variables.product.prodname_dependabot %}が報告した最新のアラートを表示 {% endif %} diff --git a/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-beta-note.md b/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-beta-note.md index 8d20821802..b4c529258f 100644 --- a/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-beta-note.md +++ b/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-beta-note.md @@ -2,4 +2,4 @@ **ノート**: {% data variables.product.prodname_dependency_review_action %}は現在パブリックベータであり、変更されることがあります。 -{% endnote %} +{% endnote %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-overview.md b/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-overview.md index ce009a9d6c..62a00d3515 100644 --- a/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-overview.md +++ b/translations/ja-JP/data/reusables/dependency-review/dependency-review-action-overview.md @@ -1,3 +1,3 @@ {% data variables.product.prodname_dependency_review_action %}はPull Requestをスキャンして依存関係の変更を探し、脆弱性があることが知られている新しい依存関係があればエラーを発生させます。 このアクションは、2つのリビジョン間で依存関係を比較し、差異があれば報告するAPIエンドポイントによってサポートされています。 -このアクションとAPIエンドポイントに関する詳しい情報については、それぞれ「[依存関係レビューについて](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-reinforcement)」及びAPIドキュメンテーションの「[依存関係レビュー](/rest/dependency-graph/dependency-review)を参照してください。 +For more information about the action and the API endpoint, see the [`dependency-review-action`](https://github.com/actions/dependency-review-action) documentation, and "[Dependency review](/rest/dependency-graph/dependency-review)" in the API documentation. diff --git a/translations/ja-JP/data/reusables/enterprise-accounts/repo-creation-policy.md b/translations/ja-JP/data/reusables/enterprise-accounts/repo-creation-policy.md index 900d63c2a9..0352e6f347 100644 --- a/translations/ja-JP/data/reusables/enterprise-accounts/repo-creation-policy.md +++ b/translations/ja-JP/data/reusables/enterprise-accounts/repo-creation-policy.md @@ -1 +1,6 @@ -1. "Repository creation(リポジトリの作成)"の下で、ポリシーを選択してください。 ![リポジトリ作成ポリシーオプションのドロップダウンメニュー](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) +1. "Repository creation(リポジトリの作成)"の下で、ポリシーを選択してください。 + {% ifversion enterprise-namespace-repo-setting %} + ![リポジトリ作成ポリシーオプションのドロップダウンメニュー](/assets/images/help/business-accounts/restrict-personal-namespace-setting.png) + {% else %} + ![リポジトリ作成ポリシーオプションのドロップダウンメニュー](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) + {% endif %} diff --git a/translations/ja-JP/data/reusables/enterprise-accounts/repository-visibility-policy.md b/translations/ja-JP/data/reusables/enterprise-accounts/repository-visibility-policy.md deleted file mode 100644 index ea691fa5ba..0000000000 --- a/translations/ja-JP/data/reusables/enterprise-accounts/repository-visibility-policy.md +++ /dev/null @@ -1 +0,0 @@ -1. "Repository visibility change(リポジトリの可視性の変更)"の下で、ドロップダウンメニューを使ってポリシーを選択してください。 ![リポジトリの可視性のポリシーの選択肢があるドロップダウンメニュー](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) diff --git a/translations/ja-JP/data/reusables/enterprise-accounts/security-tab.md b/translations/ja-JP/data/reusables/enterprise-accounts/security-tab.md index 3814053ef8..5eaf02ca19 100644 --- a/translations/ja-JP/data/reusables/enterprise-accounts/security-tab.md +++ b/translations/ja-JP/data/reusables/enterprise-accounts/security-tab.md @@ -1,2 +1,7 @@ +{%- ifversion ghec or ghes > 3.4 or ghae-issue-7875 %} +1. 左のサイドバーで**Authentication security(認証のセキュリティ)**をクリックしてください。 + {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-authentication-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-authentication-security-tab.png){% endif %} +{%- else %} 1. 左のサイドバーで**Security(セキュリティ)**をクリックしてください。 {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-security-tab.png){% endif %} +{%- endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/gated-features/hosted-runners.md b/translations/ja-JP/data/reusables/gated-features/hosted-runners.md new file mode 100644 index 0000000000..4f1e2137bb --- /dev/null +++ b/translations/ja-JP/data/reusables/gated-features/hosted-runners.md @@ -0,0 +1 @@ +The {% data variables.actions.hosted_runner %}s feature is currently in beta for organizations and enterprises using the {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %} plans, and is subject to change. \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/getting-started/bearer-vs-token.md b/translations/ja-JP/data/reusables/getting-started/bearer-vs-token.md new file mode 100644 index 0000000000..9dd0b62ada --- /dev/null +++ b/translations/ja-JP/data/reusables/getting-started/bearer-vs-token.md @@ -0,0 +1 @@ +In most cases, you can use `Authorization: Bearer` or `Authorization: token` to pass a token. However, if you are passing a JSON web token (JWT), you must use `Authorization: Bearer`. \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/git/cache-on-repository-path.md b/translations/ja-JP/data/reusables/git/cache-on-repository-path.md new file mode 100644 index 0000000000..cd19dc5b54 --- /dev/null +++ b/translations/ja-JP/data/reusables/git/cache-on-repository-path.md @@ -0,0 +1,5 @@ +1. リポジトリをクローンしたそれぞれのローカルディレクトリに認証情報をキャッシュするようGitを設定するには、以下のコマンドを入力してください。 + + ```shell{:copy} + git config --global credential.useHttpPath true + ``` diff --git a/translations/ja-JP/data/reusables/git/clear-stored-gcm-credentials.md b/translations/ja-JP/data/reusables/git/clear-stored-gcm-credentials.md new file mode 100644 index 0000000000..5c3f0886d4 --- /dev/null +++ b/translations/ja-JP/data/reusables/git/clear-stored-gcm-credentials.md @@ -0,0 +1,5 @@ +- 出力が`manager-core`であれば、Git Credential Managerが使われています。 認証情報をクリアするには、以下のコマンドを実行してください。 + + ```shell{:copy} + git credential-manager reject https://github.com + ``` diff --git a/translations/ja-JP/data/reusables/git/clear-the-stored-credentials.md b/translations/ja-JP/data/reusables/git/clear-the-stored-credentials.md new file mode 100644 index 0000000000..51ca4b48ff --- /dev/null +++ b/translations/ja-JP/data/reusables/git/clear-the-stored-credentials.md @@ -0,0 +1 @@ +1. 出力で認証情報マネージャーの利用が確認された場合、その認証情報マネージャーに保存された認証情報をクリアしてください。 diff --git a/translations/ja-JP/data/reusables/git/confirm-credential-manager.md b/translations/ja-JP/data/reusables/git/confirm-credential-manager.md new file mode 100644 index 0000000000..dc2041121b --- /dev/null +++ b/translations/ja-JP/data/reusables/git/confirm-credential-manager.md @@ -0,0 +1,5 @@ +1. 認証情報マネージャーの利用を確認するには、以下のコマンドを入力し、出力を記録してください。 + + ```shell{:copy} + git config --get credential.helper + ``` diff --git a/translations/ja-JP/data/reusables/git/no-credential-manager.md b/translations/ja-JP/data/reusables/git/no-credential-manager.md new file mode 100644 index 0000000000..88a8a8c5d9 --- /dev/null +++ b/translations/ja-JP/data/reusables/git/no-credential-manager.md @@ -0,0 +1 @@ +- 出力に認証情報マネージャーの名前が含まれていない場合、認証情報マネージャーは設定されておらず、次のステップに進むことができます。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/git/open-terminal.md b/translations/ja-JP/data/reusables/git/open-terminal.md new file mode 100644 index 0000000000..7f460ada8e --- /dev/null +++ b/translations/ja-JP/data/reusables/git/open-terminal.md @@ -0,0 +1 @@ +1. ターミナルを開きます。 diff --git a/translations/ja-JP/data/reusables/git/provide-credentials.md b/translations/ja-JP/data/reusables/git/provide-credentials.md new file mode 100644 index 0000000000..d395aafd3a --- /dev/null +++ b/translations/ja-JP/data/reusables/git/provide-credentials.md @@ -0,0 +1,3 @@ +1. 初めてGitを使ってリポジトリをクローンしたり、クローンしたリポジトリ内のデータにアクセスしようとすると、Gitは認証情報を要求します。 リポジトリへのアクセスを持つアカウントのPATを提供してください。 + + Gitは現在のディレクトリにPATをキャッシュし、適切なアカウントを使って{% data variables.product.product_location %}上のリポジトリデータにアクセスし、書き込みできるようになります。 diff --git a/translations/ja-JP/data/reusables/gpg/configure-ssh-signing.md b/translations/ja-JP/data/reusables/gpg/configure-ssh-signing.md new file mode 100644 index 0000000000..04c9ba74dd --- /dev/null +++ b/translations/ja-JP/data/reusables/gpg/configure-ssh-signing.md @@ -0,0 +1,4 @@ +1. SHHを使ってコミットとタグに署名するようGitを設定してください。 + ```bash + $ git config --global gpg.format ssh + ``` \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/gpg/copy-gpg-key-id.md b/translations/ja-JP/data/reusables/gpg/copy-gpg-key-id.md index 34b505fd16..75470758d6 100644 --- a/translations/ja-JP/data/reusables/gpg/copy-gpg-key-id.md +++ b/translations/ja-JP/data/reusables/gpg/copy-gpg-key-id.md @@ -1,9 +1,9 @@ 1. GPGキーのリストから、使いたいGPGキーIDの長い形式をコピーしてください。 この例では、GPG キー ID は `3AA5C34371567BD2` です。 - ```shell + ```shell{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/42B317FD4BA89E7A 2016-03-10 - ``` + ``` diff --git a/translations/ja-JP/data/reusables/gpg/copy-ssh-public-key.md b/translations/ja-JP/data/reusables/gpg/copy-ssh-public-key.md new file mode 100644 index 0000000000..30e0b44fb6 --- /dev/null +++ b/translations/ja-JP/data/reusables/gpg/copy-ssh-public-key.md @@ -0,0 +1,43 @@ +1. SSH 公開鍵をクリップボードにコピーします。 + + SSH 公開鍵のファイル名がサンプルコードと異なる場合は、現在の設定に一致するようにファイル名を変更してください。 キーをコピーする際には、改行や空白を追加しないでください。 +{% mac %} + + ```shell + $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pubファイルの内容をクリップボードにコピー + ``` + + {% tip %} + + **ヒント:** `pbcopy` がうまく動作しない場合は、隠れフォルダ `.ssh` にアクセスし、使い慣れたテキストエディタでこのファイルを開き、クリップボードにコピーしてください。 + + {% endtip %} +{% endmac %} +{% windows %} + + ```shell + $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pubファイルの内容をクリップボードにコピー + ``` + + {% tip %} + + **ヒント:** `clip` がうまく動作しない場合は、隠しフォルダ `.ssh` にアクセスし、使い慣れたテキストエディタでこのファイルを開き、クリップボードにコピーしてください。 + + {% endtip %} +{% endwindows %} +{% linux %} + + ```shell + $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # 続いてターミナルに表示されたid_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # ファイルの内容を選択してコピー + ``` + + {% tip %} + + **参考:** あるいは隠しフォルダの`.ssh`を見つけて、好きなテキストエディタでこのファイルを開き、クリップボードにコピーしてください。 + + {% endtip %} +{% endlinux %} diff --git a/translations/ja-JP/data/reusables/gpg/list-keys-with-note.md b/translations/ja-JP/data/reusables/gpg/list-keys-with-note.md index 1a5a7f5729..8243508393 100644 --- a/translations/ja-JP/data/reusables/gpg/list-keys-with-note.md +++ b/translations/ja-JP/data/reusables/gpg/list-keys-with-note.md @@ -1,10 +1,11 @@ - 1. 公開鍵と秘密鍵をどちらも持っているGPGキーの長い形式のリストを表示するには、 `gpg --list-secret-keys --keyid-format=long`コマンドを使ってください。 コミットやタグに署名するには秘密鍵が必要です。 - ```shell - $ gpg --list-secret-keys --keyid-format=long -``` - {% note %} - **ノート:**LinuxのGPG環境の中には、既存のキーのリストを表示させるために`gpg2 --list-keys --keyid-format LONG`としなければならないものもあります。 この場合、`git config --global gpg.program gpg2`と実行してGitが`gpg2`を使うように設定する必要もあります。 + ```shell{:copy} + $ gpg --list-secret-keys --keyid-format=long + ``` - {% endnote %} + {% note %} + + **ノート:**LinuxのGPG環境の中には、既存のキーのリストを表示させるために`gpg2 --list-keys --keyid-format LONG`としなければならないものもあります。 この場合、`git config --global gpg.program gpg2`と実行してGitが`gpg2`を使うように設定する必要もあります。 + + {% endnote %} diff --git a/translations/ja-JP/data/reusables/gpg/paste-ssh-public-key.md b/translations/ja-JP/data/reusables/gpg/paste-ssh-public-key.md new file mode 100644 index 0000000000..f372e1a7fc --- /dev/null +++ b/translations/ja-JP/data/reusables/gpg/paste-ssh-public-key.md @@ -0,0 +1,4 @@ +1. GitでSSH署名キーを設定するには、クリップボードの内容を使いたいキーに置き換えて以下のテキストを貼り付けてください。 キーは空白を含むので、引用符で囲まなければなりません。 + ```bash + $ git config --global user.signingkey 'ssh-ed25519 AAAAC3(...) user@example.com' + ``` \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/gpg/ssh-git-version.md b/translations/ja-JP/data/reusables/gpg/ssh-git-version.md new file mode 100644 index 0000000000..0462816bbe --- /dev/null +++ b/translations/ja-JP/data/reusables/gpg/ssh-git-version.md @@ -0,0 +1,6 @@ + +{% note %} + +**ノート:** SSH署名検証は、Git 2.34以降で利用できます。 Gitのバージョンをアップデートするには、[Git](https://git-scm.com/downloads)のWebサイトを参照してください。 + +{% endnote %} diff --git a/translations/ja-JP/data/reusables/gpg/x-509-key.md b/translations/ja-JP/data/reusables/gpg/x-509-key.md index 7a65302459..29ca780927 100644 --- a/translations/ja-JP/data/reusables/gpg/x-509-key.md +++ b/translations/ja-JP/data/reusables/gpg/x-509-key.md @@ -1,5 +1,5 @@ -### Git にX.509 キーについて知らせる +## Git にX.509 キーについて知らせる GPGではなくS/MIMEを使ってコミットやタグに署名するために、[smimesign](https://github.com/github/smimesign)を使うことができます。 diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md b/translations/ja-JP/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md new file mode 100644 index 0000000000..a5d586a9c3 --- /dev/null +++ b/translations/ja-JP/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md @@ -0,0 +1,3 @@ +IPアドレスもしくはアドレスの範囲を含むエントリを追加することで、IP許可リストを作成できます。{% ifversion ip-allow-list-address-check %} エントリの追加を終えたら、特定のIPアドレスがリスト中の有効化エントリのいずれかによって許可されるかをチェックできます。{% endif %} + +このリストが{% ifversion ghae %}Enterprise{% else %}Enterprise内のOrganizationが所有するプライベートアセット{% endif %}へのアクセスを制限する前に、許可IPアドレスも有効化しなければなりません。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/about-checking-ip-address.md b/translations/ja-JP/data/reusables/identity-and-permissions/about-checking-ip-address.md new file mode 100644 index 0000000000..45ce5027d5 --- /dev/null +++ b/translations/ja-JP/data/reusables/identity-and-permissions/about-checking-ip-address.md @@ -0,0 +1 @@ +IP許可リストが現在有効化されていなくても、特定の IPアドレスが IP許可リスト内の有効なエントリのいずれかによって許可されるかどうかを確認できます。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md b/translations/ja-JP/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md new file mode 100644 index 0000000000..9bc1526e4f --- /dev/null +++ b/translations/ja-JP/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md @@ -0,0 +1,5 @@ +IP許可リスト内のエントリを編集できます。 有効化されたエントリを編集すると、変更はすぐに適用されます。 + +{% ifversion ip-allow-list-address-check %} +エントリの編集が終わったら、特定のIPアドレスがリスト中の有効なエントリのいずれかによって許可されるかをチェックできます。 +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md b/translations/ja-JP/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md new file mode 100644 index 0000000000..b6aba096b3 --- /dev/null +++ b/translations/ja-JP/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md @@ -0,0 +1,5 @@ +IP許可リストを作成したら、許可されたIPアドレスを有効化できます。 許可IPアドレスを有効化すると、{% data variables.product.company_short %}はIP許可リスト内のすべての有効なエントリを適用します。 + +{% ifversion ip-allow-list-address-check %} +許可されたIPアドレスを有効化する前に、特定のIPアドレスがリスト中の有効なエントリのいずれかによって許可されるかをチェックできます。 詳しい情報については「[IPアドレスが許可されているかのチェック](#checking-if-an-ip-address-is-permitted)」を参照してください。 +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/check-ip-address-step.md b/translations/ja-JP/data/reusables/identity-and-permissions/check-ip-address-step.md new file mode 100644 index 0000000000..95e621b09a --- /dev/null +++ b/translations/ja-JP/data/reusables/identity-and-permissions/check-ip-address-step.md @@ -0,0 +1 @@ +1. "Check your IP address(IPアドレスをチェック)"の下で、IPアドレスを入力してください。 !["Check IP address"テキストフィールドのスクリーンショット](/assets/images/help/security/check-ip-address.png) \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/check-ip-address.md b/translations/ja-JP/data/reusables/identity-and-permissions/check-ip-address.md new file mode 100644 index 0000000000..bcb3c65a6a --- /dev/null +++ b/translations/ja-JP/data/reusables/identity-and-permissions/check-ip-address.md @@ -0,0 +1,3 @@ +{%- ifversion ip-allow-list-address-check %} +1. あるいは、特定のIPアドレスがリスト中の有効なエントリのいずれかによって許可されているかチェックしてください。 詳しい情報については「[IPアドレスが許可されているかのチェック](#checking-if-an-ip-address-is-permitted)」を参照してください。 +{%- endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/ip-allow-lists-enable.md b/translations/ja-JP/data/reusables/identity-and-permissions/ip-allow-lists-enable.md index 9fd83f774c..c86cfcea2e 100644 --- a/translations/ja-JP/data/reusables/identity-and-permissions/ip-allow-lists-enable.md +++ b/translations/ja-JP/data/reusables/identity-and-permissions/ip-allow-lists-enable.md @@ -1 +1,3 @@ -IP許可リストを強制するには、まずIPアドレスをリストに追加し、それからIP許可リストを有効化しなければなりません。 IP 許可リストを有効にするには、現在の IP アドレスまたは一致する範囲を追加する必要があります。 +IP許可リストを適用するには、まずIPアドレスをリストに追加し、続いてIP許可リストを有効化しなければなりません。{% ifversion ip-allow-list-address-check %}リストが完成したら、特定のIPアドレスがリスト中の有効なエントリのいずれかによって許可されるかをチェックできます。{% endif %} + +IP 許可リストを有効にするには、現在の IP アドレスまたは一致する範囲を追加する必要があります。 diff --git a/translations/ja-JP/data/reusables/identity-and-permissions/ipv6-allow-lists.md b/translations/ja-JP/data/reusables/identity-and-permissions/ipv6-allow-lists.md new file mode 100644 index 0000000000..db5045625d --- /dev/null +++ b/translations/ja-JP/data/reusables/identity-and-permissions/ipv6-allow-lists.md @@ -0,0 +1,7 @@ +{% ifversion fpt or ghec %} +{% note %} + +**ノート:** {% data variables.product.company_short %}は徐々にIPv6のサポートを展開していきます。 {% data variables.product.prodname_dotcom %}サービスがIPv6のサポートを追加していくにつれて、{% data variables.product.prodname_dotcom %}ユーザのIPv6アドレスの認識を開始していきます。 アクセスの中断を防ぐため、必要なIPv6のアドレスがIP許可リストに追加されていることを確認してください。 + +{% endnote %} +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/organizations/about-following-organizations.md b/translations/ja-JP/data/reusables/organizations/about-following-organizations.md new file mode 100644 index 0000000000..49c10f428f --- /dev/null +++ b/translations/ja-JP/data/reusables/organizations/about-following-organizations.md @@ -0,0 +1 @@ +{% data variables.product.product_name %}上のOrganizationをフォローすると、それらの{% ifversion fpt or ghec %}パブリックな{% endif %}アクティビティが個人ダッシュボードに表示されるようになります。 このアクティビティには、新しいディスカッション、スポンサーシップ、リポジトリが含まれます。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/organizations/follow-organizations-beta.md b/translations/ja-JP/data/reusables/organizations/follow-organizations-beta.md new file mode 100644 index 0000000000..99805293ae --- /dev/null +++ b/translations/ja-JP/data/reusables/organizations/follow-organizations-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**ノート:** Organizationをフォローする機能は現在パブリックベータであり、変更されることがあります。 + +{% endnote %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/organizations/new_team.md b/translations/ja-JP/data/reusables/organizations/new_team.md index 20183a885d..746538b727 100644 --- a/translations/ja-JP/data/reusables/organizations/new_team.md +++ b/translations/ja-JP/data/reusables/organizations/new_team.md @@ -1,5 +1,5 @@ -1. Organization 名の下で、クリックします -{% octicon "people" aria-label="The people icon" %} **Teams**. +1. Organization 名の下で、 +{% octicon "people" aria-label="The people icon" %} **Teams**をクリックしてください。 {% ifversion fpt or ghes > 3.2 or ghec %} ![Teamsタブ](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} diff --git a/translations/ja-JP/data/reusables/organizations/oauth_app_access.md b/translations/ja-JP/data/reusables/organizations/oauth_app_access.md index a2dc8773f5..33c8dfc8c9 100644 --- a/translations/ja-JP/data/reusables/organizations/oauth_app_access.md +++ b/translations/ja-JP/data/reusables/organizations/oauth_app_access.md @@ -1 +1 @@ -1. In the "Integrations" section of the sidebar, click **{% octicon "key" aria-label="The key icon" %} Third-party access**. +1. サイドバーの「Integrations(インテグレーション)」セクションで、**{% octicon "key" aria-label="The key icon" %} Third-party access(サードパーティのアクセス)**をクリックしてください。 diff --git a/translations/ja-JP/data/reusables/organizations/org-invite-scim.md b/translations/ja-JP/data/reusables/organizations/org-invite-scim.md index cb5d723d48..bb5b6694af 100644 --- a/translations/ja-JP/data/reusables/organizations/org-invite-scim.md +++ b/translations/ja-JP/data/reusables/organizations/org-invite-scim.md @@ -1 +1 @@ -If an invitee does not accept the invitation within seven days, the pending invitation expires automatically. After expiration, {% data variables.product.company_short %} will no longer bill you for the pending invitation.{% ifversion ghec %} If a SCIM request from your identity provider (IdP) generates the invitation, the invitation will not expire.{% endif %} +招待された人が招待を7日以内に唱題しなかった場合、保留されていた招待は自動的に期限切れになります。 期限切れになると、{% data variables.product.company_short %}は保留された招待に対して課金しなくなります。{% ifversion ghec %}アイデンティティプロバイダ(IdP)からのSCIMリクエストが招待を生成した場合、その招待は期限切れになりません。{% endif %} diff --git a/translations/ja-JP/data/reusables/organizations/org-list.md b/translations/ja-JP/data/reusables/organizations/org-list.md index c63dd5d64e..45e5d566af 100644 --- a/translations/ja-JP/data/reusables/organizations/org-list.md +++ b/translations/ja-JP/data/reusables/organizations/org-list.md @@ -1 +1 @@ -1. Under "Organizations", next to the name of your organization, click **Settings**. ![Screenshot of an organization next to the "Settings" button](/assets/images/help/organizations/list-of-organizations.png) +1. "Organizations"の下で、Organization名の隣の**Settings(設定)**をクリックしてください。 !["Settings"ボタンの隣のOrganizationのスクリーンショット](/assets/images/help/organizations/list-of-organizations.png) diff --git a/translations/ja-JP/data/reusables/organizations/org-settings-repository-roles.md b/translations/ja-JP/data/reusables/organizations/org-settings-repository-roles.md index 937618670b..07151d44df 100644 --- a/translations/ja-JP/data/reusables/organizations/org-settings-repository-roles.md +++ b/translations/ja-JP/data/reusables/organizations/org-settings-repository-roles.md @@ -1 +1 @@ -1. In the "Access" section of the sidebar, click **{% octicon "id-badge" aria-label="The ID badge icon" %} Repository roles**. +1. サイドバーの"Access(アクセス)"セクションで、**{% octicon "id-badge" aria-label="The ID badge icon" %} Repository roles(リポジトリロール)**をクリックしてください。 diff --git a/translations/ja-JP/data/reusables/organizations/org_settings.md b/translations/ja-JP/data/reusables/organizations/org_settings.md index bfd643b511..87cea66ccb 100644 --- a/translations/ja-JP/data/reusables/organizations/org_settings.md +++ b/translations/ja-JP/data/reusables/organizations/org_settings.md @@ -1,5 +1,5 @@ 1. Organization 名の下で、クリックします -{% octicon "gear" aria-label="The Settings gear" %} **Settings**. +{% octicon "gear" aria-label="The Settings gear" %} **Settings(設定)** {% ifversion fpt or ghes > 3.2 or ghec %} ![Organizationの設定ボタン](/assets/images/help/organizations/organization-settings-tab-with-overview-tab.png) {% else %} diff --git a/translations/ja-JP/data/reusables/organizations/organization-plans.md b/translations/ja-JP/data/reusables/organizations/organization-plans.md index bb3822d560..2b56578116 100644 --- a/translations/ja-JP/data/reusables/organizations/organization-plans.md +++ b/translations/ja-JP/data/reusables/organizations/organization-plans.md @@ -1,5 +1,5 @@ {% ifversion fpt or ghec %} -All organizations can own an unlimited number of public and private repositories. You can use organizations for free, with {% data variables.product.prodname_free_team %}, which includes limited features on private repositories. To get the full feature set on private repositories and additional features at the organization level, including SAML single sign-on 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 %} +すべてのOrganizationは、無制限の数のパブリック及びプライベートリポジトリを所有できます。 {% data variables.product.prodname_free_team %}でOrganizationは無料で使用でき、プライベートリポジトリには限定された機能が含まれます。 プライベートリポジトリで完全な機能を設定し、SAMLシングルサインオンや改善されたサポートカバレッジを含むOrganizaitonレベルで追加の機能を設定するには、{% data variables.product.prodname_team %}もしくは{% data variables.product.prodname_ghe_cloud %}にアップグレードできます。 {% data reusables.gated-features.more-info %} {% ifversion fpt %} {% data reusables.enterprise.link-to-ghec-trial %}{% endif %} diff --git a/translations/ja-JP/data/reusables/organizations/outside-collaborators-use-seats.md b/translations/ja-JP/data/reusables/organizations/outside-collaborators-use-seats.md index 7857597cad..198a28f29f 100644 --- a/translations/ja-JP/data/reusables/organizations/outside-collaborators-use-seats.md +++ b/translations/ja-JP/data/reusables/organizations/outside-collaborators-use-seats.md @@ -1 +1 @@ -Adding an outside collaborator to a private{% ifversion ghec %} or internal{% endif %} repository will use one of your paid licenses. For more information, see "{% ifversion fpt or ghec %}[About per-user pricing](/billing/managing-billing-for-your-github-account/about-per-user-pricing){% elsif ghes or ghae %}[About billing for your enterprise](/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise){% endif %}." +プライベート{% ifversion ghec %}もしくはインターナル{% endif %}リポジトリへ外部のコラボレータを追加すると、有料ライセンスが使用されます。 詳しい情報については「{% ifversion fpt or ghec %}[ユーザごとの価格付けについて](/billing/managing-billing-for-your-github-account/about-per-user-pricing){% elsif ghes or ghae %}[Enterpriseでの支払いについて](/billing/managing-billing-for-your-github-account/about-billing-for-your-enterprise){% endif %}」を参照してください。 diff --git a/translations/ja-JP/data/reusables/organizations/owners-team.md b/translations/ja-JP/data/reusables/organizations/owners-team.md index 4fcb55858c..9bb10d6d11 100644 --- a/translations/ja-JP/data/reusables/organizations/owners-team.md +++ b/translations/ja-JP/data/reusables/organizations/owners-team.md @@ -1,5 +1,5 @@ 1. Organization 名の下で、クリックします -{% octicon "people" aria-label="The people icon" %} **Teams**. +{% octicon "people" aria-label="The people icon" %} **Teams**をクリックしてください。 {% ifversion fpt or ghes > 3.2 or ghec %} ![Teamsタブ](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} diff --git a/translations/ja-JP/data/reusables/organizations/people-export.md b/translations/ja-JP/data/reusables/organizations/people-export.md index 938ea3529f..b5f59ec000 100644 --- a/translations/ja-JP/data/reusables/organizations/people-export.md +++ b/translations/ja-JP/data/reusables/organizations/people-export.md @@ -1 +1 @@ -1. To the right of the search bar, select the Export drop-down menu and click the desired export format. ![Screenshot of the export button.](/assets/images/help/organizations/people-tab-export.png) +1. 検索バーの右で、Exportドロップダウンメニューを選択し、希望するエクスポート形式をクリックしてください。 ![エクスポートボタンのスクリーンショット](/assets/images/help/organizations/people-tab-export.png) diff --git a/translations/ja-JP/data/reusables/organizations/people.md b/translations/ja-JP/data/reusables/organizations/people.md index 56d2d6f9f2..165216037e 100644 --- a/translations/ja-JP/data/reusables/organizations/people.md +++ b/translations/ja-JP/data/reusables/organizations/people.md @@ -1,5 +1,5 @@ 1. Organization 名の下で、クリックします -{% octicon "person" aria-label="The Person icon" %} **People**. +{% octicon "person" aria-label="The Person icon" %} **People(人)** {% ifversion fpt or ghes > 3.2 or ghec %} ![人タブ](/assets/images/help/organizations/organization-people-tab-with-overview-tab.png) {% else %} diff --git a/translations/ja-JP/data/reusables/organizations/repository-defaults.md b/translations/ja-JP/data/reusables/organizations/repository-defaults.md index 28f1b30a6b..bac3a028c0 100644 --- a/translations/ja-JP/data/reusables/organizations/repository-defaults.md +++ b/translations/ja-JP/data/reusables/organizations/repository-defaults.md @@ -1,5 +1,5 @@ {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5658 %} -1. In the "Code, planning, and automation" section of the sidebar, select **{% octicon "repo" aria-label="The repo icon" %} Repository**, then click **Repository defaults**. +1. サイドバーの"Code, planning, and automation(コード、計画、自動化)"のセクションで、**{% octicon "repo" aria-label="The repo icon" %} Repository(リポジトリ)**を選択し、続いて** Repository defaults(リポジトリのデフォルト)**をクリックしてください。 {% else %} 1. 左のサイドバーで**Repository defaults(リポジトリのデフォルト)**をクリックしてください。 ![リポジトリのデフォルトタブ](/assets/images/help/organizations/repo-defaults-tab.png) {% endif %} diff --git a/translations/ja-JP/data/reusables/organizations/security-and-analysis.md b/translations/ja-JP/data/reusables/organizations/security-and-analysis.md index 08466c36d6..67c3d4c2ef 100644 --- a/translations/ja-JP/data/reusables/organizations/security-and-analysis.md +++ b/translations/ja-JP/data/reusables/organizations/security-and-analysis.md @@ -1,5 +1,5 @@ {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5658 %} -1. In the "Security" section of the sidebar, click **{% octicon "codescan" aria-label="The codescan icon" %} Code security and analysis**. +1. サイドバーの”Security(セキュリティ)"セクションで、**{% octicon "codescan" aria-label="The codescan icon" %} Code security and analysis(コードのセキュリティと分析)**をクリックしてください。 {% else %} 1. 左のサイドバーで、**Security & analysis(セキュリティと分析)**をクリックしてください。 ![Organization設定の"セキュリティと分析"タブ](/assets/images/help/organizations/org-settings-security-and-analysis.png) {% endif %} diff --git a/translations/ja-JP/data/reusables/organizations/security-manager-beta-note.md b/translations/ja-JP/data/reusables/organizations/security-manager-beta-note.md index 2d460ef111..5c40978443 100644 --- a/translations/ja-JP/data/reusables/organizations/security-manager-beta-note.md +++ b/translations/ja-JP/data/reusables/organizations/security-manager-beta-note.md @@ -1,5 +1,5 @@ {% note %} -**Note:** The security manager role is in public beta and subject to change. +**ノート:** セキュリティマネージャーのロールはパブリックベータであり、変更されることがあります。 {% endnote %} diff --git a/translations/ja-JP/data/reusables/organizations/security-overview-feature-specific-page.md b/translations/ja-JP/data/reusables/organizations/security-overview-feature-specific-page.md index 13f951ee2f..036be46b52 100644 --- a/translations/ja-JP/data/reusables/organizations/security-overview-feature-specific-page.md +++ b/translations/ja-JP/data/reusables/organizations/security-overview-feature-specific-page.md @@ -1 +1 @@ -1. あるいは、左のサイドバーを使ってセキュリティ機能ごとに情報をフィルタリングすることもできます。 On each page, you can use filters that are specific to that feature to fine-tune your search. +1. あるいは、左のサイドバーを使ってセキュリティ機能ごとに情報をフィルタリングすることもできます。 それぞれのページで、その機能に固有のフィルタを使って検索を微調整できます。 diff --git a/translations/ja-JP/data/reusables/organizations/security.md b/translations/ja-JP/data/reusables/organizations/security.md index 89ff33e85f..0cc94addb5 100644 --- a/translations/ja-JP/data/reusables/organizations/security.md +++ b/translations/ja-JP/data/reusables/organizations/security.md @@ -1,5 +1,5 @@ {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5658 %} -1. In the "Security" section of the sidebar, click **{% octicon "shield-lock" aria-label="The shield-lock icon" %} Authentication security**. +1. サイドバーの”Security(セキュリティ)"セクションで、**{% octicon "shield-lock" aria-label="The shield-lock icon" %} Authentication security(認証のセキュリティ)**をクリックしてください。 {% else %} 1. 左のサイドバーで**Organization security(Organizationのセキュリティ)**をクリックしてください。 diff --git a/translations/ja-JP/data/reusables/organizations/specific_team.md b/translations/ja-JP/data/reusables/organizations/specific_team.md index b89839874c..1eff35c7eb 100644 --- a/translations/ja-JP/data/reusables/organizations/specific_team.md +++ b/translations/ja-JP/data/reusables/organizations/specific_team.md @@ -1,5 +1,5 @@ 1. Organization 名の下で、クリックします -{% octicon "people" aria-label="The people icon" %} **Teams**. +{% octicon "people" aria-label="The people icon" %} **Teams**をクリックしてください。 {% ifversion fpt or ghes > 3.2 or ghec %} ![Teamsタブ](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} diff --git a/translations/ja-JP/data/reusables/organizations/ssh-ca-ghec-only.md b/translations/ja-JP/data/reusables/organizations/ssh-ca-ghec-only.md index 2c29a6bf3e..b23c3cf51b 100644 --- a/translations/ja-JP/data/reusables/organizations/ssh-ca-ghec-only.md +++ b/translations/ja-JP/data/reusables/organizations/ssh-ca-ghec-only.md @@ -1,7 +1,7 @@ {% ifversion fpt or ghec %} {% note %} -**Note:** To use SSH certificate authorities, your organization must use {% data variables.product.prodname_ghe_cloud %}. {% data reusables.enterprise.link-to-ghec-trial %} +**ノート:** SSH認証局を使用するには、Organizationは{% data variables.product.prodname_ghe_cloud %}を使わなければなりません。 {% data reusables.enterprise.link-to-ghec-trial %} {% endnote %} diff --git a/translations/ja-JP/data/reusables/organizations/team_maintainers_can.md b/translations/ja-JP/data/reusables/organizations/team_maintainers_can.md index 19aae1ce72..2a5f088d27 100644 --- a/translations/ja-JP/data/reusables/organizations/team_maintainers_can.md +++ b/translations/ja-JP/data/reusables/organizations/team_maintainers_can.md @@ -11,5 +11,5 @@ - [OrganizationメンバーのTeamからの削除](/articles/removing-organization-members-from-a-team) - [既存のTeamメンバーのチームメンテナへの昇格](/organizations/organizing-members-into-teams/assigning-the-team-maintainer-role-to-a-team-member) - リポジトリへのTeamのアクセス権の削除 -- [Manage code review settings for the team](/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team){% ifversion fpt or ghec %} +- [Teamのコードレビュー設定の管理](/organizations/organizing-members-into-teams/managing-code-review-settings-for-your-team){% ifversion fpt or ghec %} - [プルリクエストのスケジュールされたリマインダーの管理](/github/setting-up-and-managing-organizations-and-teams/managing-scheduled-reminders-for-pull-requests){% endif %} diff --git a/translations/ja-JP/data/reusables/organizations/teams.md b/translations/ja-JP/data/reusables/organizations/teams.md index 2216fc95e7..24158f7cec 100644 --- a/translations/ja-JP/data/reusables/organizations/teams.md +++ b/translations/ja-JP/data/reusables/organizations/teams.md @@ -1,5 +1,5 @@ 1. Organization 名の下で、クリックします -{% octicon "people" aria-label="The people icon" %} **Teams**. +{% octicon "people" aria-label="The people icon" %} **Teams**をクリックしてください。 {% ifversion fpt or ghes > 3.2 or ghec %} ![OrganizationページのTeamsタブ](/assets/images/help/organizations/organization-teams-tab-with-overview.png) {% else %} diff --git a/translations/ja-JP/data/reusables/organizations/teams_sidebar.md b/translations/ja-JP/data/reusables/organizations/teams_sidebar.md index 5c9046cef1..dc73e47017 100644 --- a/translations/ja-JP/data/reusables/organizations/teams_sidebar.md +++ b/translations/ja-JP/data/reusables/organizations/teams_sidebar.md @@ -1,5 +1,5 @@ {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5658 %} -1. In the "Access" section of the sidebar, click **{% octicon "comment-discussion" aria-label="The comment-discussion icon" %} Team discussions**. +1. サイドバーの"Access(アクセス)"セクションで、**{% octicon "comment-discussion" aria-label="The comment-discussion icon" %} Team discussions(Teamのディスカッション)**をクリックしてください。 {% else %} 1. Settings(設定)サイドバーで、**Teams**をクリックしてください。 ![Organizationの設定サイドバー内のTeamsタブ](/assets/images/help/settings/settings-sidebar-team-settings.png) {% endif %} diff --git a/translations/ja-JP/data/reusables/organizations/verified-domains.md b/translations/ja-JP/data/reusables/organizations/verified-domains.md index 018cf275ad..5d1e662fe3 100644 --- a/translations/ja-JP/data/reusables/organizations/verified-domains.md +++ b/translations/ja-JP/data/reusables/organizations/verified-domains.md @@ -1,5 +1,5 @@ {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5658 %} -1. In the "Security" section of the sidebar, click **{% octicon "verified" aria-label="The verified icon" %} Verified and approved domains**. +1. サイドバーの”Security(セキュリティ)"セクションで、**{% octicon "verified" aria-label="The verified icon" %} Verified and approved domains(検証済み及び承認済みドメイン)**をクリックしてください。 {% else %} 1. 左のサイドバーで**Verified & approved domains(検証済み及び承認済みドメイン)**をクリックしてください。 !["検証済み及び承認済みドメイン"タブ](/assets/images/help/organizations/verified-domains-button.png) {% endif %} diff --git a/translations/ja-JP/data/reusables/package_registry/authenticate-packages.md b/translations/ja-JP/data/reusables/package_registry/authenticate-packages.md index a766f6e96d..5ca4e91584 100644 --- a/translations/ja-JP/data/reusables/package_registry/authenticate-packages.md +++ b/translations/ja-JP/data/reusables/package_registry/authenticate-packages.md @@ -4,4 +4,4 @@ You can use a personal access token (PAT) to authenticate to {% data variables.p 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. -- a PAT to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). +- a PAT with at least `packages:read` scope to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). diff --git a/translations/ja-JP/data/reusables/package_registry/authenticate-to-container-registry-steps.md b/translations/ja-JP/data/reusables/package_registry/authenticate-to-container-registry-steps.md index cdd67653b4..468bb23641 100644 --- a/translations/ja-JP/data/reusables/package_registry/authenticate-to-container-registry-steps.md +++ b/translations/ja-JP/data/reusables/package_registry/authenticate-to-container-registry-steps.md @@ -1,22 +1,21 @@ -1. 実行したいタスクに対して適切なスコープを持つ新しい個人アクセストークン(PAT)を作成してください。 OrganizationがSSOを必須としている場合は、新しいトークンでSSOを有効化しなければなりません。 +1. Create a new personal access token (PAT) with the appropriate scopes for the tasks you want to accomplish. If your organization requires SSO, you must enable SSO for your new token. {% warning %} - **ノート:** デフォルトでは、ユーザインターフェース内で個人アクセストークン(PAT)に対して`write:packages`スコープを選択すると、`repo`スコープも選択されます。 `repo`は不要に広いアクセス権を提供するので、特にGitHub Actionsのワークフローでの利用は避けることをおすすめします。 詳しい情報については「[GitHub Actionsのためのセキュリティ強化](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)」を参照してください。 As a workaround, you can select just the `write:packages` scope for your PAT in the user interface with this url: `https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/settings/tokens/new?scopes=write:packages`. + **Note:** By default, when you select the `write:packages` scope for your personal access token (PAT) in the user interface, the `repo` scope will also be selected. The `repo` scope offers unnecessary and broad access, which we recommend you avoid using for GitHub Actions workflows in particular. For more information, see "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." As a workaround, you can select just the `write:packages` scope for your PAT in the user interface with this url: `https://{% ifversion fpt or ghec %}github.com{% else %}HOSTNAME{% endif %}/settings/tokens/new?scopes=write:packages`. {% endwarning %} - - コンテナイメージをダウンロードし、そのメタデータを読むためには`read:packages`スコープを選択してください。 - - コンテナイメージのダウンロードとアップロード、及びそのメタデータの読み書きのためには、`write:packages`スコープを選択してください。 - - コンテナイメージを削除するには`delete:packages`スコープを選択してください。 + - Select the `read:packages` scope to download container images and read their metadata. + - Select the `write:packages` scope to download and upload container images and read and write their metadata. + - Select the `delete:packages` scope to delete container images. - 詳しい情報については[コマンドラインのための個人のアクセストークンの作成](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)を参照してください。 + 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)." -2. PATを保存してください。 PATは環境変数として保存することをおすすめします。 +2. Save your PAT. We recommend saving your PAT as an environment variable. ```shell $ export CR_PAT=YOUR_TOKEN ``` -3. コンテナタイプにあったCLIを利用して、 -{% data variables.product.prodname_container_registry %} service at `{% data reusables.package_registry.container-registry-hostname %}`. +3. Using the CLI for your container type, sign in to the {% data variables.product.prodname_container_registry %} service at `{% data reusables.package_registry.container-registry-hostname %}`. {% raw %} ```shell $ echo $CR_PAT | docker login {% endraw %}{% data reusables.package_registry.container-registry-hostname %}{% raw %} -u USERNAME --password-stdin diff --git a/translations/ja-JP/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md b/translations/ja-JP/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md deleted file mode 100644 index a54f9a0844..0000000000 --- a/translations/ja-JP/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md +++ /dev/null @@ -1,11 +0,0 @@ -{% ifversion fpt or ghec or ghes > 3.4 %} - -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 `{% data reusables.package_registry.container-registry-hostname %}`, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. - -{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to `{% data reusables.package_registry.container-registry-hostname %}` with a personal access token, see "[Upgrading a workflow that accesses `ghcr.io`](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-ghcrio)."{% endif %} - -For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." - -If you're using the {% data variables.product.prodname_container_registry %} in actions, follow our security best practices at "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." - -{% endif %} diff --git a/translations/ja-JP/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md b/translations/ja-JP/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md new file mode 100644 index 0000000000..abaf8530a7 --- /dev/null +++ b/translations/ja-JP/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md @@ -0,0 +1,7 @@ +ワークフローがレジストリでの認証のために個人アクセストークン(PAT)を使っているなら、`GITHUB_TOKEN`を使うようにワークフローを更新することを強くおすすめします。 + +{% ifversion fpt or ghec %}個人アクセストークンでレジストリの認証を受けるワークフローの更新に関するガイダンスとしては、「[レジストリにPATを使ってアクセスするワークフローのアップグレード](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-a-registry-using-a-pat)」を参照してください。{% endif %} + +`GITHUB_TOKEN`に関する詳しい情報については「[ワークフロー中の認証](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)」を参照してください。 + +アクションでレジストリを使う際のベストプラクティスに関する詳しい情報については「[GitHub Actionsのセキュリティ強化](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)」を参照してください。 diff --git a/translations/ja-JP/data/reusables/package_registry/checksum-maven-plugin.md b/translations/ja-JP/data/reusables/package_registry/checksum-maven-plugin.md index 3d980144e1..6f6ce5940d 100644 --- a/translations/ja-JP/data/reusables/package_registry/checksum-maven-plugin.md +++ b/translations/ja-JP/data/reusables/package_registry/checksum-maven-plugin.md @@ -1,5 +1,5 @@ {%- ifversion ghae %} -1. In the `plugins` element of the *pom.xml* file, add the [checksum-maven-plugin](https://search.maven.org/artifact/net.nicoulaj.maven.plugins/checksum-maven-plugin) plugin, and configure the plugin to send at least SHA-256 checksums. +1. *pom.xml*ファイルの`plugins`要素に[checksum-maven-plugin](https://search.maven.org/artifact/net.nicoulaj.maven.plugins/checksum-maven-plugin)プラグインを追加し、そのプラグインを最低でもSHA-256のチェックサムを送信するように設定してください。 ```xml diff --git a/translations/ja-JP/data/reusables/package_registry/container-registry-benefits.md b/translations/ja-JP/data/reusables/package_registry/container-registry-benefits.md index 079a514846..37b9ce623e 100644 --- a/translations/ja-JP/data/reusables/package_registry/container-registry-benefits.md +++ b/translations/ja-JP/data/reusables/package_registry/container-registry-benefits.md @@ -1 +1 @@ -The {% data variables.product.prodname_container_registry %} stores container images within your organization or personal account, and allows you to associate an image with a repository. You can choose whether to inherit permissions from a repository, or set granular permissions independently of a repository. You can also access public container images anonymously. +{% data variables.product.prodname_container_registry %}はコンテナイメージをOrganizationもしくは個人アカウントに保存し、イメージをリポジトリに関連づけられるようにしてくれます。 リポジトリから権限を継承するか、もしくはリポジトリからは独立して詳細な権限を設定するかを選択できます。 匿名でパブリックなコンテナイメージにアクセスすることもできます。 diff --git a/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-beta.md b/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-beta.md index c4942faf78..83ca21a6e5 100644 --- a/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-beta.md +++ b/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-beta.md @@ -2,7 +2,7 @@ {% note %} -**ノート**: {% data variables.product.prodname_container_registry %}は{% data variables.product.product_name %} に対して現在ベータであり、変更されることがあります。 +**Note**: {% data variables.product.prodname_container_registry %} is currently in beta for {% data variables.product.product_name %} and subject to change. Both {% data variables.product.prodname_registry %} and subdomain isolation must be enabled to use {% data variables.product.prodname_container_registry %}. For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)." diff --git a/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-migration-availability.md b/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-migration-availability.md index 5d685d5f4f..5f9faa2ba7 100644 --- a/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-migration-availability.md +++ b/translations/ja-JP/data/reusables/package_registry/container-registry-ghes-migration-availability.md @@ -1 +1 @@ -{% data variables.product.product_name %} 3.6 supports migration for Docker images stored in organizations. A future release will support migration of user-owned images. \ No newline at end of file +{% data variables.product.product_name %} 3.6はOrganizationに保存されたDockerイメージの移行をサポートしています。 将来のリリースでは、ユーザが所有するイメージの移行がサポートされます。 \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/package_registry/container-registry-replaces-docker-registry.md b/translations/ja-JP/data/reusables/package_registry/container-registry-replaces-docker-registry.md index 5b6ed35c4f..a7c1cb7ca1 100644 --- a/translations/ja-JP/data/reusables/package_registry/container-registry-replaces-docker-registry.md +++ b/translations/ja-JP/data/reusables/package_registry/container-registry-replaces-docker-registry.md @@ -1 +1 @@ -The {% data variables.product.prodname_container_registry %} replaces {% data variables.product.company_short %}'s Docker registry. +{% data variables.product.prodname_container_registry %}は{% data variables.product.company_short %}のDockerレジストリを置き換えます。 diff --git a/translations/ja-JP/data/reusables/package_registry/no-graphql-to-delete-packages.md b/translations/ja-JP/data/reusables/package_registry/no-graphql-to-delete-packages.md new file mode 100644 index 0000000000..d3e897adb6 --- /dev/null +++ b/translations/ja-JP/data/reusables/package_registry/no-graphql-to-delete-packages.md @@ -0,0 +1 @@ +{% ifversion fpt or ghec %}{% data variables.product.prodname_registry %} GraphQL APIはパッケージ名前空間`https://ghcr.io/OWNER/PACKAGE-NAME`を使うコンテナあるいはDockerイメージ、あるいはパッケージ名前空間`https://npm.pkg.github.com/OWNER/PACKAGE-NAME`を使うnpmイメージをサポートしません。{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/reusables/package_registry/package-settings-from-org-level.md b/translations/ja-JP/data/reusables/package_registry/package-settings-from-org-level.md index 291daa3623..1af0a18c85 100644 --- a/translations/ja-JP/data/reusables/package_registry/package-settings-from-org-level.md +++ b/translations/ja-JP/data/reusables/package_registry/package-settings-from-org-level.md @@ -1,7 +1,7 @@ 1. {% data variables.product.prodname_dotcom %}で、Organizationのメインページにアクセスしてください。 2. Organization名の下で、**Packages(パッケージ)**をクリックしてください。 {% 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) + ![Organizationのランディングページのパッケージタブ](/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) + ![Organizationのランディングページのパッケージタブ](/assets/images/help/package-registry/org-tab-for-packages.png) {% endif %} diff --git a/translations/ja-JP/data/reusables/package_registry/package-settings-from-user-level.md b/translations/ja-JP/data/reusables/package_registry/package-settings-from-user-level.md index 26f96ee7be..eb2fe28f45 100644 --- a/translations/ja-JP/data/reusables/package_registry/package-settings-from-user-level.md +++ b/translations/ja-JP/data/reusables/package_registry/package-settings-from-user-level.md @@ -1,3 +1,3 @@ -1. On {% data variables.product.prodname_dotcom %}, navigate to the main page of your personal account. -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**. ![プロフィール画像](/assets/images/help/profile/top_right_avatar.png) +1. {% data variables.product.prodname_dotcom %}で、個人アカウントのメインページにアクセスしてください。 +2. {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom_the_website %}{% else %}{% data variables.product.product_name %}{% endif %}の右上から、プロフィール写真をクリックし、続いて**Your profile(あなたのプロフィール)**をクリックしてください。 ![プロフィール画像](/assets/images/help/profile/top_right_avatar.png) 3. プロフィールページで、右上の**Packages(パッケージ)**をクリックしてください。 ![プロフィールページのパッケージオプション](/assets/images/help/package-registry/packages-from-user-profile.png) diff --git a/translations/ja-JP/data/reusables/package_registry/packages-billing.md b/translations/ja-JP/data/reusables/package_registry/packages-billing.md index b88b95eb44..598a7f7f2d 100644 --- a/translations/ja-JP/data/reusables/package_registry/packages-billing.md +++ b/translations/ja-JP/data/reusables/package_registry/packages-billing.md @@ -1 +1 @@ -{% data variables.product.prodname_registry %}の利用は、パブリックパッケージについては無料です。 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. 含まれる金額を超える利用については、支出制限によって管理されます。 +{% data variables.product.prodname_registry %}の利用は、パブリックパッケージについては無料です。 プライベートパッケージについては、{% data variables.product.product_location %}上の各アカウントは使用している製品に応じて一定量の無料ストレージとデータ転送を受け取ります。 含まれる金額を超える利用については、支出制限によって管理されます。 diff --git a/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-brief.md b/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-brief.md index 8fba661e5a..0bebf688c3 100644 --- a/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-brief.md +++ b/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-brief.md @@ -1 +1 @@ -If you are a monthly-billed customer, your account will have a default spending limit of 0 US dollars (USD), which prevents additional usage of storage or data transfer after you reach the included amounts. 請求書でアカウントの支払いを行う場合、アカウントのデフォルトの支払い制限は無制限になります。 +月額料金のお客様の場合、デフォルトではアカウントの料金の上限は0USドル(USD)になっており、含まれている量に達した後に追加でストレージやデータ転送が利用されないようになっています。 請求書でアカウントの支払いを行う場合、アカウントのデフォルトの支払い制限は無制限になります。 diff --git a/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-detailed.md b/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-detailed.md index 1e3465900c..e1ee7f9e0e 100644 --- a/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-detailed.md +++ b/translations/ja-JP/data/reusables/package_registry/packages-spending-limit-detailed.md @@ -1,5 +1,5 @@ {% data reusables.package_registry.packages-spending-limit-brief %} -If you have an unlimited spending limit or a spending limit set higher than $0 USD, you will be billed for any additional storage or data transfer, also called overages, up to your spending limit. アカウントのクーポンは、{% data variables.product.prodname_registry %}の過剰分には適用されません。 +利用上限を無制限としているか、$0 USD以上に利用上限を設定している場合、追加のストレージあるいはデータ転送には、利用上限まで課金されます。これは過剰分と呼ばれます。 アカウントのクーポンは、{% data variables.product.prodname_registry %}の過剰分には適用されません。 {% data reusables.billing.overages-billed-monthly %} diff --git a/translations/ja-JP/data/reusables/package_registry/verify_repository_field.md b/translations/ja-JP/data/reusables/package_registry/verify_repository_field.md index a698129aaa..7dfefe580e 100644 --- a/translations/ja-JP/data/reusables/package_registry/verify_repository_field.md +++ b/translations/ja-JP/data/reusables/package_registry/verify_repository_field.md @@ -1 +1 @@ -1. プロジェクトの*package.json*中の`repository`フィールドを検証してください。 `repository`フィールドは、{% data variables.product.prodname_dotcom %}リポジトリのURLと一致していなければなりません。 For example, if your repository URL is `github.com/my-org/test` then the repository field should be `https://github.com/my-org/test.git`. +1. プロジェクトの*package.json*中の`repository`フィールドを検証してください。 `repository`フィールドは、{% data variables.product.prodname_dotcom %}リポジトリのURLと一致していなければなりません。 たとえば、あなたのリポジトリのURLが`github.com/my-org/test`なら、repositoryフィールドは`https://github.com/my-org/test.git`でなければなりません。 diff --git a/translations/ja-JP/data/reusables/package_registry/visibility-and-access-permissions.md b/translations/ja-JP/data/reusables/package_registry/visibility-and-access-permissions.md index 2e0980c99e..b4f8c05e50 100644 --- a/translations/ja-JP/data/reusables/package_registry/visibility-and-access-permissions.md +++ b/translations/ja-JP/data/reusables/package_registry/visibility-and-access-permissions.md @@ -2,7 +2,7 @@ あなたが管理者であれば、Organization レベルおよびリポジトリレベルに設定した権限とは別に、コンテナイメージに対してアクセス権限を付与することもできます。 -For container images published and owned by a personal account, you can give any person an access role. Organization が所有し公開しているコンテナイメージには、Organization 内の任意の Team にアクセスロールを付与できます。 +個人アカウントが公開し、所有しているコンテナイメージに対しては、誰にでもアクセスロールを付与できます。 Organization が所有し公開しているコンテナイメージには、Organization 内の任意の Team にアクセスロールを付与できます。 | 権限 | アクセス権の内容 | | ----- | ---------------------------------------------------------------------------------------------------- | diff --git a/translations/ja-JP/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md b/translations/ja-JP/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md index 65e43b5b60..02dc2de4c3 100644 --- a/translations/ja-JP/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md +++ b/translations/ja-JP/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md @@ -1,16 +1,16 @@ -{% ifversion ghes > 3.1 or ghes < 3.5 %} +{% ifversion ghes < 3.5 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix for 3.5 and later will be available in an upcoming patch release. +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix is available in the [3.5.5](/enterprise-server@3.5/admin/release-notes#3.5.5) and [3.6.1](/enterprise-server@3.6/admin/release-notes#3.6.1) patch releases. -To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-08-16] +To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-09-01] -{% elsif ghes > 3.4 or ghes < 3.7 %} +{% elsif ghes = 3.5 or ghes = 3.6 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ currentVersion }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ allVersions[currentVersion].currentRelease }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). - To display the missing alerts for all repositories owned by an organization, organization owners can navigate to the organization's **Code security and analysis** settings, then click **Enable all** for secret scanning. 詳しい情報については、「[Organization のセキュリティおよび分析設定を管理する](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-existing-repositories)」を参照してください。 - To display the missing alerts for an individual repository, people with admin access to the repository can disable then enable secret scanning for the repository. 詳しい情報については「[リポジトリのセキュリティ及び分析の設定の管理](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)」を参照してください。 -A fix will be available in an upcoming patch release. [Updated: 2022-08-16] +A fix is available in the {% ifversion ghes = 3.5 %}[3.5.5](/admin/release-notes#3.5.5){% elsif ghes = 3.6 %}[3.6.1](/admin/release-notes#3.6.1){% endif %} patch release. [Updated: 2022-09-01] {% endif %} diff --git a/translations/ja-JP/data/reusables/secret-scanning/push-protection-web-ui-choice.md b/translations/ja-JP/data/reusables/secret-scanning/push-protection-web-ui-choice.md index 892e8aafe4..c6fc780e28 100644 --- a/translations/ja-JP/data/reusables/secret-scanning/push-protection-web-ui-choice.md +++ b/translations/ja-JP/data/reusables/secret-scanning/push-protection-web-ui-choice.md @@ -2,5 +2,12 @@ Web UIを使ってプッシュ保護としてのSecret scanningが有効化さ シークレットの場所に関する情報がページ上部のバナーに表示され、簡単にシークレットが見つけられるよう、ファイル内でシークレットに下線が引かれます。 +{% ifversion push-protection-custom-link-orgs %} + + ![Secret scanningのプッシュ保護のため、Web UIでコミットがブロックされていることが表示されているスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner-with-link.png) + +{% else %} + ![Secret scanningのプッシュ保護のため、Web UIでコミットがブロックされていることが表示されているスクリーンショット](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner.png) - \ No newline at end of file + +{% endif %} \ No newline at end of file diff --git a/translations/ja-JP/data/variables/actions.yml b/translations/ja-JP/data/variables/actions.yml index 7561884164..0cf3893443 100644 --- a/translations/ja-JP/data/variables/actions.yml +++ b/translations/ja-JP/data/variables/actions.yml @@ -1,2 +1,3 @@ --- azure_portal: 'Azure Portal' +hosted_runner: 'larger runner' diff --git a/translations/ja-JP/data/variables/product.yml b/translations/ja-JP/data/variables/product.yml index 6fbf7da460..50b0c6e46b 100644 --- a/translations/ja-JP/data/variables/product.yml +++ b/translations/ja-JP/data/variables/product.yml @@ -112,6 +112,10 @@ prodname_registry: 'GitHub Packages' prodname_container_registry: 'コンテナレジストリ' prodname_docker_registry_namespace: '{% ifversion fpt or ghec %}`docker.pkg.github.com`{% elsif ghes or ghae %}docker.HOSTNAME{% endif %}' prodname_container_registry_namespace: '{% ifversion fpt or ghec %}`ghcr.io`{% elsif ghes or ghae %}containers.HOSTNAME{% endif %}' +prodname_npm_registry: 'npmレジストリ' +prodname_ghcr_and_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_or_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} or {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_and_npm_registry_full: '{% data variables.product.prodname_container_registry %} (`ghcr.io`){% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %} (`npm.pkg.github.com`){% endif %}' #GitHub Insights prodname_insights: 'GitHub Insights' #GitHub Sponsors diff --git a/translations/log/cn-resets.csv b/translations/log/cn-resets.csv index c373d5c38f..09288b3a63 100644 --- a/translations/log/cn-resets.csv +++ b/translations/log/cn-resets.csv @@ -5,10 +5,10 @@ translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-gith translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-settings-on-your-profile/viewing-contributions-on-your-profile.md,broken liquid tags translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-settings-on-your-profile/why-are-my-contributions-not-showing-up-on-my-profile.md,broken liquid tags translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard.md,broken liquid tags -translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/changing-your-github-username.md,rendering error translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories.md,broken liquid tags translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-membership-in-organizations/about-organization-membership.md,broken liquid tags +translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md,rendering error translations/zh-CN/content/actions/automating-builds-and-tests/about-continuous-integration.md,broken liquid tags translations/zh-CN/content/actions/deployment/about-deployments/deploying-with-github-actions.md,broken liquid tags translations/zh-CN/content/actions/hosting-your-own-runners/about-self-hosted-runners.md,rendering error @@ -20,6 +20,7 @@ translations/zh-CN/content/actions/learn-github-actions/usage-limits-billing-and translations/zh-CN/content/actions/managing-workflow-runs/removing-workflow-artifacts.md,broken liquid tags translations/zh-CN/content/actions/managing-workflow-runs/reviewing-deployments.md,Listed in localization-support#489 translations/zh-CN/content/actions/security-guides/security-hardening-for-github-actions.md,broken liquid tags +translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md,rendering error translations/zh-CN/content/actions/using-workflows/reusing-workflows.md,rendering error translations/zh-CN/content/actions/using-workflows/storing-workflow-data-as-artifacts.md,broken liquid tags translations/zh-CN/content/actions/using-workflows/using-github-cli-in-workflows.md,broken liquid tags @@ -116,7 +117,6 @@ translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/a translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md,broken liquid tags translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token.md,broken liquid tags translations/zh-CN/content/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository.md,broken liquid tags -translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md,broken liquid tags translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication.md,broken liquid tags translations/zh-CN/content/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication.md,broken liquid tags translations/zh-CN/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md,broken liquid tags @@ -204,7 +204,6 @@ translations/zh-CN/content/desktop/installing-and-configuring-github-desktop/ins translations/zh-CN/content/desktop/installing-and-configuring-github-desktop/installing-and-authenticating-to-github-desktop/setting-up-github-desktop.md,broken liquid tags translations/zh-CN/content/desktop/installing-and-configuring-github-desktop/overview/creating-your-first-repository-using-github-desktop.md,broken liquid tags translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md,broken liquid tags -translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md,broken liquid tags translations/zh-CN/content/developers/apps/getting-started-with-apps/about-apps.md,broken liquid tags translations/zh-CN/content/developers/apps/getting-started-with-apps/migrating-oauth-apps-to-github-apps.md,broken liquid tags translations/zh-CN/content/developers/github-marketplace/github-marketplace-overview/about-github-marketplace.md,broken liquid tags @@ -290,7 +289,6 @@ translations/zh-CN/content/rest/activity/events.md,broken liquid tags translations/zh-CN/content/rest/apps/marketplace.md,broken liquid tags translations/zh-CN/content/rest/enterprise-admin/index.md,broken liquid tags translations/zh-CN/content/rest/guides/basics-of-authentication.md,Listed in localization-support#489 -translations/zh-CN/content/rest/guides/getting-started-with-the-checks-api.md,broken liquid tags translations/zh-CN/content/rest/overview/other-authentication-methods.md,Listed in localization-support#489 translations/zh-CN/content/rest/overview/other-authentication-methods.md,broken liquid tags translations/zh-CN/content/rest/overview/resources-in-the-rest-api.md,Listed in localization-support#489 @@ -396,7 +394,6 @@ translations/zh-CN/data/reusables/notifications/vulnerable-dependency-notificati translations/zh-CN/data/reusables/organizations/team-synchronization.md,broken liquid tags translations/zh-CN/data/reusables/package_registry/authenticate-packages.md,broken liquid tags translations/zh-CN/data/reusables/package_registry/authenticate-to-container-registry-steps.md,broken liquid tags -translations/zh-CN/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md,broken liquid tags translations/zh-CN/data/reusables/package_registry/docker_registry_deprecation_status.md,Listed in localization-support#489 translations/zh-CN/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md,broken liquid tags translations/zh-CN/data/reusables/package_registry/packages-cluster-support.md,broken liquid tags diff --git a/translations/log/es-resets.csv b/translations/log/es-resets.csv index 3de1dfc675..277582da38 100644 --- a/translations/log/es-resets.csv +++ b/translations/log/es-resets.csv @@ -29,6 +29,7 @@ translations/es-ES/content/actions/quickstart.md,Listed in localization-support# translations/es-ES/content/actions/security-guides/automatic-token-authentication.md,Listed in localization-support#489 translations/es-ES/content/actions/using-github-hosted-runners/about-github-hosted-runners.md,Listed in localization-support#489 translations/es-ES/content/actions/using-github-hosted-runners/customizing-github-hosted-runners.md,Listed in localization-support#489 +translations/es-ES/content/actions/using-github-hosted-runners/using-larger-runners.md,rendering error translations/es-ES/content/actions/using-workflows/workflow-syntax-for-github-actions.md,broken liquid tags translations/es-ES/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-code-scanning-for-your-appliance.md,broken liquid tags translations/es-ES/content/admin/configuration/configuring-github-connect/managing-github-connect.md,broken liquid tags @@ -293,6 +294,7 @@ translations/es-ES/content/repositories/working-with-files/managing-large-files/ translations/es-ES/content/rest/activity/events.md,broken liquid tags translations/es-ES/content/rest/enterprise-admin/index.md,broken liquid tags translations/es-ES/content/rest/overview/other-authentication-methods.md,Listed in localization-support#489 +translations/es-ES/content/rest/secret-scanning.md,broken liquid tags translations/es-ES/content/search-github/searching-on-github/searching-code.md,Listed in localization-support#489 translations/es-ES/content/search-github/searching-on-github/searching-commits.md,Listed in localization-support#489 translations/es-ES/content/search-github/searching-on-github/searching-in-forks.md,Listed in localization-support#489 diff --git a/translations/log/ja-resets.csv b/translations/log/ja-resets.csv index c960f8ee78..adcd5f479c 100644 --- a/translations/log/ja-resets.csv +++ b/translations/log/ja-resets.csv @@ -5,9 +5,9 @@ translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-gith translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-github-profile/managing-contribution-settings-on-your-profile/viewing-contributions-on-your-profile.md,broken liquid tags translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-email-preferences/adding-an-email-address-to-your-github-account.md,broken liquid tags translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard.md,broken liquid tags -translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md,broken liquid tags translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-the-default-branch-name-for-your-repositories.md,broken liquid tags translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/permission-levels-for-a-personal-account-repository.md,broken liquid tags +translations/ja-JP/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md,broken liquid tags translations/ja-JP/content/actions/creating-actions/about-custom-actions.md,broken liquid tags translations/ja-JP/content/actions/creating-actions/publishing-actions-in-github-marketplace.md,broken liquid tags translations/ja-JP/content/actions/hosting-your-own-runners/about-self-hosted-runners.md,broken liquid tags @@ -69,7 +69,6 @@ translations/ja-JP/content/admin/user-management/migrating-data-to-and-from-your translations/ja-JP/content/authentication/keeping-your-account-and-data-secure/about-authentication-to-github.md,broken liquid tags translations/ja-JP/content/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps.md,broken liquid tags translations/ja-JP/content/authentication/keeping-your-account-and-data-secure/updating-your-github-access-credentials.md,broken liquid tags -translations/ja-JP/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md,broken liquid tags translations/ja-JP/content/authentication/troubleshooting-ssh/error-permission-denied-publickey.md,Listed in localization-support#489 translations/ja-JP/content/billing/index.md,broken liquid tags translations/ja-JP/content/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security.md,broken liquid tags @@ -199,7 +198,6 @@ translations/ja-JP/content/packages/working-with-a-github-packages-registry/work translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry.md,broken liquid tags translations/ja-JP/content/packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry.md,broken liquid tags translations/ja-JP/content/pages/getting-started-with-github-pages/about-github-pages.md,broken liquid tags -translations/ja-JP/content/pages/getting-started-with-github-pages/adding-a-theme-to-your-github-pages-site-with-the-theme-chooser.md,broken liquid tags translations/ja-JP/content/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site.md,broken liquid tags translations/ja-JP/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md,broken liquid tags translations/ja-JP/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md,broken liquid tags @@ -216,6 +214,7 @@ translations/ja-JP/content/rest/activity/events.md,broken liquid tags translations/ja-JP/content/rest/apps/oauth-applications.md,broken liquid tags translations/ja-JP/content/rest/enterprise-admin/index.md,broken liquid tags translations/ja-JP/content/rest/guides/getting-started-with-the-rest-api.md,broken liquid tags +translations/ja-JP/content/rest/quickstart.md,broken liquid tags translations/ja-JP/content/sponsors/getting-started-with-github-sponsors/about-github-sponsors.md,broken liquid tags translations/ja-JP/content/sponsors/receiving-sponsorships-through-github-sponsors/about-github-sponsors-for-open-source-contributors.md,broken liquid tags translations/ja-JP/content/support/learning-about-github-support/about-github-premium-support.md,broken liquid tags @@ -329,8 +328,11 @@ translations/ja-JP/data/reusables/large_files/can-include-lfs-objects-archives.m translations/ja-JP/data/reusables/large_files/rejected_pushes.md,broken liquid tags translations/ja-JP/data/reusables/large_files/storage_assets_location.md,broken liquid tags translations/ja-JP/data/reusables/marketplace/install-buy.md,broken liquid tags +translations/ja-JP/data/reusables/organizations/team-synchronization.md,broken liquid tags translations/ja-JP/data/reusables/package_registry/authenticate-packages.md,broken liquid tags -translations/ja-JP/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md,broken liquid tags +translations/ja-JP/data/reusables/package_registry/authenticate-to-container-registry-steps.md,broken liquid tags +translations/ja-JP/data/reusables/package_registry/container-registry-ghes-beta.md,broken liquid tags +translations/ja-JP/data/reusables/package_registry/container-registry-migration-namespaces.md,broken liquid tags translations/ja-JP/data/reusables/package_registry/next-steps-for-packages-enterprise-setup.md,broken liquid tags translations/ja-JP/data/reusables/package_registry/packages-cluster-support.md,broken liquid tags translations/ja-JP/data/reusables/package_registry/public-or-private-packages.md,Listed in localization-support#489 diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md index ef70e2e6bd..1babc6b945 100644 --- a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md @@ -1,6 +1,6 @@ --- title: Configurar e gerenciar sua conta pessoal no GitHub -intro: 'Você pode gerenciar as configurações da sua conta pessoal em {% data variables.product.prodname_dotcom %}, incluindo preferências de e-mail, acesso do colaborador a repositórios pessoais e associações da organização.' +intro: 'Você pode gerenciar as configurações da sua conta pessoal em {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}, incluindo preferências de e-mail, acesso a repositórios pessoais e associações da organização. Você também pode gerir a própria conta.' shortTitle: Contas pessoais redirect_from: - /categories/setting-up-and-managing-your-github-user-account @@ -15,6 +15,7 @@ topics: - Accounts children: - /managing-personal-account-settings + - /managing-your-personal-account - /managing-email-preferences - /managing-access-to-your-personal-repositories - /managing-your-membership-in-organizations diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md index 690f54559d..e54238f981 100644 --- a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md @@ -1,6 +1,6 @@ --- title: Gerenciar configurações de conta de usuário -intro: 'Você pode alterar várias configurações de sua conta pessoal, inclusive alterar seu nome de usuário e excluir sua conta.' +intro: 'Você pode gerenciar configurações para sua conta pessoal, incluindo seu tema, nome de usuário, branchpadrão, acessibilidade e configurações de segurança.' redirect_from: - /categories/29/articles - /categories/user-accounts @@ -19,17 +19,14 @@ children: - /managing-your-theme-settings - /managing-your-tab-size-rendering-preference - /changing-your-github-username - - /merging-multiple-personal-accounts - - /converting-a-user-into-an-organization - - /deleting-your-personal-account - /permission-levels-for-a-personal-account-repository - /permission-levels-for-a-project-board-owned-by-a-personal-account - /managing-accessibility-settings - /managing-the-default-branch-name-for-your-repositories - /managing-security-and-analysis-settings-for-your-personal-account - /managing-access-to-your-personal-accounts-project-boards + - /managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages - /integrating-jira-with-your-personal-projects - - /best-practices-for-leaving-your-company - /what-does-the-available-for-hire-checkbox-do shortTitle: Configurações de conta pessoal --- diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md new file mode 100644 index 0000000000..7431007abd --- /dev/null +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md @@ -0,0 +1,33 @@ +--- +title: Gerenciando suas preferências de cookies para páginas de marketing corporativo do GitHub +intro: 'Você pode controlar como {% data variables.product.company_short %} usa informações de cookies de rastreamento não essenciais para páginas de marketing empresarial.' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +shortTitle: Gerenciar preferências de cookie +--- + +## Sobre preferências de cookies nas páginas de marketing corporativo + +{% data variables.product.company_short %} pode usar cookies não essenciais em algumas páginas de marketing corporativo. Você pode personalizar como esses cookies se comportam. Para obter mais informações sobre como {% data variables.product.company_short %} usa os cookies, consulte "[ Declaração de privacidade de {% data variables.product.company_short %} ](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement)". + +## Alterando suas preferências de cookies + +Você pode personalizar como cookies não essenciais se comportam em qualquer página de marketing corporativo de {% data variables.product.company_short %}. + +1. Acesse a página de marketing corporativo de {% data variables.product.company_short %} onde você gostaria de mudar suas preferências de cookie. Por exemplo, acesse [Recursos de {% data variables.product.company_short %}](https://resources.github.com/). +1. Role até o final da página e, em seguida, clique em **Gerenciar Cookies**. + + ![Captura de tela do botão para gerenciar as configurações de cookie.](/assets/images/help/settings/cookie-settings-manage.png) + +1. Em "Gerenciar preferências de cookies" para aceitar ou rejeitar cada cookie não essencial, clique em **Aceitar** ou **Rejeitar**. + + ![Captura de tela dos botões de opção para escolher "Aceitar" ou "Rejeitar" para cookies não essenciais.](/assets/images/help/settings/cookie-settings-accept-or-reject.png) + +1. Clique em **Save changes** (Salvar alterações). + + ![Captura de tela do botão para salvar as alterações.](/assets/images/help/settings/cookie-settings-save.png) diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings.md index 9719068936..9d730f08f4 100644 --- a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings.md +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings.md @@ -35,7 +35,7 @@ Você pode querer usar um tema escuro para reduzir o consumo de energia em certo {%- ifversion ghes = 3.5 %} {% note %} - **Note**: The light high contrast theme was unavailable in {% data variables.product.product_name %} 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The theme is available in 3.5.4 and later. Para obter mais informações sobre atualizações, entre em contato com o administrador do site. + **Observação**: O tema de alto contraste claro não estava disponível em {% data variables.product.product_name %} 3.5.0, 3.5.1, 3.5.2 e 3.5.3. O tema está disponível na versão 3.5.4 e posterior. Para obter mais informações sobre atualizações, entre em contato com o administrador do site. Para obter mais informações sobre como determinar a versão do {% data variables.product.product_name %} que você está usando, consulte "[Sobre as versões de {% data variables.product.prodname_docs %}](/get-started/learning-about-github/about-versions-of-github-docs#github-enterprise-server)" {% endnote %} diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md similarity index 96% rename from translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md rename to translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md index cc714f9807..e55d6f2599 100644 --- a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/best-practices-for-leaving-your-company - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company versions: fpt: '*' ghec: '*' diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md similarity index 95% rename from translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md rename to translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md index 2976a52527..fdf72ae686 100644 --- a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization intro: Você pode converter a sua conta pessoal em uma organização. Isso permite permissões mais granulares para repositórios que pertencem à organização. versions: fpt: '*' @@ -66,5 +67,5 @@ Você também pode converter sua conta pessoal diretamente em uma organização. ## Leia mais - "[Configurar equipes](/articles/setting-up-teams)" -{% ifversion fpt or ghec %}- "[Convidar usuários para ingressar na organização](/articles/inviting-users-to-join-your-organization)"{% endif %} +{% ifversion fpt or ghec %}- "[Convidar usuários para participar da sua organização](/articles/inviting-users-to-join-your-organization)"{% endif %} - "[Acessar uma organização](/articles/accessing-an-organization)" diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md similarity index 63% rename from translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md rename to translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md index 6ad4a153fd..786e626f24 100644 --- a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md @@ -1,39 +1,53 @@ --- title: Excluindo sua conta pessoal -intro: 'Você pode excluir sua conta pessoal em {% data variables.product.product_name %} a qualquer momento.' +intro: 'Você pode excluir sua conta pessoal em {% data variables.product.product_location %} a qualquer momento.' redirect_from: - /articles/deleting-a-user-account - /articles/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account versions: fpt: '*' ghes: '*' ghec: '*' topics: - Accounts -shortTitle: Excluir sua conta pessoal +shortTitle: Excluir sua conta --- -A exclusão da sua conta pessoal irá remover todos os repositórios, bifurcações de repositórios privados, wikis, problemas, pull requests e páginas pertencentes à sua conta. {% ifversion fpt or ghec %} Os problemas e as pull requests que você criou e os comentários que você fez nos repositórios pertencentes a outros usuários não serão excluídos. Em vez disso, eles serão associados ao nosso [usuário fantasma](https://github.com/ghost).{% else %}Os problemas e as pull requests que você criou e os comentários que você fez nos repositórios pertencentes a outros usuários não serão excluídos.{% endif %} +## Sobre a exclusão da sua conta pessoal -{% ifversion fpt or ghec %} Ao excluir a sua conta, nós paramos de cobrar você. O endereço de e-mail associado à conta fica disponível para uso com uma conta diferente no {% data variables.product.product_location %}. Após 90 dias, o nome da conta também fica disponível para qualquer pessoa usar em uma nova conta. {% endif %} +A exclusão da sua conta pessoal irá remover todos os repositórios, bifurcações de repositórios privados, wikis, problemas, pull requests e páginas pertencentes à sua conta. {% ifversion fpt or ghec %}Os problemas e pull requests que você criou e os comentários que você fez em repositórios pertencentes a outros usuários não serão excluídos. Seus recursos e comentários serão associados ao [usuário fantasma](https://github.com/ghost).{% else %}Os problemas e pull requests que você criou e os comentários que você fez em repositórios pertencentes a outros usuários não serão excluídos.{% endif %} + +{% ifversion ghec %} + +{% note %} + +**Observação**: Se sua empresa gerencia sua conta e você efetua o login em {% data variables.product.product_location %} por meio do provedor de identidade da sua empresa (IdP), você não poderá excluir sua conta. Para obter mais informações, consulte "[Sobre {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users)". + +{% endnote %} + +{% endif %} + +{% ifversion fpt or ghec %}Ao excluir a sua conta, nós cancelamos a cobrança. O endereço de e-mail associado à conta fica disponível para uso com uma conta diferente no {% data variables.product.product_location %}. Após 90 dias, o nome da conta também fica disponível para qualquer pessoa usar em uma nova conta. {% endif %} Se você é o único proprietário de uma organização, você deverá transferir a propriedade para outra pessoa ou excluir a organização antes de excluir a sua conta pessoal. Se houver outros proprietários na organização, você deverá remover-se da organização antes de excluir sua conta pessoal. -Para obter mais informações, consulte: +Para obter mais informações, consulte os seguintes artigos. + - "[Transferir a propriedade da organização](/articles/transferring-organization-ownership)" - "[Excluir uma conta de organização](/articles/deleting-an-organization-account)" - "[Remover a si mesmo de uma organização](/articles/removing-yourself-from-an-organization/)" ## Fazer backup dos dados da conta -Antes de excluir sua conta pessoal, faça uma cópia de todos os repositórios, bifurcações privadas, wikis, problemas e pull requests pertencentes à sua conta. +Antes de excluir sua conta pessoal, faça uma cópia de todos os repositórios, bifurcações privadas, wikis, problemas e pull requests pertencentes à sua conta. Para obter mais informações, consulte "[Backup de um repositório](/repositories/archiving-a-github-repository/backing-up-a-repository)". {% warning %} -**Aviso:** Uma vez que excluída a sua conta pessoal, o GitHub não poderá restaurar seu conteúdo. +**Aviso:** Após a exclusão da sua conta pessoal, {% ifversion fpt or ghec %}{% data variables.product.company_short %}{% elsif ghes or ghae %}dono de uma empresa{% endif %} não poderá restaurar seu conteúdo. {% endwarning %} diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md new file mode 100644 index 0000000000..8ac2f738ff --- /dev/null +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md @@ -0,0 +1,19 @@ +--- +title: Gerenciando sua conta pessoal +intro: 'Você pode gerenciar sua conta pessoal em {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}. Por exemplo, você pode {% ifversion fpt or ghec %}gerenciar várias contas, {% endif %}converter uma conta para uma organização{% ifversion fpt or ghec or ghes %}ou excluir uma conta{% endif %}.' +shortTitle: Gerenciar conta pessoal +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +children: + - /managing-multiple-accounts + - /merging-multiple-personal-accounts + - /converting-a-user-into-an-organization + - /best-practices-for-leaving-your-company + - /deleting-your-personal-account +--- + diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md new file mode 100644 index 0000000000..f934ef389c --- /dev/null +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md @@ -0,0 +1,105 @@ +--- +title: Gerenciando várias contas +intro: 'Se você usa uma estação de trabalho para contribuir com projetos para mais de uma conta em {% data variables.product.product_location %}, você pode modificar sua configuração do Git para simplificar o processo de contribuição.' +versions: + feature: multiple-accounts-one-workstation +topics: + - Accounts + - Git + - GitHub +shortTitle: Gerenciar várias contas +--- + +## Sobre a gestão de múltiplas contas + +Em alguns casos, é possível que você precise usar várias contas em {% data variables.product.product_location %}. Por exemplo, você pode ter uma conta pessoal para contribuições de código aberto, e seu empregador também pode criar e gerenciar uma conta de usuário para você dentro de uma empresa. + +Você não pode usar seu {% data variables.product.prodname_managed_user %} para contribuir para projetos públicos em {% data variables.product.product_location %}, portanto, você deve contribuir para esses recursos usando a sua conta pessoal. Para obter mais informações, consulte "[Sobre {% data variables.product.prodname_emus %}]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts){% ifversion fpt %}" na documentação de {% data variables.product.prodname_ghe_cloud %}.{% elsif ghec %}{% endif %} + +Se você quiser usar uma estação de trabalho para contribuir a partir de ambas as contas, você poderá simplificar a contribuição com o Git usando uma mistura de protocolos para acessar os dados do repositório ou usando credenciais em cada repositório. + +{% warning %} + +**Aviso**: Tenha cuidado quando você usar uma estação de trabalho para contribuir com duas contas separadas. A gestão de duas ou mais contas pode aumentar a possibilidade de fuga de código interno para o público. + +{% endwarning %} + +Se você não tiver de usar um {% data variables.product.prodname_managed_user %}, {% data variables.product.company_short %} recomenda que você use uma conta pessoal para todo seu trabalho em {% data variables.product.product_location %}. Com uma única conta pessoal, você pode contribuir para uma combinação de projetos pessoais, de código aberto ou projetos profissionais usando uma identidade. Outras pessoas podem convidar a conta para contribuir tanto em repositórios individuais quanto em repositórios pertencentes a uma organização, e a conta pode ser integrante de múltiplas organizações ou empresas. + +## Contribuindo para duas contas usando HTTPS e SSH + +Se você contribuir com duas contas de uma estação de trabalho, você poderá acessar repositórios usando um protocolo e credenciais diferentes para cada conta. + +O Git pode usar o protocolo HTTPS ou SSH para acessar e atualizar os dados nos repositórios em {% data variables.product.product_location %}. O protocolo que você usa para clonar um repositório determina quais credenciais sua estação de trabalho usará para efetuar a autenticação quando você acessar o repositório. Com esta abordagem ao gerenciamento de contas, você armazena as credenciais para uma conta usar para conexões HTTPS e faz upload de uma chave SSH na outra conta para conexões SSH. + +Você pode encontrar ambos URLs HTTPS ou SSH para clonar um repositório em {% data variables.product.product_name %}. Para obter mais informações, consulte "[Clonar um repositório](/repositories/creating-and-managing-repositories/cloning-a-repository)". + +Para obter mais informações sobre o uso de SSH para acessar repositórios no {% data variables.product.product_name %}, consulte "[Conectando ao {% data variables.product.prodname_dotcom %} com SSH](/authentication/connecting-to-github-with-ssh)". + +## Contribuindo para várias contas usando HTTPS e PATs + +Como alternativa, se você quiser usar o protocolo HTTPS para ambas as contas, você pode usar diferentes tokens de acesso pessoal (PAT) para cada conta, configurando o Git para armazenar credenciais diferentes para cada repositório. + +{% mac %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + - Se a saída for `osxkeychain`, você irá usar o keychain do macOS. Para limpar as credenciais, informe o seguinte comando. + + ```shell{:copy} + git credential-osxkeychain erase https://github.com + ``` + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endmac %} + +{% windows %} + +1. Abra o Git Bash. +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} + - Se a saída for `wincred`, você irá usar o Gerenciador de Credenciais do Windows. Para limpar as credenciais, informe o seguinte comando. + + ```shell{:copy} + cmdkey /delete:LegacyGeneric:target=git:https://github.com + ``` +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endwindows %} + +{% linux %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endlinux %} + +## Contribuindo para várias contas usando SSH e `GIT_SSH_COMMAND` + +Se você quiser usar o protocolo SSH para ambas as contas, você poderá usar chaves SSH diferentes para cada conta. Para obter mais informações sobre como usar SSH, consulte "[Conectando a {% data variables.product.prodname_dotcom %} com SSH](/authentication/connecting-to-github-with-ssh)". + +Para usar uma chave SSH diferente para diferentes repositórios que você clonar na sua estação de trabalho, você deve escrever uma função de wrapper do shell para operações do Git. A função deve executar as seguintes etapas. +1. Determine o nome completo do repositório com proprietário, usando um comando como `git config --get remote.origin.url`. +2. Escolha a chave SSH correta para autenticação. +3. Modifique `GIT_SSH_COMMAND` apropriadamente. Para obter mais informações sobre `GIT_SSH_COMMAND`, consulte [Variáveis de Ambiente](https://git-scm.com/docs/git#Documentation/git.txt-codeGITSSHCOMMANDcode) na documentação do Git. + +Por exemplo, o comando a seguir define a variável de ambiente `GIT_SSH_COMMAND` para especificar um comando SSH que usa o arquivo de chave privada em **_PATH/TO/KEY/FILE_** para autenticação para clonar o repositório denominado **_OWNER_**/**_REPOSITORY_** em {% data variables.product.product_location %}. + +
+GIT_SSH_COMMAND='ssh -i PATH/TO/KEY/FILE -o IdentitiesOnly=yes' git clone git@github.com:OWNER/REPOSITORY
+
diff --git a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md similarity index 94% rename from translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md rename to translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md index 559408d40b..aab9ad3b60 100644 --- a/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md +++ b/translations/pt-BR/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md @@ -8,12 +8,13 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/merging-multiple-user-accounts - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts versions: fpt: '*' ghec: '*' topics: - Accounts -shortTitle: Fazer merge de várias contas pessoais +shortTitle: Fazer merge de múltiplas contas --- {% tip %} diff --git a/translations/pt-BR/content/actions/creating-actions/metadata-syntax-for-github-actions.md b/translations/pt-BR/content/actions/creating-actions/metadata-syntax-for-github-actions.md index 8d9ca0dce8..c595ffe054 100644 --- a/translations/pt-BR/content/actions/creating-actions/metadata-syntax-for-github-actions.md +++ b/translations/pt-BR/content/actions/creating-actions/metadata-syntax-for-github-actions.md @@ -354,7 +354,7 @@ runs: #### `runs.steps[*].with` -**Opcional** Um `mapa` dos parâmetros de entrada definidos pela ação. Cada parâmetro de entrada é um par chave/valor. For more information, see [Example: Specifying inputs](#example-specifying-inputs). +**Opcional** Um `mapa` dos parâmetros de entrada definidos pela ação. Cada parâmetro de entrada é um par chave/valor. Para obter mais informações, consulte [Exemplo: Especificando as entradas](#example-specifying-inputs). ```yaml runs: @@ -475,7 +475,7 @@ runs: ## `branding` -**Optional** You can use a color and [Feather](https://feathericons.com/) icon to create a badge to personalize and distinguish your action. Os selos são exibidos ao lado do nome da sua ação em [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace?type=actions). +**Opcional** Você pode usar uma cor e o ícone [Pena](https://feathericons.com/) para criar um emblema para personalizar e distinguir sua ação. Os selos são exibidos ao lado do nome da sua ação em [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace?type=actions). ### Exemplo: Configurar a marca para uma ação diff --git a/translations/pt-BR/content/actions/creating-actions/publishing-actions-in-github-marketplace.md b/translations/pt-BR/content/actions/creating-actions/publishing-actions-in-github-marketplace.md index cc2b51f8ac..49c4a1a9a5 100644 --- a/translations/pt-BR/content/actions/creating-actions/publishing-actions-in-github-marketplace.md +++ b/translations/pt-BR/content/actions/creating-actions/publishing-actions-in-github-marketplace.md @@ -38,10 +38,10 @@ Você pode adicionar a ação que você criou em {% data variables.product.prodn Para compartilhar uma nova versão e publicar a ação em {% data variables.product.prodname_marketplace %}, siga essas instruções: {% data reusables.repositories.navigate-to-repo %} -1. Navigate to the action metadata file in your repository (`action.yml` or `action.yaml`), and you'll see a banner to publish the action to {% data variables.product.prodname_marketplace %}. Clique em **Elaborar uma versão**. +1. Acesse o arquivo de metadados de ação no repositório (`action.yml` ou `. aml`), e você verá um banner para publicar a ação em {% data variables.product.prodname_marketplace %}. Clique em **Elaborar uma versão**. - ![Publish this action to marketplace button](/assets/images/help/repository/publish-github-action-to-marketplace-button.png) -1. Under "Release Action", select the checkbox to publish the action to the {% data variables.product.prodname_marketplace %}. If you can't select the checkbox, you must first click the link to read and accept the {% data variables.product.prodname_marketplace %} Developer Agreement. ![Selecione publicar no "Marketplace"](/assets/images/help/repository/marketplace_actions_publish.png) + ![Publicar esta ação no botão marketplace](/assets/images/help/repository/publish-github-action-to-marketplace-button.png) +1. Em "Ação de versão", selecione a caixa de seleção para publicar a ação em {% data variables.product.prodname_marketplace %}. Se você não puder selecionar a caixa de seleção, primeiro clique no link para ler e aceitar o Contrato de Desenvolvedor de {% data variables.product.prodname_marketplace %}. ![Selecione publicar no "Marketplace"](/assets/images/help/repository/marketplace_actions_publish.png) 1. Se as etiquetas do seu arquivo de metadados tiverem algum problema, você receberá uma mensagem de erro. ![Veja a notificação](/assets/images/help/repository/marketplace_actions_fixerrors.png) 1. Se você ver alguma sugestão na tela, resolva-as atualizando o arquivo de metadados. Após a conclusão, você receberá a mensagem "Tudo está OK". ![Corrigir erros](/assets/images/help/repository/marketplace_actions_looksgood.png) 1. Escolha uma "categoria primária" e, opcionalmente, "outra categoria", que ajudará as pessoas a encontrar a sua ação em {% data variables.product.prodname_marketplace %}. ![Escolha a categoria](/assets/images/help/repository/marketplace_actions_categories.png) diff --git a/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md b/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md index de8f1ed041..4697ceef87 100644 --- a/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md +++ b/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md @@ -73,6 +73,7 @@ O exemplo a seguir do token do OIDC usa um assunto (`sub`) que faz referência a "repository": "octo-org/octo-repo", "repository_owner": "octo-org", "actor_id": "12", + "repo_visibility": private, "repository_id": "74", "repository_owner_id": "65", "run_id": "example-run-id", @@ -130,6 +131,7 @@ O token também inclui reivindicações personalizadas fornecidas por {% data va | `job_workflow_ref` | Este é o caminho ref para o fluxo de trabalho reutilizável usado por este trabalho. Para obter mais informações, consulte "["Usando o OpenID Connect com fluxos de trabalho reutilizáveis"](/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows). | | `ref` | _(Referência)_ A ref do git que acionou a execução do fluxo de trabalho. | | `ref_type` | O tipo de `ref`, por exemplo: "branch". | +| `repo_visibility` | A visibilidade do repositório onde o fluxo de trabalho está em execução. Aceita os seguintes valores: `interno`, `privado` ou `público`. | | `repositório` | O repositório de onde o fluxo de trabalho está sendo executado. | | `repository_id` | O ID do repositório de onde o fluxo de trabalho está sendo executado. | | `repository_owner` | O nome da organização em que o `repositório` é armazenado. | @@ -145,11 +147,11 @@ Com o OIDC, um fluxo de trabalho de {% data variables.product.prodname_actions % As reivindicações de Audiência e Assunto são normalmente usadas em combinação, ao definir as condições da função/recursos em nuvem para definir o escopo do seu acesso aos fluxos de trabalho do GitHub. - **Audiência**: Por padrão, esse valor usa a URL do proprietário da organização ou do repositório. Isto pode ser usado para definir uma condição para que apenas os fluxos de trabalho na organização específica possam acessar a função da nuvem. -- **Assunto**: Tem um formato predefinido e é uma concatenação de alguns dos metadados da chave sobre o fluxo de trabalho como, por exemplo, a organização, repositório, branch de {% data variables.product.prodname_dotcom %} ou [`trabalho`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) associado. Consulte "[Exemplo de assunto reivindica](#example-subject-claims)" para ver como a reivindicação de assunto é montada a partir de metadados concatenados. +- **Assunto**: Por padrão, tem um formato predefinido e é uma concatenação de alguns dos metadados da chave sobre o fluxo de trabalho como, por exemplo, a organização, repositório, branch de {% data variables.product.prodname_dotcom %} ou [`trabalho`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) associado. Consulte "[Exemplo de assunto reivindica](#example-subject-claims)" para ver como a reivindicação de assunto é montada a partir de metadados concatenados. -Há também muitas reivindicações adicionais compatíveis com o token do OIDC que também podem ser usadas para definir essas condições. +Se você precisa de mais condições de confiança granulares, você pode personalizar o emissor (`iss`) e as reivindicações do assunto (`sub`) que estão incluídas no JWT. Para obter mais informações, consulte "[Personalizando as reivindicações do token](#customizing-the-token-claims)". -Além disso, seu provedor de nuvem poderia permitir que você atribuísse uma função aos tokens de acesso, permitindo que você especifique ainda mais permissões granulares. +Há também muitas reivindicações adicionais compatíveis com o token do OIDC que podem ser usadas para definir essas condições. Além disso, seu provedor de nuvem poderia permitir que você atribuísse uma função aos tokens de acesso, permitindo que você especifique ainda mais permissões granulares. {% note %} @@ -240,6 +242,197 @@ curl -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" "$ACTIONS_ID_TOK {% data reusables.actions.oidc-permissions-token %} +{% ifversion actions-oidc-hardening-config %} +## Personalizando as reivindicações de token + +Você pode garantir a segurança da sua configuração do OIDC personalizando as reivindicações incluídas com a JWT. Essas personalizações permitem que você defina mais condições de confiança granulares nas suas funções de nuvem ao permitir que seus fluxos de trabalho acessem os recursos hospedados na nuvem: + +{% ifversion ghec %} - Para uma camada adicional de segurança, é possível acrescentar a url do `emissor` ao slug da sua empresa. Isso permite que você defina condições na reivindicação do emissor (`iss`), configurando-o para aceitar apenas tokens JWT de uma URL única de `emissor` que deve incluir o slug corporativo.{% endif %} +- Você pode padronizar sua configuração do OIDC definindo condições na reivindicação do assunto (`sub`) que exigem que os tokens do JWT se originem a partir de um repositório específico, fluxo de trabalho reutilizável ou outra fonte. +- Você pode definir políticas granulares do OIDC usando reivindicações adicionais de token do OIDC, como `repository_id` e `repo_visibility`. Para obter mais informações, consulte "[Compreendendo o token do OIDC](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#understanding-the-oidc-token)". + +Para personalizar estes formatos de reivindicação, os administradores da organização e do repositório podem usar os pontos de extremidade da API REST descritos nas seguintes seções. + +{% ifversion ghec %} + +### Mudando para um URL único de token + +Por padrão, o JWT é emitido pelo provedor de OIDC de {% data variables.product.prodname_dotcom %} em `https://token.actions.githubusercontent.com`. Esse caminho é apresentado ao seu provedor de nuvem usando o valor de `iss` no JWT. + +Os administradores da empresa podem fortalecer a configuração do OIDC, configurando as suas empresas para receber tokens de um URL único em `https://api. ithub.com/enterprises//actions/oidc/customization/issuer`. Substitua `` pelo valor slug da sua empresa. + +Essa configuração significa que sua empresa receberá o token do OIDC de uma URL exclusiva, e você poder, a em seguida, configurar seu provedor de nuvem para aceitar apenas tokens dessa URL. Isso ajuda a garantir que apenas os repositórios da empresa podem acessar seus recursos na nuvem usando OIDC. + +Para ativar essa configuração para sua empresa, um administrador da empresa deve usar o ponto de extremidade `/enterprises/{enterprise}/actions/oidc/customization/issuer` e especificar `"include_enterprise_slug": true` no texto da solicitação. Para obter mais informações, consulte "[Definir a política do emissor personalizado do OIDC de {% data variables.product.prodname_actions %} para uma empresa](/rest/actions/oidc#set-the-github-actions-oidc-custom-issuer-policy-for-an-enterprise)". + +Depois que esta configuração for aplicada, o JWT conterá o valor atualizado de `iss`. No exemplo a seguir, a chave `iss` usa `octocat-inc` como seu valor de `enterpriseSlug`: + +```json +{ + "jti": "6f4762ed-0758-4ccb-808d-ee3af5d723a8" + "sub": "repo:octocat-inc/private-server:ref:refs/heads/main" + "aud": "http://octocat-inc.example/octocat-inc" + "enterprise": "octocat-inc" + "iss": "https://api.github.com/enterprises/octocat-inc/actions/oidc/customization/issuer", + "bf": 1755350653, + "exp": 1755351553, + "iat": 1755351253 +} +``` + +{% endif %} + +### Personalizando as reivindicações de assunto para uma organização + +Para configurar a segurança, conformidade e padronização em toda a organização, você pode personalizar as reivindicações padrão que atendem às suas condições de acesso necessárias. Se seu provedor de nuvem é compatível com condições para reivindicações de objetos, você pode criar uma condição que verifica se o valor `sub` corresponde ao caminho do fluxo de trabalho reutilizável, como `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. O formato exato irá variar dependendo da configuração do OIDC do seu provedor de nuvem. Para configurar a condição de correspondência em {% data variables.product.prodname_dotcom %}, você pode usar a API REST para exigir que a reivindicação do `sub` deva sempre incluir uma reivindicação personalizada, como `job_workflow_ref`. Para obter mais informações, consulte "[Definir o modelo de personalização para uma reivindicação de assunto do OIDC para uma organização](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)". + +A personalização das reivindicações resulta em um novo formato para toda a reivindicação `sub`, que substitui o formato padrão `sub` no token descrito em "[Exemplo de reivindicações de assunto](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims)". + +Os modelos de exemplo a seguir demonstram várias maneiras de personalizar a reivindicação de assunto. Para configurar estas configurações em {% data variables.product.prodname_dotcom %}, os administradores da organização usam a API REST para especificar uma lista de reclamações que devem ser incluídas no assunto (`sub`) da reclamação. {% data reusables.actions.use-request-body-api %} + +Para personalizar suas reivindicações de assunto, você deve primeiro criar uma condição de correspondência na configuração do OIDC do seu provedor de nuvem, antes de personalizar a configuração usando a API REST. Uma vez que a configuração estiver concluída, cada vez que um novo trabalho for executado, o token do OIDC gerado durante aquele trabalho seguirá o novo modelo de personalização. Se a condição de correspondência não existir na configuração do OIDC do provedor de nuvem antes de o trabalho ser executado, o token gerado poderá não ser aceito pelo provedor da nuvem, já que as condições da nuvem podem não ser sincronizadas. + +{% note %} + +**Observação**: Quando o modelo de organização é aplicado, ele não afetará nenhum repositório existente que já usa o OIDC. Para os repositórios existentes e para os novos criados depois que o modelo for aplicado, o proprietário do repositório deverá optar por receber esta configuração. Para obter mais informações, consulte "[Definir o sinalizador da opção de participação da personalização da reivindicação de assunto do OIDC para um repositório](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)". + +{% endnote %} + +#### Exemplo: Permitir o repositório com base na visibilidade e no proprietário + +Este modelo de exemplo permite que a reivnidicação do `sub` tenha um novo formato, usando `repository_owner` e `repository_visibility`: + +```json +{ + "include_claim_keys": [ + "repository_owner", + "repository_visibility" + ] +} +``` + +Na configuração OIDC do seu provedor de nuvem, configure a condição `sub` para exigir que as reivindicações inculam valores específicos para `repository_owner` e `repository_visibility`. Por exemplo: `"repository_owner: "monalisa":repository_visibility:private"`. A abordagem permite restringir o acesso a funções na nuvem apenas a repositórios privados de uma organização ou empresa. + +#### Exemplo: Permitir acesso a todos os repositórios com um proprietário específico + +Este modelo de exemplo permite que a reivindicação do `sub` tenha um novo formato com apenas o valor de `repository_owner`. {% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repository_owner" + ] +} + +``` + +Na configuração OIDC do seu provedor de nuvem, configure a condição `sub` para exigir que as reivindicações incluam um valor específico para `repository_owner`. Por exemplo: `"repository_owner: "monalisa""` + +#### Exemplo: Exigindo um fluxo de trabalho reutilizável + +Este modelo de exemplo permite que a reivindicação do `sub` tenha um novo formato que contenha o valor da reivindicação `job_workflow_ref`. Isso permite que uma empresa use [fluxos de trabalho reutilizáveis](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims) para aplicar implantações consistentes em suas organizações e repositórios. + +{% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "job_workflow_ref" + ] + } +``` + +Na configuração OIDC do seu provedor de nuvem, configure a condição `sub` para exigir que as reivindicações incluam um valor específico para `job_workflow_ref`. Por exemplo: `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. + +#### Exemplo: Exigindo um fluxo de trabalho reutilizável e outras reivindicações + +O modelo de exemplo a seguir combina a exigência de um fluxo de trabalho reutilizável específico com reivindicações adicionais. {% data reusables.actions.use-request-body-api %} + +Este exemplo também demonstra como usar `"contexto"` para definir suas condições. Essa é a parte que segue o repositório no formato [padrão `sub` padrão](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims). Por exemplo, quando o trabalho faz referência a um ambiente, o contexto contém: ambiente `:`. + +```json +{ + "include_claim_keys": [ + "repo", + "context", + "job_workflow_ref" + ] +} +``` + +Na configuração OIDC do seu provedor de nuvem, configure a condição `sub` para exigir que as reivindicações inculam valores específicos para `repo`, `context` e `job_workflow_ref`. + +Este modelo de personalização exigue que o `sub` use o seguinte formato: `repo::environment::job_workflow_ref:`. Por exemplo: `"sub": "repo:octo-org/octo-repo:environment:prod:job_workflow_ref:octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main"` + +#### Exemplo: Conceder acesso a um repositório específico + +Este modelo de exemplo permite conceder acesso na nuvem a todos os fluxos de trabalho em um repositório específico, em todos os branches, tags e ambientes. Para ajudar a melhorar a segurança, combine este modelo com a URL do emissor personalizado descrita em "[Personalizando a URL do token para uma empresa](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-url-for-an-enterprise)." + +{% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repo" + ] +} +``` + +Na configuração do OIDC do seu provedor de nuvem, configure a condição `sub` para exigir uma reivindicação de `repositório` que corresponda ao valor necessário. + +#### Exemplo: Usando GUIDs gerados pelo sistema + +Este modelo de exemplo habilita as reivindicações previsíveis do OIDC com GUIDs geradas pelo sistema que não mudam entre renomeações de entidades (como renomear um repositório). {% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "repository_id" + ] + } +``` + +Na configuração do OIDC do seu provedor de nuvem, configure a condição `sub` para exigir a reivindicação de `repository_id` que corresponde ao valor necessário. + +ou: + +```json +{ + "include_claim_keys": [ + "repository_owner_id" + ] +} +``` + +Na configuração do OIDC do seu provedor de nuvem, configure a condição `sub` para exigir uma reivindicação de `repository_owner_id` que corresponde ao valor necessário. + +#### Redefinindo suas personalizações + +Este modelo de exemplo redefine as reivindicações de assunto para o formato padrão. {% data reusables.actions.use-request-body-api %} Este modelo efetivamente opta por não participar de qualquer política de personalização no nível da organização. + +```json +{ + "include_claim_keys": [ + "repo", + "context" + ] +} +``` + +Na configuração do OIDC do seu provedor de nuvem, configure a condição `sub` para exigir que as reivindicações incluam valores específicos para `repo` e `contexto`. + +#### Usando as reivindicações de assunto padrão + +Para repositórios que podem receber uma política de reivindicação de assuntos da sua organização, o proprietário do repositório pode optar por não participar e, em vez disso, usar o formato padrão `sub` para solicitação. Para configurar isso, o administrador do repositório deve usar o ponto de extremidade da API REST em"[Definir o sinalizador para não participar da personalização da reivindicação de assunto do OIDC para um repositório](/rest/actions/oidc#set-the-opt-out-flag-of-an-oidc-subject-claim-customization-for-a-repository)" com o seguinte texto de solicitação: + +```json +{ + "use_default": true +} +``` + +{% endif %} + ## Atualizando seus fluxos de trabalho para o OIDC Agora você pode atualizar seus fluxos de trabalho do YAML para usar tokens de acesso do OIDC em vez de segredos. Os provedores de nuvem populares publicaram suas ações de login oficiais que facilitam o seu início de sessão com o OIDC. Para obter mais informações sobre a atualização dos seus fluxos de trabalho, consulte os guias específicos da nuvem listados abaixo em "[Habilitando o OpenID Connect para o seu provedor de nuvem](#enabling-openid-connect-for-your-cloud-provider)". diff --git a/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md b/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md index 7014cad6f4..954201a345 100644 --- a/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md +++ b/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md @@ -32,10 +32,52 @@ Este guia fornece uma visão geral sobre como configurar o cofre HashiCorp para Para usar OIDC com oHashiCorp Vault, você deverá adicionar uma configuração de confiança ao provedor do OIDC de {% data variables.product.prodname_dotcom %}. Para obter mais informações, consulte a [documentação](https://www.vaultproject.io/docs/auth/jwt) do HashiCorp Vault. -Configure o cofre para aceitar tokens web do JSON (JWT) para a autenticação: -- Para o `oidc_discovery_url`, use {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- Para `bound_issuer`, use {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- Certifique-se de que `bound_subject` esteja corretamente definido para seus requisitos de segurança. Para obter mais informações, consulte ["Configurar a confiança do OIDC com a nuvem"](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#configuring-the-oidc-trust-with-the-cloud) e [`hashicorp/vault-action`](https://github.com/hashicorp/vault-action). +Para configurar o seu servidor Vault para aceitar o JSON Web Tokens (JWT) para autenticação: + +1. Habilite o método de autenticação `JWT` e use `gravar` para aplicar a configuração do seu Vault. Para os parâmetros `oidc_discovery_url` e `bound_issuer`, use {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %}. Estes parâmetros permitem que o servidor do Vault verifique os JSON Web Tokens recebidos (JWT) durante o processo de autenticação. + + ```sh{:copy} + vault auth enable jwt + ``` + + ```sh{:copy} + vault write auth/jwt/config \ + bound_issuer="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" \ + oidc_discovery_url="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" + ``` +2. Configure uma política que concede apenas acesso aos caminhos específicos que seus fluxos de trabalho serão usados para recuperar segredos. Para políticas mais avançadas, consulte o as [Políticas documentação](https://www.vaultproject.io/docs/concepts/policies) do HashiCorp Vault. + + ```sh{:copy} + vault policy write myproject-production - <`: Substitua isso pela URL do seu HashiCorp Vault. +- ``: Substitu-o pelo Namespace que você colocou no HashiCorp Vault. Por exemplo: `administrador`. - ``: Substitua isso pela função que você definiu no relacionamento de confiança do HashiCorp Vault. -- ``: Substitua isso pela audiência que você definiu no relacionamento de confiança do HashiCorp Vault. -- ``: Substitua isso pelo caminho para o segredo que você está recuperando do HashiCorp Vault. Por exemplo: `secret/data/ci npmToken`. +- ``: Substitua isso pelo caminho para o segredo que você está recuperando do HashiCorp Vault. Por exemplo: `secret/data/production/ci npmToken`. ```yaml{:copy} jobs: - retrieve-secret: - steps: - - name: Retrieve secret from Vault - uses: hashicorp/vault-action@v2.4.0 - with: - url: - role: - method: jwt - jwtGithubAudience: - secrets: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + method: jwt + url: + namespace: + role: + secrets: - - name: Use secret from Vault - run: | - # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. +``` + +{% note %} + +**Observação**: + +- Se o seu servidor do Vault não puder ser acessado a partir da rede pública, considere usar um executor auto-hospedado com outros [auth methods](https://www.vaultproject.io/docs/auth) disponíveis para o Vault. Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners)." +- `` deve ser definido para uma implantação da empresa do Vault (incluindo HCP Vault). Para obter mais informações, consulte [Namespace do Vault](https://www.vaultproject.io/docs/enterprise/namespaces). + +{% endnote %} + +### Revogando o token de acesso + +Por padrão, o servidor do Vault irá revogar automaticamente os tokens de acesso quando seu TTL vencer, portanto, você não precisa revogar manualmente os tokens de acesso. No entanto, se você deseja revogar os tokens de acesso imediatamente após o seu trabalho terminar ou falhar, você poderá revogar manualmente o token emitido usando a API do Vault [](https://www.vaultproject.io/api/auth/token#revoke-a-token-self). + +1. Defina a opção `exportToken` como `verdadeiro` (padrão: `falso`). Isso exporta o token de acesso do Vault emitido como uma variável de ambiente: `VAULT_TOKEN`. +2. Adicione um passo para chamar a API do Vault [Revogar um Token (Self)](https://www.vaultproject.io/api/auth/token#revoke-a-token-self) para revogar o token de acesso. + +```yaml{:copy} +jobs: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + exportToken: true + method: jwt + url: + role: + secrets: + + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + + - name: Revoke token + # This step always runs at the end regardless of the previous steps result + if: always() + run: | + curl -X POST -sv -H "X-Vault-Token: {% raw %}${{ env.VAULT_TOKEN }}{% endraw %}" \ + /v1/auth/token/revoke-self ``` diff --git a/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md b/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md index 92913fb61b..4252f77c58 100644 --- a/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md +++ b/translations/pt-BR/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md @@ -23,11 +23,18 @@ topics: Em vez de copiar e colar trabalhos de implantação de um fluxo de trabalho para outro, é possível criar um fluxo de trabalho reutilizável que executa as etapas de implantação. Um fluxo de trabalho reutilizável pode ser usado por outro fluxo de trabalho se ele cumprir um dos requisitos de acesso descritos em "[Reutilizando os fluxos de trabalho](/actions/learn-github-actions/reusing-workflows#access-to-reusable-workflows)". -Quando combinado com o OpenID Connect (OIDC), os fluxos de trabalho reutilizáveis permitem que você aplique implantações consistentes no seu repositório, organização ou empresa. Você pode fazer isso definindo condições de confiança nas funções da nuvem com base em fluxos de trabalho reutilizáveis. +Você deve estar familiarizado com os conceitos descritos em "\[Reutilizando fluxos de trabalho\](/actions/learn-github-actions/reusing-workflows" e "[Sobre segurança fortalecida com o OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)". -Para criar condições de confiança com base em fluxos de trabalho reutilizáveis, o seu provedor de nuvem deve ser compatível com reivindicações personalizadas para `job_workflow_ref`. Isso permite que seu provedor de nuvem identifique de qual repositório veio originalmente. Se o seu provedor de nuvem é compatível apenas as reivindicações padrão (_audiência_ e _assunto_), não poderá determinar que o trabalho teve origem no repositório do fluxo de trabalho reutilizável. Os provedores de nuvem que sao compatíveis com `job_workflow_ref` incluem Google Cloud Platform e HashiCorp Vault. +## Definindo as condições de confiança -Antes de prosseguir, você deve estar familiarizado com os conceitos de [fluxos de trabalho reutilizáveis](/actions/learn-github-actions/reusing-workflows) e [OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect). +Quando combinado com o OpenID Connect (OIDC), os fluxos de trabalho reutilizáveis permitem que você aplique implantações consistentes no seu repositório, organização ou empresa. Você pode fazer isso definindo condições de confiança nas funções da nuvem com base em fluxos de trabalho reutilizáveis. As opções disponíveis irão variar dependendo do seu provedor de nuvem: + +- **Usando `job_workflow_ref`**: + - Para criar condições de confiança com base em fluxos de trabalho reutilizáveis, o seu provedor de nuvem deve ser compatível com reivindicações personalizadas para `job_workflow_ref`. Isso permite que seu provedor de nuvem identifique de qual repositório veio originalmente. + - Para nuvens que são compatíveis com apenas as reivindicações padrão (`aud`) e assunto (`sub`), você pode usar a API para personalizar a reivindicação `sub` para incluir `job_workflow_ref`. Para obter mais informações, consulte "[Personalizando as reivindicações do token](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". O suporte para reivindicações personalizadas está atualmente disponível para o Google Cloud Platform e HashiCorp Vault. + +- **Personalizando as reivindicações do token**: + - Você pode configurar mais condições de confiança granular personalizando o emissor (`iss`) e as reivindicações do assunto (`sub`) incluídas no JWT. Para obter mais informações, consulte "[Personalizando as reivindicações do token](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". ## Como o token funciona com fluxos de trabalho reutilizáveis diff --git a/translations/pt-BR/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md b/translations/pt-BR/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md index 33df75d7fe..6e76788770 100644 --- a/translations/pt-BR/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md +++ b/translations/pt-BR/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md @@ -71,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.organizations.settings-sidebar-actions-runners %} -1. Click **New runner**. +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {% elsif ghae or ghes < 3.4 %} {% data reusables.organizations.navigate-to-org %} diff --git a/translations/pt-BR/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md b/translations/pt-BR/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md index 6cfca875f7..b6f83dd5c5 100644 --- a/translations/pt-BR/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md +++ b/translations/pt-BR/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md @@ -18,15 +18,23 @@ shortTitle: Executar o executor ao iniciar {% capture service_first_step %}1. Pare o aplicativo do executor auto-hospedado se estiver em execução no momento.{% endcapture %} {% capture service_non_windows_intro_shell %}Na máquina, abra um shell no diretório onde você instalou o aplicativo do executor auto-hospedado. Use os comandos abaixo para instalar e gerenciar o serviço do executor auto-hospedado.{% endcapture %} -{% capture service_nonwindows_intro %}Você deve adicionar um executor a {% data variables.product.product_name %} antes de poder configurar o aplicativo do executor auto-hospedado um serviço. Para obter mais informações, consulte "[Adicionando executores auto-hospedados](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)".{% endcapture %} -{% capture service_win_name %}actions.runner.*{% endcapture %} +{% capture service_nonwindows_intro %} + +{% note %} + +**Observação:** Você precisa adicionar um executor a {% data variables.product.product_name %} antes de poder configurar o aplicativo do executor auto-hospedado como um serviço. Para obter mais informações, consulte "[Adicionando executores auto-hospedados](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)". + +{% endnote %} +{% endcapture %} + +{% capture service_win_name %}actions.runner.*{% endcapture %} {% linux %} {{ service_nonwindows_intro }} -Para os sistemas Linux que usam o `systemd`, você pode usar o script `svc. h` distribuído com o aplicativo do executor auto-hospedado para instalação e gerenciamento usando o aplicativo como um serviço. +Para sistemas Linux que usam `systemd`, você pode usar o `svc.sh` que é criado após adicionar com sucesso o executor para instalar e gerenciar usar o aplicativo como um serviço. {{ service_non_windows_intro_shell }} diff --git a/translations/pt-BR/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md b/translations/pt-BR/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md index 1ee7def2f6..d48b192b0a 100644 --- a/translations/pt-BR/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md +++ b/translations/pt-BR/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md @@ -9,215 +9,65 @@ versions: ghae: '*' ghec: '*' type: tutorial -shortTitle: Gerenciar acesso a executores +shortTitle: Usando grupos de executores --- {% data reusables.actions.enterprise-beta %} {% data reusables.actions.enterprise-github-hosted-runners %} -## Sobre grupos de executores auto-hospedados +## Sobre grupos de executores -{% ifversion fpt %} -{% note %} - -**Observação:** Todas as organizações têm um único grupo de executores auto-hospedados padrão. Somente contas corporativas e organizações pertencentes a contas corporativas podem criar e gerenciar grupos de executores auto-hospedados adicionais. - -{% endnote %} - -Os grupos de executores auto-hospedados são usados para controlar o acesso a executores auto-hospedados. Os administradores da organização podem configurar políticas de acesso que controlam quais repositórios em uma organização têm acesso ao grupo de runner. -Se você usar - -{% data variables.product.prodname_ghe_cloud %}, você pode criar grupos de executores adicionais. Os administradores corporativos podem configurar políticas de acesso que controlam quais organizações em uma empresa têm acesso ao grupo de executores; e os administradores da organização podem atribuir políticas adicionais de acesso ao repositório granular para o grupo de executores corporativos. Para obter mais informações, consulte a [documentação de {% data variables.product.prodname_ghe_cloud %}](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups). -{% endif %} +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}Para obter mais informações, consulte a [Documentação de {% data variables.product.prodname_ghe_cloud %}](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups).{% endif %} {% ifversion ghec or ghes or ghae %} -Grupos de executores auto-hospedados são usados para controlar o acesso a executores auto-hospedados a nível da organização e da empresa. Os proprietários corporativos podem configurar políticas de acesso que controlam as organizações -{% ifversion restrict-groups-to-workflows %}e fluxos de trabalho {% endif %}em uma empresa têm acesso ao grupo de executores. Os proprietários da organização podem configurar as políticas de acesso que controlam quais repositórios{% ifversion restrict-groups-to-workflows %} e fluxos de trabalho{% endif %} em uma organização têm acesso ao grupo de executores. - -Quando um proprietário corporativo concede acesso de uma organização a um grupo de executores, os proprietários da organização podem ver o grupo de executores listado nas configurações do executor auto-hospedado da organização. Em seguida, os proprietários da organização podem atribuir um repositório granular adicional{% ifversion restrict-groups-to-workflows %} e as políticas de acesso do fluxo de trabalho {% endif %} ao grupo do executor corporativo. - -Quando novos executores são criados, eles são atribuídos automaticamente ao grupo-padrão. Os executores só podem estar em um grupo por vez. Você pode mover os executores do grupo-padrão para outro grupo. Para obter mais informações, consulte "[Mover um executorauto-hospedado para um grupo](#moving-a-self-hosted-runner-to-a-group)". ## Criar um grupo de executor auto-hospedado para uma organização -Todas as organizações têm um único grupo de executores auto-hospedados padrão. As organizações dentro de uma conta corporativa podem criar outros grupos auto-hospedados. Os administradores da organização podem permitir o acesso de repositórios individuais a um grupo de executor. Para obter informações sobre como criar um grupo de executores auto-hospedados com a API REST, consulte "[grupos de executores auto-hospedados](/rest/reference/actions#self-hosted-runner-groups)." +{%- ifversion ghec or ghes %} -Os executores auto-hospedados são automaticamente atribuídos ao grupo-padrão quando criados e só podem ser membros de um grupo por vez. Você pode mover um executor do grupo- padrão para qualquer grupo que você criar. +{% data reusables.actions.self-hosted-runner-security-admonition %} -Ao criar um grupo, você deve escolher uma política que defina quais repositórios{% ifversion restrict-groups-to-workflows %} e fluxos de trabalho{% endif %} têm acesso ao grupo do executor. +{%- endif %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. Na seção "Grupos de executores", clique em **Novo grupo de executor**. -1. Digite um nome para o grupo do seu executor. - {% data reusables.actions.runner-group-assign-policy-repo %} - - {% warning %} - - **Aviso**: {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} -Os grupos de executores de {% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} não podem acessar os fluxos de trabalho de uma organização diferente na empresa. Em vez disso, você deve criar um grupo de executores de propriedade corporativa.{% endif %} -{% data reusables.actions.self-hosted-runner-create-group %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. Em {% ifversion ghes or ghae %}"Executores"{% endif %}, clique em **Adicionar novo** e, em seguida, em **Novo grupo**. - - ![Adicionar grupo de executor](/assets/images/help/settings/actions-org-add-runner-group.png) -1. Insira um nome para o seu grupo de executor e atribua uma política para acesso ao repositório. - - É possível configurar o grupo de um executor para ser acessível a uma lista específica de repositórios ou a todos os repositórios na organização.{% ifversion ghec or ghes %} Por padrão, apenas repositórios privados podem acessar executores no grupo do executor, mas você pode substituir isso. Esta configuração não pode ser substituída se configurar o grupo de executores da organização que foi compartilhado por uma empresa.{% endif %} - - {%- ifversion ghes %} - {% warning %} - - **Aviso**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} - - ![Adicionar opções de grupo de executores](/assets/images/help/settings/actions-org-add-runner-group-options.png) -1. Clique em **Salvar grupo** para criar o grupo e aplicar a política. -{% endif %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} ## Criar um grupo de executor auto-hospedado para uma empresa -As empresas podem adicionar seus executores auto-hospedados a grupos para gerenciamento de acesso. As empresas podem criar grupos de executores auto-hospedados que podem ser acessados a partir de organizações específicas na conta corporativa{% ifversion restrict-groups-to-workflows %} ou por fluxos de trabalho específicos{% endif %}. Os proprietários da organização podem atribuir políticas adicionais de acesso do repositório granular{% ifversion restrict-groups-to-workflows %} ou políticas de acesso do fluxo de trabalho {% endif %} para os grupos de executores corporativos. Para obter informações sobre como criar um grupo de executores auto-hospedados com a API REST, consulte os pontos de extremidade corporativos na [API REST de {% data variables.product.prodname_actions %}](/rest/reference/actions#self-hosted-runner-groups). + {%- ifversion ghec or ghes %} -Os executores auto-hospedados são automaticamente atribuídos ao grupo-padrão quando criados e só podem ser membros de um grupo por vez. Você pode atribuir o executor a um grupo específico durante o processo de registro, ou você pode mover o executor do grupo-padrão para um grupo personalizado. +{% data reusables.actions.self-hosted-runner-security-admonition %} -Ao criar um grupo, você deve escolher uma política que defina quais organizações têm acesso ao grupo de executores. +{%- endif %} -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} -1. Para escolher uma política para o acesso da organização, selecione a lista suspensa **Organização** e clique em uma política. Você pode configurar um grupo de executor para que possa ser acessado por uma lista específica de organizações ou a todas as organizações da empresa.{% ifversion ghes %} Por padrão, apenas repositórios privados podem acessar executores no grupo de um executor, mas você pode substituir isso.{% endif %} - - {%- ifversion ghec or ghes %} - {% warning %} - - **Aviso**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} - {%- ifversion ghec or ghes %} - - ![Adicionar opções de grupo de executores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) - {%- elsif ghae %} - - ![Adicionar opções de grupo de executores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) - {%- endif %} -{% data reusables.actions.runner-group-assign-policy-workflow %} -1. Clique em **Salvar grupo** para criar o grupo e aplicar a política. +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} {% endif %} ## Alterar a política de acesso de um grupo de executores auto-hospedados -Para grupos de executores em uma empresa, você pode mudar quais organizações na empresa podem acessar um grupo de executores{% ifversion restrict-groups-to-workflows %} ou restringir quais fluxos de trabalho um grupo de executores pode executar{% endif %}. Para grupos de executores em uma organização, você pode alterar quais repositórios na organização podem acessar um grupo de executores{% ifversion restrict-groups-to-workflows %} ou restringir quais fluxos de trabalho um grupo de executores pode executar{% endif %}. +{%- ifversion fpt or ghec or ghes %} -### Alterando quais organizações ou repositórios podem acessar um grupo de executores +{% data reusables.actions.self-hosted-runner-security-admonition %} -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Para grupos de executores em uma empresa, em **Acesso da organização**, modifique quais organizações podem acessar o grupo de executores. Para grupos de executores em uma organização, em **Acesso do repositório**, modifique quais repositórios podem acessar o grupo de executores. +{%- endif %} - {%- ifversion fpt or ghec or ghes %} - {% warning %} - - **Aviso**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." - - {% endwarning %} - {%- endif %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group-access %} -{% endif %} - -{% ifversion restrict-groups-to-workflows %} -### Alterando quais fluxos de trabalho podem acessar um grupo de executores -Você pode configurar um grupo de executor auto-hospedado para executar fluxos de trabalho selecionados ou todos os fluxos de trabalho. Por exemplo, você pode usar essa configuração para proteger segredos armazenados em executores auto-hospedados ou para padronizar os fluxos de trabalho de implantação restringindo um grupo de executores para executar apenas um fluxo de trabalho reutilizável. Esta configuração não pode ser substituída se você configurar o grupo de executores da organização que foi compartilhado por uma empresa. -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Em **Acesso ao fluxo de trabalho**, selecione o menu suspenso e clique em **Fluxos de trabalho selecionados**. -1. Clique em {% octicon "gear" aria-label="the gear icon" %}. -1. Insira uma lista separada por vírgulas dos fluxos de trabalho que podem acessar o grupo de executores. Use o caminho completo, incluindo o nome e proprietário do repositório. Fixar o fluxo de trabalho em um ramo, tag ou SHA completo. Por exemplo: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`. - - Apenas trabalhos definidos diretamente nos fluxos de trabalho selecionados terão acesso ao grupo de executores. - - Os grupos de executores pertencentes à organização não podem acessar os fluxos de trabalho de uma organização diferente na empresa. Em vez disso, você deve criar um grupo de executores pertencente à empresa. - -1. Clique em **Salvar**. - -{% endif %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} ## Alterando o nome de um grupo de executores -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. Altere o nome do grupo de executores. - -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group %} -1. Altere o nome do grupo de executores. -{% endif %} +{% data reusables.actions.changing-the-name-of-a-runner-group %} {% ifversion ghec or ghes or ghae %} ## Adicionando um executor auto-hospedado a um grupo automaticamente -Você pode usar o script de configuração para adicionar automaticamente um novo executor auto-hospedado a um grupo. Por exemplo, este comando registra um novo executor auto-hospedado e usa o parâmetro `--runnergroup` para adicioná-lo a um grupo denominado `rg-runnergroup`. - -```sh -./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup -``` - -O comando irá falhar se o grupo do executor não existir: - -``` -Não foi possível encontrar nenhum grupo de executor auto-hospedado denominado "rg-runnergroup". -``` +{% data reusables.actions.automatically-adding-a-runner-to-a-group %} ## Mover um executor auto-hospedado para um grupo -Se você não especificar o grupo de um executor durante o processo de registro, seus novos executores auto-hospedados são automaticamente atribuídos ao grupo padrão e poderão ser transferidos para outro grupo. - -{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -1. Na lista de "Executores", clique no executor que você deseja configurar. -2. Selecione o menu suspenso **Grupo do executor**. -3. Em "Transferir executor para o grupo", escolha um grupo de destino para o executor. -{% elsif ghae or ghes < 3.4 %} -1. Na seção "Grupos de executores" de {% ifversion ghes or ghae %}{% endif %} na página de configurações. localize o grupo atual do executor que você deseja transferir e expanda a lista de integrantes do grupo. ![Visualizar integrantes do grupo de executores](/assets/images/help/settings/actions-org-runner-group-members.png) -2. Marque a caixa de seleção ao lado do executor auto-hospedado e, em seguida, clique em **Mover para o grupo** para ver os destinos disponíveis. ![Mover um membro do grupo de executores](/assets/images/help/settings/actions-org-runner-group-member-move.png) -3. Para mover o executor, clique no grupo de destino. ![Mover um membro do grupo de executores](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) -{% endif %} +{% data reusables.actions.moving-a-runner-to-a-group %} ## Remover um grupo de executor auto-hospedado -Os executores auto-hospedados são retornados automaticamente ao grupo-padrão quando seu grupo é removido. - -{% ifversion ghes or ghae or ghec %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -1. Na lista de grupos, à direita do grupo que você deseja excluir, clique em {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}. -2. Para remover o grupo, clique em **Remover grupo**. -3. Revise os avisos de confirmação e, em seguida, clique em **Remover este grupo de executores**. +{% data reusables.actions.removing-a-runner-group %} {% endif %} -{% endif %} diff --git a/translations/pt-BR/content/actions/learn-github-actions/contexts.md b/translations/pt-BR/content/actions/learn-github-actions/contexts.md index d1d17ceb96..e4e6d0dfbe 100644 --- a/translations/pt-BR/content/actions/learn-github-actions/contexts.md +++ b/translations/pt-BR/content/actions/learn-github-actions/contexts.md @@ -33,17 +33,13 @@ Você pode acessar contextos usando a sintaxe da expressão. Para obter mais inf {% data reusables.actions.context-injection-warning %} -| Nome do contexto | Tipo | Descrição | -| ---------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `github` | `objeto` | Informações sobre a execução do fluxo de trabalho. Para obter mais informações, consulte [contexto `github`](#github-context). | -| `env` | `objeto` | Contém variáveis de ambiente definidas em um fluxo de trabalho, trabalho ou etapa. Para obter mais informações, consulte o contexto [`env`](#env-context). | -| `trabalho` | `objeto` | Informações sobre o trabalho atualmente em execução. Para obter mais informações, consulte [contexto `trabalho`](#job-context). | -| `steps` | `objeto` | Informações sobre as etapas que foram executadas no trabalho atual. Para obter mais informações, consulte [contexto `etapas`](#steps-context). | -| `runner` | `objeto` | Informações sobre o executor do trabalho atual. Para obter mais informações, consulte [`runner` context](#runner-context). | -| `secrets` | `objeto` | Contém nomes e valores de segredos que estão disponíveis para a execução de um fluxo de trabalho. Para obter mais informações, consulte o contexto [`segredos`](#secrets-context). | -| `strategy` | `objeto` | Informações sobre a estratégia de execução da matriz para o trabalho atual. Para obter mais informações, consulte o contexto [`estratégia`](#strategy-context). | -| `matrix` | `objeto` | Contém as propriedades da matriz definidas no fluxo de trabalho que se aplicam ao trabalho atual. Para obter mais informações, consulte o contexto [`matriz`](#matrix-context). | -| `needs` | `objeto` | Contém os resultados de todos os trabalhos que são definidos como uma dependência do trabalho atual. Para obter mais informações, consulte o contexto [`needs`](#needs-context). | +| Nome do contexto | Tipo | Descrição | +| ---------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `github` | `objeto` | Informações sobre a execução do fluxo de trabalho. Para obter mais informações, consulte [contexto `github`](#github-context). | +| `env` | `objeto` | Contém variáveis de ambiente definidas em um fluxo de trabalho, trabalho ou etapa. Para obter mais informações, consulte o contexto [`env`](#env-context). | +| `trabalho` | `objeto` | Informações sobre o trabalho atualmente em execução. Para obter mais informações, consulte [contexto `trabalho`](#job-context). | +{%- ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} +| `jobs` | `object` | Para apenas para fluxos de trabalho reutilizáveis, contém saídas de trabalhos do fluxo de trabalho reutilizável. Para obter mais informações, consulte [contexto `trabalhos`](#jobs-context). |{% endif %} | `steps` | `object` | Informações sobre as etapas que foram executadas no trabalho atual. Para obter mais informações, consulte [contexto `etapas`](#steps-context). | | `runner` | `object` | Informações sobre o executor que está executando o trabalho atual. Para obter mais informações, consulte [`runner` context](#runner-context). | | `segredos` | `objeto` | Contém os nomes e valores dos segredos que estão disponíveis para uma execução de fluxo de trabalho. Para obter mais informações, consulte o contexto [`segredos`](#secrets-context). | | `strategy` | `object` | Informações sobre a estratégia de execução da matriz para o trabalho atual. Para obter mais informações, consulte o contexto [`estratégia`](#strategy-context). | | `strategy` | `object` | Contém as propriedades da matriz definidas no fluxo de trabalho que se aplicam ao trabalho atual. Para obter mais informações, consulte o contexto [`matriz`](#matrix-context). | | `needs` | `object` | Contém os resultados de todos os trabalhos que são definidos como uma dependência do trabalho atual. Para obter mais informações, consulte o contexto [`needs`](#needs-context). | {%- ifversion fpt or ghec or ghes > 3.3 or ghae-issue-4757 %} | `entradas` | `objeto` | Contém as entradas de {% ifversion actions-unified-inputs %} reutilizável ou um fluxo de travalho acionado {% endif %} manualmente. Para obter mais informações, consulte o contexto [`entradas`](#inputs-context). |{% endif %} @@ -84,7 +80,7 @@ A tabela a seguir indica onde cada contexto e função especial pode ser utiliza | jobs.<job_id>.name | github, necessidades, estratégia, matriz, entradas | | | jobs.<job_id>.outputs.<output_id> | github, necessidades, estratégia, matriz, trabalho, executor, env, segredos, etapas, entradas | | | jobs.<job_id>.runs-on | github, necessidades, estratégia, matriz, entradas | | -| jobs.<job_id>.secrets.<secrets_id> | github, needs,{% ifversion actions-reusable-workflow-matrix %} strategy, matrix,{% endif %} secrets{% ifversion actions-unified-inputs %}, inputs{% endif %} | | +| jobs.<job_id>.secrets.<secrets_id> | github, necessidades, estratégia de {% ifversion actions-reusable-workflow-matrix %}, matriz,{% endif %} segredos{% ifversion actions-unified-inputs %}, entradas{% endif %} | | | jobs.<job_id>.services | github, necessidades, estratégia, matriz, entradas | | | jobs.<job_id>.services.<service_id>.credentials | github, necessidades, estratégia, matrix, env, segredos, entradas | | | jobs.<job_id>.services.<service_id>.env.<env_id> | github, necessidades, estratégia, matrix, trabalho, executor, env, segredos, entradas | | @@ -98,7 +94,7 @@ A tabela a seguir indica onde cada contexto e função especial pode ser utiliza | jobs.<job_id>.steps.working-directory | github, necessidades, estratégia, matriz, trabalho, executor, env, segredos, etapas, entradas | hashFiles | | jobs.<job_id>.strategy | github, necessidades, entradas | | | jobs.<job_id>.timeout-minutes | github, necessidades, estratégia, matriz, entradas | | -| jobs.<job_id>.with.<with_id> | github, needs{% ifversion actions-reusable-workflow-matrix %}, strategy, matrix{% endif %}{% ifversion actions-unified-inputs %}, inputs{% endif %} | | +| jobs.<job_id>.with.<with_id> | github, necessidades{% ifversion actions-reusable-workflow-matrix %}, estratégia, matriz{% endif %}{% ifversion actions-unified-inputs %}, entradas{% endif %} | | | on.workflow_call.inputs.<inputs_id>.default | github{% ifversion actions-unified-inputs %}, inputs{% endif %} | | | on.workflow_call.outputs.<output_id>.value | github, jobs, inputs | | {% else %} @@ -200,7 +196,7 @@ O contexto `github` context contém informações sobre a execução do fluxo de {%- ifversion fpt or ghec or ghes > 3.5 or ghae-issue-4722 %} | `github.run_attempt` | `string` | Um número exclusivo para cada tentativa de execução de um fluxo de trabalho específico em um repositório. Este número começa em 1 para a primeira tentativa de execução do fluxo de trabalho e aumenta a cada nova execução. | {%- endif %} -| `github.server_url` | `string` | A URL do servidor do GitHub. Por exemplo: `https://github.com`. | | `github.sha` | `string` | {% data reusables.actions.github_sha_description %} | | `github.token` | `string` | A token to authenticate on behalf of the GitHub App installed on your repository. Isso é funcionalmente equivalente ao segredo `GITHUB_TOKEN`. Para obter mais informações, consulte "[Autenticação automática de tokens](/actions/security-guides/automatic-token-authentication)".
Observação: Esta propriedade de contexto é definida pelo executor do Actions e só está disponível dentro da execução `etapas` de um trabalho. Caso contrário, o valor desta propriedade será `nulo`. |{% ifversion actions-stable-actor-ids %} | `github.triggering_actor` | `string` | O nome de usuário do usuário que iniciou a execução do fluxo de trabalho. Se a execução do fluxo de trabalho for uma nova execução, este valor poderá ser diferente de `github.actor`. Qualquer repetição de fluxo de trabalho usará os privilégios de `github.actor`, mesmo se o ator que iniciar a nova execução (`github.triggering_actor`) tiver privilégios diferentes. |{% endif %} | `github.workflow` | `string` | O nome do fluxo de trabalho. Se o fluxo de trabalho não determina um `name` (nome), o valor desta propriedade é o caminho completo do arquivo do fluxo de trabalho no repositório. | | `github.workspace` | `string` | O diretório de trabalho padrão no executor para as etapas e a localidade padrão do seu repositório ao usar a ação [`checkout`](https://github.com/actions/checkout). | +| `github.server_url` | `string` | A URL do servidor do GitHub. Por exemplo: `https://github.com`. | | `github.sha` | `string` | {% data reusables.actions.github_sha_description %} | | `github.token` | `string` | Um token para efetuar a autenticação em nome do aplicativo GitHub instalado no seu repositório. Isso é funcionalmente equivalente ao segredo `GITHUB_TOKEN`. Para obter mais informações, consulte "[Autenticação automática de tokens](/actions/security-guides/automatic-token-authentication)".
Observação: Esta propriedade de contexto é definida pelo executor do Actions e só está disponível dentro da execução `etapas` de um trabalho. Caso contrário, o valor desta propriedade será `nulo`. |{% ifversion actions-stable-actor-ids %} | `github.triggering_actor` | `string` | O nome de usuário do usuário que iniciou a execução do fluxo de trabalho. Se a execução do fluxo de trabalho for uma nova execução, este valor poderá ser diferente de `github.actor`. Qualquer repetição de fluxo de trabalho usará os privilégios de `github.actor`, mesmo se o ator que iniciar a nova execução (`github.triggering_actor`) tiver privilégios diferentes. |{% endif %} | `github.workflow` | `string` | O nome do fluxo de trabalho. Se o fluxo de trabalho não determina um `name` (nome), o valor desta propriedade é o caminho completo do arquivo do fluxo de trabalho no repositório. | | `github.workspace` | `string` | O diretório de trabalho padrão no executor para as etapas e a localidade padrão do seu repositório ao usar a ação [`checkout`](https://github.com/actions/checkout). | ### Exemplo de conteúdo do contexto `github` @@ -390,6 +386,72 @@ jobs: - run: ./run-tests ``` +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} + +## contexto `trabalhos` + +O contexto `trabalhos` só está disponível em fluxos de trabalho reutilizáveis e só pode ser usado para definir saídas para um fluxo de trabalho reutilizável. Para obter mais informações, consulte "[Reutilizando fluxos de trabalho](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)". + +| Nome da propriedade | Tipo | Descrição | +| ------------------------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `jobs` | `objeto` | Isso só está disponível em fluxos de trabalho reutilizáveis e só pode ser usado para definir saídas para um fluxo de trabalho reutilizável. Este objeto contém todas as propriedades listadas abaixo. | +| `jobs..result` | `string` | O resultado de um trabalho no fluxo de trabalho reutilizável. Os valores possíveis são: `sucesso`, `falha`, `cancelado`ou `ignorado`. | +| `jobs..outputs` | `objeto` | O conjunto de resultados de um trabalho em um fluxo de trabalho reutilizável. | +| `jobs..outputs.` | `string` | O valor de uma saída específica para um trabalho em um fluxo de trabalho reutilizável. | + +### Exemplo de conteúdo do contexto `trabalhos` + +Este exemplo do contexto `trabalhos` contém o resultado e as saídas de um trabalho de uma execução reutilizável. + +```json +{ + "example_job": { + "result": "success", + "outputs": { + "output1": "hello", + "output2": "world" + } + } +} +``` + +### Exemplo de uso do contexto `trabalhos` + +Este exemplo de fluxo de trabalho reutilizável usa o contexto `trabalhos` para definir saídas para o fluxo de trabalho reutilizável. Observe como as saídas fluem das etapas, para o trabalho, e depois para o gatilho `workflow_call`. Para obter mais informações, consulte "[Reutilizando fluxos de trabalho](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)". + +{% raw %} +```yaml{:copy} +name: Reusable workflow + +on: + workflow_call: + # Map the workflow outputs to job outputs + outputs: + firstword: + description: "The first output string" + value: ${{ jobs.example_job.outputs.output1 }} + secondword: + description: "The second output string" + value: ${{ jobs.example_job.outputs.output2 }} + +jobs: + example_job: + name: Generate output + runs-on: ubuntu-latest + # Map the job outputs to step outputs + outputs: + output1: ${{ steps.step1.outputs.firstword }} + output2: ${{ steps.step2.outputs.secondword }} + steps: + - id: step1 + run: echo "::set-output name=firstword::hello" + - id: step2 + run: echo "::set-output name=secondword::world" +``` +{% endraw %} + +{% endif %} + ## Contexto `etapas` O contexto `etapas` contém informações sobre as etapas do trabalho atual que possuem um [`id`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepsid) especificado e já executado. @@ -406,7 +468,7 @@ O contexto `etapas` contém informações sobre as etapas do trabalho atual que Este exemplo `passo` contexto mostra duas etapas anteriores que tinham um [`id`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepsid) especificado. O `id` da primeira etapa era denominado `checkout` e o segundo, `generate_number`. A etapa `generate_number` tinha uma saída denominada `random_number`. -```yaml +```json { "checkout": { "outputs": {}, @@ -467,7 +529,7 @@ A propriedade `runner.workspace` não é documentada propositalmente. É uma pro O contexto de exemplo a seguir é de um executor do Linux hospedado em {% data variables.product.prodname_dotcom %}. -```yaml +```json { "os": "Linux", "arch": "X64", @@ -524,7 +586,7 @@ O contexto `segredos` contém os nomes e valores de segredos disponíveis para a O conteúdo de exemplo do contexto dos `segredos` mostra o `GITHUB_TOKEN` automático, assim como outros dois segredos disponíveis para a execução do fluxo de trabalho. -```yaml +```json { "github_token": "***", "NPM_TOKEN": "***", @@ -552,7 +614,7 @@ Para fluxos de trabalho com uma matriz, o contexto `estratégia` contém informa O conteúdo de exemplo a seguir do contexto `estratégia` é de uma matriz com quatro trabalhos, e é tirada do trabalho final. Observe a diferença entre o número de `job-index` baseado em zero e o total de `job-job` que não é baseado em zero. -```yaml +```json { "fail-fast": true, "job-index": 3, @@ -601,7 +663,7 @@ Não há propriedades padrão no contexto `matriz`, apenas as que são definidas O exemplo a seguir do contexto `matriz` é de um trabalho em uma matriz que tem as propriedades de matriz `os` e `nó` definidas no fluxo de trabalho. O trabalho está executando a combinação matriz de um `ubuntu-latest` OS e do Node.js versão `16`. -```yaml +```json { "os": "ubuntu-latest", "node": 16 @@ -650,7 +712,7 @@ O contexto `needs` contém saídas de todos os trabalhos definidos como uma depe O conteúdo de exemplo a seguir do contexto `needs` mostra informações para dois trabalhos dos quais o trabalho atual depende. -```yaml +```json { "build": { "result": "success", @@ -721,7 +783,7 @@ O exemplo a seguir do contexto `entradas` é de um fluxo de trabalho que definiu -```yaml +```json { "build_id": 123456768, "deploy_target": "deployment_sys_1a", diff --git a/translations/pt-BR/content/actions/learn-github-actions/environment-variables.md b/translations/pt-BR/content/actions/learn-github-actions/environment-variables.md index 44424bb14b..e09c667b33 100644 --- a/translations/pt-BR/content/actions/learn-github-actions/environment-variables.md +++ b/translations/pt-BR/content/actions/learn-github-actions/environment-variables.md @@ -155,7 +155,7 @@ As variáveis de ambiente padrão que os conjuntos de {% data variables.product. {%- ifversion actions-runner-arch-envvars %} | `RUNNER_ARCH` | {% data reusables.actions.runner-arch-description %} {%- endif %} -| `RUNNER_DEBUG` | {% data reusables.actions.runner-debug-description %} | | `RUNNER_NAME` | {% data reusables.actions.runner-name-description %} For example, `Hosted Agent` | | `RUNNER_OS` | {% data reusables.actions.runner-os-description %} For example, `Windows` | | `RUNNER_TEMP` | {% data reusables.actions.runner-temp-directory-description %} For example, `D:\a\_temp` | +| `RUNNER_DEBUG` | {% data reusables.actions.runner-debug-description %} | | `RUNNER_NAME` | {% data reusables.actions.runner-name-description %} Por exemplo, `Hosted Agent` | | `RUNNER_OS` | {% data reusables.actions.runner-os-description %} Por exemplo, `Windows` | | `RUNNER_TEMP` | {% data reusables.actions.runner-temp-directory-description %} Por exemplo, `D:\a\_temp` | {% ifversion not ghae %}| `RUNNER_TOOL_CACHE` | {% data reusables.actions.runner-tool-cache-description %} For example, `C:\hostedtoolcache\windows` |{% endif %} {% note %} diff --git a/translations/pt-BR/content/actions/learn-github-actions/expressions.md b/translations/pt-BR/content/actions/learn-github-actions/expressions.md index e27fd2a01a..6aaef56655 100644 --- a/translations/pt-BR/content/actions/learn-github-actions/expressions.md +++ b/translations/pt-BR/content/actions/learn-github-actions/expressions.md @@ -129,17 +129,17 @@ Retorna `verdadeiro` se a `pesquisa` contiver `item`. Se a `pesquisa` for uma ar `contains('Hello world', 'llo')` retorna `true`. -#### Example using an object filter +#### Exemplo que usa um filtro de objeto -`contains(github.event.issue.labels.*.name, 'bug')` returns `true` if the issue related to the event has a label "bug". +`contains(github.event.issue.labels.*.name, 'bug')` retorna `true` se o problema relacionado ao evento tiver uma etiqueta de "erro". -For more information, see "[Object filters](#object-filters)." +Para obter mais informações, consulte "[Filtros de objeto](#object-filters)". -#### Example matching an array of strings +#### Exemplo correspondente a uma matriz de strings -Instead of writing `github.event_name == "push" || github.event_name == "pull_request"`, you can use `contains()` with `fromJson()` to check if an array of strings contains an `item`. +Em vez de escrever `github.event_name == "push" || github.event_name == "pull_request"`, você pode usar `contains()` com `fromJson()` para verificar se uma matriz de strings contém um `item`. -For example, `contains(fromJson('["push", "pull_request"]'), github.event_name)` returns `true` if `github.event_name` is "push" or "pull_request". +Por exemplo, `contains(fromJson('["push", "pull_request"]'), github.event_name)` retorna `true` se `github.event_name` for "push" ou "pull_request". ### startsWith diff --git a/translations/pt-BR/content/actions/learn-github-actions/understanding-github-actions.md b/translations/pt-BR/content/actions/learn-github-actions/understanding-github-actions.md index 3ecc33d026..fd741983f6 100644 --- a/translations/pt-BR/content/actions/learn-github-actions/understanding-github-actions.md +++ b/translations/pt-BR/content/actions/learn-github-actions/understanding-github-actions.md @@ -2,6 +2,7 @@ title: Entendendo o GitHub Actions shortTitle: Entendendo o GitHub Actions intro: 'Aprenda o básico de {% data variables.product.prodname_actions %}, incluindo conceitos fundamentais e terminologia essencial.' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/automating-your-workflow-with-github-actions/core-concepts-for-github-actions - /actions/automating-your-workflow-with-github-actions/core-concepts-for-github-actions @@ -82,7 +83,7 @@ Para obter mais informações, consulte "[Criar ações](/actions/creating-actio ### Executores -{% data reusables.actions.about-runners %} Cada executor pode executar uma tarefa por vez. {% ifversion ghes or ghae %} Você deve hospedar seus próprios executores para {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} fornece executores para Ubuntu Linux, Microsoft Windows e macOS para executar seus fluxos de trabalho. Cada fluxo de trabalho é executado em uma nova máquina virtual provisionada. Se você precisar de um sistema operacional diferente ou precisar de uma configuração de hardware específica, você poderá hospedar seus próprios executores.{% endif %} Para mais informações{% ifversion fpt or ghec %} sobre executores auto-hospedados{% endif %}, consulte "[Hospedando os seus próprios executores](/actions/hosting-your-own-runners)" +{% data reusables.actions.about-runners %} Cada executor pode executar uma tarefa por vez. {% ifversion ghes or ghae %} Você deve hospedar seus próprios executores para {% data variables.product.product_name %}. {% elsif fpt or ghec %}{% data variables.product.company_short %} fornece executores para Ubuntu Linux, Microsoft Windows e macOS para executar seus fluxos de trabalho. Cada fluxo de trabalho é executado em uma nova máquina virtual provisionada. {% ifversion actions-hosted-runners %} {% data variables.product.prodname_dotcom %} também oferece {% data variables.actions.hosted_runner %}s, que estão disponíveis em configurações mais amplas. Para obter mais informações, consulte "[Usando {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)". {% endif %}Se você precisar de um sistema operacional diferente ou precisar de uma configuração de hardware específica, você poderá hospedar seus próprios executores.{% endif %} Para mais informações{% ifversion fpt or ghec %} sobre executores auto-hospedados{% endif %}, consulte "[Hospedando os seus próprios executores](/actions/hosting-your-own-runners)" {% data reusables.actions.workflow-basic-example-and-explanation %} @@ -93,7 +94,7 @@ Para obter mais informações, consulte "[Criar ações](/actions/creating-actio - Para continuar aprendendo sobre {% data variables.product.prodname_actions %}, consulte "[Encontrar e personalizar ações](/actions/learn-github-actions/finding-and-customizing-actions)". {% ifversion fpt or ghec or ghes %} -- Para entender como a cobrança funciona para {% data variables.product.prodname_actions %}, consulte "[Sobre cobrança para {% data variables.product.prodname_actions %}](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)". +- Para entender como a cobrança funciona para {% data variables.product.prodname_actions %}, consulte "[Sobre cobrança para {% data variables.product.prodname_actions %}](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)." {% endif %} ## Entrar em contato com o suporte diff --git a/translations/pt-BR/content/actions/publishing-packages/publishing-nodejs-packages.md b/translations/pt-BR/content/actions/publishing-packages/publishing-nodejs-packages.md index fe4d0d6280..4a255f1e27 100644 --- a/translations/pt-BR/content/actions/publishing-packages/publishing-nodejs-packages.md +++ b/translations/pt-BR/content/actions/publishing-packages/publishing-nodejs-packages.md @@ -98,9 +98,9 @@ Cada vez que você criar uma nova versão, você poderá acionar um fluxo de tra ### Configurar o repositório de destino -Se você não fornecer a chave do `repositório` no seu arquivo *package.json*, {% data variables.product.prodname_registry %} irá publicar um pacote no repositório de {% data variables.product.prodname_dotcom %} especificado no campo `nome` do arquivo *package.json*. Por exemplo, um pacote denominado `@my-org/test` é publicado no `my-org/test` repositório de {% data variables.product.prodname_dotcom %}. +Vincular o seu pacote ao {% data variables.product.prodname_registry %} usando a chave do repositório `` é opcional. Se você optar por não fornecer a chave do `repositório` no seu arquivo *package.json*, {% data variables.product.prodname_registry %} irá publicar um pacote no repositório de {% data variables.product.prodname_dotcom %} especificado no campo `nome` do arquivo *package.json*. Por exemplo, um pacote denominado `@my-org/test` é publicado no `my-org/test` repositório de {% data variables.product.prodname_dotcom %}. Se a `url` especificada na chave do `repositório` é inválida, seu pacote ainda poderá ser publicado. No entanto ele não será vinculado à fonte do repositório, como esperado. -No entanto, se você fornecer a chave `repositório`, o repositório nessa chave será usado como o registro de npm de destino para {% data variables.product.prodname_registry %}. Por exemplo, publicar os resultados *package.json* abaixo em um pacote denominado `my-amazing-package` publicado no repositório `octocat/meu-repo` de {% data variables.product.prodname_dotcom %}. +Se você fornecer a chave do `repositório` no seu arquivo *package.json*, posteriormente, o repositório nessa chave será usado como registro npm de destino para {% data variables.product.prodname_registry %}. Por exemplo, publicar os resultados *package.json* abaixo em um pacote denominado `my-amazing-package` publicado no repositório `octocat/meu-repo` de {% data variables.product.prodname_dotcom %}. Uma vez publicada, apenas a fonte do repositório é atualizada, e o pacote não herda nenhuma permissão do repositório de destino. ```json { diff --git a/translations/pt-BR/content/actions/using-github-hosted-runners/about-github-hosted-runners.md b/translations/pt-BR/content/actions/using-github-hosted-runners/about-github-hosted-runners.md index 4c76934fbe..f5d600ac33 100644 --- a/translations/pt-BR/content/actions/using-github-hosted-runners/about-github-hosted-runners.md +++ b/translations/pt-BR/content/actions/using-github-hosted-runners/about-github-hosted-runners.md @@ -86,6 +86,15 @@ Enquanto o trabalho é executado, os logs e saídas podem ser visualizados na in ## Executores e recursos de hardware compatíveis +{% ifversion actions-hosted-runners %} + +{% note %} + +**Observação**: {% data variables.product.prodname_dotcom %} também oferece {% data variables.actions.hosted_runner %}s, que estão disponíveis em configurações maiores. Para obter mais informações, consulte "[Usando {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)". + +{% endnote %} +{% endif %} + Especificação de hardware para máquinas virtuais do Windows e Linux: - CPU de 2 núcleos (x86_64) - 7 GB de RAM diff --git a/translations/pt-BR/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md b/translations/pt-BR/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md new file mode 100644 index 0000000000..ad66c9a842 --- /dev/null +++ b/translations/pt-BR/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md @@ -0,0 +1,50 @@ +--- +title: Controlando o acesso a executores maiores +intro: 'Você pode usar políticas para limitar o acesso a {% data variables.actions.hosted_runner %}s que foram adicionados a uma organização ou empresa.' +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: actions-hosted-runners +type: tutorial +shortTitle: 'Controlando acesso a {% data variables.actions.hosted_runner %}s' +--- + +{% data reusables.actions.enterprise-beta %} +{% data reusables.actions.enterprise-github-hosted-runners %} + +## Sobre grupos de executores + +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}Para obter mais informações, consulte a [ documentação de {% data variables.product.prodname_ghe_cloud %}](/enterprise-cloud@latest/actions/using-github-hosted-runners/controlling-access-to-larger-runners).{% endif %} + +{% ifversion ghec or ghes or ghae %} + +## Criando um grupo de executores para uma organização + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} + +## Criando um grupo de executores para uma empresa + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} + +{% endif %} + +## Alterando a política de acesso de um grupo de executores + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} + +## Alterando o nome de um grupo de executores + +{% data reusables.actions.changing-the-name-of-a-runner-group %} + +{% ifversion ghec or ghes or ghae %} +## Transferindo um executor para um grupo + +{% data reusables.actions.moving-a-runner-to-a-group %} + +## Removendo um grupo de executores + +{% data reusables.actions.removing-a-runner-group %} + +{% endif %} diff --git a/translations/pt-BR/content/actions/using-github-hosted-runners/index.md b/translations/pt-BR/content/actions/using-github-hosted-runners/index.md index a43ea2b172..385a5ea6cb 100644 --- a/translations/pt-BR/content/actions/using-github-hosted-runners/index.md +++ b/translations/pt-BR/content/actions/using-github-hosted-runners/index.md @@ -7,6 +7,8 @@ versions: ghes: '*' children: - /about-github-hosted-runners + - /using-larger-runners + - /controlling-access-to-larger-runners - /monitoring-your-current-jobs - /customizing-github-hosted-runners - /connecting-to-a-private-network diff --git a/translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md b/translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md new file mode 100644 index 0000000000..8862565f16 --- /dev/null +++ b/translations/pt-BR/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -0,0 +1,135 @@ +--- +title: Usando runners maiores +intro: '{% data variables.product.prodname_dotcom %} oferece executores maiores, com mais RAM e CPU.' +miniTocMaxHeadingLevel: 3 +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: actions-hosted-runners +shortTitle: 'Usando {% data variables.actions.hosted_runner %}s' +--- + +## Visão geral de {% data variables.actions.hosted_runner %}s + +Além dos [executores auto hospedados de {% data variables.product.prodname_dotcom %} padrão](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} também oferece aos clientes em {% data variables.product.prodname_team %} e {% data variables.product.prodname_ghe_cloud %} planeja uma gama de {% data variables.actions.hosted_runner %}s com mais RAM e CPU. Estes executores são hospedados pelo {% data variables.product.prodname_dotcom %} e têm o executor, o aplicativo e outras ferramentas pré-instalados. + +Ao adicionar um {% data variables.actions.hosted_runner %} a uma organização, você irá definir um tipo de máquina a partir de uma seleção de especificações de hardware disponíveis e imagens do sistema operacional. O {% data variables.product.prodname_dotcom %} criará várias instâncias deste executor que dimensionam para corresponder às demandas de trabalho da sua organização, baseado nos limites de dimensionamento automático que você definiu. + +## Visão geral da arquitetura de {% data variables.actions.hosted_runner %}s + +Os {% data variables.actions.hosted_runner %} são gerenciados ao nível da organização, onde estão organizados em grupos que podem conter várias instâncias do executor. Também podem ser criados a nível da empresa e partilhados com organizações na hierarquia. Uma vez criado um grupo, você pode adicionar um executor ao grupo e atualizar seus fluxos de trabalho para direcionar a etiqueta atribuída ao {% data variables.actions.hosted_runner %}. Você também pode controlar quais repositórios podem enviar trabalhos para o grupo para processamento. Para obter mais informações sobre os grupos, consulte "[Controlando o acesso a {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)". + +No diagrama a seguir, uma classe de executor hospedado denominado `ubuntu-20.04-16core` foi definida com configuração personalizada de hardware e sistema operacional. + +![O diagrama que explica {% data variables.actions.hosted_runner %}](/assets/images/hosted-runner.png) + +1. As instâncias deste executor são criadas automaticamente e adicionadas a um grupo denominado `ubuntu-20.04-16core`. +2. Os executores foram atribuídos à etiqueta `ubuntu-20.04-16core`. +3. Os trabalhos do fluxo de trabalho usam a etiqueta `ubuntu-20.04-16core` na sua chave `runs-on` para indicar o tipo de executor de que precisam para executar o trabalho. +4. {% data variables.product.prodname_actions %} verifica o grupo de executores para ver se o repositório está autorizado a enviar trabalhos para o executor. +5. O trabalho é executado na próxima instância disponível do executor `ubuntu-20.04-16core`. + +## Dimensionando {% data variables.actions.hosted_runner %}s automaticamente + +Seus {% data variables.actions.hosted_runner %}s podem ser configurados para dimensionados para atender às suas necessidades automaticamente. Quando os trabalhos são enviados para processamento, é possível que mais máquinas sejam fornecidas automaticamente para executar os trabalhos até que o limite máximo predefinido seja atingido. Cada máquina lida apenas com um trabalho de cada vez, para que essas configurações determinem efetivamente o número de trabalhos que podem ser executados simultaneamente. + +Durante o processo de implantação do executor, você pode configurar a opção _Max_, que permite que você controle seus custos definindo o número máximo de máquinas paralelas que são criadas neste conjunto. Um valor mais alto pode ajudar a evitar que fluxos de trabalho sejam bloqueados devido ao paralelismo. + +## Rede para {% data variables.actions.hosted_runner %}s + +Por padrão, {% data variables.actions.hosted_runner %}s recebem um endereço IP dinâmico que muda para a execução de cada trabalho. Opcionalmente, os clientes de {% data variables.product.prodname_ghe_cloud %} podem configurar seus {% data variables.actions.hosted_runner %}s para receber um endereço IP estático do conjunto de endereços IP de {% data variables.product.prodname_dotcom %}. Quando habilitadas, as instâncias do {% data variables.actions.hosted_runner %} receberão um endereço de um intervalo que é exclusivo para o executor, permitindo que você use este intervalo para configurar uma lista de permissão do firewall. Você pode usar até 10 intervalos estáticos de endereços de IP no total entre todos os seus {% data variables.actions.hosted_runner %}. + +{% note %} + +**Observação**: Se os executores não são usados por mais de 30 dias, seus intervalos de endereços IP são removidos automaticamente e não podem ser recuperados. + +{% endnote %} + +## Planejamento para {% data variables.actions.hosted_runner %}s + +### Criar um grupo de executores + +Os grupos de executores são usados para coletar conjuntos de máquinas virtuais e criar um limite de segurança em torno delas. Em seguida, você pode decidir quais organizações ou repositórios podem executar trabalhos nesses conjuntos de máquinas. Durante o processo de implantação de {% data variables.actions.hosted_runner %}, o executor pode ser adicionado a um grupo existente, ou então entrará em um grupo padrão. Você pode criar um grupo seguindo os passos em "[Controlando o acesso a {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)". + +### Entendendo a cobrança + +Comparado com os executores padrão hospedados em {% data variables.product.prodname_dotcom %}, {% data variables.actions.hosted_runner %}s são cobrados de maneira diferente. Para obter mais informações, consulte "[Tarifas por minuto](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)". + +## Adicionando um {% data variables.actions.hosted_runner %} a uma empresa + +Você pode adicionar {% data variables.actions.hosted_runner %}s a uma empresa, onde podem ser atribuídos a várias organizações. Os administradores da organização podem controlar quais repositórios podem usar os executores. Para adicionar um {% data variables.actions.hosted_runner %} a uma empresa, você deve ser proprietário de uma empresa. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.enterprise-accounts.actions-runners-tab %} +{% data reusables.actions.add-hosted-runner %} +1. Para permitir que as organizações acessem seus {% data variables.actions.hosted_runner %}, você deve especificar a lista de organizações que podem usá-los. Para obter mais informações, consulte "[Gerenciando o acesso aos seus executores](#managing-access-to-your-runners)". + +## Adicionando um {% data variables.actions.hosted_runner %} a uma organização + +É possível adicionar um {% data variables.actions.hosted_runner %} a uma organização, onde os administradores da organização podem controlar quais repositórios podem usá-lo. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runners %} +{% data reusables.actions.add-hosted-runner %} +1. Para permitir que os repositórios acessem seus {% data variables.actions.hosted_runner %}, adicione-os à lista de repositórios que podem usá-lo. Para obter mais informações, consulte "[Gerenciando o acesso aos seus executores](#managing-access-to-your-runners)". + +## Executando trabalhos no seu executor + +Depois que seu tipo de executor for definido, você poderá atualizar seus fluxos de trabalho para enviar trabalhos para as instâncias do executor para processamento. Neste exemplo, um grupo de executores é preenchido com executores do Ubuntu 16 núcleos, aos quais foi atribuído a etiqueta `ubuntu-20.04-16core`. Se você tem um runner que corresponde a esta etiqueta, o trabalho `check-bats-version` usará a tecla `runs-on` para apontar para esse executor sempre que o trabalho for executado: + +```yaml +name: learn-github-actions +on: [push] +jobs: + check-bats-version: + runs-on: ubuntu-20.04-16core + steps: + - uses: {% data reusables.actions.action-checkout %} + - uses:{% data reusables.actions.action-setup-node %} + with: + node-version: '14' + - run: npm install -g bats + - run: bats -v +``` + +## Gerenciando o acesso aos executores + +{% note %} + +**Observação**: Antes que seus fluxos de trabalho possam enviar trabalhos para {% data variables.actions.hosted_runner %}, você deve primeiro configurar as permissões para o grupo de executores. Veja as seguintes seções para obter mais informações. + +{% endnote %} + +Grupos de executores são usados para controlar quais repositórios podem executar trabalhos nos seus {% data variables.actions.hosted_runner %}. Você deve conceder acesso ao grupo a cada nível da hierarquia de gerenciamento, dependendo de onde você definiu o {% data variables.actions.hosted_runner %}: + +- **Executores no nível da empresa**: Configure o grupo de executores para conceder acesso a todas as organizações necessárias. Além disso, para cada organização, você deve configurar o grupo para especificar quais repositórios podem acessar. +- **Executores no nível da organização**: Configure o grupo de executores especificando quais repositórios têm acesso permitido. + +Por exemplo, o diagrama a seguir tem um grupo de executores denominado `grp-ubuntu-20.04-16core` no nível corporativo. Antes que o repositório denominado `octo-repo` possa usar os executores no grupo, você deve primeiro configurar o grupo no nível corporativo para permitir acesso da organização `octo-org`; em seguida, você deve configurar o grupo no nível da organização para permitir o acesso a partir de `octo-repo`: + +![Diagrama que explica os grupos de {% data variables.actions.hosted_runner %}](/assets/images/hosted-runner-mgmt.png) + +### Permitindo que repositórios acessem um grupo de executores + +Este procedimento demonstra como configurar as permissões de grupo nos níveis da empresa e organização: + +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} + - Para grupos de executores em uma empresa: Em **Acesso da organização**, modifique quais organizações podem acessar o grupo de executores. + - Para grupos de executores em uma organização: em **Acesso do repositório**, modifique quais repositórios podem acessar o grupo de executores. + +{% warning %} + +**Aviso**: + +{% data reusables.actions.hosted-runner-security %} + +Para obter mais informações, consulte "[Controlando acesso a {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)". + +{% endwarning %} diff --git a/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index eaf2c87860..968e718ac4 100644 --- a/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/translations/pt-BR/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -51,7 +51,7 @@ Para obter mais informações sobre artefatos da execução do fluxo de trabalho Um fluxo de trabalho pode acessar e restaurar um cache criado no branch atual, no branch de base (incluindo branches base de repositórios bifurcados) ou no branch-padrão (geralmente `principal`). Por exemplo, um cache criado no branch-padrão pode ser acessado a partir de qualquer pull request. Além disso, se o branch `feature-b` tiver o branch de base `feature-a`, um fluxo de trabalho acionado em `feature-b` teria acesso a caches criados no branch-padrão (`principal`), `feature-a` e `feature-b`. -As restrições de acesso fornecem o isolamento da cache e a segurança ao criar um limite lógico entre os diferentes branches. Por exemplo, um cache criado para o branch `feature-a` (com a base no `principal`) não seria acessível para um pull request para o branch `feature-b` (com a base no `principal`). +As restrições de acesso fornecem o isolamento da cache e a segurança ao criar um limite lógico entre os diferentes branches ou tags. Por exemplo, um cache criado para o branch `feature-a` (com a base no `principal`) não seria acessível para um pull request para o branch `feature-b` (com a base no `principal`). Em linhas similares, um cache criado para a tag `release-a` (a partir da base `principal`) não poderia ser acessado para um fluxo de trabalho acionado para a tag `release-b` (com a base `principal`). Vários fluxos de trabalho dentro de um repositório compartilham entradas de cache. Uma cache criada para um branch de um fluxo de trabalho pode ser acessada e restaurada a partir de outro fluxo de trabalho para o mesmo repositório e branch. @@ -204,7 +204,7 @@ npm-d5ea0750 ### Usando a saída da ação do `cache` -Você pode usar a ação `cache` para fazer algo baseado em se ocorreu uma correspondência de cache ou se a falha ocorreu. When an exact match is found for a cache for the specified `key`, the `cache-hit` output is set to `true`. +Você pode usar a ação `cache` para fazer algo baseado em se ocorreu uma correspondência de cache ou se a falha ocorreu. Quando uma correspondência exata é encontrada para um cache para a tecla `especificada`, o `cache-hit` é definido como `verdadeiro`. No exemplo de fluxo de trabalho acima, há uma etapa que lista o estado dos módulos do Node se ocorrer uma falha de cache: diff --git a/translations/pt-BR/content/actions/using-workflows/events-that-trigger-workflows.md b/translations/pt-BR/content/actions/using-workflows/events-that-trigger-workflows.md index e006030140..9aed0e2530 100644 --- a/translations/pt-BR/content/actions/using-workflows/events-that-trigger-workflows.md +++ b/translations/pt-BR/content/actions/using-workflows/events-that-trigger-workflows.md @@ -812,7 +812,7 @@ Executa o fluxo de trabalho quando ocorre uma atividade em no pull request no re Este evento é executado no contexto da base do pull request, em vez de no contexto do commit de merge, como faz o evento `pull_request`. Isso impede a execução de código inseguro do cabeçalho do pull request que poderia alterar seu repositório ou roubar quaisquer segredos que você usa no fluxo de trabalho. Este evento permite que seu fluxo de trabalho faça coisas como etiquetar ou comentar nos pull requests a partir das bifurcações. Evite usar este evento se você precisar criar ou executar o código a partir do pull request. -To ensure repository security, branches with names that match certain patterns (such as those which look similar to SHAs) may not trigger workflows with the `pull_request_target` event. +Para garantir a segurança do repositório, os branches com nomes que correspondem a certos padrões (como aqueles que parecem similares ao SHAs) podem não acionar fluxos de trabalho com o evento `pull_request_target`. {% warning %} diff --git a/translations/pt-BR/content/actions/using-workflows/reusing-workflows.md b/translations/pt-BR/content/actions/using-workflows/reusing-workflows.md index 0931cbacb1..c6be3c13cd 100644 --- a/translations/pt-BR/content/actions/using-workflows/reusing-workflows.md +++ b/translations/pt-BR/content/actions/using-workflows/reusing-workflows.md @@ -23,7 +23,7 @@ topics: Em vez de copiar e colar de um fluxo de trabalho para outro, você pode tornar os fluxos de trabalho reutilizáveis. Você e qualquer pessoa com acesso ao fluxo de trabalho reutilizável pode chamar o fluxo de trabalho reutilizável a partir de outro fluxo de trabalho. -A reutilização dosfluxos de trabalho evita duplicação. Isso torna os fluxos de trabalho mais fáceis de manter e permite que você crie novos fluxos de trabalho mais rapidamente, desenvolvendo sobre o trabalho dos outros, assim como você faz com ações. A reutilização do fluxo de trabalho também promove práticas recomendadas, ajudando você a usar os fluxos de trabalho bem projetados, Já foram testados e sua eficiência é comprovada. Sua organização pode criar uma biblioteca de fluxos de trabalho reutilizáveis que pode ser mantida centralmente. +A reutilização dosfluxos de trabalho evita duplicação. Isso torna os fluxos de trabalho mais fáceis de manter e permite que você crie novos fluxos de trabalho mais rapidamente, desenvolvendo sobre o trabalho dos outros, assim como você faz com ações. A reutilização do fluxo de trabalho também promove práticas recomendadas que ajuda você a usar os fluxos de trabalho bem projetados já foi testada e a sua eficiência é comprovada. Sua organização pode criar uma biblioteca de fluxos de trabalho reutilizáveis que pode ser mantida centralmente. O diagrama abaixo mostra três trabalhos de criação à esquerda do diagrama. Depois que cada um desses trabalhos é concluído com sucesso, executa-se uma tarefa dependente denominada "Implantação". Esse trabalho chama um fluxo de trabalho reutilizável que contém três trabalhos: "Treinamento", "Revisão" e "Produção". A tarefa de implantação "Produção" só é executada após a tarefa de "Treinamento" ter sido concluída com sucesso. O uso um fluxo de trabalho reutilizável para executar trabalhos de implantação permite que você execute esses trabalhos para cada compilação sem duplicar o código nos fluxos de trabalho. @@ -39,7 +39,7 @@ Você pode visualizar os fluxos de trabalho referenciados nos seus fluxos de tra ### Fluxos de trabalho e fluxos de trabalho iniciais reutilizáveis -Os fluxos de trabalho iniciais permitem que todos em sua organização que têm permissão para criar fluxos de trabalho o façam de forma mais rápida e facilmente. Quando as pessoas criam um novo fluxo de trabalho, eles podem escolher um fluxo de trabalho inicial e uma parte ou todo o trabalho de escrita do fluxo de trabalho será feito para essas pessoas. Dentro de um fluxo de trabalho inicial, você também pode fazer referência a fluxos de trabalho reutilizáveis para facilitar a utilização de código de fluxo de trabalho gerenciado centralmente. If you use a commit SHA when referencing the reusable workflow, you can ensure that everyone who reuses that workflow will always be using the same YAML code. No entanto, se você fizer referência a um fluxo de trabalho reutilizável por uma tag ou branch, certifique-se de que você poderá confiar nessa versão do fluxo de trabalho. Para obter mais informações, consulte "[Fortalecimento da segurança para {% data variables.product.prodname_actions %}](/actions/security-guides/security-hardening-for-github-actions#reusing-third-party-workflows)". +Os fluxos de trabalho iniciais permitem que todos em sua organização que têm permissão para criar fluxos de trabalho o façam de forma mais rápida e facilmente. Quando as pessoas criam um novo fluxo de trabalho, eles podem escolher um fluxo de trabalho inicial e uma parte ou todo o trabalho de escrita do fluxo de trabalho será feito para essas pessoas. Dentro de um fluxo de trabalho inicial, você também pode fazer referência a fluxos de trabalho reutilizáveis para facilitar a utilização de código de fluxo de trabalho gerenciado centralmente. Se você usar um commit SHA ao fazer referência ao fluxo de trabalho reutilizável, você poderá garantir que todos que reutilizarem esse fluxo de trabalho sempre usarão o mesmo código YAML. No entanto, se você fizer referência a um fluxo de trabalho reutilizável por uma tag ou branch, certifique-se de que você poderá confiar nessa versão do fluxo de trabalho. Para obter mais informações, consulte "[Fortalecimento da segurança para {% data variables.product.prodname_actions %}](/actions/security-guides/security-hardening-for-github-actions#reusing-third-party-workflows)". Para obter mais informações, consulte "[Criando fluxos de trabalho iniciais para a sua organização](/actions/learn-github-actions/creating-starter-workflows-for-your-organization)". @@ -70,13 +70,13 @@ Fluxos de trabalho chamados que são propriedade do mesmo usuário ou organizaç ## Limitações {% ifversion nested-reusable-workflow %} -* You can connect up to four levels of workflows. For more information, see "[Calling a nested reusable workflow](#calling-a-nested-reusable-workflow)." +* Você pode se conectar a até quatro níveis de fluxos de trabalho. Para obter mais informações, consulte "[Chamando um fluxo de trabalho reutilizado aninhado](#calling-a-nested-reusable-workflow)". {% else %} * Os fluxos de trabalho reutilizáveis não podem chamar outros fluxos de trabalho reutilizáveis. {% endif %} * Os fluxos de trabalho armazenados dentro de um repositório privado só podem ser usados por fluxos de trabalho dentro do mesmo repositório. -* Qualquer variável de ambiente definida em um contexto `env` definido no nível do fluxo de trabalho no fluxo de trabalho da chamada não é propagada para o fluxo de trabalho chamado. For more information about the `env` context, see "[Context and expression syntax for GitHub Actions](/actions/reference/context-and-expression-syntax-for-github-actions#env-context)."{% ifversion actions-reusable-workflow-matrix %}{% else %} -* The `strategy` property is not supported in any job that calls a reusable workflow.{% endif %} +* Qualquer variável de ambiente definida em um contexto `env` definido no nível do fluxo de trabalho no fluxo de trabalho da chamada não é propagada para o fluxo de trabalho chamado. Para obter mais informações sobre o contexto `env`, consulte "[Sintaxe de contexto e expressão para o GitHub Actions](/actions/reference/context-and-expression-syntax-for-github-actions#env-context)".{% ifversion actions-reusable-workflow-matrix %}{% else %} +* A propriedade `estratégia` não é compatível em nenhum trabalho que chame um fluxo de trabalho reutilizável.{% endif %} ## Criar um fluxo de trabalho reutilizável @@ -113,7 +113,7 @@ Você pode definir entradas e segredos, que podem ser passados do fluxo de traba {% note %} - **Note**: If the secrets are inherited by using `secrets: inherit` in the calling workflow, you can reference them even if they are not explicitly defined in the `on` key. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecretsinherit)." + **Observação**: Se os segredos são herdados pelo uso de `secrets: inherit` no fluxo de trabalho chamado, você poderá referenciá-los mesmo se eles não estiverem definidos explicitamente na chave `on`. Para obter mais informações, consulte "[Sintaxe do fluxo de trabalho para o GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecretsinherit)." {% endnote %} {%- else %} @@ -127,7 +127,7 @@ Você pode definir entradas e segredos, que podem ser passados do fluxo de traba runs-on: ubuntu-latest environment: production steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.envPAT }} @@ -168,22 +168,23 @@ jobs: name: Pass input and secrets to my-action runs-on: ubuntu-latest steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.token }} ``` {% endraw %} + {% ifversion actions-reusable-workflow-matrix %} -## Using a matrix strategy with a reusable workflow +## Usando estratégia matrix com fluxo de trabalho reutilizável -Jobs using the matrix strategy can call a reusable workflow. +Os trabalhos que usam a estratégia matrix podem chamar um fluxo de trabalho reutilizável. -Uma estratégia de matriz permite usar variáveis em uma única definição de trabalho para criar automaticamente várias execuções de trabalho que são baseadas nas combinações das variáveis. For example, you can use a matrix strategy to pass different inputs to a reusable workflow. Para obter mais informações sobre matrizes, consulte "[Usando uma matriz para seus trabalhos](/actions/using-jobs/using-a-matrix-for-your-jobs)." +Uma estratégia de matriz permite usar variáveis em uma única definição de trabalho para criar automaticamente várias execuções de trabalho que são baseadas nas combinações das variáveis. Por exemplo, você pode usar uma estratégia da matrix para passar entradas diferentes para um fluxo de trabalho reutilizável. Para obter mais informações sobre matrizes, consulte "[Usando uma matriz para seus trabalhos](/actions/using-jobs/using-a-matrix-for-your-jobs)." -### Example matrix strategy with a reusable workflow +### Exemplo de estratégia matrix com um fluxo de trabalho reutilizável -This workflow file references the matrix context by defining the variable `target` with the values `[dev, stage, prod]`. O fluxo de trabalho irá executar três trabalhos, um por cada valor na variável. The workflow file also calls a reusable workflow by using the `uses` keyword. +Este arquivo de fluxo de trabalho faz referência ao contexto da matriz, definindo a variável `destino` com os valores `[dev, stage, prod]`. O fluxo de trabalho irá executar três trabalhos, um por cada valor na variável. O arquivo do fluxo de trabalho também chama um fluxo de trabalho reutilizável usando o a palavra-chave `uses`. {% raw %} ```yaml{:copy} @@ -274,11 +275,11 @@ jobs: {% endraw %} {% ifversion nested-reusable-workflow %} -## Nesting reusable workflows +## Aninhando fluxos de trabalho reutilizáveis -You can connect a maximum of four levels of workflows - that is, the top-level caller workflow and up to three levels of reusable workflows. For example: _caller-workflow.yml_ → _called-workflow-1.yml_ → _called-workflow-2.yml_ → _called-workflow-3.yml_. Loops in the workflow tree are not permitted. +É possível conectar um máximo de quatro níveis de fluxos de trabalho, ou seja, o fluxo de trabalho de chamadas de nível superior e até três níveis de fluxos de trabalho reutilizáveis. Por exemplo: _caller-workflow.yml_ → _called-workflow-1.yml_ → _called-workflow-2.yml_ → _called-workflow-3.yml_. Não são permitidos loops na árvore de fluxo de trabalho. -From within a reusable workflow you can call another reusable workflow. +De dentro de um fluxo de trabalho reutilizável, você pode chamar outro fluxo de trabalho reutilizável. {% raw %} ```yaml{:copy} @@ -293,11 +294,11 @@ jobs: ``` {% endraw %} -### Passing secrets to nested workflows +### Passando segredos para fluxos de trabalho aninhados -You can use `jobs..secrets` in a calling workflow to pass named secrets to a directly called workflow. Alternatively, you can use `jobs..secrets.inherit` to pass all of the calling workflow's secrets to a directly called workflow. For more information, see the section "[Passing inputs and secrets to a reusable workflow](/actions/using-workflows/reusing-workflows#passing-inputs-and-secrets-to-a-reusable-workflow)" above, and the reference article "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecretsinherit)." Secrets are only passed to directly called workflow, so in the workflow chain A > B > C, workflow C will only receive secrets from A if they have been passed from A to B, and then from B to C. +Você pode usar `jobs..secrets` em um fluxo de trabalho de chamadas para passar segredos nomeados para um fluxo de trabalho diretamente chamado. Como alternativa, você pode usar `jobs..secrets.inherit` para passar todos os segredos do fluxo de trabalho para um fluxo de trabalho chamado diretamente. Para obter mais informações, consulte a seção "[Passando entradas e segredos para um fluxo de trabalho reutilizável](/actions/using-workflows/reusing-workflows#passing-inputs-and-secrets-to-a-reusable-workflow)" acima e o artigo de referência "[Sintaxe do fluxo de trabalho para o GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idsecretsinherit)." Os segredos são passados apenas para o fluxo de trabalho diretamente, portanto, na cadeia de fluxo de trabalho A > B > C, o fluxo de trabalho C só receberá segredos de A se eles foram passados de A para B e, posteriormente, B para C. -In the following example, workflow A passes all of its secrets to workflow B, by using the `inherit` keyword, but workflow B only passes one secret to workflow C. Any of the other secrets passed to workflow B are not available to workflow C. +No exemplo a seguir, o fluxo de trabalho A passa todos os seus segredos para o fluxo de trabalho B, usando a palavra-chave `inherit`, mas o fluxo de trabalho B só passa um segredo para o fluxo de trabalho C. Qualquer um dos outros segredos passados para o fluxo de trabalho B não está disponível para o fluxo de trabalho C. {% raw %} ```yaml @@ -316,18 +317,18 @@ jobs: ``` {% endraw %} -### Access and permissions +### Acesso e permissões -A workflow that contains nested reusable workflows will fail if any of the nested workflows is inaccessible to the initial caller workflow. For more information, see "[Access to reusable workflows](/actions/using-workflows/reusing-workflows#access-to-reusable-workflows)." +Um fluxo de trabalho que contém fluxos de trabalho reutilizáveis aninhados irá falhar caso algum dos fluxos de trabalho aninhados não possa ser acessado para o fluxo de trabalho inicial de chamadas. Para obter mais informações, consulte "[Acesso para fluxos de trabalho reutilizáveis](/actions/using-workflows/reusing-workflows#access-to-reusable-workflows)". -`GITHUB_TOKEN` permissions can only be the same or more restrictive in nested workflows. For example, in the workflow chain A > B > C, if workflow A has `package: read` token permission, then B and C cannot have `package: write` permission. Para obter mais informações, consulte "[Autenticação automática de tokens](/actions/security-guides/automatic-token-authentication)". +As permissões do `GITHUB_TOKEN` só podem ser a mesma ou mais restritivas em fluxos de trabalho aninhados. Por exemplo, na cadeia de fluxo de trabalho A > B > C, se o fluxo de trabalho A tiver a permissão do token `package: read`, logo, B e C não poderão ter a permissão `package: write`. Para obter mais informações, consulte "[Autenticação automática de tokens](/actions/security-guides/automatic-token-authentication)". {% endif %} ## Usando saídas de um fluxo de trabalho reutilizável -Um fluxo de trabalho reutilizável pode gerar dados que você deseja usar no fluxo de trabalho da chamada. To use these outputs, you must specify them as the outputs of the reusable workflow.{% ifversion actions-reusable-workflow-matrix %} +Um fluxo de trabalho reutilizável pode gerar dados que você deseja usar no fluxo de trabalho da chamada. Para usar essas saídas, você deve especificá-las como saídas do fluxo de trabalho reutilizável.{% ifversion actions-reusable-workflow-matrix %} -If a reusable workflow that sets an output is executed with a matrix strategy, the output will be the output set by the last successful completing reusable workflow of the matrix which actually sets a value. That means if the last successful completing reusable workflow sets an empty string for its output, and the second last successful completing reusable workflow sets an actual value for its output, the output will contain the value of the second last completing reusable workflow.{% endif %} +Se um fluxo de trabalho reutilizável que define uma saída é executada com uma estratégia matrix, a saída será definida pela última conclusão bem-sucedida do fluxo de trabalho reutilizável da matriz que realmente define um valor. Isso significa que se a última conclusão bem sucedida de fluxo de trabalho reutilizável define uma string vazia para sua saída, e o segundo último sucesso de conclusão do fluxo de trabalho reutilizável define um valor real para sua saída, a saída conterá o valor do segundo concluindo o fluxo de trabalho reutilizável.{% endif %} O seguinte fluxo de trabalho reutilizável tem um único trabalho que contém duas etapas. Em cada uma dessas etapas, definimos uma única palavra como a saída: "olá" e "mundo". Na seção `saídas` do trabalho, nós mapeamos esses saídas de etapa para o trabalho chamada: `ouput1` e `ouput2`. Em seguida, na seção `on.workflow_call.outputs`, definimos duas saídas para o próprio fluxo de trabalho, uma chamada `firstword` que mapeamos com `output1`, e uma chamada `secondword` que mapeamos com `output2`. diff --git a/translations/pt-BR/content/actions/using-workflows/workflow-commands-for-github-actions.md b/translations/pt-BR/content/actions/using-workflows/workflow-commands-for-github-actions.md index 45277a37a2..10a829f446 100644 --- a/translations/pt-BR/content/actions/using-workflows/workflow-commands-for-github-actions.md +++ b/translations/pt-BR/content/actions/using-workflows/workflow-commands-for-github-actions.md @@ -329,6 +329,12 @@ Write-Output "::add-mask::Mona The Octocat" {% endpowershell %} +{% warning %} + +**Aviso:** Verifique se você registrou o segredo com 'add-mask' antes de colocá-lo nos logs de compilação ou usá-lo em qualquer outro comando de fluxo de trabalho. + +{% endwarning %} + ### Exemplo: Mascarando uma variável de ambiente Ao imprimir a variável `MY_NAME` ou o valor `"Mona The Octocat"` no log, você verá `"***"` em vez de `"Mona The Octocat"`. diff --git a/translations/pt-BR/content/actions/using-workflows/workflow-syntax-for-github-actions.md b/translations/pt-BR/content/actions/using-workflows/workflow-syntax-for-github-actions.md index d7e4191802..66e7b815a8 100644 --- a/translations/pt-BR/content/actions/using-workflows/workflow-syntax-for-github-actions.md +++ b/translations/pt-BR/content/actions/using-workflows/workflow-syntax-for-github-actions.md @@ -365,9 +365,9 @@ Nome da etapa no {% data variables.product.prodname_dotcom %}. Seleciona uma ação para executar como parte de uma etapa no trabalho. A ação é uma unidade reutilizável de código. Você pode usar uma ação definida no mesmo repositório que o fluxo de trabalho, um repositório público ou em uma [imagem publicada de contêiner Docker](https://hub.docker.com/). -We strongly recommend that you include the version of the action you are using by specifying a Git ref, SHA, or Docker tag. Se você não especificar uma versão, ela poderá interromper seus fluxos de trabalho ou causar um comportamento inesperado quando o proprietário da ação publicar uma atualização. +É altamente recomendável que você inclua a versão da ação que você está usando, especificando um ref do Git, SHA ou tag do Docker. Se você não especificar uma versão, ela poderá interromper seus fluxos de trabalho ou causar um comportamento inesperado quando o proprietário da ação publicar uma atualização. - Usar o commit SHA de uma versão de ação lançada é a maneira mais garantida de obter estabilidade e segurança. -- If the action publishes major version tags, you should expect to receive critical fixes and security patches while still retaining compatibility. Note that this behavior is at the discretion of the action's author. +- Se a ação publicar as principais tags de versão, você deve esperar receber as correções críticas e correções de segurança mantendo a compatibilidade. Observe que esse comportamento fica a critério do autor da ação. - Usar o branch-padrão de uma ação pode ser conveniente, mas se alguém lançar uma nova versão principal com uma mudança significativa, seu fluxo de trabalho poderá ter problemas. Algumas ações requerem entradas que devem ser definidas com a palavra-chave [`with`](#jobsjob_idstepswith) (com). Revise o arquivo README da ação para determinar as entradas obrigatórias. @@ -1037,7 +1037,7 @@ Você pode usar caracteres especiais nos filtros de caminhos, branches e tags. - `[]` Corresponde a um caractere listado entre colchetes ou incluído nos intervalos. Os intervalos só podem incluir valores de `a-z`, `A-Z`, e `0-9`. Por exemplo, o intervalo`[0-9a-z]` corresponde a qualquer letra maiúscula ou minúscula. Por exemplo, `[CB]at` corresponde a `Cat` ou `Bat` e `[1-2]00` corresponde a `100` e `200`. - `!` No início de um padrão faz com que ele anule padrões positivos anteriores. Não tem nenhum significado especial caso não seja o primeiro caractere. -Os caracteres `*`, `[` e `!` são caracteres especiais em YAML. Se você iniciar um padrão com `*`, `[` ou `!`, você deverá colocá-lo entre aspas. Also, if you use a [flow sequence](https://yaml.org/spec/1.2.2/#flow-sequences) with a pattern containing `[` and/or `]`, the pattern must be enclosed in quotes. +Os caracteres `*`, `[` e `!` são caracteres especiais em YAML. Se você iniciar um padrão com `*`, `[` ou `!`, você deverá colocá-lo entre aspas. Além disso, se você usar uma [sequência de fluxo](https://yaml.org/spec/1.2.2/#flow-sequences) com um padrão que contém `[` e/ou `]`, o padrão deverá estar entre aspas. ```yaml # Valid diff --git a/translations/pt-BR/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md b/translations/pt-BR/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md new file mode 100644 index 0000000000..7888b8fd95 --- /dev/null +++ b/translations/pt-BR/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md @@ -0,0 +1,52 @@ +--- +title: Configurando revisão de dependências para seu dispositivo +shortTitle: Configurando a revisão de dependências +intro: 'Para ajudar os usuários a entender as alterações de dependências ao revisar pull requests, você pode habilitar, configurar e desabilitar a revisão de dependências para {% data variables.product.product_location %}.' +product: '{% data reusables.gated-features.dependency-review %}' +miniTocMaxHeadingLevel: 3 +versions: + feature: dependency-review-action-ghes +type: how_to +topics: + - Advanced Security + - Enterprise + - Dependency review + - Security +--- + +{% data reusables.dependency-review.beta %} + +## Sobre revisão de dependências + +{% data reusables.dependency-review.feature-overview %} + +Algumas funcionalidades adicionais, como as verificações de licença, o bloqueio de pull requests, e a integração CI/CD, estão disponíveis com a [ação de revisão de dependência](https://github.com/actions/dependency-review-action). + +## Verificando se a sua licença inclui {% data variables.product.prodname_GH_advanced_security %} + +{% data reusables.advanced-security.check-for-ghas-license %} + +## Pré-requisitos para revisão da dependência + +- Uma licença para {% data variables.product.prodname_GH_advanced_security %}{% ifversion ghes %} (consulte "[Sobre cobrança para {% data variables.product.prodname_GH_advanced_security %}](/billing/managing-billing-for-github-advanced-security/about-billing-for-github-advanced-security)").{% endif %} + +- O gráfico de dependências habilitado para a instância. Os administradores de sites podem habilitar o gráfico de dependências por meio do console de gerenciamento ou do shell administrativo (consulte [habilitando o gráfico de dependências para sua empresa](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)"). + +- {% data variables.product.prodname_github_connect %} habilitado para fazer o download e sincronizar vulnerabilidades do {% data variables.product.prodname_advisory_database %}. Isso geralmente é configurado como parte da configuração de {% data variables.product.prodname_dependabot %} (consulte "[habilitando o Dependabot para a sua empresa](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)"). + +## Habilitando e desabilitando a revisão de dependências + +Para habilitar ou desabilitar a revisão da dependência, você deve habilitar ou desabilitar o gráfico de dependências para sua instância. + +Para obter mais informações, consulte "[Habilitando o gráfico de dependências para sua empresa](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)". + +## Executando a revisão de dependência usando {% data variables.product.prodname_actions %} + +{% data reusables.dependency-review.dependency-review-action-beta-note %} + +A ação de revisão de dependências foi incluída na sua instalação de {% data variables.product.prodname_ghe_server %}. Ele está disponível para todos os repositórios que têm {% data variables.product.prodname_GH_advanced_security %} e o gráfico de dependências habilitado. + +{% data reusables.dependency-review.dependency-review-action-overview %} + +Os usuários executam a ação de revisão de dependências usando um fluxo de trabalho de {% data variables.product.prodname_actions %}. Se você ainda não configurou os executores para {% data variables.product.prodname_actions %}, você deve fazer isso para permitir que os usuários executem fluxos de trabalho. É possível fornecer executores auto-hospedados no nível da conta do repositório, organização ou empresa. Para obter informações, consulte "[Sobre executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners)" e "[Adicionar executores auto-hospedados](/actions/hosting-your-own-runners/adding-self-hosted-runners)". + diff --git a/translations/pt-BR/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md b/translations/pt-BR/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md index 5216b4b291..7774e4b2f8 100644 --- a/translations/pt-BR/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md +++ b/translations/pt-BR/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md @@ -14,6 +14,7 @@ topics: children: - /enabling-github-advanced-security-for-your-enterprise - /configuring-code-scanning-for-your-appliance + - /configuring-dependency-review-for-your-appliance - /configuring-secret-scanning-for-your-appliance --- diff --git a/translations/pt-BR/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md b/translations/pt-BR/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md index 7a5d0ea9e0..1c1202bbab 100644 --- a/translations/pt-BR/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md +++ b/translations/pt-BR/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md @@ -23,7 +23,7 @@ Você pode habilitar o gráfico de dependências por meio do {% data variables.e ## Habilitando o gráfico de dependências por meio do {% data variables.enterprise.management_console %} -Se o seu {% data variables.product.product_location %} usar clustering, você não poderá habilitar o gráfico de dependências com o {% data variables.enterprise.management_console %} e deverá usar o shell administrativo. Para obter mais informações, consulte[Habilitando o gráfico de dependências por meio do shell administrativo](#enabling-the-dependency-graph-via-the-administrative-shell)". +If {% data variables.product.product_location %} uses clustering, you cannot enable the dependency graph with the {% data variables.enterprise.management_console %} and must use the administrative shell instead. Para obter mais informações, consulte[Habilitando o gráfico de dependências por meio do shell administrativo](#enabling-the-dependency-graph-via-the-administrative-shell)". {% data reusables.enterprise_site_admin_settings.sign-in %} {% data reusables.enterprise_site_admin_settings.access-settings %} diff --git a/translations/pt-BR/content/admin/configuration/configuring-github-connect/about-github-connect.md b/translations/pt-BR/content/admin/configuration/configuring-github-connect/about-github-connect.md index e3d4efd05a..6caeabfa66 100644 --- a/translations/pt-BR/content/admin/configuration/configuring-github-connect/about-github-connect.md +++ b/translations/pt-BR/content/admin/configuration/configuring-github-connect/about-github-connect.md @@ -8,6 +8,7 @@ type: overview topics: - Enterprise - GitHub Connect +miniTocMaxHeadingLevel: 3 --- ## Sobre o {% data variables.product.prodname_github_connect %} @@ -37,6 +38,16 @@ Após configurar a conexão entre {% data variables.product.product_location %} ## Transmissão de dados para {% data variables.product.prodname_github_connect %} +Quando {% data variables.product.prodname_github_connect %} está habilitado, um registro no {% data variables.product.prodname_ghe_cloud %} armazena informações sobre conexão. Se você habilitar as funcionalidades individuais de {% data variables.product.prodname_github_connect %}, serão transmitidos dados adicionais. + +{% note %} + +**Nota:** Nenhum repositório, problema ou pull request é transmitido de {% data variables.product.product_name %} para {% data variables.product.prodname_dotcom_the_website %} por {% data variables.product.prodname_github_connect %}. + +{% endnote %} + +### Dados transmitidos quando {% data variables.product.prodname_github_connect %} está habilitado + Ao habilitar {% data variables.product.prodname_github_connect %} ou funcionalidades específicas de{% data variables.product.prodname_github_connect %}, um registro em {% data variables.product.prodname_ghe_cloud %} irá armazenar as seguintes informações sobre a conexão. {% ifversion ghes %} - A parte da chave pública da sua licença do {% data variables.product.prodname_ghe_server %}; @@ -54,23 +65,19 @@ Ao habilitar {% data variables.product.prodname_github_connect %} ou funcionalid {% data variables.product.prodname_github_connect %} sincroniza os dados de conexão acima entre {% data variables.product.product_location %} e {% data variables.product.prodname_ghe_cloud %} semanalmente, a partir do dia e tempo aproximado que {% data variables.product.prodname_github_connect %} foi habilitado. -{% note %} - -**Nota:** Nenhum repositório, problema ou pull request é transmitido de {% data variables.product.product_name %} para {% data variables.product.prodname_dotcom_the_website %} por {% data variables.product.prodname_github_connect %}. - -{% endnote %} +### Dados transmitidos por funcionalidades individuais de {% data variables.product.prodname_github_connect %} Os dados adicionais são transmitidos se você habilitar as funcionalidades individuais de {% data variables.product.prodname_github_connect %}. -| Funcionalidade | Dados | Para onde os dados são transmitidos? | Onde os dados são usados? | -| ------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- |{% ifversion ghes %} -| Sincronização automática da licença do usuário | O ID de usuário de cada {% data variables.product.product_name %} e endereço de e-mail | De {% data variables.product.product_name %} para {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %} |{% endif %}{% ifversion ghes or ghae %} -| {% data variables.product.prodname_dependabot_alerts %} | Alertas de vulnerabilidade | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %} | {% data variables.product.product_name %} |{% endif %}{% ifversion dependabot-updates-github-connect %} -| {% data variables.product.prodname_dependabot_updates %} | As dependências e metadados para o repositório de cada dependência

Se uma dependência for armazenada em um repositório privado em {% data variables.product.prodname_dotcom_the_website %}, os dados só serão transmitidos se {% data variables.product.prodname_dependabot %} estiver configurado e autorizado para acessar esse repositório. | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %} | {% data variables.product.product_name %} {% endif %} -| Ações de {% data variables.product.prodname_dotcom_the_website %} | Nome da ação, ação (arquivo YAML de {% data variables.product.prodname_marketplace %}) | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %}

De {% data variables.product.product_name %} para {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %}{% ifversion server-statistics %} -| {% data variables.product.prodname_server_statistics %} | Agrege métricas de uso de {% data variables.product.prodname_ghe_server %}
Para a lista de métricas agregadas coletadas, consulte "[dados coletados de {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." | De {% data variables.product.product_name %} para {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} -| Pesquisa unificada | Termos de pesquisa, resultados de pesquisa | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %}

De {% data variables.product.product_name %} para {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %} -| Contribuições unificadas | Contagens de contribuição | De {% data variables.product.product_name %} paraa {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.prodname_dotcom_the_website %} +| Funcionalidade | Dados | Para onde os dados são transmitidos? | Onde os dados são usados? | +| ------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------- |{% ifversion ghes %} +| Sincronização automática da licença do usuário | O ID de usuário de cada {% data variables.product.product_name %} e endereço de e-mail | De {% data variables.product.product_name %} para {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %} |{% endif %}{% ifversion ghes or ghae %} +| {% data variables.product.prodname_dependabot_alerts %} | Alertas de vulnerabilidade | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %} | {% data variables.product.product_name %} |{% endif %}{% ifversion dependabot-updates-github-connect %} +| {% data variables.product.prodname_dependabot_updates %} | As dependências e metadados para o repositório de cada dependência

Se uma dependência for armazenada em um repositório privado em {% data variables.product.prodname_dotcom_the_website %}, os dados só serão transmitidos se {% data variables.product.prodname_dependabot %} estiver configurado e autorizado para acessar esse repositório. | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %} | {% data variables.product.product_name %} {% endif %} +| Ações de {% data variables.product.prodname_dotcom_the_website %} | Nome da ação, ação (arquivo YAML de {% data variables.product.prodname_marketplace %}) | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %}

De {% data variables.product.product_name %} para {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %}{% ifversion server-statistics %} +| {% data variables.product.prodname_server_statistics %} | Métricas agregadas sobre o seu uso de {% data variables.product.prodname_ghe_server %}. Para obter a lista completa de métricas, consulte "[Sobre {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." | De {% data variables.product.product_name %} para {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} +| Pesquisa unificada | Termos de pesquisa, resultados de pesquisa | De {% data variables.product.prodname_dotcom_the_website %} para {% data variables.product.product_name %}

De {% data variables.product.product_name %} para {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %} +| Contribuições unificadas | Contagens de contribuição | De {% data variables.product.product_name %} paraa {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.prodname_dotcom_the_website %} ## Leia mais diff --git a/translations/pt-BR/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md b/translations/pt-BR/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md index a56b3eec41..e835705be2 100644 --- a/translations/pt-BR/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md +++ b/translations/pt-BR/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md @@ -19,6 +19,8 @@ Se configurar um nome de host em vez de um endereço IP codificado, você poder A configuração do nome de host no {% data variables.enterprise.management_console %} deve ser definida como um nome de domínio totalmente qualificado (FQDN) que seja resolvido na internet ou dentro da sua rede interna. Por exemplo, a configuração do nome de host pode ser `github.companyname.com.`As solicitações da web e da API serão automaticamente redirecionadas para o nome de host configurado no {% data variables.enterprise.management_console %}. Observe que `localhost` não é uma configuração válida para o nome de host. +Nomes de host devem ter menos de 63 caracteres de comprimento a cada [Seção 2.3.4 do RFC da Especificação de Nomes de Domínio](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4). + Depois de configurar um nome de host, você poderá habilitar o isolamento de subdomínio para aumentar ainda mais a segurança de {% data variables.product.product_location %}. Para obter mais informações, consulte "[Habilitar isolamento de subdomínio](/enterprise/admin/guides/installation/enabling-subdomain-isolation/)". Para obter mais informações sobre os tipos de nome de host compatíveis, consulte a [seção 2.1 do HTTP RFC](https://tools.ietf.org/html/rfc1123#section-2). diff --git a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md index ff24568a52..c83b1356f5 100644 --- a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md +++ b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/command-line-utilities.md @@ -673,7 +673,7 @@ Você pode adicionar o argumento opcional `--prune` para remover objetos inacess {% warning %} -**Warning**: Before using the `--prune` argument to remove unreachable Git objects, put {% data variables.product.product_location %} into maintenance mode, or ensure all repositories within the same repository network are locked. Para obter mais informações, consulte "[Habilitar e programar o modo de manutenção](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode)". +**Aviso**: Antes de usar o argumento `--prune` para remover objetos do Git inacessíveis, coloque {% data variables.product.product_location %} em modo de manutenção ou garantir que todos os repositórios da mesma rede de repositório estejam bloqueados. Para obter mais informações, consulte "[Habilitar e programar o modo de manutenção](/admin/configuration/configuring-your-enterprise/enabling-and-scheduling-maintenance-mode)". {% endwarning %} diff --git a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md index 3f65ba84aa..3c250d8d23 100644 --- a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md +++ b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md @@ -78,6 +78,14 @@ Os proprietários das empresas podem configurar e-mails para notificações. Você pode aplicar a criptografia TLS para todas as conexões SMTP recebidas, o que pode ajudar a satisfazer um requisito de certificação ISO-27017. +{%- ifversion ghes = 3.6 %} +{% note %} + +**Observação**: A execução de TLS para conexões SMTP não está disponível em {% data variables.product.product_name %} 3.6.0. O recurso estará disponível em uma versão futura. + +{% endnote %} +{%- endif %} + {% data reusables.enterprise_site_admin_settings.email-settings %} 1. Em "Autenticação", selecione **Aplicar TLS auth (recomendado)**. diff --git a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md index 95b6229d4c..1e9bf643d6 100644 --- a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md +++ b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md @@ -31,12 +31,15 @@ Para restrições no nível da instância que usam o Azure NSGs, entre em contat ## Adicionar endereços IP permitidos +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## Permitindo acesso de {% data variables.product.prodname_github_apps %} @@ -44,6 +47,8 @@ Para restrições no nível da instância que usam o Azure NSGs, entre em contat ## Habilitar endereços IP permitidos +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -52,6 +57,8 @@ Para restrições no nível da instância que usam o Azure NSGs, entre em contat ## Editar endereços IP permitidos +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -59,6 +66,18 @@ Para restrições no nível da instância que usam o Azure NSGs, entre em contat {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. Clique em **Atualizar**. +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Verificando se um endereço IP é permitido + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## Excluir endereços IP permitidos diff --git a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md index e074b64fd8..5bd322dcae 100644 --- a/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md +++ b/translations/pt-BR/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md @@ -131,46 +131,49 @@ Key | Description {% ifversion ghes %} ## Indexing -GitHub's [code search][] features are powered by [ElasticSearch][]. This section of the site admin dashboard shows you the current status of your ElasticSearch cluster and provides you with several tools to control the behavior of searching and indexing. These tools are split into the following three categories. +GitHub's search features are powered by Elasticsearch. This section of the site admin dashboard shows you the current status of your Elasticsearch cluster and provides you with several tools to control search and index behavior. - [Code Search]: https://github.com/blog/1381-a-whole-new-code-search - [ElasticSearch]: http://www.elasticsearch.org/ +For more information about code search, see "[Searching for information on {% data variables.product.prodname_dotcom %}](/search-github)." For more information about Elasticsearch, see the [Elasticsearch website](https://elastic.co). + +{% note %} + +**Note**: In normal use, site administrators do not need to create new indices or schedule repair jobs. For troubleshooting or other support purposes, {% data variables.contact.github_support %} may instruct you to run a repair job. + +{% endnote %} + +### Index management + +{% data variables.product.product_name %} reconciles the state of the search index with data on the instance automatically and regularly. + +- Issues, pull requests, repositories, and users in the database +- Git repositories (source code) on disk + +Your instance uses repair jobs to reconcile the data, and schedules a repair job in the background when the following events occur. + +- A new search index is created. +- Missing data needs to be backfilled. +- Old search data needs to be updated. + +You can create a new index, or you can click on an existing index in the list to manage the index. You can perform the following operations on an index. + +- Make the index searchable. +- Make the index writable. +- Update the index. +- Delete the index +- Reset the index repair state. +- Start a new index repair job. +- Enable or disable index repair jobs. + +A progress bar shows the current status of a repair job across background workers. The bar is the percentage difference of the repair offset with the highest record ID in the database. You can ignore the value shown in the progress bar after a repair job has completed. The progress bar shows the difference between the repair offset and the highest record ID in the database, and will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. + +To minimize the effects on I/O performance and reduce the chances of operations timing out, run the repair job during off-peak hours. As the job reconciles the search index with database and Git repository data, one CPU will be used. Monitor your system's load averages and CPU usage with a utility like `top`. If you don't notice any significant increase in resource consumption, it should also be safe to run an index repair job during peak hours. + +Repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. ### Code search This allows you to enable or disable both search and index operations on source code. -### Code search index repair - -This controls how the code search index is repaired. You can - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state - -{% data variables.product.prodname_enterprise %} uses repair jobs to reconcile the state of the search index with data stored in a database (issues, pull requests, repositories, and users) and data stored in Git repositories (source code). This happens when - -- a new search index is created; -- missing data needs to be backfilled; or -- old search data needs to be updated. - -In other words, repair jobs are started as needed and run in the background—they are not scheduled by site admins in any way. - -Furthermore, repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. - -A progress bar shows the current status of a repair job across all of its background workers. It is the percentage difference of the repair offset with the highest record ID in the database. Don't worry about the value shown in the progress bar after a repair job has completed: because it shows the difference between the repair offset and the highest record ID in the database, it will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. - -You can start a new code-search index repair job at any time. It will use a single CPU as it reconciles the search index with database and Git repository data. To minimize the effects this will have on I/O performance and reduce the chances of operations timing out, try to run a repair job during off-peak hours first. Monitor your system's load averages and CPU usage with a utility like `top`; if you don't notice any significant changes, it should be safe to run an index repair job during peak hours, as well. - -### Issues index repair - -This controls how the [Issues][] index is repaired. You can - - [Issues]: https://github.com/blog/831-issues-2-0-the-next-generation - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state {% endif %} ## Reserved logins diff --git a/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md b/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md index 6a7861f137..f7558f5eca 100644 --- a/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md +++ b/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/creating-a-high-availability-replica.md @@ -20,7 +20,7 @@ shortTitle: Criar réplica HA ## Criar réplica de alta disponibilidade 1. Configure um novo appliance do {% data variables.product.prodname_ghe_server %} na plataforma desejada. O appliance réplica deve refletir as configurações de CPU, RAM e armazenamento do appliance primário. É recomendável instalar o appliance réplica em um ambiente independente. Hardware, software e componentes de rede subjacentes devem ser isolados dos do appliance primário. Se estiver em um provedor de nuvem, use uma região ou zona separada. Para obter mais informações, consulte [Configurar uma instância do {% data variables.product.prodname_ghe_server %}](/enterprise/admin/guides/installation/setting-up-a-github-enterprise-server-instance). -1. Ensure that the new appliance can communicate with all other appliances in this high availability environment over ports 122/TCP and 1194/UDP. Para obter mais informações, consulte "[Portas de rede](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)". +1. Certifique-se de que o novo dispositivo possa se comunicar com todos os outros dispositivos neste ambiente de alta disponibilidade por meio das portas 122/TCP e 1194/UDP. Para obter mais informações, consulte "[Portas de rede](/admin/configuration/configuring-network-settings/network-ports#administrative-ports)". 1. Em um navegador, vá até o novo endereço IP do appliance réplica e faça o upload da sua licença do {% data variables.product.prodname_enterprise %}. {% data reusables.enterprise_installation.replica-steps %} 1. Conecte-se ao endereço IP do appliance réplica usando SSH. diff --git a/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md b/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md index 6fef15644c..c4feeb4582 100644 --- a/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md +++ b/translations/pt-BR/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md @@ -15,7 +15,7 @@ topics: shortTitle: Iniciar falha no aplicativo --- -O tempo do failover dependerá do tempo necessário para promover manualmente a réplica e redirecionar o tráfego. Em média, o procedimento leva de dois a dez minutos. +O tempo do failover dependerá do tempo necessário para promover manualmente a réplica e redirecionar o tráfego. O intervalo de tempo médio entre 20 e 30 minutos. {% data reusables.enterprise_installation.promoting-a-replica %} diff --git a/translations/pt-BR/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md b/translations/pt-BR/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md index c8f9e7fa65..1f9cd62477 100644 --- a/translations/pt-BR/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md +++ b/translations/pt-BR/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md @@ -83,7 +83,7 @@ Você pode criar um grupo de executor para gerenciar o acesso ao executor que vo {% data variables.product.product_name %} adiciona todos os novos executores a um grupo. Os executores podem estar em um grupo por vez. Por padrão, o {% data variables.product.product_name %} adiciona novos executores ao grupo "padrão". -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} 1. Para escolher uma política para o acesso da organização, em "Acesso da organização", selecione a lista suspensa **Organização** e clique **Organizações selecionadas**. 1. À direita da lista suspensa com a política de acesso da organização, clique em {% octicon "gear" aria-label="The Gear icon" %}. 1. Selecione as organizações que você gostaria de conceder acesso ao grupo do executor. @@ -100,7 +100,7 @@ Você pode criar um grupo de executor para gerenciar o acesso ao executor que vo {% endwarning %} {%- endif %} -{% data reusables.actions.self-hosted-runner-create-group %} +{% data reusables.actions.create-runner-group %} {%- ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} 1. Clique na aba "Executores". 1. Na lista de executores, clique no executor que você implantou na seção anterior. diff --git a/translations/pt-BR/content/admin/guides.md b/translations/pt-BR/content/admin/guides.md index c3c79bcd76..fa2af41377 100644 --- a/translations/pt-BR/content/admin/guides.md +++ b/translations/pt-BR/content/admin/guides.md @@ -45,6 +45,7 @@ includeGuides: - /admin/configuration/configuring-built-in-firewall-rules - /admin/configuration/configuring-code-scanning-for-your-appliance - /admin/configuration/configuring-data-encryption-for-your-enterprise + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance - /admin/configuration/configuring-dns-nameservers - /admin/configuration/configuring-rate-limits - /admin/configuration/configuring-secret-scanning-for-your-appliance diff --git a/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md b/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md index 922a19d7ae..51302560d5 100644 --- a/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md +++ b/translations/pt-BR/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md @@ -82,7 +82,11 @@ Estas restrições são inaceitáveis para algumas empresas. Para determinar se ### Seus desenvolvedores dependem da colaboração fora da sua empresa? -{% data variables.product.prodname_managed_users_caps %} só pode contribuir para repositórios dda sua empresa. Se seus desenvolvedores precisarem colaborar em repositórios fora da sua empresa, mesmo em repositórios privados, para concluir o trabalho deles, {% data variables.product.prodname_emus %} pode não estar certo para a sua empresa e o SAML SSO pode ser uma solução melhor. +{% data variables.product.prodname_managed_users_caps %} só pode contribuir para repositórios dda sua empresa. Se seus desenvolvedores devem contribuir para ambos repositórios dentro e fora da sua empresa, incluindo repositórios privados, {% data variables.product.prodname_emus %} pode não ser o correto para a sua empresa. O SAML SSO pode ser uma solução melhor. + +Algumas empresas mantêm repositórios de uma empresa existente usando o SAML SSO em {% data variables.product.product_location %} e também criam um {% data variables.product.prodname_emu_enterprise %}. Os desenvolvedores que contribuem para repositórios pertencentes a ambas as empresas em uma única estação de trabalho devem alternar entre as contas em {% data variables.product.product_location %} dentro de um único navegador ou usar um navegador diferente para cada conta. O desenvolvedor pode também precisar personalizar a configuração do Git da estação de trabalho para acomodar as duas contas. A complexidade desse fluxo de trabalho pode aumentar o risco de vazamento de código interno para o público de forma incorreta. + +Se você decidir criar um {% data variables.product.prodname_emu_enterprise %}, mas exigir que os desenvolvedores contribuam para recursos fora da empresa a partir de uma única estação de trabalho, você poderá fornecer suporte para alternar entre as contas na configuração local de um desenvolvedor do Git. Para obter mais informações, consulte "[Sobre {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#supporting-developers-with-multiple-user-accounts-on-githubcom)." ### A sua empresa conta com colaboradores externos? diff --git a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 3db607a17f..1328e90a9f 100644 --- a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -36,8 +36,6 @@ Você pode conceder {% data variables.product.prodname_managed_users %} acesso e Os nomes de usuário do {% data variables.product.prodname_managed_users %} da empresa e as suas informações de perfil como, por exemplo, nomes de exibição e endereços de e-mail, são definidos por meio do seu IdP e não podem ser alterados pelos próprios usuários. Para obter mais informações, consulte "[Nomes de usuário e informações do perfil](#usernames-and-profile-information)". -{% data reusables.enterprise-accounts.emu-forks %} - Os proprietários de empresas podem auditar todas as ações de {% data variables.product.prodname_managed_users %}' em {% data variables.product.prodname_dotcom %}. Para obter mais informações, consulte "[Eventos de log de auditoria para a sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise#about-audit-log-events-for-your-enterprise)". Para usar {% data variables.product.prodname_emus %}, você precisa de um tipo de conta corporativa separado com {% data variables.product.prodname_emus %} habilitado. Para obter mais informações sobre a criação desta conta, consulte "[Sobre empresas com usuários gerenciados](#about-enterprises-with-managed-users)". @@ -75,7 +73,8 @@ O {% data variables.product.prodname_managed_users_caps %} só pode contribuir p * {% data variables.product.prodname_managed_users_caps %} não pode criar gists ou comentários em gists. * {% data variables.product.prodname_managed_users_caps %} não pode instalar {% data variables.product.prodname_github_apps %} nas suas contas de usuário. * Outros usuários de {% data variables.product.prodname_dotcom %} não podem ver, mencionar ou convidar um {% data variables.product.prodname_managed_user %} para colaborar. -* {% data variables.product.prodname_managed_users_caps %} só pode criar repositórios privados e {% data variables.product.prodname_managed_users %} só pode convidar outros integrantes da empresa para colaborar nos seus próprios repositórios. +* Você pode escolher se {% data variables.product.prodname_managed_users %} consegue criar repositórios pertencentes às suas contas de usuário. Para obter mais informações, consulte "[Aplicar políticas de gerenciamento do repositório na sua empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-repository-creation)". +* Se você permitir que {% data variables.product.prodname_managed_users %} crie repositórios pertencentes às suas contas de usuário, eles somente poderão ser proprietários de repositórios privados e só podem convidar outros integrantes da empresa para colaborar em seus repositórios pertencentes aos usuários. * {% data reusables.enterprise-accounts.emu-forks %} * Apenas repositórios privados e internos podem ser criados em organizações pertencentes a um {% data variables.product.prodname_emu_enterprise %}, dependendo das configurações de visibilidade da organização e do repositório corporativo. * {% data variables.product.prodname_managed_users_caps %} são limitados em seu uso de {% data variables.product.prodname_pages %}. Para obter mais informações, consulte "[Sobre {% data variables.product.prodname_pages %}](/pages/getting-started-with-github-pages/about-github-pages#limitations-for-enterprise-managed-users)". @@ -113,6 +112,8 @@ Antes que seus desenvolvedores possam usar {% data variables.product.prodname_gh 5. Uma vez configurados a autenticação e provisionamento, você pode começar a provisionar os integrantes e gerenciar as equipes. Para obter mais informações, consulte "[Gerenciar associações de equipe com grupos de provedor de identidade](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups)". +Se os membros da sua empresa tiverem de usar uma estação de trabalho para contribuir com repositórios em {% data variables.product.product_location %} de uma conta de {% data variables.product.prodname_managed_user %} e uma conta pessoal, você pode prestar suporte. Para obter mais informações, consulte "[Ajudando os desenvolvedores com várias contas de usuário no {% data variables.product.prodname_dotcom_the_website %}](#supporting-developers-with-multiple-user-accounts-on-githubcom)". + ## Efetuar a autenticação um {% data variables.product.prodname_managed_user %} {% data variables.product.prodname_managed_users_caps %} deve efetuar a autenticação por meio de seu provedor de identidade. Para efetuar a autenticação, um {% data variables.product.prodname_managed_user %} pode acessar o seu portal de aplicativo do IdP ou usar a página de login no {% data variables.product.prodname_dotcom_the_website %}. @@ -132,3 +133,9 @@ Antes que seus desenvolvedores possam usar {% data variables.product.prodname_gh Um conflito pode ocorrer quando os usuários de provisionamento das partes únicas do identificador fornecido pelo IdP são removidos durante a normalização. Se você não puder provisionar um usuário devido a um conflito de nome de usuário, você deverá modificar o nome de usuário fornecido pelo seu IdP. Para obter mais informações, consulte "[Resolvendo conflitos de nome de usuário](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts). " O nome do perfil e endereço de email de um {% data variables.product.prodname_managed_user %} também é fornecido pelo IdP. {% data variables.product.prodname_managed_users_caps %} não pode alterar seu nome de perfil ou endereço de e-mail em {% data variables.product.prodname_dotcom %}, e o IdP só pode fornecer um único endereço de e-mail. + +## Ajudando os desenvolvedores com várias contas de usuário em {% data variables.product.product_location %} + +As pessoas da sua equipe talvez precisem contribuir com recursos em {% data variables.product.product_location %} que estão fora do seu {% data variables.product.prodname_emu_enterprise %}. Por exemplo, você pode desejar manter uma empresa separada para os projetos de código aberto da sua empresa. Como {% data variables.product.prodname_managed_user %} não pode contribuir para recursos públicos, os usuários deverão manter uma conta pessoal separada para este trabalho. + +As pessoas que devem contribuir com de duas contas de usuário em {% data variables.product.product_location %} usando uma estação de trabalho podem configurar o Git para simplificar o processo. Para obter mais informações, consulte "[Gerenciando várias contas](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts)". diff --git a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md index 66c1726cca..b0ca5f2ab7 100644 --- a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md +++ b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md @@ -22,9 +22,11 @@ O suporte ao CAP é habilitado automaticamente para qualquer {% data variables.p Para obter mais informações sobre o uso do OIDC com {% data variables.product.prodname_emus %}, consulte "[Configurando o OIDC para usuários gerenciados corporativos](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users)" e "[Migrando do SAML para o OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)." -## Sobre o uso do CAP com listas de permissão de IP +{% note %} -Recomendamos deasabilitar a lista de permissão da sua conta corporativa e confiar no CAP do seu IdP. Se você habilitar as listas de permissão do IP para sua empresa e também fizer uso do CAP do seu IdP, tanto a lista de permissões de IP quanto o CAP serão aplicados. Se alguma restrição rejeitar o endereço IP de um usuário, ocorrerá uma falha na solicitação. Para obter mais informações sobre a lista de permissão de IP, consulte "[Aplicando políticas de segurança na sua empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)". +**Observação:** Se você usar as políticas de localização da rede de acesso condicional (CA) no seu inquilino do Azure AD, não use a funcionalidade da lista de permissão de IP em {% data variables.product.prodname_dotcom_the_website %}, com a conta corporativa ou com qualquer uma das organizações pertencentes à empresa. A utilização de ambas não é compatível e pode resultar na aplicação de uma política errada. Para mais informações sobre listas de permissão de IPs, consulte "[Aplicando as configurações de segurança na sua empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)" e "[Gerenciando endereços IP permitidos para a sua organização](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)". + +{% endnote %} ## Considerações para integrações e automações diff --git a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md index e24e704e21..e5ba120f02 100644 --- a/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md +++ b/translations/pt-BR/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md @@ -31,6 +31,7 @@ Se você for novo em {% data variables.product.prodname_emus %} e ainda não con {% endnote %} 1. Antes de iniciar a migração, inicie sessão no Azure e desabilite o provisionamento no aplicativo de {% data variables.product.prodname_emu_idp_application %} existente. +1. Se você usar [as políticas de localização de rede de Acesso Condicional (CA)](https://docs.microsoft.com/en-us/azure/active-directory/conditional-access/location-condition) no Azure AD, e você estiver usando uma lista de permissões de IP com a sua conta corporativa ou qualquer uma das organizações pertencentes à conta corporativa em {% data variables.product.prodname_dotcom_the_website %}, desabilite as listas de permissão de IP. Para obter mais informações, consulte, "[Aplicando as configurações de segurança na sua empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)" e "[Gerenciando endereços IP permitidos para a sua organização](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)". 1. Efetue o login em {% data variables.product.prodname_dotcom_the_website %} como usuário de configuração da sua empresa com o nome de usuário **@SHORT-CODE_admin**. 1. Quando solicitado para continuar com o provedor de identidade, clique em **Usar um código de recuperação** e efetue o login usando um dos códigos de recuperação da empresa. {% data reusables.enterprise-accounts.access-enterprise %} diff --git a/translations/pt-BR/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md b/translations/pt-BR/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md index 7c23f797f1..03521a2aa0 100644 --- a/translations/pt-BR/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md +++ b/translations/pt-BR/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md @@ -75,10 +75,12 @@ Os metadados de SP para a sua empresa em {% data variables.product.product_name Os seguintes atributos o SAML estão disponíveis para {% data variables.product.product_name %}.{% ifversion ghes %} Você pode alterar os nomes de atributo no console de gerenciamento, com exceção do atributo `administrador`. Para obter mais informações, consulte "[Acessando o console de gerenciamento](/admin/configuration/configuring-your-enterprise/accessing-the-management-console)".{% endif %} -| Nome | Obrigatório? | Descrição | -|:--------------------- |:------------ |:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `NameID` | Sim | Identificador de usuário persistente. Qualquer formato de identificador de nome persistente pode ser usado. {% ifversion ghec %}Se você usa uma empresa com {% data variables.product.prodname_emus %}, {% endif %}{% data variables.product.product_name %} irá normalizar o elemento `NameID` para usar como um nome de usuário, a menos que seja fornecida uma das declarações alternativas. Para obter mais informações, consulte "[Considerações de nome de usuário para autenticação externa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)". | -| `SessionNotOnOrAfter` | Não | A data que {% data variables.product.product_name %} invalida a sessão associada. Após a invalidação, a pessoa deve efetuar a autenticação novamente para acessar {% ifversion ghec or ghae %}os recursos da sua empresa{% elsif ghes %}{% data variables.product.product_location %}{% endif %}. Para obter mais informações, consulte "[Duração da sessão e fim do tempo](#session-duration-and-timeout)". | +| Nome | Obrigatório? | Descrição | +|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |:------------ |:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `NameID` | Sim | Identificador de usuário persistente. Qualquer formato de identificador de nome persistente pode ser usado. | +| {% ifversion ghec %}Se você usa uma empresa com {% data variables.product.prodname_emus %}, {% endif %}{% data variables.product.product_name %} irá normalizar o elemento `NameID` para usar como um nome de usuário, a menos que seja fornecida uma das declarações alternativas. Para obter mais informações, consulte "[Considerações de nome de usuário para autenticação externa](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication).

{% note %}**Observação:** é importante usar um identificador persistente e legível por humanos. O uso de um formato de identificador transitório como `urn:oasis:names:tc:SAML:2.0:nameid-format:transient` resultará na revinculação de contas a cada acesso, o que pode ser prejudicial para a gestão de autorização.{% endnote %} | | | +| | | | +| `SessionNotOnOrAfter` | Não | A data que {% data variables.product.product_name %} invalida a sessão associada. Após a invalidação, a pessoa deve efetuar a autenticação novamente para acessar {% ifversion ghec or ghae %}os recursos da sua empresa{% elsif ghes %}{% data variables.product.product_location %}{% endif %}. Para obter mais informações, consulte "[Duração da sessão e fim do tempo](#session-duration-and-timeout)". | {%- ifversion ghes or ghae %} | `administrator` | Nçao | Quando o valor for `verdadeiro`, {% data variables.product.product_name %} promoverá automaticamente o usuário para ser um {% ifversion ghes %}administrador de site{% elsif ghae %}proprietário empresarial{% endif %}. Definir esse atributo para qualquer coisa menos `verdadeiro` resultará em demonstração, desde que o valor não esteja em branco. Omitir este atributo ou deixar o valor em branco não irá alterar a função do usuário. | | `username` | Não | O nome de usuário para {% data variables.product.product_location %}. | {%- endif %} diff --git a/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md b/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md index 58aa5a524a..d409d273b9 100644 --- a/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md +++ b/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md @@ -134,6 +134,9 @@ O escopo dos eventos que aparecem no log de auditoria da sua empresa depende se {%- ifversion ghec or ghes %} | `business.set_fork_pr_workflows_policy` | A política para os fluxos de trabalho nas bifurcações de repositórios privados foi alterada. Para obter mais informações, consulte "{% ifversion ghec %}[Aplicando políticas para {% data variables.product.prodname_actions %} em uma empresa](/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 %}[Habilitando fluxos de trabalho para bifurcações do repositório privado](/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 audit-log-sso-response-events %} +|`business.sso_response` | Uma resposta de logon único SAML (logon único) foi gerada quando um integrante tentou efetuar a autenticação com sua empresa. Este evento só está disponível por meio da transmissão do log de auditoria e da API REST. +{%- endif %} {%- ifversion ghes %} | `business.update_actions_settings` | O proprietário de uma empresa ou administrador de site atualizou as configurações da política de {% data variables.product.prodname_actions %} para uma empresa. Para obter mais informações, consulte "[Aplicando as políticas para o GitHub Actions na sua empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise)". {%- endif %} @@ -663,8 +666,8 @@ Antes de ver as ações da categoria `git`, você deverá habilitar os eventos d {%- ifversion fpt or ghec or ghes %} | `org.set_fork_pr_workflows_policy` | A política para os fluxos de trabalho nas bifurcações de repositórios privados foi alterada. Para obter mais informações, consulte "[Habilitar fluxos de trabalho para bifurcações privadas do repositório](/organizations/managing-organization-settings/disabling-or-limiting-github-actions-for-your-organization#enabling-workflows-for-private-repository-forks)." {%- endif %} -{%- ifversion ghes %} -| `org.sso_response` | Uma resposta de logon único do SAML foi gerada quando um integrante tentou efetuar a autenticação com uma organização. +{%- ifversion ghes or audit-log-sso-response-events %} +| `org.sso_response` | Uma resposta do logon único SAML (SSO) foi gerada quando um integrante tentou efetuar a autenticação com sua organização. Este evento só está disponível por meio da transmissão do log de auditoria e da API REST. {%- endif %} {%- ifversion not ghae %} | `org.transform` | Uma conta de usuário foi convertida em uma organização. Para obter mais informações, consulte "[Converter um usuário em uma organização](/github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization)." diff --git a/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md b/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md index aeaa44588d..bc51c7de45 100644 --- a/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md +++ b/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md @@ -44,7 +44,8 @@ Você configurou o fluxo do log de auditoria em {% data variables.product.produc - [Amazon S3](#setting-up-streaming-to-amazon-s3) - [Armazenamento do Azure Blob](#setting-up-streaming-to-azure-blob-storage) -- [Centros de evento do Azure](#setting-up-streaming-to-azure-event-hubs) +- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs){% ifversion streaming-datadog %} +- [Datadog](#setting-up-streaming-to-datadog){% endif %} - [Armazenamento do Google Cloud](#setting-up-streaming-to-google-cloud-storage) - [Splunk](#setting-up-streaming-to-splunk) @@ -231,6 +232,32 @@ Você precisa de duas informações sobre seu centro de eventos: o nome da sua i {% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +{% ifversion streaming-datadog %} +### Configurando a transmissão para o Datadog + +Para configurar o streaming para Datadog, você deve criar um token de cliente ou uma chave de API no Datadog e, em seguida, configurar a transmissão do log de auditoria em {% data variables.product.product_name %} usando o token para autenticação. Você não precisa criar um bucket ou outro contêiner de armazenamento no Datadog. + +Depois de configurar a transmissão para o Datadog, você poderá ver seus dados do log de auditoria filtrando por "github.audit.streaming". Para obter mais informações, consulte [Gerenciamento de Log](https://docs.datadoghq.com/logs/). + +1. Se você ainda não tiver uma conta no Datadog, crie uma. +1. No Datadog, gere um token do cliente ou uma chave da API e, em seguida, clique em **Copiar a chave**. Para obter mais informações, consulte [API e chaves do aplicativo](https://docs.datadoghq.com/account_management/api-app-keys/) na documentação do Datadog. +{% data reusables.enterprise.navigate-to-log-streaming-tab %} +1. Selecione o menu suspenso **Configurar a transmissão** e clique **Datadog**. + + ![Captura de tela do menu suspenso "Configurar transmissão" com "Datadog" destacado](/assets/images/help/enterprises/audit-stream-choice-datadog.png) +1. Em "Token", cole o token que você copiou anteriormente. + + ![Captura de tela do campo "Token"](/assets/images/help/enterprises/audit-stream-datadog-token.png) +1. Selecione o menu suspenso "Site" e clique no seu site do seu Datadog. Para determinar o seu site de Datadog, compare a URL do Datadog com a tabela em [sites do Datadog](https://docs.datadoghq.com/getting_started/site/) na documentação do Datadog. + + ![Captura de tela do menu suspenso "Site"](/assets/images/help/enterprises/audit-stream-datadog-site.png) +1. Para verificar que {% data variables.product.prodname_dotcom %} pode conectar e escrever no ponto de extremidade do Datadog, clique em **Verificar ponto de extremidade**. + + ![Verificar o ponto de extremidade](/assets/images/help/enterprises/audit-stream-check.png) +{% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +1. Após alguns minutos, confirme que os dados do log de auditoria estão aparecendo na aba **Logs** no Datadog. Se os dados do log de auditoria não estiverem aparecendo, confirme que seu token e site estão corretos em {% data variables.product.prodname_dotcom %}. +{% endif %} + ### Configurando a transmissão para o Google Cloud Storage Para configurar a transmissão para o Google Cloud Storage, você deve criar uma conta de serviço no Google Cloud com as credenciais e permissões apropriadas e, em seguida, configurar a transmissão do log de auditoria em {% data variables.product.product_name %} usando as credenciais da conta de serviço para autenticação. @@ -291,6 +318,10 @@ Para transmitir os logs de auditoria para o Coletor de Eventos HTTP (HEC) do Spl A pausa da transmissão permite que você execute a manutenção no aplicativo de recebimento sem perder dados de auditoria. Os logs de auditoria são armazenados por até sete dias em {% data variables.product.product_location %} e, em seguida, são exportados quando você suspender a pausa da transmissão. +{% ifversion streaming-datadog %} +O Datadog só aceita registros das últimas 18 horas. Se você pausar uma transmissão para um ponto de extremidade do Datadog por mais de 18 horas, você correrá o risco de perder registros que o Datadog não aceitará depois que retomar a transmissão. +{% endif %} + {% data reusables.enterprise.navigate-to-log-streaming-tab %} 1. Clique **Pausar transmissão**. diff --git a/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md b/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md index d64b5625f6..aa32494be9 100644 --- a/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md +++ b/translations/pt-BR/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md @@ -20,7 +20,7 @@ topics: Você pode interagir com o log de auditoria usando a API GraphQL{% ifversion ghec or ghes > 3.2 or ghae-issue-6648 %} ou a API REST{% endif %}. -Timestamps and date fields in the API response are measured in [UTC epoch milliseconds](http://en.wikipedia.org/wiki/Unix_time). +Os registros de campo e data na resposta da API são medidos em [milissegundos da época UTC](http://en.wikipedia.org/wiki/Unix_time). ## Consultando o log auditoria da API do GraphQL @@ -121,7 +121,7 @@ Para obter mais informações sobre a REST API do log de auditoria, consulte "[A A consulta abaixo procura eventos de log de auditoria criados em 1 de janeiro de 2022 na empresa `avocado-corp` e retorna a primeira página com um máximo de 100 itens por página usando a [Paginação da API REST](/rest/overview/resources-in-the-rest-api#pagination): ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&page=1&per_page=100" ``` @@ -133,7 +133,7 @@ Você pode especificar várias frases de pesquisa, como `criado` e `ator`, separ A consulta abaixo pesquisa eventos de log de auditoria para pull requests, em que o evento ocorreu em ou depois de 1 de janeiro de 2022 na empresa `avocado-corp` e a ação foi realizada pelo usuário do `octocat`: ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat" ``` diff --git a/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md b/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md index 04f2b70214..9a1c399fb2 100644 --- a/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md +++ b/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md @@ -77,12 +77,17 @@ Você também pode configurar endereços IP permitidos para uma organização in ### Adicionar endereços IP permitidos +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ### Permitindo acesso de {% data variables.product.prodname_github_apps %} @@ -90,6 +95,8 @@ Você também pode configurar endereços IP permitidos para uma organização in ### Habilitar endereços IP permitidos +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -98,6 +105,8 @@ Você também pode configurar endereços IP permitidos para uma organização in ### Editar endereços IP permitidos +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -105,6 +114,18 @@ Você também pode configurar endereços IP permitidos para uma organização in {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. Clique em **Atualizar**. +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +### Verificando se um endereço IP é permitido + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ### Excluir endereços IP permitidos diff --git a/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md b/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md index 3807a22b51..df2a517cd4 100644 --- a/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md +++ b/translations/pt-BR/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md @@ -71,24 +71,28 @@ Se um proprietário corporativo impedir que os integrantes criem certos tipos de {% endif %} -## Aplicar uma política de {% ifversion ghec or ghes or ghae %}base{% else %}permissões padrão{% endif %} do repositório +## Aplicando uma política para as permissões básicas do repositório -Em todas as organizações pertencentes à sua empresa, você pode definir um {% ifversion ghec or ghes or ghae %}base{% else %}padrão{% endif %} nível de permissão de repositório (nenhum leitura, gravação ou administrador) para integrantes da organização, ou permitir que os proprietários administrem a configuração no nível da organização. +Em todas as organizações pertencentes à sua empresa, você pode definir um nível de permissão básica do repositório (nenhum leitura, gravação ou administrador) para integrantes da organização, ou permitir que os proprietários administrem a configuração no nível da organização. {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} -4. Em "{% ifversion ghec or ghes or ghae %}Base{% else %}Default{% endif %} permissões", revise as informações sobre como alterar a configuração. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. Em "{% ifversion ghec or ghes or ghae %}Base{% else %}Padrão{% endif %} permissões", use o menu suspenso e escolha uma política. - {% ifversion ghec or ghes or ghae %} - ![Menu suspenso com opções de políticas de permissões de repositório](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) - {% else %} - ![Menu suspenso com opções de políticas de permissões de repositório](/assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png) - {% endif %} +4. Em "Permissões básicas", revise as informações sobre como alterar a configuração. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. Em "Permissões básicas", use o menu suspenso e escolha uma política. ![Menu suspenso com opções de políticas de permissões de repositório](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) + ## Aplicando uma política para a criação do repositório -Em todas as organizações pertencentes à sua empresa, é possível permitir que os integrantes criem repositórios, restringir a criação de repositórios a proprietários da organização ou permitir que os proprietários administrem a configuração no nível da organização. Caso você permita que os integrantes criem repositórios, escolha se eles poderão criar qualquer combinação de repositórios internos, privados e públicos. O {% data reusables.repositories.internal-repo-default %} Para obter mais informações sobre repositórios internos, consulte "[Criar um repositório interno](/articles/creating-an-internal-repository)". +Em todas as organizações pertencentes à sua empresa, é possível permitir que os integrantes criem repositórios, restringir a criação de repositórios a proprietários da organização ou permitir que os proprietários administrem a configuração no nível da organização. + +Se você permitir que os integrantes criem repositórios em suas organizações, você poderá escolher quais tipos de repositórios (públicos, privados e internos) que os integrantes poderão criar. + +{% ifversion enterprise-namespace-repo-setting %} +{% ifversion ghec %}Se a empresa usa {% data variables.product.prodname_emus %}, você{% else %}Você{% endif %} também pode impedir que os usuários criem repositórios pertencentes às contas de usuário deles. +{% endif %} + +O {% data reusables.repositories.internal-repo-default %} Para obter mais informações sobre repositórios internos, consulte "[Criar um repositório interno](/articles/creating-an-internal-repository)". {% data reusables.organizations.repo-creation-constants %} @@ -96,33 +100,32 @@ Em todas as organizações pertencentes à sua empresa, é possível permitir qu {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} 5. Em "Repository creation" (Criação de repositório), revise as informações sobre como alterar a configuração. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -{% ifversion ghes or ghae or ghec %} {% data reusables.enterprise-accounts.repo-creation-policy %} -{% data reusables.enterprise-accounts.repo-creation-types %} -{% else %} -6. Em "Repository creation" (Criação de repositórios), use o menu suspenso e escolha uma política. - - ![Menu suspenso com opções de políticas de criação de repositórios](/assets/images/enterprise/site-admin-settings/repository-creation-drop-down.png) -{% endif %} +{% data reusables.enterprise-accounts.repo-creation-types %}{% ifversion enterprise-namespace-repo-setting %} +1. Opcionalmente, {% ifversion ghec %}se sua empresa usa {% data variables.product.prodname_emus %} e você quer {% endif %}que impeça que os integrantes da empresa criem repositórios pertencentes às suas contas de usuário, Selecione **Bloquear a criação de repositórios de namespace do usuário**. ![Screenshot showing the list of disabled options from forking policy](/assets/images/help/business-accounts/restrict-personal-namespace-enabled-setting.png){% endif %} ## Aplicar uma política para a bifurcação de repositórios internos ou privados Em todas as organizações pertencentes à sua empresa, é possível permitir que pessoas com acesso a um repositório privado o bifurquem, nunca permitir a bifurcação de repositórios privados ou permitir que os proprietários administrem a configuração no nível da organização. +{% ifversion enterprise-namespace-repo-setting %} +{% note %} + +**Observação:** Se {% ifversion ghec %}sua empresa usa {% data variables.product.prodname_emus %} e {% endif %}sua política de "Criação do repositório" impede que os integrantes corporativos criem repositórios pertencentes às suas contas de usuário, os integrantes não terão permissão para bifurcar um repositório nas contas de usuários, independentemente da política de "bifurcação do repositório". + +{% endnote %} +{% endif %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} 3. Em "Bifurcação de repositório", revise as informações sobre como alterar a configuração. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} 4. Em "Repository forking" (Bifurcação de repositórios), use o menu suspenso e escolha uma política. - ![Menu suspenso com opções de políticas de bifurcação de repositórios](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png) - -{% ifversion innersource-fork-policies %} + ![Menu suspenso com opções de políticas de bifurcação de repositórios](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png){% ifversion innersource-fork-policies %} 5. Se a bifurcação estiver habilitada, você poderá especificar onde os usuários podem fazer a bifurcação de repositórios. Revise as informações sobre como alterar a configuração e escolha uma política. - ![Captura de tela que mostra a lista de opções de política de bifurcação de repositório](/assets/images/help/business-accounts/repository-forking-policy-settings.png) -{% endif %} - + ![Captura de tela que mostra a lista de opções de política de bifurcação de repositório](/assets/images/help/business-accounts/repository-forking-policy-settings.png){% endif %} ## Aplicando uma política para convidar{% ifversion ghec %} colaboradores{% endif %} externos para repositórios @@ -140,8 +143,6 @@ Em todas as organizações pertencentes à sua empresa, você pode permitir que ![Menu suspenso com opções de política de convites](/assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png) {% endif %} -{% ifversion ghec or ghes or ghae %} - ## Aplicando uma política para o nome padrão do branch Em todas as organizações pertencentes à sua empresa, você pode definir o nome padrão da branch para quaisquer novos repositórios que os integrantes criarem. Você pode optar por aplicar esse nome do branch-padrão em todas as organizações ou permitir que as organizações individuais definam um nome diferente. @@ -152,8 +153,6 @@ Em todas as organizações pertencentes à sua empresa, você pode definir o nom 4. Opcionalmente, para aplicar o nome do branch-padrão para todas as organizações da empresa, selecione **Aplicar em toda a empresa**. ![Caixa de aplicação](/assets/images/help/business-accounts/default-branch-name-enforce.png) 5. Clique em **Atualizar**. ![Botão de atualizar](/assets/images/help/business-accounts/default-branch-name-update.png) -{% endif %} - ## Aplicando uma política de alterações à visibilidade do repositório Em todas as organizações pertencentes à sua empresa, é possível permitir que integrantes com acesso administrativo alterem a visibilidade de um repositório, restringir alterações na visibilidade do repositório a proprietários da organização ou permitir que os proprietários administrem a configuração no nível da organização. Quando você impede que os integrantes alterem a visibilidade do repositório, somente os proprietários corporativos podem alterar a visibilidade de um repositório. @@ -163,9 +162,8 @@ Se um proprietário corporativo tiver restringido a criação de repositório ap {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} -5. Em "Repository visibility change" (Alteração da visibilidade do repositório), revise as informações sobre a alteração da configuração. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} - -{% data reusables.enterprise-accounts.repository-visibility-policy %} +1. Em "Repository visibility change" (Alteração da visibilidade do repositório), revise as informações sobre a alteração da configuração. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +1. Em "Repository visibility change" (Mudança de visibilidade do repositório), use o menu suspenso e escolha uma política. ![Menu suspenso com opções de política de visibilidade do repositório](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) ## Aplicando uma política de exclusão e transferência de repositório diff --git a/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md b/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md index 39da7e2484..58f8bf1684 100644 --- a/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md +++ b/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md @@ -45,7 +45,7 @@ No momento, a API de Migrações está em período de exibição. Ou seja, os po * Token de acesso para autenticação; * Uma [lista de repositórios](/free-pro-team@latest/rest/repos#list-organization-repositories) que você pretende migrar: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X POST \ -H "Accept: application/vnd.github+json" \ -d'{"lock_repositories":true,"repositories":["orgname/reponame", "orgname/reponame"]}' \ @@ -60,7 +60,7 @@ No momento, a API de Migrações está em período de exibição. Ou seja, os po * Token de acesso para autenticação; * `id` exclusivo da migração. ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id ``` @@ -75,7 +75,7 @@ No momento, a API de Migrações está em período de exibição. Ou seja, os po * Token de acesso para autenticação; * `id` exclusivo da migração. ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ -L -o migration_archive.tar.gz \ https://api.github.com/orgs/orgname/migrations/id/archive @@ -85,7 +85,7 @@ No momento, a API de Migrações está em período de exibição. Ou seja, os po * Token de acesso para autenticação; * `id` exclusivo da migração. ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X DELETE \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id/archive diff --git a/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md b/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md index 3ca005c827..c22a85e598 100644 --- a/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md +++ b/translations/pt-BR/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md @@ -134,7 +134,7 @@ Para desbloquear repositórios em uma organização do {% data variables.product * `id` exclusivo da migração; * Nome do repositório a ser desbloqueado. ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ -H "Accept: application/vnd.github.wyandotte-preview+json" \ https://api.github.com/orgs/orgname/migrations/id/repos/repo_name/lock ``` @@ -143,7 +143,7 @@ curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ Após desbloquear os repositórios da organização de {% data variables.product.prodname_dotcom_the_website %}, você deverá excluir todos os repositórios previamente migrados usando [o ponto de extremidade de exclusão do repositório](/rest/repos/#delete-a-repository). Você precisará do token de acesso para autenticação: ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ https://api.github.com/repos/orgname/repo_name ``` diff --git a/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/about-ssh.md b/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/about-ssh.md index bd37fe1258..622177cedc 100644 --- a/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/about-ssh.md +++ b/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/about-ssh.md @@ -1,6 +1,6 @@ --- title: Sobre o SSH -intro: 'Usando o protocolo SSH, você pode se conectar a servidores e serviços remotos e se autenticar neles. Com chaves SSH, você pode conectar-se a {% data variables.product.product_name %} sem inserir seu nome de usuário e token de acesso pessoal em cada visita.' +intro: 'Usando o protocolo SSH, você pode se conectar a servidores e serviços remotos e se autenticar neles. Com chaves SSH, você pode se conectar a {% data variables.product.product_name %} sem fornecer seu nome de usuário e token de acesso pessoal em cada acesso.{% ifversion ssh-commit-verification %} Você também pode usar uma chave SSH para assinar commits.{% endif %}' redirect_from: - /articles/about-ssh - /github/authenticating-to-github/about-ssh @@ -16,7 +16,7 @@ topics: {% data reusables.ssh.about-ssh %} Para obter mais informações sobre SSH, consulte [Secure Shell](https://en.wikipedia.org/wiki/Secure_Shell) na Wikipédia. -Ao configurar o SSH, você deverá gerar uma nova chave SSH privada e adicioná-la ao agente SSH. Você também deve adicionar a chave SSH pública à sua conta no {% data variables.product.product_name %} antes de usar a chave para efetuar a autenticação. Para mais informações consulte "[Gerar uma nova chave SSH e adicioná-la ao ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)" e "[Adicionar uma nova chave SSH à sua conta de {% data variables.product.prodname_dotcom %}](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)". +Ao configurar o SSH, você deverá gerar uma nova chave SSH privada e adicioná-la ao agente SSH. Você também deve adicionar a chave SSH pública à sua conta em {% data variables.product.product_name %} antes de usar a chave para efetuar a autenticação em {% ifversion ssh-commit-verification %} ou assinar commits{% endif %}. Para obter mais informações, consulte "[Gerando uma nova chave SSH e adicionando-a ao ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)"{% ifversion ssh-commit-verification %}, {% else %} e{% endif %} "[Adicionando uma nova chave SSH à sua conta de {% data variables.product.prodname_dotcom %}](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account){% ifversion ssh-commit-verification %}" e "[Sobre a verificação de assinatura do commit](/articles/about-commit-signature-verification){% endif %}." Você pode proteger ainda mais sua chave SSH usando uma chave de segurança de hardware, o que exige que a chave de segurança física do hardware seja conectada ao seu computador quando o par de chaves é usado para efetuar a autenticação com SSH. Você também pode proteger sua chave SSH, adicionando sua chave ao agente do ssh-agent e usando uma frase secreta. Para obter mais informações, consulte "[Trabalhar com frases secretas da chave SSH](/github/authenticating-to-github/working-with-ssh-key-passphrases)". @@ -33,7 +33,6 @@ As organizações que usam {% data variables.product.prodname_ghe_cloud %} podem {% else ghec or ghes or ghae %} Se você for integrante de uma organização que fornece certificados SSH, você poderá usar seu certificado para acessar os repositórios da organização sem adicionar o certificado à sua conta em {% data variables.product.product_name %}. Você não pode usar seu certificado para acessar as bifurcações dos repositórios da organização, se as bifurcações pertencerem à sua conta pessoal. Para obter mais informações, consulte "[Sobre autoridades certificadas de SSH](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)". {% endif %} - ## Leia mais - "[Solucionar problemas de SSH](/articles/troubleshooting-ssh)" diff --git a/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md b/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md index d0582bf8b8..8d21dfd87b 100644 --- a/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md +++ b/translations/pt-BR/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md @@ -19,6 +19,8 @@ shortTitle: Adicionar uma nova chave SSH {% data reusables.ssh.about-ssh %} Para obter mais informações, consulte "[Sobre SSH](/authentication/connecting-to-github-with-ssh/about-ssh)". +{% ifversion ssh-commit-verification %}Você também pode usar SSH para assinar commits e etiquetas. Para obter mais informações sobre a assinatura de commit, consulte "[Sobre a verificação de assinatura de commit](/articles/about-commit-signature-verification)".{% endif %} + Após gerar um par de chaves SSH, você deve adicionar a chave pública em {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} para habilitar o acesso SSH para a sua conta. ## Pré-requisitos @@ -30,111 +32,45 @@ Antes de adicionar uma nova chave SSH à sua conta em {% ifversion ghae %}{% dat ## Adicionando uma nova chave SSH à sua conta -Depois de adicionar uma nova chave SSH à sua conta em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, você poderá reconfigurar quaisquer repositórios locais para usar SSH. Para obter mais informações, consulte "[Alternar URLs remotos de HTTPS para SSH](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)". +Depois de adicionar uma nova autenticação da chave SSH à sua conta em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, você poderá reconfigurar quaisquer repositórios locais para usar SSH. Para obter mais informações, consulte "[Alternar URLs remotos de HTTPS para SSH](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)". {% data reusables.ssh.key-type-support %} -{% mac %} - {% webui %} -1. Copie a chave pública SSH para a sua área de transferência. - - Se o seu arquivo de chave pública SSH tiver um nome diferente do código de exemplo, modifique o nome do arquivo para corresponder à sua configuração atual. Ao copiar sua chave, não adicione novas linhas nem espaços em branco. - - ```shell - $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **Dica:** se `pbcopy` não estiver funcionando, você poderá localizar a pasta `.ssh` oculta, abrir o arquivo no seu editor de texto de preferência e copiá-lo na área de transferência. - - {% endtip %} - +{% data reusables.gpg.copy-ssh-public-key %} {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.ssh %} -4. Clique em **New SSH key** (Nova chave SSH) ou **Add SSH key** (Adicionar chave SSH). ![Botão SSH Key (Chave SSH)](/assets/images/help/settings/ssh-add-ssh-key.png) -5. No campo "Title" (Título), adicione uma etiqueta descritiva para a nova chave. Por exemplo, se estiver usando um Mac pessoal, você poderá chamar essa chave de "MacBook Air Pessoal". -6. Cole sua chave no campo "Key" (Chave). ![O campo de chave](/assets/images/help/settings/ssh-key-paste.png) -7. Clique em **Add SSH key** (Adicionar chave SSH). ![O botão Add key (Adicionar chave)](/assets/images/help/settings/ssh-add-key.png) +4. Clique em **New SSH key** (Nova chave SSH) ou **Add SSH key** (Adicionar chave SSH). +{% ifversion ssh-commit-verification %} + ![Botão SSH Key (Chave SSH)](/assets/images/help/settings/ssh-add-ssh-key-with-auth.png) +{% else %} + ![Botão SSH Key (Chave SSH)](/assets/images/help/settings/ssh-add-ssh-key.png) +{% endif %} +5. No campo "Title" (Título), adicione uma etiqueta descritiva para a nova chave. Por exemplo, se você estiver usando um laptop pessoal, você pode chamar essa chave de "laptop pessoal". +{% ifversion ssh-commit-verification %} +6. Selecione o tipo de chave, autenticação ou assinatura. Para obter mais informações sobre a assinatura de commit, consulte "[Sobre a verificação de assinatura de commit](/articles/about-commit-signature-verification)". +{% endif %} +7. Cole sua chave no campo "Key" (Chave). +{% ifversion ssh-commit-verification %} + ![O campo de chave](/assets/images/help/settings/ssh-key-paste-with-type.png) +{% else %} + ![O campo de chave](/assets/images/help/settings/ssh-key-paste.png) +{% endif %} +8. Clique em **Add SSH key** (Adicionar chave SSH). ![O botão Add key (Adicionar chave)](/assets/images/help/settings/ssh-add-key.png) {% data reusables.user-settings.sudo-mode-popup %} {% endwebui %} -{% endmac %} - -{% windows %} - -{% webui %} - -1. Copie a chave pública SSH para a sua área de transferência. - - Se o seu arquivo de chave pública SSH tiver um nome diferente do código de exemplo, modifique o nome do arquivo para corresponder à sua configuração atual. Ao copiar sua chave, não adicione novas linhas nem espaços em branco. - - ```shell - $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **Dica:** se `clip` não estiver funcionando, você poderá localizar a pasta `.ssh` oculta, abrir o arquivo no seu editor de texto de preferência e copiá-lo na área de transferência. - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. Clique em **New SSH key** (Nova chave SSH) ou **Add SSH key** (Adicionar chave SSH). ![Botão SSH Key (Chave SSH)](/assets/images/help/settings/ssh-add-ssh-key.png) -5. No campo "Title" (Título), adicione uma etiqueta descritiva para a nova chave. Por exemplo, se estiver usando um Mac pessoal, você poderá chamar essa chave de "MacBook Air Pessoal". -6. Cole sua chave no campo "Key" (Chave). ![O campo de chave](/assets/images/help/settings/ssh-key-paste.png) -7. Clique em **Add SSH key** (Adicionar chave SSH). ![O botão Add key (Adicionar chave)](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endwindows %} - -{% linux %} - -{% webui %} - -1. Copie a chave pública SSH para a sua área de transferência. - - Se o seu arquivo de chave pública SSH tiver um nome diferente do código de exemplo, modifique o nome do arquivo para corresponder à sua configuração atual. Ao copiar sua chave, não adicione novas linhas nem espaços em branco. - - ```shell - $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Then select and copy the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file - # displayed in the terminal to your clipboard - ``` - - {% tip %} - - **Dica:** Como alternativa, você pode localizar a pasta oculta de `.ssh`, abrir o arquivo no seu editor de texto favorito e copiá-lo na sua área de transferência. - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. Clique em **New SSH key** (Nova chave SSH) ou **Add SSH key** (Adicionar chave SSH). ![Botão SSH Key (Chave SSH)](/assets/images/help/settings/ssh-add-ssh-key.png) -5. No campo "Title" (Título), adicione uma etiqueta descritiva para a nova chave. Por exemplo, se estiver usando um Mac pessoal, você poderá chamar essa chave de "MacBook Air Pessoal". -6. Cole sua chave no campo "Key" (Chave). ![O campo de chave](/assets/images/help/settings/ssh-key-paste.png) -7. Clique em **Add SSH key** (Adicionar chave SSH). ![O botão Add key (Adicionar chave)](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endlinux %} - {% cli %} {% data reusables.cli.cli-learn-more %} Antes de poder usar o {% data variables.product.prodname_cli %} para adicionar uma chave SSH à sua conta, você deve efetuar a autenticação no {% data variables.product.prodname_cli %}. Para obter mais informações, consulte [`login login gh`](https://cli.github.com/manual/gh_auth_login) na documentação do {% data variables.product.prodname_cli %}. -Para adicionar uma chave SSH à sua conta do GitHub, use o subcomando `ssh-key add`, especificando a sua chave pública. +{% ifversion ssh-commit-verification %}, atualmente você só pode usar {% data variables.product.prodname_cli %} para adicionar chaves de autenticação SSH, você não pode adicionar chaves de assinatura SSH.{% endif %} + +Para adicionar uma chave de autenticação SSH à sua conta do GitHub, use o subcomando `ssh-key add`, especificando sua chave pública. ```shell gh ssh-key add key-file diff --git a/translations/pt-BR/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md b/translations/pt-BR/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md index 300d985ccf..a6117b37f3 100644 --- a/translations/pt-BR/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md +++ b/translations/pt-BR/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md @@ -1,6 +1,6 @@ --- title: Sobre a verificação de assinatura de commit -intro: 'Ao usar GPG ou S/MIME, você pode assinar tags e commits localmente. Essas tags ou commits estão marcadas como verificadas em {% data variables.product.product_name %} para que outras pessoas possam estar confiantes de que as alterações vêm de uma fonte de confiança.' +intro: 'Ao usar o GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} ou S/MIME, você pode assinar tags e commits localmente. Essas tags ou commits estão marcadas como verificadas em {% data variables.product.product_name %} para que outras pessoas possam estar confiantes de que as alterações vêm de uma fonte de confiança.' redirect_from: - /articles/about-gpg-commit-and-tag-signatures - /articles/about-gpg @@ -20,10 +20,18 @@ shortTitle: Fazer commit da verificação de assinatura ## Sobre a verificação de assinatura de commit -Você pode assinar commits e tags localmente para dar a outras pessoas confiança sobre a origem de uma alteração que você fez. Se um commit ou tag tiver uma assinatura GPG ou S/MIME que seja verificável criptograficamente, o GitHub marcará o commit ou a tag {% ifversion fpt or ghec %}"Verificado" ou "Verificado parcialmente."{% else %}"Verificado."{% endif %} +Você pode assinar commits e tags localmente para dar a outras pessoas confiança sobre a origem de uma alteração que você fez. Se um commit ou tag tiver um GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} ou S/MIME que seja verificável criptograficamente, {% data variables.product.product_name %} marcará o commit ou tag {% ifversion fpt or ghec %}"Verificado" ou "verificado parcialmente."{% else %}"Verificado."{% endif %} ![Commit verificado](/assets/images/help/commits/verified-commit.png) +{% ifversion ghes or ghae %} +Se um commit ou tag tiver uma assinatura que não pode ser verificada, {% data variables.product.product_name %} marcará o commit ou a tag "não verificado". +{% endif %} + +{% ifversion ssh-commit-verification %} +Para a maioria dos usuários individuais, o GPG ou o SSH será a melhor opção para assinar commits. As assinaturas S/MIME são geralmente necessárias no contexto de uma organização maior. Assinaturas SSH são as mais simples de gerar. Você pode até enviar sua chave de autenticação existente para {% data variables.product.product_name %} para usar também como chave de assinatura. Gerar uma chave GPG exige mais envolvimento do que gerar uma chave SSH, mas o GPG tem funcionalidades que o SSH não tem. Uma chave GPG pode expirar ou ser revogada quando não for mais usada. {% data variables.product.product_name %} mostra commits assinados com uma chave como "Verificado", a menos que a chave tenha sido marcada como comprometida. As chaves SSH não têm este recurso. +{% endif %} + {% ifversion fpt or ghec %} Os commits e tags têm o seguinte status de verificação, dependendo se você habilitou o modo vigilante. Por padrão, o modo vigilante não está habilitado. Para obter informações sobre como habilitar o modo vigilante, consulte "[Exibir status de verificação para todos os seus commits](/github/authenticating-to-github/displaying-verification-statuses-for-all-of-your-commits)". @@ -48,10 +56,9 @@ Para obter mais informações, consulte "[Fazendo rebase e merge dos seus commit {% data reusables.identity-and-permissions.vigilant-mode-verification-statuses %} -{% else %} -Se um commit ou tag tiver uma assinatura que não pode ser verificada, {% data variables.product.product_name %} marca o commit ou a tag "não verificada". {% endif %} + Os administradores do repositório podem impor a assinatura de commit obrigatória em um branch para bloquear todos os commits que não estejam assinados e verificados. Para obter mais informações, consulte "[Sobre branches protegidos](/github/administering-a-repository/about-protected-branches#require-signed-commits)." {% data reusables.identity-and-permissions.verification-status-check %} @@ -60,14 +67,14 @@ Os administradores do repositório podem impor a assinatura de commit obrigatór {% ifversion ghes %}Se um administrador do site tiver habilitado a assinatura de commit da web, {% data variables.product.product_name %} usará automaticamente o GPG para assinar os commits que você criar usando a interface da web. Os commits assinados por {% data variables.product.product_name %} terão um status verificado. Você pode verificar a assinatura localmente usando a chave pública disponível em `https://HOSTNAME/web-flow.gpg`. Para obter mais informações, consulte "[Configurando a assinatura de commit da web](/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing). " {% else %}{% data variables.product.prodname_dotcom %} usará automaticamente o GPG para assinar os commits que você criar usando a interface da web. Os commits assinados por {% data variables.product.prodname_dotcom %} terão um status verificado. É possível verificar a assinatura localmente usando a chave pública disponível em https://github.com/web-flow.gpg. A impressão digital completa da chave é `5DE3 E050 9C47 EA3C F04A 42D3 4AEE 18F8 3AFD EB23`. -Opcionalmente, você pode escolher que {% data variables.product.prodname_dotcom %} assine os commits que você fizer em {% data variables.product.prodname_github_codespaces %}. Para obter mais informações sobre como habilitar a verificação do GPG para os seus codespaces, consulte "[Gerenciando a verificação do GPG para {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} +Opcionalmente, você pode escolher que o GPG de {% data variables.product.prodname_dotcom %} assine os commits que você fizer em {% data variables.product.prodname_github_codespaces %}. Para obter mais informações sobre como habilitar a verificação do GPG para os seus codespaces, consulte "[Gerenciando a verificação do GPG para {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} {% endif %} ## Verificação da assinatura de commit GPG É possível usar GPG para assinar commits com uma chave GPG que você mesmo gera. -{% data variables.product.product_name %} usa bibliotecas OpenPGP para confirmar que seus commits e tags assinados localmente são verificáveis criptograficamente com base em uma chave pública que você adicionou à sua conta em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. +{% data variables.product.product_name %} usa bibliotecas do OpenPGP para confirmar que seus commits e tags assinados localmente são verificáveis criptograficamente com base em uma chave pública que você adicionou à sua conta em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. Para assinar commits usando GPG e para que esses commits sejam verificados no {% data variables.product.product_name %}, siga estas etapas: @@ -78,7 +85,26 @@ Para assinar commits usando GPG e para que esses commits sejam verificados no {% 5. [Assinar commits](/articles/signing-commits) 6. [Assinar tags](/articles/signing-tags) -## Verificação da assinatura de commit S/MIME +{% ifversion ssh-commit-verification %} +## Verificação da assinatura de commit do SSH + +Você pode usar SSH para assinar commits com uma chave pública SSH que você gera. Se você já usa uma chave SSH para efetuar a autenticação com {% data variables.product.product_name %}, você também pode fazer o upload dessa mesma chave novamente para usar como chave de assinatura. Não há limite para o número de chaves de assinatura que você pode adicionar à sua conta. + +{% data variables.product.product_name %} usa [ssh_data](https://github.com/github/ssh_data), uma biblioteca do Ruby de código aberto para confirmar que seus compromissos e tags assinados localmente são criptograficamente verificáveis para uma chave pública que você adicionou à sua conta em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. + +{% data reusables.gpg.ssh-git-version %} + +Para assinar commits usando SSH e para que esses commits sejam verificados no {% data variables.product.product_name %}, siga estas etapas: + +1. [Verifique se há chaves SSH existentes](/articles/checking-for-existing-ssh-keys) +2. [Gere uma nova chave SSH](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) +3. [Adicione uma chave de assinatura SSH à sua conta do GitHub](/articles/adding-a-new-ssh-key-to-your-github-account) +4. [Informar o Git sobre a chave de assinatura](/articles/telling-git-about-your-signing-key) +5. [Assinar commits](/articles/signing-commits) +6. [Assinar tags](/articles/signing-tags) + +{% endif %} +## Verificação de assinatura de S/MIME commit Você pode usar S/MIME para assinar commits com uma chave X.509 emitida pela organização. diff --git a/translations/pt-BR/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md b/translations/pt-BR/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md index 118c195d3a..b954898815 100644 --- a/translations/pt-BR/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md +++ b/translations/pt-BR/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md @@ -19,7 +19,7 @@ redirect_from: Ao trabalhar localmente no seu computador, o Git permite que você defina o autor das suas alterações e a identidade do autor do autor do autor do committer. Isso torna potencialmente difícil para outras pessoas estarem confiantes de que os commits e tags que você cria foram realmente criados por você. Para ajudar a resolver esse problema, você pode assinar seus commits e tags. Para obter mais informações, consulte "[Assinar commits](/github/authenticating-to-github/signing-commits)" e "[Assinar tags](/github/authenticating-to-github/signing-tags)". {% data variables.product.prodname_dotcom %} marca commits e tags assinadas com um status de verificação. -Por padrão, os commits e tags são marcados como "Verificados" se forem assinadas com uma chave GPG ou S/MIME que foi verificada com sucesso. Se um commit ou tag tiver uma assinatura que não pode ser verificada por {% data variables.product.prodname_dotcom %}, nós marcaremos o commit ou a tag como "não verificado". Em todos os outros casos, não se exibe nenhum status de verificação. +Por padrão os commits e tags são marcados como "Verificados" se forem assinados com um GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} ou chave S/MIME que foi verificada com sucesso. Se um commit ou tag tiver uma assinatura que não pode ser verificada por {% data variables.product.prodname_dotcom %}, nós marcaremos o commit ou a tag como "não verificado". Em todos os outros casos, não se exibe nenhum status de verificação. No entanto, você pode dar a outros usuários maior confiança na identidade atribuída aos seus commits e tags, habilitando o modo vigilante nas configurações do seu {% data variables.product.prodname_dotcom %} Com o modo vigilante habilitado, todos os seus commits e tags são marcados com um de três status de verificação. diff --git a/translations/pt-BR/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md b/translations/pt-BR/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md index a4af5448ea..37449ac202 100644 --- a/translations/pt-BR/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md +++ b/translations/pt-BR/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md @@ -29,11 +29,11 @@ topics: {% data reusables.command_line.open_the_multi_os_terminal %} 3. Gere um par de chaves GPG. Já que existem várias versões do GPG, é possível que você tenha de consultar a [_página man_](https://en.wikipedia.org/wiki/Man_page) relevante para encontrar o comando de geração de chaves apropriado. A sua chave deve usar RSA. - Se a sua versão for 2.1.17 ou posterior, cole o texto abaixo para gerar um par de chaves GPG. - ```shell + ```shell{:copy} $ gpg --full-generate-key ``` - Se a sua versão não for 2.1.17 ou posterior, o comando `gpg --full-generate-key` não funcionará. Cole o texto abaixo e passe para a etapa 6. - ```shell + ```shell{:copy} $ gpg --default-new-key-algo rsa4096 --gen-key ``` 4. Mediante instrução, especifique o tipo de tecla que você deseja ou pressione `Enter` para aceitar o padrão. @@ -52,10 +52,10 @@ topics: {% data reusables.gpg.list-keys-with-note %} {% data reusables.gpg.copy-gpg-key-id %} 10. Cole o texto abaixo, substituindo o ID da chave GPG que você quer usar. Neste exemplo, o ID da chave GPG é `3AA5C34371567BD2`: - ```shell - $ gpg --armor --export 3AA5C34371567BD2 - # Prints the GPG key ID, in ASCII armor format - ``` + ```shell{:copy} + $ gpg --armor --export 3AA5C34371567BD2 + # Prints the GPG key ID, in ASCII armor format + ``` 11. Copie sua chave GPG, que inicia com `-----BEGIN PGP PUBLIC KEY BLOCK-----` e termina com `-----END PGP PUBLIC KEY BLOCK-----`. 12. [Adicione a chave GPG à sua conta GitHub](/articles/adding-a-gpg-key-to-your-github-account). diff --git a/translations/pt-BR/content/authentication/managing-commit-signature-verification/index.md b/translations/pt-BR/content/authentication/managing-commit-signature-verification/index.md index 9da2d2a911..b27a93b90e 100644 --- a/translations/pt-BR/content/authentication/managing-commit-signature-verification/index.md +++ b/translations/pt-BR/content/authentication/managing-commit-signature-verification/index.md @@ -1,6 +1,6 @@ --- title: Gerenciar a verificação de assinatura de commit -intro: 'Você pode assinar seu trabalho localmente usando GPG ou S/MIME. O {% data variables.product.product_name %} verificará essas assinaturas, assim as pessoas saberão que seus commits tem origem em uma fonte confiável.{% ifversion fpt %} O {% data variables.product.product_name %} assinará automaticamente os commits que você fez com a interface web do {% data variables.product.product_name %}.{% endif %}' +intro: '{% data variables.product.product_name %} verificará as assinaturas do GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} ou do S/MIME para que outras pessoas saibam que seus commits vêm de uma fonte confiável.{% ifversion fpt %} {% data variables.product.product_name %} assinará automaticamente os commits que você criar usando a interface web de {% data variables.product.product_name %}.{% endif %}' redirect_from: - /articles/generating-a-gpg-key - /articles/signing-commits-with-gpg diff --git a/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-commits.md b/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-commits.md index e0ec52ed19..ff012071cc 100644 --- a/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-commits.md +++ b/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-commits.md @@ -1,6 +1,6 @@ --- title: Assinar commits -intro: Você pode assinar commits localmente usando GPG ou S/MIME. +intro: 'Você pode assinar commits localmente usando GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} ou S/MIME.' redirect_from: - /articles/signing-commits-and-tags-using-gpg - /articles/signing-commits-using-gpg @@ -52,9 +52,5 @@ Se você tiver várias chaves ou estiver tentando assinar commits ou tags com um ## Leia mais -* "[Verificar se há chaves GPG existentes](/articles/checking-for-existing-gpg-keys)" -* "[Gerar uma nova chave GPG](/articles/generating-a-new-gpg-key)" -* "[Adicionar uma chave GPG à sua conta do GitHub](/articles/adding-a-gpg-key-to-your-github-account)" * "[Avisar o Git sobre sua chave de assinatura](/articles/telling-git-about-your-signing-key)" -* "[Associar um e-mail à sua chave GPG](/articles/associating-an-email-with-your-gpg-key)" * "[Assinar tags](/articles/signing-tags)" diff --git a/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-tags.md b/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-tags.md index da4d6b8fc4..df242be566 100644 --- a/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-tags.md +++ b/translations/pt-BR/content/authentication/managing-commit-signature-verification/signing-tags.md @@ -1,6 +1,6 @@ --- title: Assinar tags -intro: Você pode assinar as tags localmente usando GPG ou S/MIME. +intro: 'Você pode assinar as tags localmente usando GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} ou S/MIME.' redirect_from: - /articles/signing-tags-using-gpg - /articles/signing-tags @@ -32,9 +32,6 @@ topics: ## Leia mais - "[Exibir tags do seu repositório](/articles/viewing-your-repositorys-tags)" -- "[Verificar se há chaves GPG existentes](/articles/checking-for-existing-gpg-keys)" -- "[Gerar uma nova chave GPG](/articles/generating-a-new-gpg-key)" -- "[Adicionar uma chave GPG à sua conta do GitHub](/articles/adding-a-gpg-key-to-your-github-account)" - "[Avisar o Git sobre sua chave de assinatura](/articles/telling-git-about-your-signing-key)" - "[Associar um e-mail à sua chave GPG](/articles/associating-an-email-with-your-gpg-key)" - "[Assinar commits](/articles/signing-commits)" diff --git a/translations/pt-BR/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md b/translations/pt-BR/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md index a3f04d5f61..2b2ced2515 100644 --- a/translations/pt-BR/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md +++ b/translations/pt-BR/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md @@ -1,6 +1,6 @@ --- title: Informar ao Git sobre a chave de assinatura -intro: 'Para assinar commits localmente, você precisa informar ao Git que há uma chave GPG ou X.509 que você gostaria de usar.' +intro: 'Para assinar os commits localmente, você deve informar ao Git que há uma chave GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} ou X.509 que você gostaria de usar.' redirect_from: - /articles/telling-git-about-your-gpg-key - /articles/telling-git-about-your-signing-key @@ -52,8 +52,6 @@ Se você tiver várias chaves GPG, precisará informar ao Git qual deve ser usad $ killall gpg-agent ``` -{% data reusables.gpg.x-509-key %} - {% endmac %} {% windows %} @@ -75,8 +73,6 @@ Se você tiver várias chaves GPG, precisará informar ao Git qual deve ser usad {% data reusables.gpg.copy-gpg-key-id %} {% data reusables.gpg.paste-gpg-key-id %} -{% data reusables.gpg.x-509-key %} - {% endwindows %} {% linux %} @@ -101,15 +97,25 @@ Se você tiver várias chaves GPG, precisará informar ao Git qual deve ser usad ```bash $ [ -f ~/.bashrc ] && echo 'export GPG_TTY=$(tty)' >> ~/.bashrc ``` - {% endlinux %} +{% ifversion ssh-commit-verification %} +## Informando ao Git sobre sua chave SSH + +Você pode usar uma chave SSH existente para assinar commits e tags ou gerar uma nova especificamente para fazer o login. Para obter mais informações, consulte "[Gerar uma nova chave SSH e adicioná-la ao ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)". + +{% data reusables.gpg.ssh-git-version %} + +{% data reusables.command_line.open_the_multi_os_terminal %} +{% data reusables.gpg.configure-ssh-signing %} +{% data reusables.gpg.copy-ssh-public-key %} +{% data reusables.gpg.paste-ssh-public-key %} + +{% endif %} + +{% data reusables.gpg.x-509-key %} ## Leia mais -- "[Verificar se há chaves GPG existentes](/articles/checking-for-existing-gpg-keys)" -- "[Gerar uma nova chave GPG](/articles/generating-a-new-gpg-key)" -- "[Usar um endereço de e-mail verificado na chave GPG](/articles/using-a-verified-email-address-in-your-gpg-key)" -- "[Adicionar uma chave GPG à sua conta do GitHub](/articles/adding-a-gpg-key-to-your-github-account)" -- "[Associar um e-mail à sua chave GPG](/articles/associating-an-email-with-your-gpg-key)" +- "[Adicionando uma nova chave SSH à sua conta do GitHub](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)". - "[Assinar commits](/articles/signing-commits)" - "[Assinar tags](/articles/signing-tags)" diff --git a/translations/pt-BR/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md b/translations/pt-BR/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md index c303e793d3..cfadee7cef 100644 --- a/translations/pt-BR/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md +++ b/translations/pt-BR/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md @@ -22,7 +22,10 @@ shortTitle: Verificar status da verificação 1. No {% data variables.product.product_name %}, navegue até sua pull request. {% data reusables.repositories.review-pr-commits %} 3. Ao lado do hash do commit abreviado do seu commit, há uma caixa que mostra se a assinatura do seu commit foi verificada{% ifversion fpt or ghec %}, parcialmente verificada{% endif %} ou não verificada. ![Commit assinado](/assets/images/help/commits/gpg-signed-commit-verified-without-details.png) -4. Para ver informações mais detalhadas sobre a assinatura de commit, clique em **Verificado**{% ifversion fpt or ghec %}, **Parcialmente verificado**,{% endif %} ou **Não verificado**. ![Commit assinado verificado](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +4. Para ver informações mais detalhadas sobre a assinatura de commit, clique em **Verificado**{% ifversion fpt or ghec %}, **Parcialmente verificado**,{% endif %} ou **Não verificado**. Os commits do GPG assinados mostrarão o ID da chave que foi usada. ![Commit assinado do GPG verificado](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +{% ifversion ssh-commit-verification %} + Os commits assinados do SSH mostrarão a assinatura da chave pública usada. ![Commit assinado do SSH verificado](/assets/images/help/commits/ssh-signed-commit-verified-details.png) +{% endif %} ## Confirmar o status de verificação da assinatura da tag diff --git a/translations/pt-BR/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md b/translations/pt-BR/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md index 830235940b..8a885a7df8 100644 --- a/translations/pt-BR/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md +++ b/translations/pt-BR/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md @@ -1,6 +1,7 @@ --- title: Sobre a cobrança do GitHub Actions intro: 'Se você quiser usar {% data variables.product.prodname_actions %} além do armazenamento ou dos minutos incluídos em sua conta, você será cobrado pelo uso adicional.' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-actions - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/about-billing-for-github-actions @@ -28,6 +29,13 @@ Os minutos são reiniciados todos os meses, mas o uso do armazenamento não. ### Armazenamento e minutos incluídos +{% ifversion actions-hosted-runners %} +{% note %} + +**Observação**: Os minutos de titularidade não podem ser usados nos executores do Windows e Ubuntu com 2 núcleos. Esses executores serão sempre cobrados, inclusive em repositórios públicos. Para obter mais informações, consulte "[Taxas por minuto para os executores](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)". + +{% endnote %} +{% endif %} | Produto | Armazenamento | Minutos (por mês) | | ------------------------------------------------------------------- | ------------- | ----------------- | | {% data variables.product.prodname_free_user %} | 500 MB | 2.000 | @@ -58,15 +66,15 @@ O armazenamento usado por um repositório é o armazenamento total usado por art ### Taxa por minuto -| Sistema operacional | Taxa por minuto (USD) | -| ------------------- | --------------------- | -| Linux | $0,008 | -| macOS | $0,08 | -| Windows | $0,016 | +{% data reusables.billing.billing-standard-runners %} +{% ifversion actions-hosted-runners %}{% data reusables.billing.billing-hosted-runners %}{% endif %} -O número de trabalhos que você pode executar simultaneamente em todos os repositórios em sua conta de usuário ou organização depende do seu plano GitHub. Para obter mais informações, consulte "[Limites de uso e cobrança](/actions/reference/usage-limits-billing-and-administration)" para executores hospedados em {% data variables.product.prodname_dotcom %} e "[Sobre executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)" para limites de uso de executores auto-hospedados. - -{% data reusables.user-settings.context_switcher %} +- O número de trabalhos que você pode executar simultaneamente em todos os repositórios em sua conta de usuário ou organização depende do seu plano GitHub. Para obter mais informações, consulte "[Limites de uso e cobrança](/actions/reference/usage-limits-billing-and-administration)" para executores hospedados em {% data variables.product.prodname_dotcom %} e "[Sobre executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)" para limites de uso de executores auto-hospedados. +- {% data reusables.user-settings.context_switcher %} +{% ifversion actions-hosted-runners %} +- Para {% data variables.actions.hosted_runner %}, não há custo adicional para configurações que atribuem endereços IP estáticos públicos a um {% data variables.actions.hosted_runner %}. Para obter mais informações sobre {% data variables.actions.hosted_runner %}s, consulte "[Usando {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)". +- Os minutos de titularidade não podem ser usados para {% data variables.actions.hosted_runner %}s. +{% endif %} ## Calculando minutos e gastos de armazenamento diff --git a/translations/pt-BR/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md b/translations/pt-BR/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md index 86db0fd86c..9b43c4f136 100644 --- a/translations/pt-BR/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md +++ b/translations/pt-BR/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md @@ -50,9 +50,9 @@ Todos os dados transferidos, quando acionados por {% data variables.product.prod O uso do armazenamento é compartilhado com artefatos de construção produzidos por {% data variables.product.prodname_actions %} para repositórios de sua conta. Para obter mais informações, consulte "[Sobre a cobrança do {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)." -O {% data variables.product.prodname_dotcom %} cobra o uso da conta que possui o repositório onde o pacote é publicado. Se o uso da sua conta ultrapassar esses limites e você definir um limite de gastos acima de US$ 0, você pagará US$ 25por GB de armazenamento por dia e US$ 0,50 por GB de transferência de dados. +O {% data variables.product.prodname_dotcom %} cobra o uso da conta que possui o repositório onde o pacote é publicado. Se o uso da sua conta ultrapassar esses limites e você definir um limite de gastos acima de US$ 0, você pagará US$ 0,008 por GB de armazenamento por dia e US$ 0,50 por GB de transferência de dados. -Por exemplo, se sua organização usa {% data variables.product.prodname_team %}, permite gastos ilimitados, usa 150GB de armazenamento, e possui 50GB de transferência de dados durante um mês, a organização teria excessos de 148GB para armazenamento e 40GB para transferência de dados para esse mês. O excesso de armazenamento custaria US$ 25 por GB por dia ou US$ 37. O excesso para transferência de dados custaria US$ 0,50 ou US$ 20 por GB. +Por exemplo, se sua organização usa {% data variables.product.prodname_team %}, permite gastos ilimitados, usa 150GB de armazenamento, e possui 50GB de transferência de dados durante um mês, a organização teria excessos de 148GB para armazenamento e 40GB para transferência de dados para esse mês. A sobrecarga de armazenamento custa US$ 0,008 por GB por dia ou, aproximadamente, US$ 7 dólares por mês de 31 dias. O excesso para transferência de dados custaria US$ 0,50 ou US$ 20 por GB. {% data reusables.dotcom_billing.pricing_calculator.pricing_cal_packages %} diff --git a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md index 89a7a591d4..693aff8c64 100644 --- a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md +++ b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md @@ -359,7 +359,7 @@ In the following example, the `+` symbol ensures that the specified additional { ## Using a custom configuration file -A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries and to specify which directories to scan during analysis. +A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries{% ifversion code-scanning-exclude-queries-from-analysis %}, exclude or include specific queries,{% endif %} and to specify which directories to scan during analysis. In the workflow file, use the `config-file` parameter of the `init` action to specify the path to the configuration file you want to use. This example loads the configuration file _./.github/codeql/codeql-config.yml_. @@ -442,6 +442,41 @@ Optionally, you can give each array element a name, as shown in the example conf If you only want to run custom queries, you can disable the default security queries by using `disable-default-queries: true`. +{% ifversion code-scanning-exclude-queries-from-analysis %} +### Excluding specific queries from analysis + +You can add `exclude` and `include` filters to your custom configuration file, to specify the queries you want to exclude or include in the analysis. + +This is useful if you want to exclude, for example: +- Specific queries from the default suites (`security`, `security-extended` and `security-and-quality`). +- Specific queries whose results do not interest you. +- All the queries that generate warnings and recommendations. + +You can use `exclude` filters similar to those in the configuration file below to exclude queries that you want to remove from the default analysis. In the example of configuration file below, both the `js/redundant-assignment` and the `js/useless-assignment-to-local` queries are excluded from analysis. + +```yaml +query-filters: + - exclude: + id: js/redundant-assignment + - exclude: + id: js/useless-assignment-to-local +``` +To find the id of a query, you can click the alert in the list of alerts in the Security tab. This opens the alert details page. The `Rule ID` field contains the query id. For more information about the alert details page, see "[About {% data variables.product.prodname_code_scanning %} alerts](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-alerts#about-alert-details)." + +{% tip %} + +**Tips:** +- The order of the filters is important. The first filter instruction that appears after the instructions about the queries and query packs determines whether the queries are included or excluded by default. +- Subsequent instructions are executed in order and the instructions that appear later in the file take precedence over the earlier instructions. + +{% endtip %} + +You can find another example illustrating the use of these filters in the "[Example configuration files](#example-configuration-files)" section. + +For more information about using `exclude` and `include` filters in your custom configuration file, see "[Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/#filtering-the-queries-in-a-query-suite)." For information on the query metadata you can filter on, see "[Metadata for CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/metadata-for-codeql-queries/)." + +{% endif %} + ### Specifying directories to scan For the interpreted languages that {% data variables.product.prodname_codeql %} supports (Python{% ifversion fpt or ghes > 3.3 or ghae-issue-5017 %}, Ruby{% endif %} and JavaScript/TypeScript), you can restrict {% data variables.product.prodname_code_scanning %} to files in specific directories by adding a `paths` array to the configuration file. You can exclude the files in specific directories from analysis by adding a `paths-ignore` array. diff --git a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md index 66a636187e..346ae5349a 100644 --- a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md +++ b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md @@ -42,8 +42,8 @@ Por padrão, a página de verificação de código de alertas é filtrada para m ![Resumo dos alertas](/assets/images/help/repository/code-scanning-click-alert.png) {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} - {% data reusables.code-scanning.alert-default-branch %} - ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} + {% data reusables.code-scanning.alert-default-branch %} + ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} 1. Opcionalmente, se o alerta destacar um problema com o fluxo de dados, clique em **Mostrar caminhos** para exibir o caminho da fonte de dados até o destino onde é usado. {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} ![O link "Exibir caminhos" em um alerta](/assets/images/help/repository/code-scanning-show-paths.png) diff --git a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md index aa2e73b1d1..b4bfdc45f4 100644 --- a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md +++ b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md @@ -32,6 +32,12 @@ Se você estiver configurando {% data variables.product.prodname_code_scanning % Você deve executar {% data variables.product.prodname_codeql %} dentro do contêiner no qual você constrói seu código. Isso se aplica se você estiver usando o {% data variables.product.prodname_codeql_cli %}{% ifversion codeql-runner-supported %}, o {% data variables.product.prodname_codeql_runner %},{% endif %} ou {% data variables.product.prodname_actions %}. Para o {% data variables.product.prodname_codeql_cli %} {% ifversion codeql-runner-supported %}ou o {% data variables.product.prodname_codeql_runner %}{% endif %}, consulte "[Instalando {% data variables.product.prodname_codeql_cli %} no seu sistema de CI](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system)"{% ifversion codeql-runner-supported %} or "[Executando {% data variables.product.prodname_codeql_runner %} no seu sistema de CI](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)"{% endif %} para obter mais informações. Se estiver usando {% data variables.product.prodname_actions %}, configure seu fluxo de trabalho para executar todas as ações no mesmo contêiner. Para obter mais informações, consulte "[Exemplo de fluxo de trabalho](#example-workflow)". +{% note %} + +**Observação:** {% data reusables.code-scanning.non-glibc-linux-support %} + +{% endnote %} + ## Dependências Você pode ter dificuldade para executar {% data variables.product.prodname_code_scanning %} se o contêiner que você está usando estiver com certas dependências ausentes (por exemplo, o Git deve ser instalado e adicionado à variável PATH). Se você encontrar problemas de dependência, revise a lista de software normalmente incluída nas imagens do executor de {% data variables.product.prodname_dotcom %}. Para obter mais informações, consulte os arquivos de `readme` específicos da versão nesses locais: diff --git a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md index 986883acb4..3584f1e328 100644 --- a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md +++ b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md @@ -143,25 +143,29 @@ Os nomes das verificações de análise de {% data variables.product.prodname_co ![Verificações de pull request de {% data variables.product.prodname_code_scanning %}](/assets/images/help/repository/code-scanning-pr-checks.png) -Quando os trabalhos de {% data variables.product.prodname_code_scanning %} forem concluídos, {% data variables.product.prodname_dotcom %} calcula se quaisquer alertas foram adicionados pelo pull request e adiciona a entrada "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" à lista de verificações. Depois de {% data variables.product.prodname_code_scanning %} ser executado pelo menos uma vez, você poderá clicar em **Detalhes** para visualizar os resultados da análise. Se você usou um pull request para adicionar {% data variables.product.prodname_code_scanning %} ao repositório, inicialmente você verá uma mensagem de {% ifversion fpt or ghes > 3.2 or ghae or ghec %} "Análise não encontrada"{% else %}"Análise ausente"{% endif %} ao clicar em **Detalhes** na verificação de "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME". +Quando os trabalhos de {% data variables.product.prodname_code_scanning %} forem concluídos, {% data variables.product.prodname_dotcom %} calcula se quaisquer alertas foram adicionados pelo pull request e adiciona a entrada "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" à lista de verificações. Depois de {% data variables.product.prodname_code_scanning %} ser executado pelo menos uma vez, você poderá clicar em **Detalhes** para visualizar os resultados da análise. -{% ifversion fpt or ghes > 3.2 or ghae or ghec %} - ![Análise não encontrada para mensagem de commit](/assets/images/help/repository/code-scanning-analysis-not-found.png) +{% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-7095 %} + +{% elsif ghes < 3.5 or ghae %} +Se você usou um pull request para adicionar {% data variables.product.prodname_code_scanning %} ao repositório, inicialmente você verá uma mensagem de {% ifversion ghes > 3.2 or ghae %} "Análise não encontrada"{% elsif ghes = 3.2 %}"Análise ausente"{% endif %} ao clicar em **Detalhes** na verificação de "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME". + +{% ifversion ghes > 3.2 or ghae %} + ![Análise não encontrada para mensagem de commit](/assets/images/enterprise/3.4/repository/code-scanning-analysis-not-found.png) A tabela lista uma ou mais categorias. Cada categoria está relacionada a análises específicas, para a mesma ferramenta e commit, realizadas em uma linguagem diferente ou em uma parte diferente do código. Para cada categoria a tabela mostra as duas análises que {% data variables.product.prodname_code_scanning %} tentou comparar para determinar quais alertas foram introduzidos ou corrigidos no pull request. Por exemplo, na captura de tela acima, {% data variables.product.prodname_code_scanning %} encontrou uma análise para o commit do merge do pull request, mas não há análise para o cabeçalho do branch principal. -{% else %} - ![Análise ausente para mensagem de commit](/assets/images/enterprise/3.2/repository/code-scanning-missing-analysis.png) -{% endif %} -{% ifversion fpt or ghes > 3.2 or ghae or ghec %} ### Motivos para a mensagem "Análise não encontrada" -{% else %} + +{% elsif ghes = 3.2 %} + ![Análise ausente para mensagem de commit](/assets/images/enterprise/3.2/repository/code-scanning-missing-analysis.png) + ### Motivos para a mensagem "Análise ausente" {% endif %} -Depois que {% data variables.product.prodname_code_scanning %} analisou o código em um pull request, ele precisa comparar a análise do branch de tópico (o branch que você usou para criar o pull request) com a análise do branch de base (o branch no qual você deseja mesclar o pull request). Isso permite que {% data variables.product.prodname_code_scanning %} calcule quais alertas foram recém-introduzidos pelo pull request, que alertas já estavam presentes no branch de base e se alguns alertas existentes são corrigidos pelas alterações no pull request. Inicialmente, se você usar um pull request para adicionar {% data variables.product.prodname_code_scanning %} a um repositório, o branch de base ainda não foi analisado. Portanto, não é possível computar esses detalhes. Neste caso, quando você clicar nos resultados verificando o pull request você verá a mensagem {% ifversion fpt or ghes > 3.2 or ghae or ghec %}"Análise não encontrada"{% else %}"Análise ausente do commit base SHA-HASH"{% endif %}. +Depois que {% data variables.product.prodname_code_scanning %} analisou o código em um pull request, ele precisa comparar a análise do branch de tópico (o branch que você usou para criar o pull request) com a análise do branch de base (o branch no qual você deseja mesclar o pull request). Isso permite que {% data variables.product.prodname_code_scanning %} calcule quais alertas foram recém-introduzidos pelo pull request, que alertas já estavam presentes no branch de base e se alguns alertas existentes são corrigidos pelas alterações no pull request. Inicialmente, se você usar um pull request para adicionar {% data variables.product.prodname_code_scanning %} a um repositório, o branch de base ainda não foi analisado. Portanto, não é possível computar esses detalhes. Neste caso, quando você clicar nos resultados verificando o pull request você verá a mensagem {% ifversion ghes > 3.2 or ghae %}"Análise não encontrada"{% elsif ghes = 3.2 %}"Análise ausente do commit base SHA-HASH"{% endif %}. Há outras situações em que não pode haver análise para o último commit do branch de base para um pull request. Isso inclui: @@ -169,7 +173,7 @@ Há outras situações em que não pode haver análise para o último commit do Para verificar se um branch foi verificado, acesse a página {% data variables.product.prodname_code_scanning_capc %}, clique no menu suspenso **Branch** e selecione o branch relevante. -![Escolha um branch no menu suspenso Branch](/assets/images/help/repository/code-scanning-branch-dropdown.png) + ![Escolha um branch no menu suspenso Branch](/assets/images/help/repository/code-scanning-branch-dropdown.png) A solução nesta situação é adicionar o nome do branch de base para a especificação `on:push` e `on:pull_request` no fluxo de trabalho de {% data variables.product.prodname_code_scanning %} nesse branch e, em seguida, fazer uma alteração que atualize o pull request aberto que você deseja escanear. @@ -181,13 +185,15 @@ Há outras situações em que não pode haver análise para o último commit do Faça merge uma mudança trivial no branch de base para acionar {% data variables.product.prodname_code_scanning %} neste commit mais recente e, em seguida, faça push de uma alteração para o pull request reiniciar {% data variables.product.prodname_code_scanning %}. +{% endif %} + ## Próximas etapas Após configurar a opção {% data variables.product.prodname_code_scanning %}, e permitir que suas ações sejam concluídas, você pode: - Visualizar todos os alertas de {% data variables.product.prodname_code_scanning %} gerados para este repositório. Para obter mais informações, consulte "[Gerenciar alertas de {% data variables.product.prodname_code_scanning %} para o seu repositório](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)". - Visualizar todos os alertas gerados para um pull request enviado após configurar {% data variables.product.prodname_code_scanning %}. Para obter mais informações, consulte "[Triar alertas de {% data variables.product.prodname_code_scanning %} em pull requests](/code-security/secure-coding/triaging-code-scanning-alerts-in-pull-requests)". -- Configurar notificações para execuções concluídas. Para obter mais informações, consulte “[Configurando notificações](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#github-actions-notification-options)". +- Configurar notificações para execuções concluídas. Para obter mais informações, consulte “[Configurar notificações](/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#github-actions-notification-options)". - Visualizar os logs gerados pela análise do {% data variables.product.prodname_code_scanning %}. Para obter mais informações, consulte "[Visualizar registros de {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/viewing-code-scanning-logs)". - Investigue todos os problemas que ocorrerem com a configuração inicial de {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %}. Para obter mais informações, consulte "[Solucionar problemas no fluxo de trabalho de {% data variables.product.prodname_codeql %}](/code-security/secure-coding/troubleshooting-the-codeql-workflow)". - Personalize como {% data variables.product.prodname_code_scanning %} faz a varredura de código no seu repositório. Para obter mais informações, consulte "[Configurando {% data variables.product.prodname_code_scanning %}](/code-security/secure-coding/configuring-code-scanning)." diff --git a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md index 45c95d2c4c..ef60cb350d 100644 --- a/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md +++ b/translations/pt-BR/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md @@ -33,8 +33,6 @@ Em repositórios onde {% data variables.product.prodname_code_scanning %} está - A guia **Conversa** do pull request, como parte de uma revisão de pull request {% endif %} - A aba **Arquivos alterarados** do pull request -{% ifversion code-scanning-pr-conversations-tab %} {% endif %} - Se você tiver permissão de gravação no repositório, você poderá ver qualquer alerta de {% data variables.product.prodname_code_scanning %} existente na aba **Segurança**. Para obter informações sobre os alertas do repositório, consulte "[Gerenciar alertas de {% data variables.product.prodname_code_scanning %} do repositório](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)". {% ifversion fpt or ghes > 3.2 or ghae or ghec %} diff --git a/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md b/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md index daeb17e483..19be329625 100644 --- a/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md +++ b/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md @@ -45,9 +45,15 @@ If you upload a second SARIF file for a commit with the same category and from t If you're new to SARIF and want to learn more, see Microsoft's [`SARIF tutorials`](https://github.com/microsoft/sarif-tutorials) repository. -## Preventing duplicate alerts using fingerprints +## Providing data to track {% data variables.product.prodname_code_scanning %} alerts across runs -Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the right line of code when files are edited. +Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the correct line of code when files are edited. The `ruleID` for a result has to be the same across analysis. + +### Reporting consistent filepaths + +The filepath has to be consistent across the runs to enable a computation of a stable fingerprint. If the filepaths differ for the same result, each time there is a new analysis a new alert will be created, and the old one will be closed. This will cause having multiple alerts for the same result. + +### Including data for fingerprint generation {% data variables.product.prodname_dotcom %} uses the `partialFingerprints` property in the OASIS standard to detect when two results are logically identical. For more information, see the "[partialFingerprints property](https://docs.oasis-open.org/sarif/sarif/v2.1.0/cs01/sarif-v2.1.0-cs01.html#_Toc16012611)" entry in the OASIS documentation. @@ -65,6 +71,29 @@ SARIF files support both rules and results. The information stored in these elem When you compare SARIF files generated by analyzing different codebases with the same tool and rules, you should see differences in the results of the analyses but not in the rules. +## Specifying the root for source files + +{% data variables.product.prodname_code_scanning_capc %} interprets results that are reported with relative paths as relative to the root of the repository analyzed. If a result contains an absolute URI, the URI is converted to a relative URI. The relative URI can then be matched against a file committed to the repository. + +You can provide the source root for conversion from absolute to relative URIs in one of the following ways. + +- [`checkout_path`](https://github.com/github/codeql-action/blob/c2c0a2908e95769d01b907f9930050ecb5cf050d/analyze/action.yml#L44-L47) input to the `github/codeql-action/analyze` action +- `checkout_uri` parameter to the SARIF upload API endpoint. For more information, see "[{% data variables.product.prodname_code_scanning_capc %}](/rest/code-scanning#upload-an-analysis-as-sarif-data)" in the REST API documentation +- [`invocation.workingDirectory.uri`](https://docs.oasis-open.org/sarif/sarif/v2.1.0/csprd01/sarif-v2.1.0-csprd01.html#_Toc9244365) property in the SARIF file + +If you provide a source root, any location of an artifact specified using an absolute URI must use the same URI scheme. If there is a mismatch between the URI scheme for the source root and one or more of the absolute URIs, the upload is rejected. + +For example, a SARIF file is uploaded using a source root of `file:///github/workspace`. + +``` +# Conversion of absolute URIs to relative URIs for location artifacts + +file:///github/workspace/src/main.go -> src/main.go +file:///tmp/go-build/tmp.go -> file:///tmp/go-build/tmp.go +``` + +The file is successfully uploaded as both absolute URIs use the same URI scheme as the source root. + ## Validating your SARIF file @@ -77,6 +106,12 @@ You can check a SARIF file is compatible with {% data variables.product.prodname If you use a code analysis engine other than {% data variables.product.prodname_codeql %}, you can review the supported SARIF properties to optimize how your analysis results will appear on {% data variables.product.prodname_dotcom %}. +{% note %} + +**Note:** You must supply an explicit value for any property marked as "required". The empty string is not supported for required properties. + +{% endnote %} + Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.product.prodname_code_scanning %} will only use the following supported properties. ### `sarifLog` object @@ -95,6 +130,7 @@ Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.pr |----|----| | `tool.driver` | **Required.** A `toolComponent` object that describes the analysis tool. For more information, see the [`toolComponent` object](#toolcomponent-object). | | `tool.extensions[]` | **Optional.** An array of `toolComponent` objects that represent any plugins or extensions used by the tool during analysis. For more information, see the [`toolComponent` object](#toolcomponent-object). | +| `invocation.workingDirectory.uri` | **Optional.** This field is used only when `checkout_uri` (SARIF upload API only) or `checkout_path` (% data variables.product.prodname_actions %} only) are not provided. The value is used to convert absolute URIs used in [`physicalLocation` objects](#physicallocation-object) to relative URIs. For more information, see "[Specifying the root for source files](#specifying-the-root-for-source-files)."| | `results[]` | **Required.** The results of the analysis tool. {% data variables.product.prodname_code_scanning_capc %} displays the results on {% data variables.product.prodname_dotcom %}. For more information, see the [`result` object](#result-object). ### `toolComponent` object @@ -138,7 +174,7 @@ Each `result` object contains details for one alert in the codebase. Within the | `level`| **Optional.** The severity of the result. This level overrides the default severity defined by the rule. {% data variables.product.prodname_code_scanning_capc %} uses the level to filter results by severity on {% data variables.product.prodname_dotcom %}. | `message.text`| **Required.** A message that describes the result. {% data variables.product.prodname_code_scanning_capc %} displays the message text as the title of the result. Only the first sentence of the message will be displayed when visible space is limited. | `locations[]`| **Required.** The set of locations where the result was detected up to a maximum of 10. Only one location should be included unless the problem can only be corrected by making a change at every specified location. **Note:** At least one location is required for {% data variables.product.prodname_code_scanning %} to display a result. {% data variables.product.prodname_code_scanning_capc %} will use this property to decide which file to annotate with the result. Only the first value of this array is used. All other values are ignored. -| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Preventing duplicate alerts using fingerprints](#preventing-duplicate-alerts-using-fingerprints)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. +| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Providing data to track code scanning alerts across runs](#providing-data-to-track-code-scanning-alerts-across-runs)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. | `codeFlows[].threadFlows[].locations[]`| **Optional.** An array of `location` objects for a `threadFlow` object, which describes the progress of a program through a thread of execution. A `codeFlow` object describes a pattern of code execution used to detect a result. If code flows are provided, {% data variables.product.prodname_code_scanning %} will expand code flows on {% data variables.product.prodname_dotcom %} for the relevant result. For more information, see the [`location` object](#location-object). | `relatedLocations[]`| A set of locations relevant to this result. {% data variables.product.prodname_code_scanning_capc %} will link to related locations when they are embedded in the result message. For more information, see the [`location` object](#location-object). @@ -156,7 +192,7 @@ A location within a programming artifact, such as a file in the repository or a | Name | Description | |----|----| -| `artifactLocation.uri`| **Required.** A URI indicating the location of an artifact, usually a file either in the repository or generated during a build. If the URI is relative, it should be relative to the root of the {% data variables.product.prodname_dotcom %} repository being analyzed. For example, main.js or src/script.js are relative to the root of the repository. If the URI is absolute, {% data variables.product.prodname_code_scanning %} can use the URI to checkout the artifact and match up files in the repository. For example, `https://github.com/ghost/example/blob/00/src/promiseUtils.js`. +| `artifactLocation.uri`| **Required.** A URI indicating the location of an artifact, usually a file either in the repository or generated during a build. For the best results we recommend that this is a relative path from the root of the GitHub repository being analyzed. For example, `src/main.js`. For more information about artifact URIs, see "[Specifying the root for source files](#specifying-the-root-for-source-files)."| | `region.startLine` | **Required.** The line number of the first character in the region. | `region.startColumn` | **Required.** The column number of the first character in the region. | `region.endLine` | **Required.** The line number of the last character in the region. @@ -204,7 +240,7 @@ These example SARIF output files show supported properties and example values. ### Example with minimum required properties -This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties or don't include values, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. +This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties, omit values, or use an empty string, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. ```json { diff --git a/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md b/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md index 1e03a239f3..193ee54f5a 100644 --- a/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md +++ b/translations/pt-BR/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md @@ -58,7 +58,7 @@ For more information see the [`upload-sarif` action](https://github.com/github/c The `upload-sarif` action can be configured to run when the `push` and `scheduled` event occur. For more information about {% data variables.product.prodname_actions %} events, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)." -If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#preventing-duplicate-alerts-using-fingerprints)." +If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#providing-data-to-track-code-scanning-alerts-across-runs)." {% data reusables.code-scanning.upload-sarif-alert-limit %} diff --git a/translations/pt-BR/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md b/translations/pt-BR/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md index e80eb30c1b..6a3b09fa38 100644 --- a/translations/pt-BR/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md +++ b/translations/pt-BR/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md @@ -163,7 +163,20 @@ Você pode mostrar a ajuda de linha de comando para qualquer comando usando
+ + + + + + + +
Runner imageImagen de ejecutor Etiqueta de flujo de trabajo YAML Notas
-Migrate to ubuntu-20.04 or ubuntu-22.04. Para obtener más información, consulta esta publicación del blog de GitHub. +Migrarse a ubuntu-20.04 o ubuntu-22.04. Para obtener más información, consulta esta publicación del blog de GitHub.
- Opcional. Use se você executar a CLI fora da raiz do check-out do repositório. Por padrão, o comando criação de banco de dados supõe que o diretório atual é o diretório raiz para os arquivos de origem, use esta opção para especificar uma localidade diferente. + Opcional. Use se você executar a CLI fora da raiz do check-out do repositório. Por padrão, o comando criação de banco de dados supõe que o diretório atual é o diretório raiz para os arquivos de origem, use esta opção para especificar uma localidade diferente. |{% ifversion fpt or ghec or ghes > 3.2 or ghae %} +
+ `--codescanning-config` + + + Opcional (Avançado). Use se você tiver um arquivo de configuração que especifica como criar os bancos de dados de {% data variables.product.prodname_codeql %} e quais consultas serão executadas em etapas posteriores. Para obter mais informações, consulte "Using a custom configuration file" and "Criação de banco de dados." |{% endif %}
diff --git a/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md b/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md index b88f399e91..afe28e4664 100644 --- a/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md +++ b/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/browsing-security-advisories-in-the-github-advisory-database.md @@ -53,9 +53,9 @@ Geralmente, nós nomeamos nossos ecossistemas compatíveis após o registro do p - Composer (registry: https://packagist.org/){% ifversion GH-advisory-db-erlang-support %} - Erlang (registry: https://hex.pm/){% endif %} - Go (registry: https://pkg.go.dev/) -{% ifversion fpt or ghec or ghes > 3.6 or ghae-issue-7508 %} +{%- ifversion fpt or ghec or ghes > 3.6 or ghae-issue-7508 %} - GitHub Actions (https://github.com/marketplace?type=actions/) {% endif %} -- Maven (registry: https://repo1.maven.org/maven2/org/) +- Maven (registry: https://repo.maven.apache.org/maven2) - npm (registry: https://www.npmjs.com/) - NuGet (registry: https://www.nuget.org/) - pip (registry: https://pypi.org/) diff --git a/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md b/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md index 48561fe8e6..7c6fd4488e 100644 --- a/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md +++ b/translations/pt-BR/content/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts.md @@ -40,24 +40,24 @@ A aba de {% data variables.product.prodname_dependabot_alerts %} do seu reposit Cada alerta de {% data variables.product.prodname_dependabot %} tem um identificador único de número e a aba de {% data variables.product.prodname_dependabot_alerts %} lista um alerta para cada vulnerabilidade detectada. O legado de {% data variables.product.prodname_dependabot_alerts %} agrupou as vulnerabilidades por dependência e gerou um único alerta por dependência. Se você acessar um alerta de legado {% data variables.product.prodname_dependabot %}, você será redirecionado para uma aba de {% data variables.product.prodname_dependabot_alerts %} filtrada para esse pacote. {% endif %} {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-5638 %} -You can filter and sort {% data variables.product.prodname_dependabot_alerts %} using a variety of filters and sort options available on the user interface. For more information, see "[Prioritizing {% data variables.product.prodname_dependabot_alerts %}](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)" below. +Você pode filtrar e classificar {% data variables.product.prodname_dependabot_alerts %} usando uma série de filtros e opções de classificação disponíveis na interface do usuário. Para obter mais informações, consulte "[Priorizando {% data variables.product.prodname_dependabot_alerts %}](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)" abaixo. -## Prioritizing {% data variables.product.prodname_dependabot_alerts %} +## Priorizando {% data variables.product.prodname_dependabot_alerts %} -{% data variables.product.company_short %} helps you prioritize fixing {% data variables.product.prodname_dependabot_alerts %}. {% ifversion dependabot-most-important-sort-option %} By default, {% data variables.product.prodname_dependabot_alerts %} are sorted by importance. The "Most important" sort order helps you prioritize which {% data variables.product.prodname_dependabot_alerts %} to focus on first. Os alertas são classificados com base no seu impacto potencial, atuabilidade e relevância. O nosso cálculo de priorização está em melhoria constante e inclui fatores como pontuação do CVSS, âmbito de dependência, e se são encontradas chamadas de função vulneráveis para o alerta. +{% data variables.product.company_short %} ajuda você a priorizar a correção de {% data variables.product.prodname_dependabot_alerts %}. {% ifversion dependabot-most-important-sort-option %} Por padrão, {% data variables.product.prodname_dependabot_alerts %} são ordenados por importância. A ordenação "mais importante" ajuda você a priorizar na qual {% data variables.product.prodname_dependabot_alerts %} deve se concentrar primeiro. Os alertas são classificados com base no seu impacto potencial, atuabilidade e relevância. O nosso cálculo de priorização está em melhoria constante e inclui fatores como pontuação do CVSS, âmbito de dependência, e se são encontradas chamadas de função vulneráveis para o alerta. ![Captura de tela da classificação suspensa com a classificação "mais importante"](/assets/images/help/dependabot/dependabot-alerts-sort-dropdown.png) {% endif %} {% data reusables.dependabot.dependabot-alerts-filters %} -In addition to the filters available via the search bar, you can sort and filter {% data variables.product.prodname_dependabot_alerts %} using the dropdown menus at the top of the alert list. The search bar also allows for full text searching of alerts and related security advisories. You can search for part of a security advisory name or description to return the alerts in your repository that relate to that security advisory. For example, searching for `yaml.load() API could execute arbitrary code` will return {% data variables.product.prodname_dependabot_alerts %} linked to "[PyYAML insecurely deserializes YAML strings leading to arbitrary code execution](https://github.com/advisories/GHSA-rprw-h62v-c2w7)" as the search string appears in the advisory description. +Além dos filtros disponíveis na barra de pesquisa, você pode ordenar e filtrar {% data variables.product.prodname_dependabot_alerts %} usando os menus suspensos na parte superior da lista de alertas. A barra de pesquisa também permite a pesquisa por texto completo de alertas e consultorias de segurança relacionados. Você pode pesquisar parte de uma consultoria de segurança ou uma descrição para devolver os alertas no seu repositório que estejam relacionados a essa consultoria de segurança. Por exemplo, a pesquisa de `yaml.load() API could execute arbitrary code` retornará {% data variables.product.prodname_dependabot_alerts %} vinculado a "[PyYAML insecurely deserializes YAML strings leading to arbitrary code execution](https://github.com/advisories/GHSA-rprw-h62v-c2w7)", já que a sequência de pesquisa aparece na descrição da consultoria. {% endif %} {% ifversion dependabot-bulk-alerts %} ![Captura de tela dos menus filtro e ordenação na aba de {% data variables.product.prodname_dependabot_alerts %}](/assets/images/help/graphs/dependabot-alerts-filters-checkbox.png){% elsif ghes = 3.5 %} -You can select a filter in a dropdown menu at the top of the list, then click the filter that you would like to apply. ![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %} +Você pode selecionar um filtro em um menu suspenso na parte superior da lista e, em seguida, clicar no filtro que gostaria de aplicar. ![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %} {% ifversion dependabot-alerts-development-label %} ## Ecossistemas e manifestos compatíveis com o escopo de dependência @@ -110,7 +110,7 @@ Para obter mais informações, consulte "[Revisando e corrigindo alertas](#revie {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-security %} {% data reusables.repositories.sidebar-dependabot-alerts %} -1. Optionally, to filter alerts, select a filter in a dropdown menu then click the filter that you would like to apply. Você também pode digitar filtros na barra de pesquisa. For more information about filtering and sorting alerts, see "[Prioritizing {% data variables.product.prodname_dependabot_alerts %}](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)." +1. Opcionalmente, para filtrar alertas, selecione um filtro no menu suspenso e, em seguida, clique no filtro que deseja aplicar. Você também pode digitar filtros na barra de pesquisa. Para obter mais informações sobre filtragem e classificação dos alertas, consulte "[Prioritizando {% data variables.product.prodname_dependabot_alerts %}](#prioritizing-across--data-variablesproductprodname_dependabot_alerts-)". {%- ifversion dependabot-bulk-alerts %} ![Captura de tela dos menus filtro e ordenação na aba de {% data variables.product.prodname_dependabot_alerts %}](/assets/images/help/graphs/dependabot-alerts-filters-checkbox.png){% else %} ![Screenshot of the filter and sort menus in the {% data variables.product.prodname_dependabot_alerts %} tab](/assets/images/enterprise/3.5/dependabot/dependabot-alerts-filters.png){% endif %} @@ -164,9 +164,9 @@ Se você agendar um extenso trabalho para atualizar uma dependência ou decidir 1. Ver detalhes de um alerta. Para obter mais informações, consulte "[Visualizando dependências vulneráveis](#viewing-dependabot-alerts)" (acima). 1. Selecione o menu suspenso "Ignorar" e clique em um motivo para ignorar o alerta.{% ifversion reopen-dependabot-alerts %} Alertas não descartados podem ser reabertos posteriormente.{% endif %} -{% ifversion dependabot-alerts-dismissal-comment %}1. Optionally, add a dismissal comment. The dismissal comment will be added to the alert timeline and can be used as justification during auditing and reporting. You can retrieve or set a comment by using the GraphQL API. The comment is contained in the `dismissComment` field. For more information, see "[{% data variables.product.prodname_dependabot_alerts %}](/graphql/reference/objects#repositoryvulnerabilityalert)" in the GraphQL API documentation. - ![Screenshot showing how to dismiss an alert via the "Dismiss" drop-down, with the option to add a dismissal comment](/assets/images/help/repository/dependabot-alerts-dismissal-comment.png) -1. Click **Dismiss alert**. +{% ifversion dependabot-alerts-dismissal-comment %}1. Opcionalmente, adicione um comentário de dispensa. O comentário de dispensa será adicionado à linha do tempo de alerta e poderá ser usado como justificativa durante a auditoria e a apresentação de relatórios. Você pode recuperar ou definir um comentário usando a API do GraphQL. O comentário está contido no campo `dismissComment` Para obter mais informações, consulte "[{% data variables.product.prodname_dependabot_alerts %}](/graphql/reference/objects#repositoryvulnerabilityalert)" na documentação da API do GraphQL. + ![Captura de tela que mostra como ignorar um alerta por meio do menu suspenso "ignorar" com a opção de adicionar um comentário de dispensa](/assets/images/help/repository/dependabot-alerts-dismissal-comment.png) +1. Clique **Ignorar alerta**. {% else %} ![Escolher o motivo para ignorar o alerta a partir do menu suspenso "Ignorar"down](/assets/images/help/repository/dependabot-alert-dismiss-drop-down-ungrouped.png){% endif %} {% ifversion dependabot-bulk-alerts %} @@ -185,7 +185,7 @@ Se você agendar um extenso trabalho para atualizar uma dependência ou decidir ## Visualizando e atualizando alertas fechados -You can view all open alerts, and you can reopen alerts that have been previously dismissed. Os alertas fechados que já foram corrigidos não podem ser reabertos. +Você pode visualizar todos os alertas abertos e pode reabrir os alertas que foram ignorados anteriormente. Os alertas fechados que já foram corrigidos não podem ser reabertos. {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-security %} diff --git a/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 74de2a9c91..19d4b04726 100644 --- a/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/translations/pt-BR/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -416,7 +416,7 @@ updates: ### `open-pull-requests-limit` -Por padrão, {% data variables.product.prodname_dependabot %} abre um máximo de cinco pull requests para atualizações de versão. Uma vez que há cinco pull requests abertos, novas solicitações serão bloqueadas até que você faça o merge ou feche alguns dos pull requests aberto, e, após esse peeríodo, novos pull requests poderão ser abertos em atualizações subsequentes. Use `open-pull-requests-limit` para alterar este limite. Isto também fornece uma maneira simples de desativar temporariamente as atualizações de versão para um gerenciador de pacotes. +Por padrão, {% data variables.product.prodname_dependabot %} abre um máximo de cinco pull requests para atualizações de versão. Como há cinco pull requests em aberto de {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_dependabot %} não abrirá nenhuma nova solicitação até que algumas das solicitações abertas sejam mescladas ou fechadas. Use `open-pull-requests-limit` para alterar este limite. Isto também fornece uma maneira simples de desativar temporariamente as atualizações de versão para um gerenciador de pacotes. Esta opção não tem impacto em atualizações de segurança, que têm um limite interno separado de dez pull requests abertas. diff --git a/translations/pt-BR/content/code-security/secret-scanning/about-secret-scanning.md b/translations/pt-BR/content/code-security/secret-scanning/about-secret-scanning.md index 481ec138e4..0110c45c23 100644 --- a/translations/pt-BR/content/code-security/secret-scanning/about-secret-scanning.md +++ b/translations/pt-BR/content/code-security/secret-scanning/about-secret-scanning.md @@ -39,7 +39,7 @@ Service providers can partner with {% data variables.product.company_short %} to {% ifversion secret-scanning-push-protection %} -You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." +You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. {% ifversion push-protection-custom-link-orgs %}Admins can also specify a custom link that is displayed to the contributor when a push is blocked; the link can contain resources specific to the organization to aid contributors. {% endif %}For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." {% endif %} diff --git a/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md b/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md index e7449ab8d9..5efb3d4ac3 100644 --- a/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md +++ b/translations/pt-BR/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md @@ -60,8 +60,20 @@ Os proprietários da organização, gerentes de segurança e administradores de Até cinco segredos detectados serão exibidos por vez na linha de comando. Se um segredo específico já foi detectado no repositório e um alerta já existe, {% data variables.product.prodname_dotcom %} não bloqueará esse segredo. +{% ifversion push-protection-custom-link-orgs %} + +Os administradores da organização podem fornecer um link personalizado que será exibido quando um push estiver bloqueado. Este link personalizado pode conter recursos e conselhos específicos da organização como, por exemplo, orientações sobre como usar um cofre de segredos recomendado ou como entrar em contato em caso de perguntas relacionadas ao segredo bloqueado. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +![Captura de tela que mostra que um push está bloqueado quando um usuário tenta fazer push de um segredo para um repositório](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) + +{% else %} + ![Captura de tela que mostra que um push está bloqueado quando um usuário tenta fazer push de um segredo para um repositório](/assets/images/help/repository/secret-scanning-push-protection-with-link.png) +{% endif %} + {% data reusables.secret-scanning.push-protection-remove-secret %} Para obter mais informações sobre correção de segredos bloqueados, consulte "[Enviando por push um branch bloqueado pela proteção de push](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)." Se você confirmar que um segredo é real e pretender corrigi-lo mais tarde, você deverá procurar remediar o segredo o mais rápido possível. Por exemplo, você pode revogar o segredo e remover o segredo do histórico de commit do repositório. Os verdadeiros segredos que foram expostos devem ser revogados para evitar o acesso não autorizado. Você pode considerar primeiro girar o segredo antes de revogá-lo. Para obter mais informações, consulte "[Removendo dados confidenciais de um repositório](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)". @@ -88,13 +100,21 @@ Se {% data variables.product.prodname_dotcom %} bloquear um segredo que você ac {% data variables.product.prodname_dotcom %} só exibirá um segredo detectado por vez na interface do usuário. Se um segredo específico já foi detectado no repositório e um alerta já existe, {% data variables.product.prodname_dotcom %} não bloqueará esse segredo. +{% ifversion push-protection-custom-link-orgs %} + +Os administradores da organização podem fornecer um link personalizado que será exibido quando um push estiver bloqueado. Este link personalizado pode conter recursos e conselhos específicos para sua organização. Por exemplo, o link personalizado pode apontar para um arquivo README com informações sobre o cofre secreto da organização, para quais equipes e indivíduos escalar perguntas ou a política aprovada pela organização para trabalhar com segredos e reescrever o histórico de commits. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + Você pode remover o segredo do arquivo usando a interface de usuário da web. Depois de remover o segredo, o banner no topo da página mudará e dirá que agora você pode fazeer commit das suas alterações. ![Captura de tela que mostra o commit na interface de usuário da web, permitido após correção do segredo](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png) ### Ignorando a proteção de push para um segredo -{% data reusables.secret-scanning.push-protection-remove-secret %} Para obter mais informações sobre correção de segredos bloqueados, consulte "[Enviando por push um branch bloqueado pela proteção de push](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-in-the-web-ui)." +{% data reusables.secret-scanning.push-protection-remove-secret %} Para obter mais informações sobre correção de segredos bloqueados, consulte "[Enviando por push um branch bloqueado por proteção de push](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-in-the-web-ui)." Se você confirmar que um segredo é real e pretender corrigi-lo mais tarde, você deverá procurar remediar o segredo o mais rápido possível. Para obter mais informações, consulte "[Removendo dados confidenciais de um repositório](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)". diff --git a/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md b/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md index a71b0a2a63..da843d5f20 100644 --- a/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md +++ b/translations/pt-BR/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md @@ -26,6 +26,14 @@ O recurso de proteção de push do {% data variables.product.prodname_secret_sca {% endtip %} +{% ifversion push-protection-custom-link-orgs %} + +Os administradores da organização podem fornecer um link personalizado que será incluído na mensagem de {% data variables.product.product_name %} quando seu push estiver bloqueado. Este link personalizado pode conter recursos e conselhos específicos para sua organização e suas políticas. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + ## Resolvendo um push bloqueado na linha de comando {% data reusables.secret-scanning.push-protection-command-line-choice %} @@ -51,6 +59,6 @@ Você também pode remover o segredo se o segredo aparecer em um commit anterior {% data reusables.secret-scanning.push-protection-web-ui-choice %} -To resolve a blocked commit in the web UI, you need to remove the secret from the file, or use the **Bypass protection** dropdown to allow the secret. Para obter mais informações sobre como contornar a proteção de push da interface de usuário da web, consulte "[Protegendo pushes com a digitalização de segredo](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)". +Para resolver um commit bloqueado na interface do usuário web, você deverá remover o segredo do arquivo, ou use o menu suspenso **Proteção de Bypass** para permitir o segredo. Para obter mais informações sobre como contornar a proteção de push da interface de usuário da web, consulte "[Protegendo pushes com a digitalização de segredo](/code-security/secret-scanning/protecting-pushes-with-secret-scanning#bypassing-push-protection-for-a-secret)". Se você confirmar um segredo é real, você deverá remover o segredo do arquivo. Depois de remover o segredo, o banner no topo da página mudará e dirá que agora você pode fazeer commit das suas alterações. diff --git a/translations/pt-BR/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md b/translations/pt-BR/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md index 9d57f9c50e..b7d0d33580 100644 --- a/translations/pt-BR/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md +++ b/translations/pt-BR/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md @@ -72,7 +72,7 @@ Dica de **:** As opções `allow-licenses` e `deny-licenses` são mutuamente ex {% endtip %} {% endif %} -Este exemplo do arquivo de {% data variables.product.prodname_dependency_review_action %} ilustra como você pode usar essas opções de configuração. +Este exemplo do arquivo de {% data variables.product.prodname_dependency_review_action %} ilustra como você pode usar essas opções de configuração. Observe que o exemplo usa o número de versão curta para a ação (`v2`) em vez de um número de versão do semver (por exemplo, `v2.0.8`). Isso garante que você use a versão menor mais recente da ação. ```yaml{:copy} name: 'Dependency Review' diff --git a/translations/pt-BR/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md b/translations/pt-BR/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md index 4f53f1678b..4fcbd86a09 100644 --- a/translations/pt-BR/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md +++ b/translations/pt-BR/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md @@ -12,25 +12,25 @@ shortTitle: Registro de imagem privada ## Sobre registros de imagens privadas e {% data variables.product.prodname_github_codespaces %} -Um registro é um espaço seguro para armazenar, gerenciar e buscar imagens privadas de contêineres. Você pode usar uma para armazenar uma ou mais imagens. Existem muitos exemplos de registros, como {% data variables.product.prodname_dotcom %} registro do contêiner, registro de contêiner do Azure ou DockerHub. +Um registro é um espaço seguro para armazenar, gerenciar e buscar imagens privadas de contêineres. Você pode usar uma para armazenar uma ou mais imagens. Existem muitos exemplos de registros, como {% data variables.product.prodname_container_registry %}, {% data variables.product.prodname_npm_registry %}, Azure Container Registry ou DockerHub. -O registro do contêiner de {% data variables.product.prodname_dotcom %} pode ser configurado para puxar imagens container sem precisar fornecer qualquer credencial para {% data variables.product.prodname_github_codespaces %}. Para outros registros de imagem, você deve criar segredos em {% data variables.product.prodname_dotcom %} para armazenar os detalhes de acesso, o que permitirá que {% data variables.product.prodname_codespaces %} acesse imagens armazenadas nesse registro. +{% data variables.product.prodname_ghcr_and_npm_registry %} pode ser configurado para permitir que as imagens do contêiner sejam enviadas perfeitamente para {% data variables.product.prodname_github_codespaces %} durante a criação do codespace sem ter que fornecer nenhuma credencial de autenticação. Para outros registros de imagem, você deve criar segredos em {% data variables.product.prodname_dotcom %} para armazenar os detalhes de acesso, o que permitirá que {% data variables.product.prodname_codespaces %} acesse imagens armazenadas nesse registro. -## Acessando imagens armazenadas no registro do contêiner de {% data variables.product.prodname_dotcom %} +## Acessando imagens armazenadas em {% data variables.product.prodname_ghcr_and_npm_registry %} -O registro de contêiner de {% data variables.product.prodname_dotcom %} é a maneira mais fácil de {% data variables.product.prodname_codespaces %} de consumir imagens de contêiner de desenvolvimento. +{% data variables.product.prodname_ghcr_and_npm_registry %} fornece a maneira mais fácil para {% data variables.product.prodname_codespaces %} consumir imagens de contêiner de desenvolvimento. -Para obter mais informações, consulte "[Trabalhando com o registro do contêiner](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)". +Para obter mais informações, consulte "[Trabalhando com o Registro do Contêiner](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)" e "[Trabalhando com o registro npm](/packages/working-with-a-github-packages-registry/working-with-the-npm-registry)". ### Acessar uma imagem publicada no mesmo repositório que o codespace -Se você publicar uma imagem de contêiner do {% data variables.product.prodname_dotcom %} no mesmo repositório em que o codespace está sendo lançado, você poderá de buscar automaticamente essa imagem na criação de um codespace. Você não terá que fornecer qualquer credencial adicional, a menos a opção **Herdar acesso do repositório** tenha sido desmarcada quando a imagem do contêiner foi publicada. +Se você publicar uma imagem do {% data variables.product.prodname_ghcr_or_npm_registry %} no mesmo repositório em que o codespace está sendo lançado, você poderá de buscar automaticamente essa imagem na criação de um codespace. Você não terá que fornecer qualquer credencial adicional, a menos a opção **Herdar acesso do repositório** tenha sido desmarcada quando a imagem do contêiner foi publicada. #### Herdando acesso a partir do repositório no qual uma imagem foi publicada -Por padrão, quando você publica uma imagem de contêiner no registro do contêiner de {% data variables.product.prodname_dotcom %}, a imagem herda a configuração de acesso do repositório no qual a imagem foi publicada. Por exemplo, se o repositório for público, a imagem também é pública. Se o repositório for privado, a imagem também é privada, mas pode ser acessada a partir do repositório. +Por padrão, ao publicar uma imagem de contêiner para {% data variables.product.prodname_ghcr_or_npm_registry %}, a imagem herda a configuração de acesso do repositório do qual a imagem foi publicada. Por exemplo, se o repositório for público, a imagem também é pública. Se o repositório for privado, a imagem também é privada, mas pode ser acessada a partir do repositório. -Este comportamento é controlado pela opção de **Herdar acesso do repositório**. O **Acesso herdado do repo** é selecionado por padrão ao publicar {% data variables.product.prodname_actions %}, mas não ao publicar diretamente no registro do contêiner de {% data variables.product.prodname_dotcom %} usando um Token de Acesso Pessoal (PAT). +Este comportamento é controlado pela opção de **Herdar acesso do repositório**. O **Acesso herdado do repo** é selecionado por padrão ao publicar {% data variables.product.prodname_actions %}, mas não ao publicar diretamente no {% data variables.product.prodname_ghcr_or_npm_registry %} usando um Token de Acesso Pessoal (PAT). Se a opção **Herdar acesso do repositório** não foi selecionada quando a imagem foi publicada, você pode adicionar o repositório manualmente aos controles de acesso da imagem de contêiner. Para obter mais informações, consulte "[Configurar o controle de acesso e visibilidade de um pacote](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#inheriting-access-for-a-container-image-from-a-repository)". @@ -46,13 +46,13 @@ Se você deseja permitir que um subconjunto de repositórios de uma organizaçã ### Publicando uma imagem de contêiner a partir de um codespace -O acesso seguro a partir de um codespace para o registro de um contêiner de {% data variables.product.prodname_dotcom %} é limitado à extração de imagens de contêineres. Se você deseja publicar a imagem de um contêiner de dentro de um codespace, você deve usar um token de acesso pessoal (PAT) com o escopo `write:packages`. +O acesso seguro a partir de um codespace para o {% data variables.product.prodname_ghcr_or_npm_registry %} é limitado à extração de imagens de contêineres. Se você deseja publicar a imagem de um contêiner de dentro de um codespace, você deve usar um token de acesso pessoal (PAT) com o escopo `write:packages`. -Recomendamos publicar imagens via {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Publicar imagens Docker](/actions/publishing-packages/publishing-docker-images)". +Recomendamos publicar imagens via {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Publicando imagens do Docker](/actions/publishing-packages/publishing-docker-images)" e "[Publicando pacotes do Node.js](/actions/publishing-packages/publishing-nodejs-packages)". ## Acessando as imagens armazenadas em outros registros de contêiner -Se você estiver acessando um contêiner a partir de um registro que não é registro de contêiner de {% data variables.product.prodname_dotcom %}, {% data variables.product.prodname_codespaces %} irá verificar a presença de três segredos, que define o nome de servidor, nome de usuário, e token de acesso pessoal (PAT) para um registro de contêiner. Se estes segredos forem encontrados, {% data variables.product.prodname_github_codespaces %} disponibilizará o registro dentro do seu codespace. +Se você estiver acessando uma imagem de contêiner de um registro que não é {% data variables.product.prodname_ghcr_or_npm_registry %}, {% data variables.product.prodname_codespaces %} verifica a presença de três segredos, que define o nome de servidor, nome de usuário e token de acesso pessoal (PAT) para um registro de contêiner. Se estes segredos forem encontrados, {% data variables.product.prodname_github_codespaces %} disponibilizará o registro dentro do seu codespace. - `<*>_CONTAINER_REGISTRY_SERVER` - `<*>_CONTAINER_REGISTRY_USER` diff --git a/translations/pt-BR/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md b/translations/pt-BR/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md index 2b8f9e7c80..e737234b75 100644 --- a/translations/pt-BR/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md +++ b/translations/pt-BR/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md @@ -17,7 +17,7 @@ redirect_from: ## Sobre o {% data variables.product.prodname_vscode_command_palette %} -A Paleta de Comando é uma das funcionalidades focais de {% data variables.product.prodname_vscode %} e está disponível para você usar em {% data variables.product.prodname_github_codespaces %}. O {% data variables.product.prodname_vscode_command_palette %} permite que você acesse muitos comandos para {% data variables.product.prodname_codespaces %} e {% data variables.product.prodname_vscode_shortname %}. Para obter mais informações sobre como usar o {% data variables.product.prodname_vscode_command_palette_shortname %}, consulte "[Interface de usuário](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" na documentação do {% data variables.product.prodname_vscode_shortname %}. +A Paleta de Comando é uma das funcionalidades focais de {% data variables.product.prodname_vscode %} e está disponível para você usar em {% data variables.product.prodname_github_codespaces %}. A Paleta de Comando permite que você acesse muitos comandos para {% data variables.product.prodname_codespaces %} e {% data variables.product.prodname_vscode_shortname %}. Para obter mais informações sobre como usar o {% data variables.product.prodname_vscode_command_palette_shortname %}, consulte "[Interface de usuário](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)" na documentação do {% data variables.product.prodname_vscode_shortname %}. ## Acessando o {% data variables.product.prodname_vscode_command_palette_shortname %} diff --git a/translations/pt-BR/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md b/translations/pt-BR/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md index c04158c396..3272984eab 100644 --- a/translations/pt-BR/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md +++ b/translations/pt-BR/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md @@ -88,14 +88,12 @@ Você pode adicionar mais script, preferências e arquivos de configuração ao Se o seu código não consegue pegar as configurações nos dotfiles, consulte "[Solução de problemas para {% data variables.product.prodname_codespaces %}](/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces)". -## Outras configurações disponíveis - Você também pode personalizar {% data variables.product.prodname_codespaces %} usando [as configurações adicionais de {% data variables.product.prodname_codespaces %}de](https://github.com/settings/codespaces): - Para habilitar a verificação do GPG, consulte "[Gerenciar a verificação de GPG para {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)." - Para definir seu editor, consulte "[Definindo seu editor padrão para {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-editor-for-github-codespaces)" -- To set how long a codespace can remain unused before it is automatically stopped, see "[Setting your timeout period for GitHub Codespaces](/codespaces/customizing-your-codespace/setting-your-timeout-period-for-github-codespaces)." -- To set the period for which your unused codespaces are retained, see "[Configuring automatic deletion of your codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)." +- Para definir quanto tempo um código não pode ser utilizado antes de ser interrompido automaticamente, consulte "[Definindo seu período de tempo limite para GitHub Codespaces](/codespaces/customizing-your-codespace/setting-your-timeout-period-for-github-codespaces)." +- Para definir o período para o qual seus códigos não utilizados são mantidos, consulte "[Configurando exclusão automática de seus codespaces](/codespaces/customizing-your-codespace/configuring-automatic-deletion-of-your-codespaces)". - Para definir sua região padrão, consulte "[Definindo sua região padrão para {% data variables.product.prodname_github_codespaces %}](/codespaces/customizing-your-codespace/setting-your-default-region-for-github-codespaces)." ## Leia mais diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/creating-a-codespace.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/creating-a-codespace.md index ab0c7b251b..25e9df9e6c 100644 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/creating-a-codespace.md +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/creating-a-codespace.md @@ -46,23 +46,20 @@ Se você quiser usar hooks do Git para o seu código, você deverá configurar h Quando você tem acesso a {% data variables.product.prodname_github_codespaces %}, você verá uma aba "Codespace" dentro do menu suspenso ** Código de{% octicon "code" aria-label="The code icon" %} ** ao visualizar um repositório. -Você terá acesso a codespaces nas seguintes condições: +Você terá acesso ao {% data variables.product.prodname_github_codespaces %} nas seguintes condições: -* Você é um integrante de uma organização que habilitou {% data variables.product.prodname_codespaces %} e definiu um limite de gastos. -* Um proprietário da organização concedeu a você acesso a {% data variables.product.prodname_codespaces %}. -* O repositório pertence à organização que habilitou {% data variables.product.prodname_codespaces %}. +Ou todos estes são verdadeiros: +* Você é integrante, ou colaborador externo, de uma organização que permitiu {% data variables.product.prodname_codespaces %} e definiu um limite de gastos. +* O proprietário da organização permitiu que você criasse codespaces às custas da organização. +* O repositório para o qual você deseja criar um codespace pertence a esta organização. -{% note %} - -**Observação:** As pessoas que já aderiram ao beta com sua conta pessoal do {% data variables.product.prodname_dotcom %} não perderão acesso a {% data variables.product.prodname_codespaces %}. No entanto, {% data variables.product.prodname_codespaces %} para as pessoas, continuará sendo beta. - -{% endnote %} - -Os proprietários da organização podem permitir que todos os integrantes da organização criem codespaces, limitem a criação de códigos aos integrantes selecionados da organização ou desabilitem a criação de codespace. Para obter mais informações sobre como gerenciar o acesso aos codespaces dentro da sua organização, consulte "[Habilitar codespace para usuários da sua organização](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#enable-codespaces-for-users-in-your-organization)". +Ou ambos são verdadeiros: +* Você está participando do beta de {% data variables.product.prodname_codespaces %} para usuários individuais. +* Ou você possui o repositório para o qual deseja criar um codespace ou ele pertence a uma organização da qual você é integrante ou colaborador externo. Antes de {% data variables.product.prodname_codespaces %} pode ser usado em uma organização, um proprietário ou gerente de cobrança deverá ter um limite de gastos. Para obter mais informações, consulte "[Sobre limites de gastos para codespaces](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces#about-spending-limits-for-codespaces)". -Se você deseja criar um codespace para um repositório pertencente à sua conta pessoal ou outro usuário e você tem permissão para criar repositórios em uma organização que habilitou {% data variables.product.prodname_github_codespaces %}, você poderá criar uma bifurcação de repositórios pertencentes ao usuário na organização e, em seguida, criar um codespace para a bifurcação. +Os proprietários da organização podem especificar quem pode criar e usar codespaces às expensas da organização. Os proprietários da organização também podem impedir que o uso de qualquer código seja cobrado da organização. Para obter mais informações, consulte "[Habilitando {% data variables.product.prodname_github_codespaces %} para a sua organização](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)". ## Criar um codespace @@ -115,7 +112,7 @@ Se você deseja criar um codespace para um repositório pertencente à sua conta {% endnote %} - 1. Clique **Iniciar sessão**. + 1. Clique em **Iniciar sessão**. {% endwebui %} @@ -129,7 +126,7 @@ Se você deseja criar um codespace para um repositório pertencente à sua conta {% data reusables.cli.cli-learn-more %} -Para criar um novo codespace, use o subcomando `gh create`. +Para criar um novo codespace, use o subcomando `gh codespace create`. ```shell gh codespace create @@ -152,3 +149,6 @@ Substitua `machine-type` por um identificador válido para um tipo de máquina d Para mais detalhes sobre as opções desse comando, consulte o [manual de {% data variables.product.prodname_cli %}](https://cli.github.com/manual/gh_codespace_create). {% endcli %} + +## Leia mais +- "[Adding an 'Open in GitHub Codespaces' badge](/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge)" diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/deleting-a-codespace.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/deleting-a-codespace.md index 61ed17ef17..6cffd71c8f 100644 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/deleting-a-codespace.md +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/deleting-a-codespace.md @@ -99,4 +99,4 @@ gh cs delete --repo octo-org/octo-repo --days 7 {% endcli %} ## Leia mais -- [Ciclo de vida dos codespaces](/codespaces/developing-in-codespaces/codespaces-lifecycle) +- "[Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle)" diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md new file mode 100644 index 0000000000..69f4d2a55f --- /dev/null +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md @@ -0,0 +1,120 @@ +--- +title: Primeiros passos com GitHub code para aprendizado de máquina +shortTitle: Aprendizado de máquina +intro: 'Aprenda como trabalhar em projetos de aprendizado de máquina com {% data variables.product.prodname_github_codespaces %} e suas ferramentas inovadoras.' +product: '{% data reusables.gated-features.codespaces %}' +versions: + fpt: '*' + ghec: '*' +type: tutorial +topics: + - Codespaces + - Developer +--- + +## Introdução + +Este guia apresenta você ao aprendizado de máquina com {% data variables.product.prodname_github_codespaces %}. Você vai construir um simples classificador de imagem, aprender sobre algumas das ferramentas que vêm pré-instaladas em {% data variables.product.prodname_github_codespaces %}, configurar o seu ambiente de desenvolvimento para NVIDIA CUDA e usar {% data variables.product.prodname_cli %} para abrir o seu código em JupyterLab. + +## Pré-requisito + +Você tem acesso a {% data variables.product.prodname_github_codespaces %}. Para obter mais informações, consulte "[Criando um codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)". + +## Criar um simples classificador de imagem + +Usaremos um caderno de anotações do Jupyter para construir um classificador de imagem simples. + +Os Jupyter notebooks são conjuntos de células que você pode executar um após o outro. O caderno no bloco de notas que cria um número de células que constroem um classificador de imagem usando [PyToch](https://pytorch.org/). Cada célula é uma fase diferente desse processo: faça o download de um conjunto de dados, configure uma rede neural, treine um modelo e, em seguida, teste esse modelo. + +Vamos executar todas as células, em sequência, para executar todas as fases da construção do classificador de imagem. Quando fazemos isso, o Jupyter salva a saída de volta no notebook para que você possa examinar os resultados. + +### Criando um repositório e um codespace + +1. Acesse o repositório de modelo [github/codespaces-getting-started-ml](https://github.com/github/codespaces-getting-started-ml) e clique em **Usar este modelo**. +{% data reusables.codespaces.open-codespace-from-template-repo %} + + Por padrão, um codespaces para este repositório abre em uma versão {% data variables.product.prodname_vscode %} baseada na web. + +### Abrir o notebook classificador de imagem + +A imagem padrão de contêiner usada por {% data variables.product.prodname_github_codespaces %} inclui um conjunto de bibliotecas de aprendizado de máquina pré-instaladas no seu codespace. Por exemplo, Numpy, pandas, SciPy, Matplotlib, seaborn, scikit-learn, TensorFlow, Keras, PyTorch, Requests e Plotly. Para obter mais informações sobre a imagem padrão, consulte "[Introdução a contêineres de desenvolvimento](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)" e [o repositório `devcontainers/imagens`](https://github.com/devcontainers/images/tree/main/src/codespaces#github-codespaces-default-linux-universal). + +1. No editor {% data variables.product.prodname_vscode_shortname %}, feche qualquer guia "Primeiros passos" que for exibida. +1. Abra o arquivo do notebook `image-classifier.ipynb`. +1. Clique no link do kernel do Python no canto superior direito do editor. + + ![Captura de tela do link do kernal do Python](/assets/images/help/codespaces/jupyter-python-kernel-link.png) + +1. No menu suspenso, escolha o kernel no diretório `/opt/python/latest/bin/python`. + + ![Screenshot do menu suspenso do kernal do Python](/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png) + +### Crie o classificador de imagem + +O caderno classificador de imagem contém todo o código que você precisa para baixar, um conjunto de dados, treinar uma rede neural e avaliar seu desempenho. + +1. Clique **Executar todos** para executar todas as células do caderno. + + ![Captura de tela do botão Executar Todos](/assets/images/help/codespaces/jupyter-run-all.png) + +1. Role para baixo para ver a saída de cada célula. + + ![Captura de tela da etapa 3 no editor](/assets/images/help/codespaces/jupyter-notebook-step3.png) + +## Configurar NVIDIA CUDA para o seu codespace + +Alguns softwares, como o TensorFlow, exigem a instalação do NVIDIA CUDA para usar a GPU do seu codespace. Quando esse for o caso, você pode criar sua própria configuração personalizada, usando um arquivo `devcontainer.json` e especificar que o CUDA deve ser instalado. Para obter mais informações sobre como criar uma configuração personalizada, consulte "[Introdução aos contêineres de desenvolvimento](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#creating-a-custom-dev-container-configuration)." + +{% note %} + +**Observação**: Para obter detalhes completos do script que é executado quando você adiciona o recurso `nvidia-cuda`, consulte [o devcontainers/features repository](https://github.com/devcontainers/features/tree/main/src/nvidia-cuda). + +{% endnote %} + +1. Dentro de um codespace, abra o arquivo `.devcontainer/devcontainer.json` no editor. +1. Adicione um objeto `funcionalidades` de alto nível com os seguintes conteúdos: + + ```json{:copy} + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + ``` + + Para obter mais informações sobre o objeto `funcionalidades`, consulte a [especificação dos contêineres de desenvolvimento](https://containers.dev/implementors/features/#devcontainer-json-properties). + + Se você estiver usando o arquivo `devcontainer.json` do repositório de imagens classificado que você criou para este tutorial, seu arquivo `devcontainer.json` agora irá se parecer com isto: + + ``` + { + "customizations": { + "vscode": { + "extensions": [ + "ms-python.python", + "ms-toolsai.jupyter" + ] + } + }, + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + } + ``` + +1. Salve a alteração. +{% data reusables.codespaces.rebuild-command %} + O contêiner do codespace será recriado. Isso levará vários minutos. Quando a recriação for concluída, o codespace será reaberto automaticamente. +1. Faça o commit da alteração no repositório para que o CUDA seja instalado em qualquer codespace novo que você criar a partir deste repositório no futuro. + +## Abra seu codespace no JupyterLab + +A imagem padrão de contêiner usada por {% data variables.product.prodname_github_codespaces %} inclui JupyterLab e o Jupyter IDE baseado na web. Você pode usar {% data variables.product.prodname_cli %} para abrir seu codespace no JupyterLab sem ter que instalar mais nada no seu codespace. + +1. No terminal, entre no comando {% data variables.product.prodname_cli %} `gh cs jupyter`. +1. Escolha o codepsace que você deseja abrir. + + ![Captura de tela da abertura de um codespace a partir do terminal](/assets/images/help/codespaces/open-codespace-in-jupyter.png) + diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md index 49db2b375c..769dd10bd8 100644 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/index.md @@ -18,6 +18,7 @@ children: - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network + - /getting-started-with-github-codespaces-for-machine-learning - /using-github-codespaces-in-visual-studio-code - /using-github-codespaces-with-github-cli --- diff --git a/translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md index 211035cabb..578598e01a 100644 --- a/translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ b/translations/pt-BR/content/codespaces/developing-in-codespaces/renaming-a-codespace.md @@ -1,6 +1,6 @@ --- -title: Renaming a codespace -intro: 'You can use the {% data variables.product.prodname_cli %} to change the codespace display name to one of your choice.' +title: Renomeando um codespace +intro: 'Você pode usar o {% data variables.product.prodname_cli %} para alterar o nome de exibição do codespace para um de sua escolha.' product: '{% data reusables.gated-features.codespaces %}' versions: fpt: '*' @@ -10,45 +10,47 @@ topics: - Codespaces - Fundamentals - Developer -shortTitle: Rename a codespace +shortTitle: Renomear um codespace --- -## About renaming a codespace +## Sobre renomear um codespace -Each codespace is assigned an auto-generated display name. If you have multiple codespaces, the display name helps you to differentiate between codespaces. For example: `literate space parakeet`. You can change the display name for your codespace. +A cada codespace é atribuído um nome de exibição gerado automaticamente. Se você tiver vários codespaces, o nome de exibição ajudará você a diferenciá-los. Por exemplo: `literate space parakeet`. Você pode alterar o nome de exibição do seu codespace. -To find the display name of a codespace: +Para encontrar o nome de exibição de um codespace: -- On {% data variables.product.product_name %}, view your list of codespaces at https://github.com/codespaces. +- Em {% data variables.product.product_name %}, consulte sua lista de codespace em https://github.com/codespaces. - ![Screenshot of the list of codespaces in GitHub](/assets/images/help/codespaces/codespaces-list-display-name.png) + ![Captura de tela da lista de codespaces no GitHub](/assets/images/help/codespaces/codespaces-list-display-name.png) -- In the {% data variables.product.prodname_vscode %} desktop application, or the {% data variables.product.prodname_vscode_shortname %} web client, click the Remote Explorer. The display name is shown below the repository name. For example: `symmetrical space telegram` in the screenshot below. +- No aplicativo de área de trabalho {% data variables.product.prodname_vscode %}, ou no cliente web {% data variables.product.prodname_vscode_shortname %}, clique no Explorador Remoto. O nome de exibição é mostrado abaixo do nome do repositório. Por exemplo: `symmetrical space telegram` na captura de tela abaixo. - ![Screenshot of the Remote Explorer in VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png) + ![Captura de tela do Explorador Remoto no VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png) -- In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. -### Permanent codespace names +{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %} +- Em uma janela do terminal em sua máquina local, use o comando {% data variables.product.prodname_cli %}: `gh codespace list`. -In addition to the display name, when you create a codespace, a permanent name is also assigned to the codespace. The name is a combination of your {% data variables.product.company_short %} handle, the repository name, and some random characters. Por exemplo: `octocat-myrepo-gmc7`. You can't change this name. +### Nomes de codespaces permanente -To find the permanent name of a codespace: +Além do nome de exibição, ao criar um codespace, um nome permanente também é atribuído ao codespace. O nome é uma combinação do seu {% data variables.product.company_short %}, do nome do repositório e de alguns caracteres aleatórios. Por exemplo: `octocat-myrepo-gmc7`. Você não pode mudar este nome. -* On {% data variables.product.product_name %}, the permanent name is shown in a pop-up when you hover over the **Open in browser** option on https://github.com/codespaces. +Para encontrar o nome permanente de um codespace: - ![Screenshot of the codespace name shown on hover over](/assets/images/help/codespaces/find-codespace-name-github.png) +* Em {% data variables.product.product_name %}, o nome permanente é mostrado em uma janela pop-up quando você passa o mouse sobre a opção **Abrir no navegador** em https://github.com/codespaces. -* In a codespace, use this command in the terminal: `echo $CODESPACE_NAME`. -* In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. + ![Captura de tela do nome do código exibida ao passar o mouse](/assets/images/help/codespaces/find-codespace-name-github.png) -## Renaming a codespace +* Em um código, use este comando no terminal: `echo $CODESPACE_NAME`. +* Em uma janela do terminal em sua máquina local, use o comando {% data variables.product.prodname_cli %}: `gh codespace list`. -Changing the display name of a codespace can be useful if you have multiple codespaces that you will be using for an extended period. An appropriate name helps you identify a codespace that you use for a particular purpose. You can change the display name for your codespace by using the {% data variables.product.prodname_cli %}. +## Renomeando um codespace -To rename a codespace, use the `gh codespace edit` subcommand: +Alterar o nome de exibição de um codespace pode ser útil se você tiver vários codespaces que você irá usar por um período prolongado. Um nome apropriado ajuda você a identificar um codespace que você usa para uma finalidade específica. Você pode alterar o nome de exibição do seu codespace usando o {% data variables.product.prodname_cli %}. + +Para renomear um codespace, use o subcomando`gh codespace edit`: ```shell gh codespace edit -c permanent name of the codespace -d new display name ``` -In this example, replace `permanent name of the codespace` with the permanent name of the codespace. Replace `new display name` with the desired display name. +Neste exemplo, substitua `permanent name of the codespace` pelo nome permanente do codespace. Substitua `new display name` pelo nome de exibição desejado. diff --git a/translations/pt-BR/content/codespaces/getting-started/deep-dive.md b/translations/pt-BR/content/codespaces/getting-started/deep-dive.md index 1c0daccdf7..6fbda50ec0 100644 --- a/translations/pt-BR/content/codespaces/getting-started/deep-dive.md +++ b/translations/pt-BR/content/codespaces/getting-started/deep-dive.md @@ -73,7 +73,7 @@ Durante a configuração de pós-criação, você ainda poderá usar o terminal ### Fechando ou interrompendo seu codespace -Para interromper o seu codespace, você pode [usar o {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)). Se você sair do seu codespace sem executar o comando de interrupção (por exemplo, fechando a aba do navegador), ou se você sair do codespace em execução sem interação, o codespace e os seus processos em execução continuarão até que ocorra uma janela de inatividade, após a qual o código será interrompido. Por padrão, a janela de inatividade é de 30 minutos. +Para interromper seu codespace, você pode [usar o {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (Shift+Comando+P (Mac) / Ctrl+Shift+P (Windows/Linux)). Se você sair do seu codespace sem executar o comando de interrupção (por exemplo, fechando a aba do navegador), ou se você sair do codespace em execução sem interação, o codespace e os seus processos em execução continuarão até que ocorra uma janela de inatividade, após a qual o código será interrompido. Por padrão, a janela de inatividade é de 30 minutos. Ao fechar ou interromper o seu codespace, todas as alterações não autorizadas são preservadas até você conectar-se ao codespace novamente. @@ -114,7 +114,7 @@ Se você já usa o {% data variables.product.prodname_vscode_shortname %}, você ## Leia mais -- [Habilitando {% data variables.product.prodname_codespaces %} para a sua organização](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization) -- [Gerenciando a cobrança para {% data variables.product.prodname_codespaces %} na sua organização](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization) -- [Configurando seu projeto para os codespaces](/codespaces/setting-up-your-project-for-codespaces) -- [Ciclo de vida dos codespaces](/codespaces/developing-in-codespaces/codespaces-lifecycle) +- "[Enabling {% data variables.product.prodname_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization)" +- "[Gerenciando a cobrança de {% data variables.product.prodname_codespaces %} na sua organização](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization)" +- "[Setting up your project for Codespaces](/codespaces/setting-up-your-project-for-codespaces)" +- "[Codespaces lifecycle](/codespaces/developing-in-codespaces/codespaces-lifecycle)" diff --git a/translations/pt-BR/content/codespaces/getting-started/quickstart.md b/translations/pt-BR/content/codespaces/getting-started/quickstart.md index 6a9a62f718..88fd011ffe 100644 --- a/translations/pt-BR/content/codespaces/getting-started/quickstart.md +++ b/translations/pt-BR/content/codespaces/getting-started/quickstart.md @@ -25,12 +25,7 @@ Para obter mais informações sobre exatamente como {% data variables.product.pr ## Criando seu codespace 1. Acesse o r[repositório do modelo](https://github.com/github/haikus-for-codespaces) e selecione **Usar este modelo**. - -1. Escolha um proprietário para o novo repositório, insira um nome de repositório, selecione sua configuração de privacidade preferida e clique em **Criar repositório a partir do modelo**. - -1. Acesse a página principal do repositório recém-criado. No nome do repositório, use o menu suspenso **Código de {% octicon "code" aria-label="The code icon" %}** e na guia **Codespaces**, clique em **Criar codespace no principal**. - - ![Botão de codespace novo](/assets/images/help/codespaces/new-codespace-button.png) +{% data reusables.codespaces.open-codespace-from-template-repo %} ## Executando o aplicativo @@ -115,5 +110,5 @@ Você criou com sucesso, personalizou e executou seu primeiro aplicativo em um c ## Leia mais -- [Habilitando {% data variables.product.prodname_codespaces %} para a sua organização](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization) -- [Gerenciando a cobrança para {% data variables.product.prodname_codespaces %} na sua organização](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization) +- "[Enabling {% data variables.product.prodname_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization)" +- "[Gerenciando a cobrança de {% data variables.product.prodname_codespaces %} na sua organização](/codespaces/managing-codespaces-for-your-organization/managing-billing-for-codespaces-in-your-organization)" diff --git a/translations/pt-BR/content/codespaces/guides.md b/translations/pt-BR/content/codespaces/guides.md index 72b2e974ba..ab8431406c 100644 --- a/translations/pt-BR/content/codespaces/guides.md +++ b/translations/pt-BR/content/codespaces/guides.md @@ -15,6 +15,7 @@ includeGuides: - /codespaces/setting-up-your-project-for-codespaces/setting-up-your-python-project-for-codespaces - /codespaces/setting-up-your-project-for-codespaces/setting-up-your-dotnet-project-for-codespaces - /codespaces/setting-up-your-project-for-codespaces/setting-up-your-java-project-for-codespaces + - /codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge - /codespaces/setting-up-your-codespace/configuring-codespaces-for-your-project - /codespaces/setting-up-your-codespace/personalizing-codespaces-for-your-account - /codespaces/developing-in-codespaces/creating-a-codespace diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md index 0e4e9da920..6f71eaca91 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md @@ -1,9 +1,9 @@ --- title: Habilitando o GitHub Codespaces para sua organização -shortTitle: Habilitar codespaces -intro: 'Você pode controlar quais usuários da sua organização podem usar {% data variables.product.prodname_github_codespaces %}.' +shortTitle: 'Habilite {% data variables.product.prodname_codespaces %}' +intro: 'Você pode controlar quais usuários da sua organização podem usar o {% data variables.product.prodname_github_codespaces %} às custas da organização.' product: '{% data reusables.gated-features.codespaces %}' -permissions: 'To manage user permissions for {% data variables.product.prodname_github_codespaces %} for an organization, you must be an organization owner.' +permissions: 'To alter an organization''s billing settings, you must be an organization owner.' redirect_from: - /codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization - /codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization @@ -13,25 +13,23 @@ versions: type: how_to topics: - Codespaces - - Permissions + - Billing - Administrator --- - ## Sobre habilitar {% data variables.product.prodname_github_codespaces %} para a sua organização -Os proprietários da organização podem controlar quais usuários da sua organização podem criar e usar cdespaces. +Os proprietários da organização podem controlar quais usuários da sua organização podem criar e usar códigos às custas da organização. -Para usar codespaces na sua organização, você deve fazer o seguinte: +Somente as pessoas que podem clonar um repositório podem criar um codespace para esse repositório. Para permitir que as pessoas criem codespaces para repositórios pertencentes a sua organização, você deve: + +- Certificar-se de que os usuários tenham pelo menos acesso de gravação aos repositórios onde querem usar um codespace. Para obter mais informações, consulte "[Gerenciar equipes e pessoas com acesso ao seu repositório](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository). " +- Certifique-se de que a sua organização não tem um endereço IP permitir a lista habilitada. Para obter mais informações, consulte "[Gerenciar endereços IP permitidos para sua organização](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization){% ifversion fpt %}" na documentação de {% data variables.product.prodname_ghe_cloud %}.{% else %}"{% endif %} + +Para permitir que as pessoas criem codespaces para os quais sua organização será cobrada, você deve: -- Certifique-se de que os usuários tenham [pelo menos acesso de gravação](/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization) nos repositórios onde desejam usar um codespace. -- [Habilitar {% data variables.product.prodname_github_codespaces %} para os usuários da sua organização](#enable-codespaces-for-users-in-your-organization). Você pode escolher permitir {% data variables.product.prodname_codespaces %} para usuários selecionados ou apenas para usuários específicos. - [Definir um limite de gastos](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces) -- Certifique-se de que a sua organização não tem um endereço IP permitir a lista habilitada. Para obter mais informações, consulte "[Gerenciar endereços IP permitidos para sua organização](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list){% ifversion fpt %}" na documentação de {% data variables.product.prodname_ghe_cloud %}.{% else %}"{% endif %} - -Por padrão, um codespace só pode acessar o repositório no qual ele foi criado. Se você quiser que os codespaces na sua organização possam acessar outros repositórios da organização que o criador do codespace possa acessar, consulte "[Gerenciar acesso e segurança para {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)". - -## Habilitar {% data variables.product.prodname_codespaces %} para os usuários na sua organização +- [Escolher quem pode criar codespaces que são cobrados da sua organização](#choose-who-can-create-codespaces-that-are-billed-to-your-organization) {% ifversion fpt %} {% note %} @@ -40,31 +38,44 @@ Por padrão, um codespace só pode acessar o repositório no qual ele foi criado {% endnote %} {% endif %} + +Por padrão, um codespace só pode acessar o repositório no qual ele foi criado. Se você quiser que os codespaces na sua organização possam acessar outros repositórios de organização que o criador do codespace possa acessar, consulte "[Gerenciar acesso do repositório aos codespaces da sua organização](/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces)". + +## Escolher quem pode criar codespaces que são cobrados da sua organização + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. Em "Permissões de usuário", selecione uma das seguintes opções: +1. Em "cobrança", selecione uma das seguintes opções: - * **Usuários selecionados** para selecionar integrantes específicos da organização para usar {% data variables.product.prodname_codespaces %}. - * **Permitir para todos os integrantes** para permitir todos os integrantes da organização usem {% data variables.product.prodname_codespaces %}. - * **Permitir para todos os integrantes e colaboradores externos** para permitir que todos os integrantes da sua organização, bem como os colaboradores externos, usem {% data variables.product.prodname_codespaces %}. + * **Desabilitado** - Sua organização não será cobrada pelo uso de codespaces. {% data variables.product.prodname_codespaces %} criado para os repositórios da organização que serão cobrados pelos usuários que os criarem. + * **Integrantes selecionados** - {% data variables.product.prodname_codespaces %} criado para os repositórios da sua organização por integrantes selecionados e será cobradoo da organização. + * **Todos os integrantes** - {% data variables.product.prodname_codespaces %} criados para os repositórios da sua organização por integrantes da sua organização e será cobrado da organização. + * **Todos os integrantes e colaboradores externos** - {% data variables.product.prodname_codespaces %} criado para os repositórios da organização por integrantes da organização e colaboradores externos e será cobrado da organização. - ![Botões de opção para "Permissões do usuário"](/assets/images/help/codespaces/org-user-permission-settings-outside-collaborators.png) + ![Botão de opção para "cobrança"](/assets/images/help/codespaces/codespaces-org-billing-settings.png) {% note %} - **Observação:** Ao selecionar **Permitir para todos os integrantes e colaboradores externos**, todos os colaboradores externos que foram adicionados aos repositórios específicos poderão criar e usar {% data variables.product.prodname_codespaces %}. Sua organização será cobrada pelo uso de todos os colaboradores externos. Para obter mais informações sobre como gerenciar colaboradores externos, consulte "[Sobre colaboradores externos](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)". + **Observação:** Ao selecionar **Todos os integrantes e colaboradores externos**, todos os colaboradores externos que foram adicionados em repositórios específicos podem criar e usar {% data variables.product.prodname_codespaces %} para esses repositórios e sua organização será cobrada por esse uso. Para obter mais informações sobre como gerenciar colaboradores externos, consulte "[Sobre colaboradores externos](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)". {% endnote %} 1. Clique em **Salvar**. +1. Se você selecionou **integrantes selecionados**, uma caixa de entrada será exibida para você inserir os nomes de usuários que deseja selecionar. + + ![Caixa de entrada para selecionar usuários](/assets/images/help/codespaces/codespaces-org-billing-add-users.png) ## Desabilitando {% data variables.product.prodname_codespaces %} para sua organização +É possível impedir a criação e o uso de codespaces faturáveis na sua organização. + +{% data reusables.codespaces.codespaces-disabling-org-billing %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. Em "Permissões de usuário", selecione **Desabilitado**. +1. Em "cobrança", selecione **Desabilitado**. ## Definindo um limite de gastos diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md index f39c2674aa..a2f4f71a74 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md @@ -35,11 +35,15 @@ Você pode definir um limite de uso para os codespaces na sua organização ou r ## Desabilitando ou limitando {% data variables.product.prodname_codespaces %} -É possível desabilitar o uso de {% data variables.product.prodname_codespaces %} na sua organização ou repositório. Para obter mais informações, consulte "[Gerenciar acesso ao repositório para os codespaces da sua organização](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)". +Você pode desabilitar todo o uso de {% data variables.product.prodname_github_codespaces %} que seria cobrado da sua organização. Como alternativa, você pode especificar quais integrantes ou colaboradores da organização podem usar o {% data variables.product.prodname_codespaces %} às custas da sua organização. Para obter mais informações, consulte "[Habilitando {% data variables.product.prodname_github_codespaces %} para a sua organização](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)". -Você também pode limitar os usuários individuais que podem usar {% data variables.product.prodname_codespaces %}. Para obter mais informações, consulte "[Gerenciando permissões de usuário para sua organização](/codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization)". +{% data reusables.codespaces.codespaces-disabling-org-billing %} -É possível limitar a escolha dos tipos de máquina que estão disponíveis para repositórios pertencentes à sua organização. Isso permite evitar que as pessoas usem máquinas com recursos excessivos para seus codespaces. Para obter mais informações, consulte "[Restringindo o acesso aos tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)." +Você pode configurar quais repositórios podem ser acessados a partir de codespaces criados para um repositório específico. Para obter mais informações, consulte "[Gerenciar o acesso a outros repositórios dentro de seu codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)". + +Você pode limitar a escolha de tipos de máquinas que estão disponíveis para codespaces criados a partir de repositórios pertencentes à organização. Isso permite que você evite que as pessoas usem máquinas com recursos excessivos em seus codespaces e incorram em custos desnecessários. Para obter mais informações, consulte "[Restringindo o acesso aos tipos de máquina](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)." + +Você também pode restringir quanto tempo um codespace pode não ser usado antes de ser automaticamente excluído. Isso pode ajudar a reduzir os custos de armazenamento para {% data variables.product.prodname_codespaces %}. Para obter mais informações, consulte "[Restringindo o período de retenção para codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)". ## Excluindo codespaces não utilizados @@ -47,6 +51,6 @@ Seus usuários podem excluir seus codespaces em https://github.com/codespaces e {% note %} -**Observação:** Somente a pessoa que criou um codespace pode excluí-lo. Atualmente, não há forma de os proprietários da organização excluírem os codespaces criados dentro de sua organização. +**Observação:** Os codespaces são excluídos automaticamente depois de terem sido interrompidos e permanecerem inativos por um número definido de dias. Para obter mais informações, consulte "[Restringindo o período de retenção para codespaces](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)". Um codespace só pode ser excluído manualmente pela pessoa que o criou. {% endnote %} diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md index 7f2c5d3ce1..e74fe7f955 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md @@ -20,7 +20,7 @@ redirect_from: {% warning %} -**Observação de depreciação**: A configuração de acesso e segurança descrita abaixo está obsoleta e é documentada aqui apenas por referência. Para habilitar o acesso expandido a outros repositórios, adicione as permissões solicitadas à definição do contêiner de desenvolvimento. Para obter mais informações, consulte "[Gerenciar o acesso a outros repositórios dentro de seu codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)". +**Observação de depreciação**: A configuração de acesso e segurança descrita abaixo está obsoleta e é documentada aqui apenas por referência. Para habilitar o acesso expandido a outros repositórios, adicione as permissões solicitadas ao seu arquivo de configuração `devcontainer.json`. Para obter mais informações, consulte "[Gerenciar o acesso a outros repositórios dentro de seu codespace](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)". {% endwarning %} diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 50096e843d..fafc1d5d6e 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -43,6 +43,8 @@ Por exemplo, você poderia criar uma política para toda a organização que res Se você adicionar uma política para toda a organização, você deverá configurá-la para a maior escolha de tipos de máquina que estarão disponíveis para qualquer repositório na sua organização. Em seguida, você pode adicionar políticas específicas ao repositório para restringir ainda mais a escolha. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adicionar uma política para limitar os tipos de máquina disponíveis {% data reusables.profile.access_org %} diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index e23550b26d..1dd72e8373 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -40,6 +40,8 @@ Ao criar uma política, você define se ela se aplica a todos os repositórios d Se você adicionar uma política para toda a organização com uma restrição de tempo limite, você deverá definir o tempo limite como o período de tempo mais longo. Em seguida, é possível adicionar políticas separadas que definam o tempo limite máximo para um período mais curto para repositórios específicos na sua organização. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adicionando uma política para definir um período máximo de tempo ocioso {% data reusables.profile.access_org %} diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index 79825f9e29..278aac3a6b 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -26,6 +26,8 @@ Ao criar uma política, você define se ela se aplica a todos os repositórios d Se você adicionar uma política para toda a organização com uma restrição de retenção, você deverá definir o período de retenção para o período mais longo aceitável. Em seguida, é possível adicionar políticas separadas que definam o período de retenção máximo para um período mais curto para repositórios específicos na sua organização. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adicionando uma política para definir um período máximo de retenção de codespace {% data reusables.profile.access_org %} diff --git a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index 48766c04d5..357d798819 100644 --- a/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/translations/pt-BR/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -36,6 +36,8 @@ Por exemplo, você poderia criar uma política de toda a organização que restr Se você adicionar uma política para toda a organização, você deverá defini-la como a opção de visibilidade mais branda que estará disponível para qualquer repositório na organização. Em seguida, você pode adicionar políticas específicas ao repositório para restringir ainda mais a escolha. +{% data reusables.codespaces.codespaces-org-policies-note %} + ## Adicionando uma política para limitar as opções de visibilidade da porta {% data reusables.profile.access_org %} diff --git a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge.md b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge.md new file mode 100644 index 0000000000..5bda3b516a --- /dev/null +++ b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge.md @@ -0,0 +1,66 @@ +--- +title: Adding an "Open in GitHub Codespaces" badge +shortTitle: Add a Codespaces badge +intro: You can add a badge to a Markdown file in your repository which people can click to create a codespace. +allowTitleToDifferFromFilename: true +versions: + fpt: '*' + ghec: '*' +type: how_to +topics: + - Codespaces + - Set up +product: '{% data reusables.gated-features.codespaces %}' +--- + +## Visão Geral + +Adding an "Open in {% data variables.product.prodname_github_codespaces %}" badge to a Markdown file gives people an easy way to create a codespace for your repository. + +![Screenshot of a Codespaces badge on a README page](/assets/images/help/codespaces/codespaces-badge-on-readme.png) + +When you create a badge you can choose specific configuration options for the codespace that the badge will create. + +When people click the badge they'll be taken to the advanced options page for codespace creation, with the options you chose preselected. For more information about the advanced options page, see "[Creating a codespace](https://docs-internal-30445-bfc9ce.preview.ghdocs.com/en/codespaces/developing-in-codespaces/creating-a-codespace#creating-a-codespace)." + +From the advanced options page, users can change the preselected settings if required, then click **Create codespace**. + +{% note %} + +**Note**: Be aware that people who don't yet have access to {% data variables.product.prodname_github_codespaces %} will see a 404 message if they click this badge. + +{% endnote %} + +## Creating an "Open in {% data variables.product.prodname_github_codespaces %}" badge + +{% data reusables.repositories.navigate-to-repo %} +1. Under the repository name, use the "Branch" drop-down menu, and select the branch you want to create the badge for. + + ![Screenshot of the Branch drop-down menu](/assets/images/help/codespaces/branch-drop-down.png) + +1. Clique no botão **Código de {% octicon "code" aria-label="The code icon" %}** e, em seguida, clique na aba **Codespaces**. + + ![Screenshot of the New codespace button](/assets/images/help/codespaces/new-codespace-button.png) + +1. Click the down arrow at the side of the **Create codespace on BRANCH** button, click **Configure and create codespace**, then click the **Configure and create codespace** button. + + ![Screenshot of the "Configure and create codespace" option](/assets/images/help/codespaces/configure-and-create-option.png) + +1. On the advanced options page for codespace creation, select the values you want to be preselected in each field. + + ![Screenshot of the advanced options page](/assets/images/help/codespaces/advanced-options.png) + +1. Copy the URL from the browser's address bar. +1. Add the following Markdown to, for example, the `README.md` file of your repository: + + ```Markdown{:copy} + [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](COPIED-URL) + ``` + + Por exemplo: + + ```Markdown + [![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=0000000&machine=premiumLinux&devcontainer_path=.devcontainer%2Fdevcontainer.json&location=WestUs2) + ``` + + In the above example, `0000000` will be the reference number of your repository. The other details in the URL are determined by the values you selected in the fields on the advanced options page. diff --git a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/index.md b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/index.md index 3ad2a03f3b..8ef073bdbd 100644 --- a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/index.md +++ b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/index.md @@ -17,5 +17,6 @@ children: - /setting-up-your-java-project-for-codespaces - /setting-up-your-python-project-for-codespaces - /setting-a-minimum-specification-for-codespace-machines + - /adding-a-codespaces-badge --- diff --git a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 6a28811a1a..0524bfd1ce 100644 --- a/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/translations/pt-BR/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -155,9 +155,9 @@ Você pode adicionar funcionalidades à configuração de contêiner predefinida Você pode adicionar algumas das características mais comuns selecionando-as na configuração do contêiner predefinido. Para obter mais informações sobre as funcionalidades disponíveis, consulte a biblioteca de script [](https://github.com/microsoft/vscode-dev-containers/tree/main/script-library#scripts) no repositório `vscode-dev-containers`. -1. Acessar a Paleta de Comando (`Shift + Comando + P` / `Ctrl + Shift + P`) e, em seguida, comece a digitar "configurar". Selecione **Codespaces: Configure as Funcionalidades do contêiner de desenvolvimento**. +1. Acesse a paleta de comando (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) e, em seguida, comece a digitar "configurar". Selecione **Codespaces: Configure as Funcionalidades do contêiner de desenvolvimento**. - ![O comando Configurar Funcionalidades do Devcontainer na paleta de comandos](/assets/images/help/codespaces/codespaces-configure-features.png) + ![O comando Configurar Funcionalidades do Contêiner de Desenvolvimento na Paleta de Comando](/assets/images/help/codespaces/codespaces-configure-features.png) 1. Atualize as seleções das suas funcioanlidades e clique em **OK**. @@ -165,7 +165,7 @@ Você pode adicionar algumas das características mais comuns selecionando-as na 1. Para aplicar as alterações, no canto inferior direito da tela, clique em **Reconstruir agora**. Para obter mais informações sobre a reconstrução do seu contêiner, consulte "[Aplicar alterações na sua configuração](#applying-configuration-changes-to-a-codespace)". - !["Codespaces: Reconstruir contêiner" na paleta de comandos](/assets/images/help/codespaces/rebuild-prompt.png) + !["Codespaces: Recriar contêiner" na paleta de comando](/assets/images/help/codespaces/rebuild-prompt.png) ## Criando uma configuração de contêiner de desenvolvimento personalizada diff --git a/translations/pt-BR/content/codespaces/troubleshooting/github-codespaces-logs.md b/translations/pt-BR/content/codespaces/troubleshooting/github-codespaces-logs.md index c3e4288382..56b8b733ab 100644 --- a/translations/pt-BR/content/codespaces/troubleshooting/github-codespaces-logs.md +++ b/translations/pt-BR/content/codespaces/troubleshooting/github-codespaces-logs.md @@ -28,7 +28,7 @@ Esses registros contêm informações detalhadas sobre o codespace, container, s {% webui %} 1. Se estiver usando {% data variables.product.prodname_codespaces %} no navegador, certifique-se de que esteja conectado ao codespace que deseja depurar. -1. Abra a paleta de comando de {% data variables.product.prodname_vscode %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) e digite **Exportar registros**. Selecione **Codespaces: Exportar registros** na lista para fazer o download dos registros. +1. Abra o {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) e digite **Exportar logs**. Selecione **Codespaces: Exportar registros** na lista para fazer o download dos registros. 1. Defina o local onde salvar o arquivo zip dos registros e, em seguida, clique em **Salvar** (desktop) ou clique em **OK** (web). 1. Se estiver usando {% data variables.product.prodname_codespaces %} no navegador, clique com o botão direito do mouse no arquivo zip dos registros na exibição do Explorer e selecione **Download…** para fazer o download para a sua máquina local. @@ -36,7 +36,7 @@ Esses registros contêm informações detalhadas sobre o codespace, container, s {% vscode %} -1. Abra a paleta de comando de {% data variables.product.prodname_vscode %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) e digite **Exportar registros**. Selecione **Codespaces: Exportar registros** na lista para fazer o download dos registros. +1. Abra o {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) e digite **Exportar logs**. Selecione **Codespaces: Exportar registros** na lista para fazer o download dos registros. 1. Defina o local onde salvar o arquivo zip dos registros e, em seguida, clique em **Salvar** (desktop) ou clique em **OK** (web). {% endvscode %} @@ -55,7 +55,7 @@ Estes registros contêm informações sobre o contêiner, contêiner de desenvol {% webui %} 1. Conecte-se ao codespace que você deseja depurar. -2. Abra o {% data variables.product.prodname_vscode_command_palette %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) e digite **Registros de criação**. Selecione **codespaces: Visualizar registro de criação** na lista para abrir o arquivo `creation.log`. +2. Abra o {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) e digite **logs de criação**. Selecione **codespaces: Visualizar registro de criação** na lista para abrir o arquivo `creation.log`. Se você quiser compartilhar o registro com suporte, você poderá copiar o texto do registro de criação em um editor de texto e salvar o arquivo localmente. @@ -63,7 +63,7 @@ Se você quiser compartilhar o registro com suporte, você poderá copiar o text {% vscode %} -Abra a Paleta de Comando (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) e digite **Registros de criação**. Selecione **codespaces: Visualizar registro de criação** na lista para abrir o arquivo `creation.log`. +Abra o {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) e digite **logs de criação**. Selecione **codespaces: Visualizar registro de criação** na lista para abrir o arquivo `creation.log`. Se você quiser compartilhar o registro com suporte, você poderá copiar o texto do registro de criação em um editor de texto e salvar o arquivo localmente. diff --git a/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md b/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md index 8fd3a1a584..cc0fce46bf 100644 --- a/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md +++ b/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md @@ -16,6 +16,8 @@ shortTitle: Criação e exclusão ### Sem acesso para criar um codespace {% data variables.product.prodname_codespaces %} não estão disponíveis para todos os repositórios. Se o botão "Abrir com codespaces" estiver faltando, o {% data variables.product.prodname_github_codespaces %} pode não estar disponível para o repositório. Para obter mais informações, consulte "[Criar um codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces)". +Não é possível criar um codespace para um repositório privado pertencente a uma organização, a menos que você tenha acesso de gravação ao repositório ou a organização tenha habilitado a bifurcação. + Se você acredita que sua organização [habilitou {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#about-enabling-codespaces-for-your-organization), certifique-se de que um proprietário ou gerente de cobrança da organização definiu o limite de gastos para {% data variables.product.prodname_codespaces %}. Para obter mais informações, consulte "[Gerenciar seu limite de gastos para {% data variables.product.prodname_codespaces %}](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces)". ### O codespace não abre quando criado diff --git a/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md b/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md index 77413cc6e7..76c5281e23 100644 --- a/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md +++ b/translations/pt-BR/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md @@ -18,7 +18,7 @@ redirect_from: Os codespaces são definidos para parar após 30 minutos sem atividade. Se você tentar interagir com um codespace depois de parar, é possível que você veja um erro `503 service unavailable`. - Se um botão **Iniciar** for exibido em {% data variables.product.prodname_vscode %} ou na janela do seu navegador, clique em **Iniciar** para reconectar ao codespace. -- Redefina o seu codespace recarregando a janela. A partir da [paleta de comando](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) em {% data variables.product.prodname_vscode %}, clique em **Desenvolvedor: Recarregar Janela**. +- Redefina o seu codespace recarregando a janela. Na [Paleta de comando](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) em {% data variables.product.prodname_vscode %}, clique em **Desenvolvedor: Recarregar janela**. ## Não foi possível conectar o navegador diff --git a/translations/pt-BR/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md b/translations/pt-BR/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md index 55fa9830f3..b238e95d4b 100644 --- a/translations/pt-BR/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md +++ b/translations/pt-BR/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md @@ -31,6 +31,7 @@ O nome do código também está incluído em muitos dos arquivos de registro. Po Todos os codespaces também possuem um ID (identificador). Ele não é exibido por padrão em {% data variables.product.prodname_vscode %}. Portanto, é possível que você precise atualizar as configurações para a extensão {% data variables.product.prodname_github_codespaces %} antes de acessar o ID. 1. Em {% data variables.product.prodname_vscode %}, navegador ou área de trabalho, na barra de atividades à esquerda, clique em **Explorador remoto** para mostrar as informações para o codespace. -2. Se a barra lateral incluir uma seção "Desempenho do codespace", passe o mouse sobre o "ID do codespace" e clique no ícone da área de transferência para copiar o ID. -3. Se a informação não for exibida, clique em {% octicon "gear" aria-label="The gear icon" %} no canto inferior esquerdo da barra de atividade, para exibir a aba "Configurações". -4. Expanda **Extensões** e clique em **{% data variables.product.prodname_github_codespaces %}** para exibir as configurações da extensão. Em seguida, habilite o **Exibir o explorador de desempenho** para exibir a seção "Codespace" na barra lateral. ![O ID do codespace e configurações necessárias para exibir informações de desempenho](/assets/images/help/codespaces/find-codespace-id.png) +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} +1. Se a barra lateral incluir uma seção "Desempenho do codespace", passe o mouse sobre o "ID do codespace" e clique no ícone da área de transferência para copiar o ID. +1. Se a informação não for exibida, clique em {% octicon "gear" aria-label="The gear icon" %} no canto inferior esquerdo da barra de atividade, para exibir a aba "Configurações". +1. Expanda **Extensões** e clique em **{% data variables.product.prodname_github_codespaces %}** para exibir as configurações da extensão. Em seguida, habilite o **Exibir o explorador de desempenho** para exibir a seção "Codespace" na barra lateral. ![O ID do codespace e configurações necessárias para exibir informações de desempenho](/assets/images/help/codespaces/find-codespace-id.png) diff --git a/translations/pt-BR/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md b/translations/pt-BR/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md index 391bbe8d0d..77116c54cc 100644 --- a/translations/pt-BR/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md +++ b/translations/pt-BR/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms.md @@ -629,11 +629,11 @@ body: - Maybe ``` -## Body cannot be empty +## O texto não pode estar vazio -The template body `key:value` pair can not be empty. For more information about which top-level keys are required, see "[Syntax for issue forms](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms#top-level-syntax)." +O par do texto do modelo `key:value` não pode estar vazio. Para obter mais informações sobre quais chaves de nível superior são obrigatórios, consulte "[Sintaxe para os formulários do problema](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms#top-level-syntax). " -The error can be fixed by adding the `body:` section. +O erro pode ser corrigido adicionando a seção `body:`. ### Exemplo @@ -647,7 +647,7 @@ body: label: "What's wrong?" ``` -In this example, the error can be fixed by deleting the `---` (document separator) between the headers and the `body` section. +Neste exemplo, o erro pode ser corrigido excluindo o `---` (separador do documento) entre os cabeçalhos e a seção `texto`. ```yaml name: Support Request diff --git a/translations/pt-BR/content/developers/apps/building-github-apps/authenticating-with-github-apps.md b/translations/pt-BR/content/developers/apps/building-github-apps/authenticating-with-github-apps.md index 2cb9d882fc..9c62791e18 100644 --- a/translations/pt-BR/content/developers/apps/building-github-apps/authenticating-with-github-apps.md +++ b/translations/pt-BR/content/developers/apps/building-github-apps/authenticating-with-github-apps.md @@ -147,13 +147,19 @@ Para efetuar a autenticação com um token de acesso de instalação, inclua-o n ```shell $ curl -i \ --H "Authorization: token YOUR_INSTALLATION_ACCESS_TOKEN" \ +-H "Authorization: Bearer YOUR_INSTALLATION_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ {% data variables.product.api_url_pre %}/installation/repositories ``` `YOUR_INSTALLATION_ACCESS_TOKEN` é o valor que você deve substituir. +{% note %} + +**Observação:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + ## Acessar pontos finais da API como uma instalação Para obter uma lista de pontos de extremidade da API REST disponíveis para uso por {% data variables.product.prodname_github_apps %} usando um token de acesso de instalação, consulte "[pontos de extremidade disponíveis](/rest/overview/endpoints-available-for-github-apps)." diff --git a/translations/pt-BR/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md b/translations/pt-BR/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md index 4e1d19b84c..a3fcdd9a0b 100644 --- a/translations/pt-BR/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md +++ b/translations/pt-BR/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md @@ -108,13 +108,13 @@ Por padrão, a resposta assume o seguinte formato. Os parâmetros de resposta `e O token de acesso do usuário permite que o aplicativo GitHub faça solicitações para a API em nome de um usuário. - Autorização: token OUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user Por exemplo, no cURL você pode definir o cabeçalho de autorização da seguinte forma: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## Fluxo de dispositivo @@ -133,12 +133,12 @@ O fluxo de dispositivos permite que você autorize usuários para um aplicativo Depois de ter um token OAuth para um usuário, você pode verificar quais instalações o usuário poderá acessar. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations Você também pode verificar quais repositórios são acessíveis a um usuário para uma instalação. - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations/:installation_id/repositories Você pode encontrar mais informações em: [Listar instalações de aplicativos acessíveis para o token de acesso do usuário](/rest/apps#list-app-installations-accessible-to-the-user-access-token) e [Listar repositórios acessíveis para o token de acesso do usuário](/rest/apps#list-repositories-accessible-to-the-user-access-token). diff --git a/translations/pt-BR/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md b/translations/pt-BR/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md index ed2425e1fa..d24d81783f 100644 --- a/translations/pt-BR/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md +++ b/translations/pt-BR/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md @@ -23,6 +23,8 @@ Quando uma organização tem uma lista de autorizações, aplicativos de terceir ## Adicionando uma lista de endereços IP permitidos para {% data variables.product.prodname_github_app %} +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.apps.settings-step %} {% data reusables.user-settings.developer_settings %} {% data reusables.user-settings.github_apps %} diff --git a/translations/pt-BR/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md b/translations/pt-BR/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md index f476d28b5a..1054a34586 100644 --- a/translations/pt-BR/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md +++ b/translations/pt-BR/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md @@ -47,7 +47,7 @@ Os limites de taxa para {% data variables.product.prodname_github_apps %} e {% d {% ifversion fpt or ghec %} -{% data variables.product.prodname_github_apps %} que estão instalados em uma organização ou um repositório dentro de uma empresa no {% data variables.product.product_location %} estão sujeitos a um limite de 15.000 solicitações por hora. +{% data variables.product.prodname_github_apps %} que estão instalados em uma organização dentro de uma empresa em {% data variables.product.product_location %} estão sujeitos a um limite de 15000 solicitações por hora por organização que instalou o aplicativo. {% endif %} diff --git a/translations/pt-BR/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md b/translations/pt-BR/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md index 201d73dc0c..00449a944a 100644 --- a/translations/pt-BR/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md +++ b/translations/pt-BR/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md @@ -107,13 +107,13 @@ Accept: application/xml O token de acesso permite que você faça solicitações para a API em nome de um usuário. - Autorização: token OUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user Por exemplo, no cURL você pode definir o cabeçalho de autorização da seguinte forma: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## Fluxo de dispositivo diff --git a/translations/pt-BR/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md b/translations/pt-BR/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md index c205b04943..758de723bf 100644 --- a/translations/pt-BR/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md +++ b/translations/pt-BR/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md @@ -28,7 +28,7 @@ Se seu {% data variables.product.prodname_oauth_app %} não tiver acesso a um na Verifique os cabeçalhos para ver quais escopos do OAuth você tem e o que a ação da API aceita: ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I HTTP/2 200 X-OAuth-Scopes: repo, user X-Accepted-OAuth-Scopes: user @@ -39,49 +39,49 @@ X-Accepted-OAuth-Scopes: user ## Escopos disponíveis -| Nome | Descrição | -| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |{% ifversion not ghae %} +| Nome | Descrição | +| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |{% ifversion not ghae %} | **`(sem escopo)`** | Concede acesso somente leitura a informações públicas (incluindo informações do perfil do usuário, informações do repositório e gists){% endif %}{% ifversion ghes or ghae %} | **`site_admin`** | Concede acesso de administrador aos pontos de extremidades da API de administração [{% data variables.product.prodname_ghe_server %}](/rest/reference/enterprise-admin).{% endif %} -| **`repo`** | Concede acesso total a repositórios públicos{% ifversion ghec or ghes or ghae %}, internos,{% endif %} e privados, incluindo acesso de leitura e gravação ao código, status de commit, convites de repositório, colaboradores, status de implantação e webhooks do repositório. **Observação**: Além dos recursos relacionados ao repositório, o escopo `repositório` também permite acesso para gerenciar recursos pertencentes à organização, incluindo projetos, convites, associações da equipe e webhooks. Este âmbito também concede a capacidade de gerenciar projectos pertencentes a usuários. | -|  `repo:status` | Concede acesso de leitura/gravaçãopara fazer commit de status em {% ifversion fpt %}repositórios públicos, privados e internos{% elsif ghec or ghes %} privados e internos{% elsif ghae %}privados e internos{% endif %}. Esse escopo só é necessário para conceder a outros usuários ou serviços acesso a status de compromisso de repositórios privados *sem* conceder acesso ao código. | +| **`repo`** | Concede acesso total a repositórios públicos{% ifversion ghec or ghes or ghae %}, internos,{% endif %} e privados, incluindo acesso de leitura e gravação ao código, status de commit, convites de repositório, colaboradores, status de implantação e webhooks do repositório. **Observação**: Além dos recursos relacionados ao repositório, o escopo `repositório` também permite acesso para gerenciar recursos pertencentes à organização, incluindo projetos, convites, associações da equipe e webhooks. Este âmbito também concede a capacidade de gerenciar projectos pertencentes a usuários. | +|  `repo:status` | Concede acesso de leitura/gravaçãopara fazer commit de status em {% ifversion fpt %}repositórios públicos, privados e internos{% elsif ghec or ghes %} privados e internos{% elsif ghae %}privados e internos{% endif %}. Esse escopo só é necessário para conceder a outros usuários ou serviços acesso a status de compromisso de repositórios privados *sem* conceder acesso ao código. | |  `repo_deployment` | Concede acesso aos [status da implementação](/rest/reference/repos#deployments) para {% ifversion not ghae %}público{% else %}interno{% endif %} e repositórios privados. Este escopo só é necessário para conceder a outros usuários ou serviços acesso aos status de implantação, *sem* conceder acesso ao código.{% ifversion not ghae %} |  `public_repo` | Limita o acesso a repositórios públicos. Isso inclui acesso de leitura/gravação em código, status de commit, projetos de repositório, colaboradores e status de implantação de repositórios e organizações públicos. Também é necessário para repositórios públicos marcados como favoritos.{% endif %} |  `repo:invite` | Concede habilidades de aceitar/recusar convites para colaborar em um repositório. Este escopo só é necessário para conceder a outros usuários ou serviços acesso a convites *sem* conceder acesso ao código.{% ifversion fpt or ghes or ghec %} |  `security_events` | Concede:
acesso de leitura e gravação aos eventos de segurança na [API de {% data variables.product.prodname_code_scanning %}](/rest/reference/code-scanning) {%- ifversion ghec %}
acesso de leitura e gravação aos eventos de segurança na [API de {% data variables.product.prodname_secret_scanning %}](/rest/reference/secret-scanning){%- endif %}
Esse escopo é somente necessário para conceder aos outros usuários ou serviços acesso aos eventos de segurança *sem* conceder acesso ao código.{% endif %} -| **`admin:repo_hook`** | Concede acesso de leitura, gravação, fixação e exclusão aos hooks do repositório em {% ifversion fpt %}repositórios públicos, privados ou internos{% elsif ghec or ghes %}públicos, ou internos{% elsif ghae %}privados ou internos{% endif %}. O escopos do `repo` {% ifversion fpt or ghec or ghes %}e `public_repo` concedem{% else %}o escopo concede{% endif %} o acesso total aos repositórios, incluindo hooks de repositório. Use o escopo `admin:repo_hook` para limitar o acesso apenas a hooks de repositório. | -|  `write:repo_hook` | Concede acesso de leitura, gravação e fixação aos hooks em {% ifversion fpt %}repositórios públicos ou privados{% elsif ghec or ghes %}público, privado ou interno{% elsif ghae %}privado ou interno{% endif %}. | -|  `read:repo_hook` | Concede acesso de leitura e fixação aos hooks em {% ifversion fpt %}repositórios públicos ou privados{% elsif ghec or ghes %}público, privado ou interno{% elsif ghae %}privado ou interno{% endif %}. | -| **`admin:org`** | Gerencia totalmente a organização e suas equipes, projetos e associações. | -|  `write:org` | Acesso de leitura e gravação à associação da organização, aos projetos da organização e à associação da equipe. | -|  `read:org` | Acesso somente leitura à associação da organização, aos projetos da organização e à associação da equipe. | -| **`admin:public_key`** | Gerenciar totalmente as chaves públicas. | -|  `write:public_key` | Criar, listar e visualizar informações das chaves públicas. | -|  `read:public_key` | Listar e visualizar informações para as chaves públicas. | -| **`admin:org_hook`** | Concede acesso de leitura, gravação, ping e e exclusão de hooks da organização. **Observação:** Os tokens do OAuth só serão capazes de realizar essas ações nos hooks da organização que foram criados pelo aplicativo OAuth. Os tokens de acesso pessoal só poderão realizar essas ações nos hooks da organização criados por um usuário. | -| **`gist`** | Concede acesso de gravação aos gists. | -| **`notificações`** | Condece:
* acesso de gravação a notificações de um usuário
* acesso para marcar como leitura nos threads
* acesso para inspecionar e não inspecionar um repositório e
* acesso de leitura, gravação e exclusão às assinaturas dos threads. | -| **`usuário`** | Concede acesso de leitura/gravação apenas às informações do perfil. Observe que este escopo inclui `user:email` e `user:follow`. | -|  `read:user` | Concede acesso para ler as informações do perfil de um usuário. | -|  `usuário:email` | Concede acesso de leitura aos endereços de e-mail de um usuário. | +| **`admin:repo_hook`** | Concede acesso de leitura, gravação, fixação e exclusão aos hooks do repositório em {% ifversion fpt %}repositórios públicos, privados ou internos{% elsif ghec or ghes %}públicos, ou internos{% elsif ghae %}privados ou internos{% endif %}. O escopos do `repo` {% ifversion fpt or ghec or ghes %}e `public_repo` concedem{% else %}o escopo concede{% endif %} o acesso total aos repositórios, incluindo hooks de repositório. Use o escopo `admin:repo_hook` para limitar o acesso apenas a hooks de repositório. | +|  `write:repo_hook` | Concede acesso de leitura, gravação e fixação aos hooks em {% ifversion fpt %}repositórios públicos ou privados{% elsif ghec or ghes %}público, privado ou interno{% elsif ghae %}privado ou interno{% endif %}. | +|  `read:repo_hook` | Concede acesso de leitura e fixação aos hooks em {% ifversion fpt %}repositórios públicos ou privados{% elsif ghec or ghes %}público, privado ou interno{% elsif ghae %}privado ou interno{% endif %}. | +| **`admin:org`** | Gerencia totalmente a organização e suas equipes, projetos e associações. | +|  `write:org` | Acesso de leitura e gravação à associação da organização, aos projetos da organização e à associação da equipe. | +|  `read:org` | Acesso somente leitura à associação da organização, aos projetos da organização e à associação da equipe. | +| **`admin:public_key`** | Gerenciar totalmente as chaves públicas. | +|  `write:public_key` | Criar, listar e visualizar informações das chaves públicas. | +|  `read:public_key` | Listar e visualizar informações para as chaves públicas. | +| **`admin:org_hook`** | Concede acesso de leitura, gravação, ping e e exclusão de hooks da organização. **Observação:** Os tokens do OAuth só serão capazes de realizar essas ações nos hooks da organização que foram criados pelo aplicativo OAuth. Os tokens de acesso pessoal só poderão realizar essas ações nos hooks da organização criados por um usuário. | +| **`gist`** | Concede acesso de gravação aos gists. | +| **`notificações`** | Condece:
* acesso de gravação a notificações de um usuário
* acesso para marcar como leitura nos threads
* acesso para inspecionar e não inspecionar um repositório e
* acesso de leitura, gravação e exclusão às assinaturas dos threads. | +| **`usuário`** | Concede acesso de leitura/gravação apenas às informações do perfil. Observe que este escopo inclui `user:email` e `user:follow`. | +|  `read:user` | Concede acesso para ler as informações do perfil de um usuário. | +|  `usuário:email` | Concede acesso de leitura aos endereços de e-mail de um usuário. | |  `user:follow` | Concede acesso para seguir ou deixar de seguir outros usuários.{% ifversion projects-oauth-scope %} -| **`project`** | Concede acesso de leitura/gravação ao usuário e à organização {% data variables.projects.projects_v2 %}. | +| **`project`** | Concede acesso de leitura/gravação ao usuário e à organização {% data variables.projects.projects_v2 %}. | |  `read:project` | Concede acesso somente de leitura ao usuário e à organização {% data variables.projects.projects_v2 %}.{% endif %} -| **`delete_repo`** | Concede acesso para excluir repositórios administráveis. | -| **`write:discussion`** | Permite acesso de leitura e gravação para discussões da equipe. | -|  `leia:discussion` | Permite acesso de leitura para discussões em equipe. | -| **`write:packages`** | Concede acesso ao para fazer o upload ou publicação de um pacote no {% data variables.product.prodname_registry %}. Para obter mais informações, consulte "[Publicar um pacote](/github/managing-packages-with-github-packages/publishing-a-package)". | -| **`read:packages`** | Concede acesso ao download ou instalação de pacotes do {% data variables.product.prodname_registry %}. Para obter mais informações, consulte "[Instalando um pacote](/github/managing-packages-with-github-packages/installing-a-package)". | -| **`delete:packages`** | Concede acesso para excluir pacotes de {% data variables.product.prodname_registry %}. Para obter mais informações, consulte "[Excluir e restaurar um pacote](/packages/learn-github-packages/deleting-and-restoring-a-package)". | -| **`admin:gpg_key`** | Gerenciar totalmente as chaves GPG. | -|  `write:gpg_key` | Criar, listar e visualizar informações das chaves GPG. | +| **`delete_repo`** | Concede acesso para excluir repositórios administráveis. | +| **`write:discussion`** | Permite acesso de leitura e gravação para discussões da equipe. | +|  `leia:discussion` | Permite acesso de leitura para discussões em equipe. | +| **`write:packages`** | Concede acesso ao para fazer o upload ou publicação de um pacote no {% data variables.product.prodname_registry %}. Para obter mais informações, consulte "[Publicar um pacote](/github/managing-packages-with-github-packages/publishing-a-package)". | +| **`read:packages`** | Concede acesso ao download ou instalação de pacotes do {% data variables.product.prodname_registry %}. Para obter mais informações, consulte "[Instalando um pacote](/github/managing-packages-with-github-packages/installing-a-package)". | +| **`delete:packages`** | Concede acesso para excluir pacotes de {% data variables.product.prodname_registry %}. Para obter mais informações, consulte "[Excluir e restaurar um pacote](/packages/learn-github-packages/deleting-and-restoring-a-package)". | +| **`admin:gpg_key`** | Gerenciar totalmente as chaves GPG. | +|  `write:gpg_key` | Criar, listar e visualizar informações das chaves GPG. | |  `read:gpg_key` | Listar e visualizar informações das chaves GPG.{% ifversion fpt or ghec %} | **`codespace`** | Concede a capacidade de criar e gerenciar codespaces. Os codespaces podem expor um GITHUB_TOKEN que pode ter um conjunto diferente de escopos. Para obter mais informações, consulte "[Segurança em {% data variables.product.prodname_github_codespaces %}](/codespaces/codespaces-reference/security-in-github-codespaces#authentication)."{% endif %} -| **`fluxo de trabalho`** | Concede a capacidade de adicionar e atualizar arquivos do fluxo de trabalho do {% data variables.product.prodname_actions %}. Os arquivos do fluxo de trabalho podem ser confirmados sem este escopo se o mesmo arquivo (com o mesmo caminho e conteúdo) existir em outro branch no mesmo repositório. Os arquivos do fluxo de trabalho podem expor o `GITHUB_TOKEN` que pode ter um conjunto diferente de escopos. For more information, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)."{% ifversion not fpt %} -| **`admin:enterprise`** | Gives full control of enterprise functionality. For more information, see "[Managing enterprise accounts](/graphql/guides/managing-enterprise-accounts)" in the GraphQL API documentation.

Includes `manage_runners:enterprise`{% ifversion ghec or ghes > 3.3 %}, `manage_billing:enterprise`,{% endif %} and `read:enterprise`. | -|  `manage_runners:enterprise` | Gives full control over self-hosted runners within the enterprise. Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners)." {% ifversion ghec or ghes > 3.3 %} -|  `manage_billing:enterprise` | Read and write enterprise billing data. For more information, see "[Billing](/rest/billing)" in the REST API documentation. {% endif %} -|  `read:enterprise` | Read all data on an enterprise profile. Does not include profile data of enterprise members or organizations.{% endif %} +| **`fluxo de trabalho`** | Concede a capacidade de adicionar e atualizar arquivos do fluxo de trabalho do {% data variables.product.prodname_actions %}. Os arquivos do fluxo de trabalho podem ser confirmados sem este escopo se o mesmo arquivo (com o mesmo caminho e conteúdo) existir em outro branch no mesmo repositório. Os arquivos do fluxo de trabalho podem expor o `GITHUB_TOKEN` que pode ter um conjunto diferente de escopos. Para obter mais informações, consulte "[Autenticação em um fluxo de trabalho](/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token)".{% ifversion not fpt %} +| **`admin:enterprise`** | Dá controle total da funcionalidade de empresa. Para obter mais informações, consulte "[Gerenciando contas corporativas](/graphql/guides/managing-enterprise-accounts)" na documentação da API do GraphQL.

Inclui `manage_runners:enterprise`{% ifversion ghec or ghes > 3.3 %}, `manage_billing:enterprise`,{% endif %} e `read:enterprise`. | +|  `manage_runners:enterprise` | Dá controle total sobre os executores auto-hospedados dentro da empresa. Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners)." {% ifversion ghec or ghes > 3.3 %} +|  `manage_billing:enterprise` | Lê e escreve os dados de cobrança da empresa. Para obter mais informações, consulte "[Cobrança](/rest/billing)" na documentação da API REST. {% endif %} +|  `read:enterprise` | Lê todos os dados em um perfil corporativo. Não inclui dados de perfil de integrantes ou organizações da empresa.{% endif %} {% note %} **Observação:** O seu aplicativo OAuth pode solicitar os escopos no redirecionamento inicial. Você pode especificar vários escopos separando-os com um espaço usando `%20`: diff --git a/translations/pt-BR/content/developers/index.md b/translations/pt-BR/content/developers/index.md index 2415d05afe..38c18fb3ae 100644 --- a/translations/pt-BR/content/developers/index.md +++ b/translations/pt-BR/content/developers/index.md @@ -1,6 +1,6 @@ --- title: Desenvolvedores -intro: 'Go deeper with {% data variables.product.prodname_dotcom %} by integrating with our APIs and webhooks, customizing your {% data variables.product.prodname_dotcom %} workflow, and building and sharing apps with the community.' +intro: 'Aprofunde-se com {% data variables.product.prodname_dotcom %}, integrando nossas APIs e webhooks, personalizando seu fluxo de trabalho de {% data variables.product.prodname_dotcom %} e criando e compartilhando aplicativos com a comunidade.' introLinks: About apps: /developers/apps/getting-started-with-apps/about-apps layout: product-landing diff --git a/translations/pt-BR/content/developers/overview/about-githubs-apis.md b/translations/pt-BR/content/developers/overview/about-githubs-apis.md index afce6dd9a4..b5392876bf 100644 --- a/translations/pt-BR/content/developers/overview/about-githubs-apis.md +++ b/translations/pt-BR/content/developers/overview/about-githubs-apis.md @@ -15,17 +15,3 @@ topics: --- Existem duas versões estáveis da API do GitHub: a [API REST](/rest) e a [API do GraphQL](/graphql). - -## Versões obsoletas - -### beta - -A API beta tornou-se obsoleta em 22 de abril de 2014. - -### v2 - -Removemos o suporte à API v2 em 12 de Junho de 2012. - -### v1 - -Removemos o suporte à API v1 em 12 de Junho de 2012. diff --git a/translations/pt-BR/content/developers/overview/github-developer-program.md b/translations/pt-BR/content/developers/overview/github-developer-program.md index 7a0710d0a7..ef29092871 100644 --- a/translations/pt-BR/content/developers/overview/github-developer-program.md +++ b/translations/pt-BR/content/developers/overview/github-developer-program.md @@ -23,9 +23,9 @@ Envie um e-mail para partnerships@githu ## Você tem uma integração que é compatível com o GitHub? Excelente! Nós adoraríamos que você fizesse parte do programa. Veja como você pode divulgar a notícia:

-* [Conte-nos sobre sua integração](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration) -* Use o logotipo do [Octocat ou GitHub](https://github.com/logos) para identificar que o seu produto é compatível com o GitHub -* Publique um vídeo ou um blog no seu site sobre sua integração +* [Conte-nos sobre sua integração](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration). +* Use o logotipo do [Octocat ou GitHub](https://github.com/logos) para identificar que o seu produto é compatível com o GitHub. +* Publique um vídeo ou um blog no seu site sobre sua integração. ## Pronto para participar do Programa de Desenvolvedor do GitHub? diff --git a/translations/pt-BR/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md b/translations/pt-BR/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md index 99b6df1b91..10cec60594 100644 --- a/translations/pt-BR/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md +++ b/translations/pt-BR/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md @@ -37,12 +37,12 @@ $ export SECRET_TOKEN=your_token ## Validar cargas do GitHub -Quando seu token secreto está definido, {% data variables.product.product_name %} o utiliza para criar uma assinatura de hash com cada carga. Esta assinatura de hash está incluída com os cabeçalhos de cada solicitação como `X-Hub-Signature-256`. +Quando seu token secreto está definido, {% data variables.product.product_name %} o utiliza para criar uma assinatura de hash com cada carga. Esta assinatura hash está incluída nos cabeçalhos de cada solicitação como `x-hub-signature-256`. {% ifversion fpt or ghes or ghec %} {% note %} -**Observação:** Para compatibilidade com versões anteriores, também incluímos o cabeçalho `X-Hub-Signature` gerado usando a função de hash SHA-1. Se possível, recomendamos que você use o cabeçalho `X-Hub-Signature-256` para melhorar a segurança. O exemplo abaixo demonstra o uso do cabeçalho `X-Hub-Signature-256`. +**Observação:** Para compatibilidade regressiva, também incluímos o cabeçalho `x-hub-signature` que é gerado usando a função hash SHA-1. Se possível, recomendamos que você use o cabeçalho `x-hub-signature-256` para melhorar a segurança. O exemplo abaixo demonstra o uso do cabeçalho `x-hub-sigre-256`. {% endnote %} {% endif %} diff --git a/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md b/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md index b75a97fdb5..b2213ca573 100644 --- a/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md +++ b/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students.md @@ -31,7 +31,7 @@ Depois que o aluno de {% data variables.product.prodname_global_campus %} for ve - Explore e reivindique ofertas para ferramentas grátis no setor a partir do [pacote de desenvolvedor para estudantes](https://education.github.com/pack). - Veja os próximos eventos presenciais e virtuais para estudantes, curados por {% data variables.product.prodname_education %} e líderes estudantes. - Veja as atividades no [GitHub Classroom](https://classroom.github.com/) com as próximas datas de vencimento. -- Mantenha-se atualizado sobre o que a comunidade está interessada ao assistir os episódios recentes de [Campus TV](https://www.twitch.tv/githubeducation). Campus TV is created by {% data variables.product.prodname_dotcom %} and student community leaders and can be watched live or on demand. +- Mantenha-se atualizado sobre o que a comunidade está interessada ao assistir os episódios recentes de [Campus TV](https://www.twitch.tv/githubeducation). A Campus TV é criada por {% data variables.product.prodname_dotcom %} e líderes da comunidade estudantil e pode ser assistida ao vivo ou sob demanda. - Descubra repositórios criados pelos alunos do GitHub Community Exchange. Para obter mais informações, consulte "[Sobre o GitHub Community Exchange](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-community-exchange)". ## Leia mais diff --git a/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md b/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md index 4a0f792429..14f323ce6c 100644 --- a/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md +++ b/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers.md @@ -12,7 +12,7 @@ versions: shortTitle: Para professores --- -As a faculty member at an accredited educational institution, you can apply for {% data variables.product.prodname_global_campus %}, which includes {% data variables.product.prodname_education %} benefits and resources. Para obter mais informações, consulte "[Candidatar-se a {% data variables.product.prodname_global_campus %} como professor](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)". +Se você é integrante do corpo docente de uma instituição de ensino credenciada, você pode solicitar benefícios de {% data variables.product.prodname_global_campus %}, que inclui benefícios e recursos de {% data variables.product.prodname_education %}. Para obter mais informações, consulte "[Candidatar-se a {% data variables.product.prodname_global_campus %} como professor](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher)". {% data variables.product.prodname_global_campus %} é um portal que permite que a Comunidade GitHub Education acesse seus benefícios educacionais, tudo em um só lugar. Depois que o professor de {% data variables.product.prodname_global_campus %} for verificado, você poderá acessar {% data variables.product.prodname_global_campus %} a qualquer momento acessando o site [{% data variables.product.prodname_education %}](https://education.github.com). @@ -24,11 +24,11 @@ Antes de solicitar um desconto individual, verifique se sua comunidade de estudo {% data variables.product.prodname_global_campus %} é um portal a partir do qual você pode acessar seus benefícios e recursos de {% data variables.product.prodname_education %}, tudo em um só lugar. No portal de {% data variables.product.prodname_global_campus %}, os professores de todos os níveis podem: {% data reusables.education.apply-for-team %} - - View an overview of your active [{% data variables.product.prodname_classroom %}](https://classroom.github.com), including recent assignments and your class's progress at a glance, as well as links to {% data variables.product.prodname_classroom %}. - - View and interact with [{% data variables.product.prodname_discussions %}](https://github.com/orgs/community/discussions/categories/github-education) posted by your peers from around the world to discuss current trends in technology education, and see the latest posts from our [{% data variables.product.prodname_education %} blog](https://github.blog/category/education/). - - See student events curated by {% data variables.product.prodname_education %} and student leaders. - - Stay in the know on what the student community is interested in by rewatching recent [Campus TV](https://www.twitch.tv/githubeducation) episodes. Campus TV is created by {% data variables.product.prodname_dotcom %} and student community leaders and can be watched live or on demand. - - Request a {% data variables.product.prodname_dotcom %} swag bag with educational materials and goodies for your students. + - Obtenha uma visão geral do seu [{% data variables.product.prodname_classroom %} ativo](https://classroom.github.com), incluindo recomendações recentes e o resumo do progresso da sua turma, bem como links para {% data variables.product.prodname_classroom %}. + - Visualize e interaja com [{% data variables.product.prodname_discussions %}](https://github.com/orgs/community/discussions/categories/github-education) postado por seus pares de todo o mundo para discutir as tendências atuais na educação tecnológica e veja as últimas postagens do nosso blogue [{% data variables.product.prodname_education %}](https://github.blog/category/education/). + - Confira eventos de estudantes curados por {% data variables.product.prodname_education %} e líderes de estudantes. + - Mantenha-se atualizado sobre o que a comunidade de alunos está interessada ao assistir aos episódios recentes da [Campus TV](https://www.twitch.tv/githubeducation). A Campus TV é criada por {% data variables.product.prodname_dotcom %} e líderes da comunidade estudantil e pode ser assistida ao vivo ou sob demanda. + - Solicite brindes de {% data variables.product.prodname_dotcom %} com materiais educativos e benefícios para seus alunos. ## Leia mais diff --git a/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md b/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md index 6386d24345..8912b36935 100644 --- a/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md +++ b/translations/pt-BR/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md @@ -9,8 +9,8 @@ redirect_from: versions: fpt: '*' children: - - /use-github-at-your-educational-institution - /github-global-campus-for-students - /github-global-campus-for-teachers + - /use-github-at-your-educational-institution --- diff --git a/translations/pt-BR/content/education/guides.md b/translations/pt-BR/content/education/guides.md index 3ccad19447..0113ff810a 100644 --- a/translations/pt-BR/content/education/guides.md +++ b/translations/pt-BR/content/education/guides.md @@ -13,15 +13,15 @@ Professores, estudantes e pesquisadores podem usar ferramentas de {% data variab - [Cadastre-se para uma nova conta de {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/signing-up-for-a-new-github-account) - [Git e início rápido de {% data variables.product.prodname_dotcom %} ](/github/getting-started-with-github/quickstart) -- [About {% data variables.product.prodname_global_campus %} for students](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students) -- [Apply to {% data variables.product.prodname_global_campus %} as a teacher](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher) -- [Apply to {% data variables.product.prodname_global_campus %} as a student](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student) +- [Sobre {% data variables.product.prodname_global_campus %} para alunos](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students) +- [Candidatar-se a {% data variables.product.prodname_global_campus %} como professor](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/apply-to-github-global-campus-as-a-teacher) +- [Candidatar-se a {% data variables.product.prodname_global_campus %} como um aluno](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student) ## Execute um curso de desenvolvimento de software com {% data variables.product.company_short %} Administrar uma sala de aula, atribuir e revisar o trabalho de seus alunos e ensinar a nova geração de desenvolvedores de software com {% data variables.product.prodname_classroom %}. -- [About {% data variables.product.prodname_global_campus %} for teachers](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers) +- [Sobre {% data variables.product.prodname_global_campus %} para professores](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers/about-github-global-campus-for-teachers) - [Fundamentos da configuração de {% data variables.product.prodname_classroom %} ](/education/manage-coursework-with-github-classroom/basics-of-setting-up-github-classroom) - [Gerenciar salas de aula](/education/manage-coursework-with-github-classroom/manage-classrooms) - [Use o Git e a atividade iniciante de {% data variables.product.company_short %}](/education/manage-coursework-with-github-classroom/use-the-git-and-github-starter-assignment) @@ -36,7 +36,7 @@ Administrar uma sala de aula, atribuir e revisar o trabalho de seus alunos e ens Incorpore {% data variables.product.prodname_dotcom %} na sua educação e use as mesmas ferramentas dos profissionais. - [Git e recursos de aprendizagem de {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/git-and-github-learning-resources) -- [{% data variables.product.prodname_global_campus %} for students](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students) +- [{% data variables.product.prodname_global_campus %} para alunos](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students) - [Experimente {% data variables.product.prodname_desktop %}](/desktop) - [Experimente {% data variables.product.prodname_cli %}](/github/getting-started-with-github/github-cli) @@ -45,6 +45,6 @@ Incorpore {% data variables.product.prodname_dotcom %} na sua educação e use a Participe da comunidade, receba treinamento de {% data variables.product.company_short %}, e aprenda ou ensine novas habilidades. - [{% data variables.product.prodname_education_community %}]({% data variables.product.prodname_education_forum_link %}) -- [About {% data variables.product.prodname_global_campus %} for students](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students) +- [Sobre {% data variables.product.prodname_global_campus %} para alunos](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/about-github-global-campus-for-students) - [Sobre Especialistas de campus](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/about-campus-experts) - [Contribua com o GitHub Community Exchange](/education/contribute-with-github-community-exchange) diff --git a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md index d7ef53fa44..ff0b5228f8 100644 --- a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md +++ b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md @@ -25,153 +25,43 @@ Para configurar um LMS para conectar-se a {% data variables.product.prodname_cla ## LMSes compatíveis -{% data variables.product.prodname_classroom %} é compatível com a importação de dados da lista de LMSes que implementam os padrões de interoperabilidade de ferramentas de aprendizagem (LTI). +{% note %} -- LTI versão 1.0 e/ou 1.1 -- Nomes de LTI e provisionamento de funções 1.X +**Observação:** {% data variables.product.prodname_classroom %} era compatível com a importação de dados da lista do LMSes que implementam ferramentas de interoperabilidade de aprendizagem (LTI) das versões 1.0 e 1.1. On June 30, 2022, the Instructional Management System (IMS) Global Learning Consortium [ended support for LTI versions 1.0 and 1.1](https://www.imsglobal.org/lti-security-announcement-and-deprecation-schedule). A fim de manter as informações confidenciais dos alunos seguras e protegidas, {% data variables.product.company_short %} desabilitou temporariamente a importação de dados da lista de participantes de LMSes em conformidade com LTI.

-Usar o LTI ajuda a manter suas informações protegidas e seguras. O LTI é um protocolo padrão do setor e o uso do LTI pelo GitHub Classroom é certificado pelo Sistema de Gerenciamento de Instruções (IMS) Global de Aprendizagem. Para obter mais informações, consulte [Ferramentas de Aprendizagem Interoperabilidade](https://www.imsglobal.org/activity/learning-tools-interoperability) e -Sobre o Consórcio de Aprendizagem Global do IMS.

+Suporte para a versão mais recente da interoperabilidade de ferramentas de aprendizagem, [LTI 1.3](https://www.imsglobal.org/activity/learning-tools-interoperability), está atualmente sendo trabalhado e será disponibilizado em {% data variables.product.prodname_classroom %} muito em breve. + +{% endnote %} + +O LTI é um protocolo padrão do setor e o uso do LTI pelo GitHub Classroom é certificado pelo Sistema de Gerenciamento de Instruções (IMS) Global de Aprendizagem. Para obter mais informações, consulte o site [Interoperabilidade das Ferramentas de Aprendizagem](https://www.imsglobal.org/activity/learning-tools-interoperability) e [Sobre Consórcio de Aprendizagem Global do IMS](http://www.imsglobal.org/aboutims.html). {% data variables.product.company_short %} testou a importação dos dados da lista dos LMSes a seguir em {% data variables.product.prodname_classroom %}. -- Canvas - Google Classroom -- Moodle -- Sakai - -Atualmente, {% data variables.product.prodname_classroom %} não é compatível com a importação de dados da lista de participantes do Blackboard ou do Brightspace. - -## Gerar credenciais de configuração para sua sala de aula +## Conectando-se ao Google Classroom {% data reusables.classroom.sign-into-github-classroom %} - - - {% data reusables.classroom.click-classroom-in-list %} - - - {% data reusables.classroom.click-students %} - -1. Se sua sala de aula já tiver uma lista, você poderá atualizar a lista ou excluir a lista e criar uma nova lista. - - Para mais informações sobre a exclusão e criação de uma lista, consulte "[Excluir uma lista para uma sala de aula](/education/manage-coursework-with-github-classroom/manage-classrooms#deleting-a-roster-for-a-classroom)" e "[Criar uma lista de participantes para sua sala de aula](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)". +1. Se sua sala de aula já tiver uma lista, você poderá atualizar a lista ou excluir a lista e criar uma nova lista. + - Para mais informações sobre a exclusão e criação de uma lista, consulte "[Excluir uma lista para uma sala de aula](/education/manage-coursework-with-github-classroom/manage-classrooms#deleting-a-roster-for-a-classroom)" e "[Criar uma lista de participantes para sua sala de aula](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)". - Para obter mais informações sobre como atualizar uma lista, consulte "[Adicionar alunos à lista para sua sala de aula](/education/manage-coursework-with-github-classroom/manage-classrooms#adding-students-to-the-roster-for-your-classroom)". -1. Na lista de LMSes, clique no seu LMS. Se o seu LMS não for compatível, clique em **Outro LMS**. ![Lista de LMSes](/assets/images/help/classroom/classroom-settings-click-lms.png) - -1. Leia sobre como conectar seu LMS e, em seguida, clique em **Conectar-se ao _LMS_**. - -1. Copie a "Chave do Consumidor", "Segredo Compartilhado" e "Iniciar URL" para a conexão com a sala de aula. ![Copie credenciais](/assets/images/help/classroom/classroom-copy-credentials.png) +1. Na lista de LMSes, clique no Google Classroom. ![Google Classroom](/assets/images/help/classroom/classroom-settings-click-google-classroom.png) +1. Efetue o login no Google e selecione a sala de aula à qual vincular. +## Conectando ao Canvas, Moodle, Sakai, e outros LMSes -## Configurar um LMS genérico - -Você deve configurar as configurações de privacidade para o seu LMS para permitir que as ferramentas externas recebam informações da lista. - -1. Acesse seu LMS. -1. Configure uma ferramenta externa. -1. Forneça as credenciais de configuração geradas em {% data variables.product.prodname_classroom %}. - - Chave do consumidor - - Segredo partilhado - - Abra a URL (às vezes denominada de "URL da ferramenta" ou similar) - - - -## Configurar o Canvas - -Você pode configurar {% data variables.product.prodname_classroom %} como um aplicativo externo para Canvas para importar dados da lista para sua sala de aula. Para obter mais informações sobre o Canvas, consulte o [site do Canvas](https://www.instructure.com/canvas/). - -1. Efetue o login no [Canvas](https://www.instructure.com/canvas/#login). -1. Selecione o curso do Canvas a ser integrado com {% data variables.product.prodname_classroom %}. -1. Na barra lateral esquerda, clique em **Configurações**. -1. Clique na aba **Aplicativos**. -1. Clique **Visualizar configurações de aplicativos**. -1. Click **+App**. -1. Selecione o menu suspenso **Tipo de Configuração** e clique em **Por URL**. -1. Cole as credenciais de configuração de {% data variables.product.prodname_classroom %}. Para obter mais informações, consulte "[Gerar credenciais de configuração para sua sala de aula](#generating-configuration-credentials-for-your-classroom)". - - - | Campo na configuração do aplicativo Canvas | Valor ou configuração | - |:----------------------------------------------------------------------------------------------- |:------------------------------------------------------------------------ | - | **Chave de cliente** | Chave do cliente de {% data variables.product.prodname_classroom %} - | **Segredo compartilhado** | Segredo compartilhado de {% data variables.product.prodname_classroom %} - | **Permitir que esta ferramenta acesse os Nomes de IMS e Serviço de Provisionamento de Funções** | Habilitado | - | **URL de configuração** | Acesse a URL a partir de {% data variables.product.prodname_classroom %} - - - {% note %} - - **Observação**: Se você vir ver uma caixa de seleção no Canvas rotulada como "Permitir que esta ferramenta acesse os Nomes do IMS e o Serviço de Provisionamento de Funções", o administrador do Canvas deverá entrar em contato com o suporte do Canvas para habilitar a configuração do serviço de associação para sua conta do Canvas. Sem habilitar este recurso, você não conseguirá sincronizar a lista do Canvas. Para obter mais informações, consulte [Como posso entrar em contato com o suporte Canvas?](https://community.canvaslms.com/t5/Canvas-Basics-Guide/How-do-I-contact-Canvas-Support/ta-p/389767) no site do Canvas. - - {% endnote %} - -1. Clique em **Enviar**. - -1. Na barra lateral esquerda, clique em **Página inicial**. -1. Para solicitar que o Canvas envie um e-mail de confirmação, na barra lateral esquerda, clique em **GitHub Classroom**. Siga as instruções no e-mail para terminar de vincular {% data variables.product.prodname_classroom %}. - - - -## Configurar Moodle - -Você pode configurar {% data variables.product.prodname_classroom %} como uma atividade do Moodle para importar dados da lista para sua sala de aula. Para obter mais informações sobre o Moodle, consulte o [site do Moodle](https://moodle.org). - -Você deve usar a versão 3.0 ou superior do Moodle. - -1. Efetue o login no [Moodle](https://moodle.org/login/). -1. Selecione o curso do Moodle a ser integrado com {% data variables.product.prodname_classroom %}. -1. Clique em **Ativar a edição**. -1. Sempre que você queira que {% data variables.product.prodname_classroom %} esteja disponível no Moodle, clique em **Adicionar uma atividade ou recurso**. -1. Escolha a **Ferramenta externa** e clique em **Adicionar**. -1. No campo "Nome da atividade" digite "Sala de aula do GitHub". -1. No campo **ferramenta pré-configurada**, à direita do menu suspenso, clique em **+**. -1. Em "Configuração da ferramenta externa", cole as credenciais de configuração de {% data variables.product.prodname_classroom %}. Para obter mais informações, consulte "[Gerar credenciais de configuração para sua sala de aula](#generating-configuration-credentials-for-your-classroom)". - - - | Campo na configuração do aplicativo Moodle | Valor ou configuração | - |:------------------------------------------ |:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | - | **Nome da ferramenta** | {% data variables.product.prodname_classroom %} - _YOUR CLASSROOM NAME_

**Observação**: Você pode usar qualquer nome, mas sugerimos esse valor para maior clareza. | - | **URL da Ferramenta** | Acesse a URL a partir de {% data variables.product.prodname_classroom %} - | **Versão do LTI** | LTI 1.0/1.1 | - | **Contêiner de inicialização padrão** | Nova janela | - | **Chave do consumidor** | Chave do cliente de {% data variables.product.prodname_classroom %} - | **Segredo partilhado** | Segredo compartilhado de {% data variables.product.prodname_classroom %} - - -1. Role para baixo e clique em **Serviços**. - -1. À direita do "Provisionamento de nomes e função de IMS LTI", selecione o menu suspenso e clique em **Usar este serviço para recuperar informações dos integrantes como configurações de privacidade**. -1. Role para baixo e clique em **Privacidade**. -1. À direita de **Compartilhar o nome do lançador com a ferramenta** e **Compartilhar o e-mail do lançador com a ferramenta**, selecione os menus suspensos para clicar em **Sempre**. -1. Na parte inferior da página, clique em **Save changes** (Salvar alterações). -1. No menu **Pré-configurar a ferramenta**, clique em **GitHub Classroom - _OUR CLASSROOM NAME_**. -1. Em "Configurações comuns do módulo" à direita de "Disponibilidade", selecione o menu suspenso e clique em **Ocultar dos alunos**. -1. Na parte inferior da página, clique em **Salvar e retornar ao curso.**. -1. Acesse qualquer lugar que você escolheu para exibir {% data variables.product.prodname_classroom %}, e clique na atividade de {% data variables.product.prodname_classroom %}. - - - -## Importar uma lista do seu LMS - -Para obter mais informações sobre a importação da lista de participantes do seu LMS para {% data variables.product.prodname_classroom %}, consulte "[Gerenciar salas de aula](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)". - +A conexão a outros LMSes está temporariamente indisponível já que as atualizações de {% data variables.product.company_short %} a Interoperabilidade das Ferramentas de Aprendizagem (LTI) estão na versão 1.3. Para obter mais informações, consulte "[LMSes compatíveis](#supported-lmses)." +Enquanto isso, você pode inserir manualmente sua lista de participantes para a sua aula. Para obter mais informações sobre a importação manual da lista de participantes do seu LMS para {% data variables.product.prodname_classroom %}, consulte "[Gerenciar salas de aula](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)". ## Desconectar seu LMS {% data reusables.classroom.sign-into-github-classroom %} - - - {% data reusables.classroom.click-classroom-in-list %} - - - {% data reusables.classroom.click-settings %} - 1. Em "Conectar a um sistema de gerenciamento de aprendizagem (LMS)", clique em **Configurações de conexão**. ![Link "Configurações de conexão" nas configurações da sala de aula](/assets/images/help/classroom/classroom-settings-click-connection-settings.png) - 1. Em "Excluir conexão com o sistema de gerenciamento de aprendizagem", clique em **Desconectar do seu sistema de gerenciamento de aprendizagem**. ![Botão "Desconectar do seu sistema de gerenciamento de aprendizagem" nas configurações de conexão da sala de aula](/assets/images/help/classroom/classroom-settings-click-disconnect-from-your-lms-button.png) diff --git a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md index 79ad8ecb22..9572fb3b59 100644 --- a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md +++ b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-a-group-assignment.md @@ -55,7 +55,7 @@ Para uma atividade em grupo, {% data variables.product.prodname_classroom %} nom ### Escolher um tipo de atividade -Em "Atividade individual ou em grupo", selecione o menu suspenso e, em seguida, clique em **Atividade em grupo**. Você não pode alterar o tipo de atividade depois de criá-la. If you'd rather create an individual assignment, see "[Create an individual assignment](/education/manage-coursework-with-github-classroom/create-an-individual-assignment)." +Em "Atividade individual ou em grupo", selecione o menu suspenso e, em seguida, clique em **Atividade em grupo**. Você não pode alterar o tipo de atividade depois de criá-la. Se você preferir criar uma atividade individual, consulte "[Criar uma atividade individual](/education/manage-coursework-with-github-classroom/create-an-individual-assignment)". ### Definir equipes para uma atividade @@ -151,6 +151,6 @@ A página de visão geral de atividades exibe informações sobre a aceitação ## Leia mais -- [{% data variables.product.prodname_global_campus %} for teachers](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers) +- [{% data variables.product.prodname_global_campus %} para professores](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers) - "[Conecte um sistema de gerenciamento de aprendizagem para {% data variables.product.prodname_classroom %}](/education/manage-coursework-with-github-classroom/connect-a-learning-management-system-to-github-classroom)" - [Usar Equipes Existentes atividades em grupo?](https://education.github.community/t/using-existing-teams-in-group-assignments/6999) na comunidade de {% data variables.product.prodname_education %} diff --git a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-individual-assignment.md b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-individual-assignment.md index 0f33cb159c..accafcf6b9 100644 --- a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-individual-assignment.md +++ b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/create-an-individual-assignment.md @@ -130,5 +130,5 @@ A página de visão geral do trabalho fornece uma visão geral das suas aceitaç ## Leia mais -- "[{% data variables.product.prodname_global_campus %} for teachers](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers)" +- "[{% data variables.product.prodname_global_campus %} fpara professores](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers)" - "[Conecte um sistema de gerenciamento de aprendizagem para {% data variables.product.prodname_classroom %}](/education/manage-coursework-with-github-classroom/connect-a-learning-management-system-to-github-classroom)" diff --git a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-the-git-and-github-starter-assignment.md b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-the-git-and-github-starter-assignment.md index 9be277ee43..3a58f024de 100644 --- a/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-the-git-and-github-starter-assignment.md +++ b/translations/pt-BR/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/use-the-git-and-github-starter-assignment.md @@ -100,5 +100,5 @@ A atividade inicial do Git & {% data variables.product.company_short %} só est ## Leia mais -- "[{% data variables.product.prodname_global_campus %} for teachers](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers)" +- "[{% data variables.product.prodname_global_campus %} fpara professores](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-teachers)" - "[Conecte um sistema de gerenciamento de aprendizagem para {% data variables.product.prodname_classroom %}](/education/manage-coursework-with-github-classroom/connect-a-learning-management-system-to-github-classroom)" diff --git a/translations/pt-BR/content/education/quickstart.md b/translations/pt-BR/content/education/quickstart.md index a84c0b11b9..461b54714f 100644 --- a/translations/pt-BR/content/education/quickstart.md +++ b/translations/pt-BR/content/education/quickstart.md @@ -15,7 +15,7 @@ Neste guia, você começará com {% data variables.product.product_name %}, insc {% tip %} -**Tip**: If you're a student and you'd like to take advantage of an academic discount, see "[Apply to {% data variables.product.prodname_global_campus %} as a student](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student)." +**Dica**: Se você é um aluno e gostaria de aproveitar um desconto acadêmico, consulte "[Inscrever-se em {% data variables.product.prodname_global_campus %} como um aluno](/education/explore-the-benefits-of-teaching-and-learning-with-github-education/github-global-campus-for-students/apply-to-github-global-campus-as-a-student)." {% endtip %} @@ -35,9 +35,9 @@ Depois de criar a sua conta pessoal, crie uma conta grátis de organização. Vo Para obter mais informações, consulte "[Tipos de contas de {% data variables.product.prodname_dotcom %}](/github/getting-started-with-github/types-of-github-accounts)". -## Applying for teacher benefits +## Candidatando-se aos benefícios para professores -Next, you'll sign up for teacher benefits and resources from {% data variables.product.company_short %} by applying to {% data variables.product.prodname_global_campus %}, a portal that allows you to access your education benefits all in one place. {% data reusables.education.educator-requirements %} +Em seguida, você irá inscrever-se para os benefícios e recursos dos professores de {% data variables.product.company_short %}, candidatando-se a {% data variables.product.prodname_global_campus %}, um portal que permite que você acesse todos os seus benefícios educativos em um só lugar. {% data reusables.education.educator-requirements %} {% tip %} @@ -53,7 +53,7 @@ Next, you'll sign up for teacher benefits and resources from {% data variables.p {% data reusables.education.plan-to-use-github %} {% data reusables.education.submit-application %} -Once you are a verified {% data variables.product.prodname_global_campus %} educator, you can access {% data variables.product.prodname_global_campus %} anytime by going to the [{% data variables.product.prodname_education %} website](https://education.github.com). +Depois que o educador de {% data variables.product.prodname_global_campus %} for verificado, você poderá acessar {% data variables.product.prodname_global_campus %} a qualquer momento acessando o site [{% data variables.product.prodname_education %}](https://education.github.com). ## Configurar {% data variables.product.prodname_classroom %} diff --git a/translations/pt-BR/content/get-started/exploring-projects-on-github/following-organizations.md b/translations/pt-BR/content/get-started/exploring-projects-on-github/following-organizations.md index cc6da2989c..2be7516721 100644 --- a/translations/pt-BR/content/get-started/exploring-projects-on-github/following-organizations.md +++ b/translations/pt-BR/content/get-started/exploring-projects-on-github/following-organizations.md @@ -7,15 +7,11 @@ topics: - Profile --- -{% note %} - -**Observação:** A capacidade de seguir organizações está atualmente em versão beta pública e sujeita a alterações. - -{% endnote %} +{% data reusables.organizations.follow-organizations-beta %} ## Sobre seguidores em {% data variables.product.product_name %} -Ao seguir as organizações, você verá as atividades públicas delas no seu painel pessoal. Para obter mais informações, consulte "[Sobre seu painel pessoal](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)". +{% data reusables.organizations.about-following-organizations %} Para obter mais informações, consulte "[Sobre o seu painel pessoal](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)." Você pode deixar de seguir uma organização se você não quiser ver sua atividade {% ifversion fpt or ghec %}pública {% endif %} em {% data variables.product.product_name %}. diff --git a/translations/pt-BR/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md b/translations/pt-BR/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md index 4d04cdaa7c..edd0827449 100644 --- a/translations/pt-BR/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md +++ b/translations/pt-BR/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md @@ -57,11 +57,21 @@ Se você tiver código-fonte ou repositórios armazenados localmente no computad 1. [Crie um repositório ](/repositories/creating-and-managing-repositories/creating-a-new-repository) no {% data variables.product.product_location %}. Para evitar erros, não inicialize o novo repositório com os arquivos *README*, de licença ou `gitignore`. É possível adicionar esses arquivos após push do projeto no {% data variables.product.product_name %}. ![Menu suspenso Create New Repository (Criar novo repositório)](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Altere o diretório de trabalho atual referente ao seu projeto local. -4. Inicialize o diretório local como um repositório Git. - ```shell - $ git init -b main - ``` +4. Use o comando `init` para inicializar o diretório local como um repositório do Git. Por padrão, o branch inicial é denominado `mestre`. + + Se você estiver usando o Git 2.28.0 ou uma versão posterior, você poderá definir o nome do branch padrão usando `-b`. + + ``` shell + $ git init -b main + ``` + + Se estiver usando o Git 2.27. ou versão anterior, você poderá definir o nome do branch padrão usando `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Adicione os arquivos ao novo repositório local. Isso faz stage deles para o primeiro commit. + ```shell $ git add . # Adiciona os arquivos no repositório local e faz stage deles para commit. {% data reusables.git.unstage-codeblock %} @@ -92,10 +102,19 @@ Se você tiver código-fonte ou repositórios armazenados localmente no computad 1. [Crie um repositório ](/articles/creating-a-new-repository) no {% data variables.product.product_location %}. Para evitar erros, não inicialize o novo repositório com os arquivos *README*, de licença ou `gitignore`. É possível adicionar esses arquivos após push do projeto no {% data variables.product.product_name %}. ![Menu suspenso Create New Repository (Criar novo repositório)](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Altere o diretório de trabalho atual referente ao seu projeto local. -4. Inicialize o diretório local como um repositório Git. - ```shell - $ git init -b main - ``` +4. Use o comando `init` para inicializar o diretório local como um repositório do Git. Por padrão, o branch inicial é denominado `mestre`. + + Se você estiver usando o Git 2.28.0 ou uma versão posterior, você poderá definir o nome do branch padrão usando `-b`. + + ``` shell + $ git init -b main + ``` + + Se estiver usando o Git 2.27. ou versão anterior, você poderá definir o nome do branch padrão usando `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Adicione os arquivos ao novo repositório local. Isso faz stage deles para o primeiro commit. ```shell $ git add . @@ -127,10 +146,19 @@ Se você tiver código-fonte ou repositórios armazenados localmente no computad 1. [Crie um repositório ](/articles/creating-a-new-repository) no {% data variables.product.product_location %}. Para evitar erros, não inicialize o novo repositório com os arquivos *README*, de licença ou `gitignore`. É possível adicionar esses arquivos após push do projeto no {% data variables.product.product_name %}. ![Menu suspenso Create New Repository (Criar novo repositório)](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Altere o diretório de trabalho atual referente ao seu projeto local. -4. Inicialize o diretório local como um repositório Git. - ```shell - $ git init -b main - ``` +4. Use o comando `init` para inicializar o diretório local como um repositório do Git. Por padrão, o branch inicial é denominado `mestre`. + + Se você estiver usando o Git 2.28.0 ou uma versão posterior, você poderá definir o nome do branch padrão usando `-b`. + + ``` shell + $ git init -b main + ``` + + Se estiver usando o Git 2.27. ou versão anterior, você poderá definir o nome do branch padrão usando `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Adicione os arquivos ao novo repositório local. Isso faz stage deles para o primeiro commit. ```shell $ git add . diff --git a/translations/pt-BR/content/get-started/quickstart/be-social.md b/translations/pt-BR/content/get-started/quickstart/be-social.md index 139c148c3d..a15b60e380 100644 --- a/translations/pt-BR/content/get-started/quickstart/be-social.md +++ b/translations/pt-BR/content/get-started/quickstart/be-social.md @@ -58,7 +58,23 @@ No painel de controle, clique no menu suspenso do seu nome de usuário no lado e ![Menu suspenso de alternância de contexto da conta](/assets/images/help/overview/dashboard-contextswitcher.png) -### Explorar outros projetos no {% data variables.product.prodname_dotcom %} +{% ifversion for-you-feed %} + +## Seguindo organizações + +{% data reusables.organizations.follow-organizations-beta %} + +{% data reusables.organizations.about-following-organizations %} + +Para seguir uma organização, no cabeçalho da página, clique em **Seguir**. + +![Captura de tela do cabeçalho da organização, com o botão seguir destacado](/assets/images/help/profile/organization-profile-following.png) + +Para obter mais informações, consulte "[Seguindo as organizações](/get-started/exploring-projects-on-github/following-organizations)". + +{% endif %} + +## Explorar outros projetos no {% data variables.product.prodname_dotcom %} Você pode encontrar projetos novos e interessantes na página de explorar de {% data variables.product.prodname_dotcom %}. Você pode favoritar projetos interessantes para torná-los fáceis de encontrar mais tarde. Visite sua página de favoritos para ver todos os seus projetos favoritos. Para obter mais informações sobre estrelas, consulte "[Repositórios salvos com estrelas](/get-started/exploring-projects-on-github/saving-repositories-with-stars)". diff --git a/translations/pt-BR/content/get-started/quickstart/fork-a-repo.md b/translations/pt-BR/content/get-started/quickstart/fork-a-repo.md index a36a962be2..026cdf3ffa 100644 --- a/translations/pt-BR/content/get-started/quickstart/fork-a-repo.md +++ b/translations/pt-BR/content/get-started/quickstart/fork-a-repo.md @@ -113,7 +113,7 @@ Agora, você tem uma bifurcação do repositório Spoon-Knife, mas você não te > Clonando para `Spoon-Knife`... > remote: Contando objetos: 10, concluído. > remote: Compactando objetos: 100% (8/8), concluído. - > remove: Total 10 (delta 1), reused 10 (delta 1) + > remote: Total 10 (delta 1), reused 10 (delta 1) > Unpacking objects: 100% (10/10), done. ``` diff --git a/translations/pt-BR/content/graphql/guides/migrating-graphql-global-node-ids.md b/translations/pt-BR/content/graphql/guides/migrating-graphql-global-node-ids.md index caf39ec420..8892c6c648 100644 --- a/translations/pt-BR/content/graphql/guides/migrating-graphql-global-node-ids.md +++ b/translations/pt-BR/content/graphql/guides/migrating-graphql-global-node-ids.md @@ -32,7 +32,7 @@ Aqui está um exemplo de solicitação que usa cURL: ``` $ curl \ - -H "Authorization: token $GITHUB_TOKEN" \ + -H "Authorization: Bearer $GITHUB_TOKEN" \ -H "X-Github-Next-Global-ID: 1" \ https://api.github.com/graphql \ -d '{ "query": "{ node(id: \"MDQ6VXNlcjM0MDczMDM=\") { id } }" }' diff --git a/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md b/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md index 1ac017a6dc..1bb5b95e63 100644 --- a/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md +++ b/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility.md @@ -19,10 +19,10 @@ allowTitleToDifferFromFilename: true {% note %} -**{% ifversion classic-project-visibility-permissions %}Notes{% else %}Note{% endif %}:** {% ifversion classic-project-visibility-permissions %} +**{% ifversion classic-project-visibility-permissions %}Observações{% else %}Observação{% endif %}:** {% ifversion classic-project-visibility-permissions %} * {% data reusables.projects.owners-can-limit-visibility-permissions %} -* {% endif %}When you make your {% data variables.projects.projects_v1_board %} {% ifversion ghae %}internal{% else %}public{% endif %}, organization members are given read access by default. Você pode dar permissões de gravação ou de administrador a certos integrantes da organização, dando acesso a equipes nas quais estão ou adicionando-os ao {% data variables.projects.projects_v1_board %} como colaborador. Para obter mais informações, consulte "[Permissões de {% data variables.product.prodname_project_v1_caps %} para uma organização](/articles/project-board-permissions-for-an-organization)". +* {% endif %}Ao se tornar o seu {% data variables.projects.projects_v1_board %} {% ifversion ghae %}interno{% else %}público{% endif %}, os integrantes da organização recebem acesso de leitura por padrão. Você pode dar permissões de gravação ou de administrador a certos integrantes da organização, dando acesso a equipes nas quais estão ou adicionando-os ao {% data variables.projects.projects_v1_board %} como colaborador. Para obter mais informações, consulte "[Permissões de {% data variables.product.prodname_project_v1_caps %} para uma organização](/articles/project-board-permissions-for-an-organization)". {% endnote %} diff --git a/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md b/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md index 1f48927a59..32441b575c 100644 --- a/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md +++ b/translations/pt-BR/content/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board.md @@ -37,7 +37,7 @@ Você também pode configurar automações de fluxo de trabalho para manter seu {% data reusables.profile.access_profile %} 2. No topa da página do seu perfil, na navegação principal, clique em {% octicon "project" aria-label="The project board icon" %} **Projects** (Projetos). ![Project tab](/assets/images/help/projects/user-projects-tab.png){% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.click-new-project %} {% data reusables.project-management.create-project-name-description %} {% data reusables.project-management.choose-template %} @@ -68,7 +68,7 @@ Você também pode configurar automações de fluxo de trabalho para manter seu {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.click-new-project %} {% data reusables.project-management.create-project-name-description %} {% data reusables.project-management.choose-template %} @@ -90,7 +90,7 @@ Você também pode configurar automações de fluxo de trabalho para manter seu {% data reusables.repositories.navigate-to-repo %} 2. Abaixo do nome do repositório, clique em {% octicon "project" aria-label="The project board icon" %} **Projects** (Projetos). ![Project tab](/assets/images/help/projects/repo-tabs-projects.png){% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.click-new-project %} {% data reusables.project-management.create-project-name-description %} {% data reusables.project-management.choose-template %} diff --git a/translations/pt-BR/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md b/translations/pt-BR/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md index ac07e43af7..9d63d9fdb9 100644 --- a/translations/pt-BR/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md +++ b/translations/pt-BR/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md @@ -70,7 +70,7 @@ Você pode encontrar o nó do projeto de uma organização se você souber o nom ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{organization(login: \"ORGANIZATION\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -94,7 +94,7 @@ Você também pode encontrar o ID do nó de todos os projetos na sua organizaç ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{organization(login: \"ORGANIZATION\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -125,7 +125,7 @@ Você pode encontrar o ID do nó do projeto se você souber o número do projeto ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{user(login: \"USER\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -149,7 +149,7 @@ Também é possível encontrar o ID do nó para todos os seus projetos. O exempl ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{user(login: \"USER\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -180,7 +180,7 @@ O exemplo a seguir retornará o ID, nome e a configuração para os primeiros 20 ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2Field { id name } ... on ProjectV2IterationField { id name configuration { iterations { startDate id }}} ... on ProjectV2SingleSelectField { id name options { id name }}}}}}}"}' ``` {% endcurl %} @@ -284,7 +284,7 @@ Se você precisa apenas do nome e ID de um campo e não precisa de informações ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2FieldCommon { id name }}}}}}"}' ``` {% endcurl %} @@ -354,7 +354,7 @@ O exemplo a seguir retornará os primeiros 20 problemas, pull requests e rascunh ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { items(first: 20) { nodes{ id fieldValues(first: 8) { nodes{ ... on ProjectV2ItemFieldTextValue { text field { ... on ProjectV2FieldCommon { name }}} ... on ProjectV2ItemFieldDateValue { date field { ... on ProjectV2FieldCommon { name } } } ... on ProjectV2ItemFieldSingleSelectValue { name field { ... on ProjectV2FieldCommon { name }}}}} content{ ... on DraftIssue { title body } ...on Issue { title assignees(first: 10) { nodes{ login }}} ...on PullRequest { title assignees(first: 10) { nodes{ login }}}}}}}}}"}' ``` {% endcurl %} @@ -446,7 +446,7 @@ O exemplo a seguir adicionará um problema ou pull request ao seu projeto. Subst ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {addProjectV2ItemById(input: {projectId: \"PROJECT_ID\" contentId: \"CONTENT_ID\"}) {item {id}}}"}' ``` {% endcurl %} @@ -488,8 +488,8 @@ O exemplo a seguir adicionará o rascunho de um problema ao seu projeto. Substit ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ - --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {item {id}}}"}' + --header 'Authorization: Bearer TOKEN' \ + --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {projectItem {id}}}"}' ``` {% endcurl %} @@ -498,7 +498,7 @@ curl --request POST \ gh api graphql -f query=' mutation { addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) { - item { + projectItem { id } } @@ -512,7 +512,7 @@ A resposta conterá a identificação do nó rascunho do problema recém-criado. { "data": { "addProjectV2ItemById": { - "item": { + "projectItem": { "id": "PVTI_lADOANN5s84ACbL0zgBbxFc" } } @@ -528,7 +528,7 @@ O exemplo a seguir irá atualizar as configurações do seu projeto. Substitua ` ```shell curl --request POST \ --url https://api.github.com/graphql \ ---header 'Authorization: token TOKEN' \ +--header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation { updateProjectV2(input: { projectId: \"PROJECT_ID\", title: \"Project title\", public: false, readme: \"# Project README\n\nA long description\", shortDescription: \"A short description\"}) { projectV2 { id, title, readme, shortDescription }}}"}' ``` {% endcurl %} @@ -565,7 +565,7 @@ O exemplo a seguir atualizará o valor de um campo de texto para um item. Substi ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { text: "Updated text" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -619,7 +619,7 @@ O exemplo a seguir atualizará o valor de um campo de seleção única para um i ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -659,7 +659,7 @@ O exemplo a seguir atualizará o valor de um campo de iteração para um item. ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -694,7 +694,7 @@ O exemplo a seguir excluirá um item de um projeto. Substitua `PROJECT_ID` pelo ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {deleteProjectV2Item(input: {projectId: \"PROJECT_ID\" itemId: \"ITEM_ID\"}) {deletedItemId}}"}' ``` {% endcurl %} diff --git a/translations/pt-BR/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md b/translations/pt-BR/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md index b80b65ad12..978c158979 100644 --- a/translations/pt-BR/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md +++ b/translations/pt-BR/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md @@ -24,7 +24,7 @@ Para transferir um problema aberto para outro repositório, é preciso ter acess {% endnote %} -Ao transferir um problema, os comentários, etiquetas e responsáveis são mantidos. Os marcos do problema não são mantidos. Esse problema permanecerá em qualquer quadro de projeto pertencente ao usuário ou à organização e será removido dos quadros de projeto de todos os repositórios. Para obter mais informações, consulte "[Sobre quadros de projeto](/articles/about-project-boards)". +Quando você transfere um problema, os comentários e responsáveis são mantidos. As etiquetas e marcos também são mantidos se estiverem presentes no repositório de destino, com etiquetas correspondentes por nome e marcos correspondentes por nome e data de vencimento. Esse problema permanecerá em qualquer quadro de projeto pertencente ao usuário ou à organização e será removido dos quadros de projeto de todos os repositórios. Para obter mais informações, consulte "[Sobre quadros de projeto](/articles/about-project-boards)". As pessoas ou equipes mencionadas no problema receberão uma notificação informando que o problema foi transferido para um novo repositório. O URL original redirecionará para o novo URL do problema. As pessoas que não tenham permissões de leitura no novo repositório verão um banner informando que o problema foi transferido para um novo repositório ao qual elas não têm acesso. diff --git a/translations/pt-BR/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md b/translations/pt-BR/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md index 88cf8656de..8a5a45ffb3 100644 --- a/translations/pt-BR/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md +++ b/translations/pt-BR/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md @@ -36,15 +36,22 @@ Você também pode configurar endereços IP permitidos para as organizações em ## Adicionar endereços IP permitidos +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## Habilitar endereços IP permitidos +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -69,6 +76,8 @@ Para mais informações sobre como criar uma lista de permissões para uma {% da ## Editar endereços IP permitidos +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -76,6 +85,18 @@ Para mais informações sobre como criar uma lista de permissões para uma {% da {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 1. Clique em **Atualizar**. +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Verificando se um endereço IP é permitido + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.organizations.security %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## Excluir endereços IP permitidos diff --git a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md index 9fe03c8946..e485551052 100644 --- a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md +++ b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/adding-an-outside-collaborator-to-a-project-board-in-your-organization.md @@ -1,6 +1,6 @@ --- -title: 'Adding an outside collaborator to a {% data variables.product.prodname_project_v1 %} in your organization' -intro: 'As an organization owner or {% data variables.projects.projects_v1_board %} admin, you can add an outside collaborator and customize their permissions to a {% data variables.projects.projects_v1_board %}.' +title: 'Adicionar um colaborador externo a um {% data variables.product.prodname_project_v1 %} na sua organização' +intro: 'Como proprietário da organização ou administrador de {% data variables.projects.projects_v1_board %}, você pode adicionar um colaborador externo e personalizar suas permissões a um {% data variables.projects.projects_v1_board %}.' redirect_from: - /articles/adding-an-outside-collaborator-to-a-project-board-in-your-organization - /github/setting-up-and-managing-organizations-and-teams/adding-an-outside-collaborator-to-a-project-board-in-your-organization @@ -18,12 +18,12 @@ allowTitleToDifferFromFilename: true {% data reusables.projects.project_boards_old %} -An outside collaborator is a person who isn't explicitly a member of your organization, but who has permissions to a {% data variables.projects.projects_v1_board %} in your organization. +Um colaborador externo é uma pessoa que não é explicitamente integrante da sua organização, mas que tem permissões para um {% data variables.projects.projects_v1_board %} na sua organização. {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.select-project %} {% data reusables.project-management.click-menu %} {% data reusables.project-management.access-collaboration-settings %} diff --git a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md index 1608506f66..ff07f33b08 100644 --- a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md +++ b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-access-to-a-project-board-for-organization-members.md @@ -31,7 +31,7 @@ Por padrão, os integrantes da organização têm acesso de gravação ao {% dat {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.select-project %} {% data reusables.project-management.click-menu %} {% data reusables.project-management.access-collaboration-settings %} @@ -40,6 +40,6 @@ Por padrão, os integrantes da organização têm acesso de gravação ao {% dat ## Leia mais -- "[Managing an individual’s access to an organization {% data variables.product.prodname_project_v1 %}](/articles/managing-an-individual-s-access-to-an-organization-project-board)" -- "[Managing team access to an organization {% data variables.product.prodname_project_v1 %}](/articles/managing-team-access-to-an-organization-project-board)" +- "[Gerenciando o acesso de um indivíduo a uma organização de {% data variables.product.prodname_project_v1 %}](/articles/managing-an-individual-s-access-to-an-organization-project-board)" +- "[Gerenciando o acesso de uma equipe a uma organização de {% data variables.product.prodname_project_v1 %}](/articles/managing-team-access-to-an-organization-project-board)" - "[Permissões de {% data variables.product.prodname_project_v1_caps %} para uma organização](/articles/project-board-permissions-for-an-organization)" diff --git a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md index d384177275..74893316ad 100644 --- a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md +++ b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-an-individuals-access-to-an-organization-project-board.md @@ -1,6 +1,6 @@ --- -title: 'Managing an individual’s access to an organization {% data variables.product.prodname_project_v1 %}' -intro: 'As an organization owner or {% data variables.projects.projects_v1_board %} admin, you can manage an individual member''s access to a {% data variables.projects.projects_v1_board %} owned by your organization.' +title: 'Gerenciando o acesso de um indivíduo a uma organização de {% data variables.product.prodname_project_v1 %}' +intro: 'Como proprietário da organização ou administrador de {% data variables.projects.projects_v1_board %}, você pode gerenciar o acesso de um integrante individual a um {% data variables.projects.projects_v1_board %} pertencente à sua organização.' redirect_from: - /articles/managing-an-individual-s-access-to-an-organization-project-board - /articles/managing-an-individuals-access-to-an-organization-project-board @@ -21,16 +21,16 @@ allowTitleToDifferFromFilename: true {% note %} -**Note:** {% data reusables.project-management.cascading-permissions %} For more information, see "[{% data variables.product.prodname_project_v1_caps %} permissions for an organization](/articles/project-board-permissions-for-an-organization)." +**Observação:** {% data reusables.project-management.cascading-permissions %} Para obter mais informações, consulte "[permissões de {% data variables.product.prodname_project_v1_caps %} para uma organização](/articles/project-board-permissions-for-an-organization)". {% endnote %} -## Giving an organization member access to a {% data variables.projects.projects_v1_board %} +## Aoncedendo acesso a um integrante da organização a um {% data variables.projects.projects_v1_board %} {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.select-project %} {% data reusables.project-management.click-menu %} {% data reusables.project-management.access-collaboration-settings %} @@ -39,26 +39,26 @@ allowTitleToDifferFromFilename: true {% data reusables.project-management.add-collaborator %} {% data reusables.project-management.collaborator-permissions %} -## Changing an organization member's access to a {% data variables.projects.projects_v1_board %} +## Alterando o acesso dos integrantes de uma organização para um {% data variables.projects.projects_v1_board %} {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.select-project %} {% data reusables.project-management.click-menu %} {% data reusables.project-management.access-collaboration-settings %} {% data reusables.project-management.collaborator-option %} {% data reusables.project-management.collaborator-permissions %} -## Removing an organization member's access to a {% data variables.projects.projects_v1_board %} +## Removendo acesso do integrante da organização a um {% data variables.projects.projects_v1_board %} -When you remove a collaborator from a {% data variables.projects.projects_v1_board %}, they may still retain access to the board based on the permissions they have for other roles. To completely remove access to a {% data variables.projects.projects_v1_board %}, you must remove access for each role the person has. For instance, a person may have access to the {% data variables.projects.projects_v1_board %} as an organization member or team member. Para obter mais informações, consulte "[Permissões de {% data variables.product.prodname_project_v1_caps %} para uma organização](/articles/project-board-permissions-for-an-organization)". +Ao remover um colaborador de um {% data variables.projects.projects_v1_board %}, ele ainda poderá manter o acesso ao quadro com base nas permissões para outras funções. Para remover completamente o acesso a um {% data variables.projects.projects_v1_board %}, você deverá remover o acesso para cada função que a pessoa possui. Por exemplo, uma pessoa pode ter acesso ao {% data variables.projects.projects_v1_board %} como integrante da organização ou integrante da equipe. Para obter mais informações, consulte "[Permissões de {% data variables.product.prodname_project_v1_caps %} para uma organização](/articles/project-board-permissions-for-an-organization)". {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.select-project %} {% data reusables.project-management.click-menu %} {% data reusables.project-management.access-collaboration-settings %} diff --git a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md index 194e2aec07..f1e0f42b45 100644 --- a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md +++ b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/managing-team-access-to-an-organization-project-board.md @@ -1,6 +1,6 @@ --- -title: 'Managing team access to an organization {% data variables.product.prodname_project_v1 %}' -intro: 'As an organization owner or {% data variables.projects.projects_v1_board %} admin, you can give a team access to a {% data variables.projects.projects_v1_board %} owned by your organization.' +title: 'Gerenciando o acesso de equipe a uma organização de {% data variables.product.prodname_project_v1 %}' +intro: 'Como proprietário de uma organização ou administrador de {% data variables.projects.projects_v1_board %}, você pode conceder acesso a uma equipe a um {% data variables.projects.projects_v1_board %} pertencente à sua organização.' redirect_from: - /articles/managing-team-access-to-an-organization-project-board - /github/setting-up-and-managing-organizations-and-teams/managing-team-access-to-an-organization-project-board @@ -21,25 +21,25 @@ allowTitleToDifferFromFilename: true {% warning %} **Avisos:** -- You can change a team's permission level if the team has direct access to a {% data variables.projects.projects_v1_board %}. If the team's access to the {% data variables.projects.projects_v1_board %} is inherited from a parent team, you must change the parent team's access to the {% data variables.projects.projects_v1_board %}. -- If you add or remove {% data variables.projects.projects_v1_board %} access for a parent team, each of that parent's child teams will also receive or lose access to the {% data variables.projects.projects_v1_board %}. Para obter mais informações, consulte "[Sobre equipes](/articles/about-teams)". +- Você pode alterar o nível de permissão de uma equipe se a equipe tiver acesso direto a um {% data variables.projects.projects_v1_board %}. Se o acesso da equipe ao {% data variables.projects.projects_v1_board %} for herdado de uma equipe principal, você deverá alterar o acesso da equipe principal a {% data variables.projects.projects_v1_board %}. +- Se você adicionar ou remover o acesso de {% data variables.projects.projects_v1_board %} a uma equipe principal, cada uma das equipes secundárias dessa principal também receberá ou perderá acesso ao {% data variables.projects.projects_v1_board %}. Para obter mais informações, consulte "[Sobre equipes](/articles/about-teams)". {% endwarning %} -## Giving a team access to a {% data variables.projects.projects_v1_board %} +## Dando acesso a uma equipe {% data variables.projects.projects_v1_board %} -You can give an entire team the same permission level to a {% data variables.projects.projects_v1_board %}. +Você pode dar a uma equipe inteira o mesmo nível de permissão para um {% data variables.projects.projects_v1_board %}. {% note %} -**Note:** {% data reusables.project-management.cascading-permissions %} For example, if an organization owner has given a team read permissions to a {% data variables.projects.projects_v1_board %}, and a {% data variables.projects.projects_v1_board %} admin gives one of the team members admin permissions to that board as an individual collaborator, that person would have admin permissions to the {% data variables.projects.projects_v1_board %}. For more information see, "[{% data variables.product.prodname_project_v1_caps %} permissions for an organization](/articles/project-board-permissions-for-an-organization)." +**Observação:** {% data reusables.project-management.cascading-permissions %} Por exemplo, se o proprietário de uma organização concedeu permissões de leitura para um {% data variables.projects.projects_v1_board %}, e um administrador de {% data variables.projects.projects_v1_board %} conceder a um dos integrantes da equipe permissões de administrador para esse quadro como colaborador individual, essa pessoa teria permissões de administrador para o {% data variables.projects.projects_v1_board %}. Para obter mais informações, consulte "[Permissões de {% data variables.product.prodname_project_v1_caps %}para uma organização](/articles/project-board-permissions-for-an-organization)". {% endnote %} {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.select-project %} {% data reusables.project-management.click-menu %} {% data reusables.project-management.access-collaboration-settings %} @@ -47,12 +47,12 @@ You can give an entire team the same permission level to a {% data variables.pro 9. Para adicionar uma equipe, clique em **Add a team: Select team** (Adicionar uma equipe: Selecionar equipe). Depois, escolha uma equipe no menu suspenso ou pesquise a equipe que você deseja adicionar. ![Menu suspenso Add a team (Adicionar uma equipe) com lista de equipes na organização](/assets/images/help/projects/add-a-team.png) 10. Ao lado do nome da equipe, use o menu suspenso para selecionar o nível de permissão desejado: **Read** (Leitura), **Write** (Gravação) ou **Admin** (Administrador). ![Menu suspenso Team permissions (Permissões de equipe) com opções read, write e admin (leitura, gravação e administrador)](/assets/images/help/projects/org-project-team-choose-permissions.png) -## Configuring a team's access to a {% data variables.projects.projects_v1_board %} +## Configurando o acesso de uma equipe a um {% data variables.projects.projects_v1_board %} -If a team's access to a {% data variables.projects.projects_v1_board %} is inherited from a parent team, you must change the parent team's access to the {% data variables.projects.projects_v1_board %} to update access to the child teams. +Se o acesso de uma equipe a um {% data variables.projects.projects_v1_board %} for herdado de uma equipe principal, você precisa alterar o acesso da equipe principal a {% data variables.projects.projects_v1_board %} para atualizar o acesso às equipes secundárias. {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.specific_team %} 4. Acima das conversas da equipe, clique em {% octicon "project" aria-label="The Projects icon" %} **Projects** (Projetos). ![Aba repositórios da equipe](/assets/images/help/organizations/team-project-board-button.png) -5. To change permissions levels, to the right of the {% data variables.projects.projects_v1_board %} you want to update, use the drop-down. To remove a {% data variables.projects.projects_v1_board %}, click **{% octicon "trash" aria-label="The trash icon" %}**. ![Botão Trash (Lixeira) Remove a project board from your team (Remover um quadro de projeto de sua equipe)](/assets/images/help/organizations/trash-button.png) +5. Para alterar níveis de permissões, à direita de {% data variables.projects.projects_v1_board %} que você deseja atualizar, use o menu suspenso. Para remover um {% data variables.projects.projects_v1_board %}, clique em **{% octicon "trash" aria-label="The trash icon" %}**. ![Botão Trash (Lixeira) Remove a project board from your team (Remover um quadro de projeto de sua equipe)](/assets/images/help/organizations/trash-button.png) diff --git a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md index c5c9c2c542..28d0f764cf 100644 --- a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md +++ b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/project-board-permissions-for-an-organization.md @@ -1,6 +1,6 @@ --- title: 'Permissões de {% data variables.product.prodname_project_v1_caps %} de para uma organização' -intro: 'Organization owners and people with {% data variables.projects.projects_v1_board %} admin permissions can customize who has read, write, and admin permissions to your organization’s {% data variables.projects.projects_v1_boards %}.' +intro: 'Os proprietários da organização e pessoas com permissões de administrador para {% data variables.projects.projects_v1_board %} podem personalizar quem leu, escreveu e as permissões de administrador para o {% data variables.projects.projects_v1_boards %} da sua organização.' redirect_from: - /articles/project-board-permissions-for-an-organization - /github/setting-up-and-managing-organizations-and-teams/project-board-permissions-for-an-organization @@ -20,32 +20,32 @@ allowTitleToDifferFromFilename: true ## Visão geral das permissões -There are three levels of permissions to a {% data variables.projects.projects_v1_board %} for people and teams: +Existem três níveis de permissões para um {% data variables.projects.projects_v1_board %} para pessoas e equipes: {% data reusables.project-management.project-board-permissions %} -Organization owners and people with admin permissions can give a person access to an organization {% data variables.projects.projects_v1_board %} individually, as an outside collaborator or organization member, or through their membership in a team or organization. Um colaborador externo é uma pessoa que não é integrante da organização mas recebeu permissões para colaborar na organização. +Os proprietários da organização e pessoas com permissões de administrador podem dar acesso a uma organização de {% data variables.projects.projects_v1_board %} individualmente, como colaborador ou integrante da organização externo, ou por meio de sua associação a uma equipe ou organização. Um colaborador externo é uma pessoa que não é integrante da organização mas recebeu permissões para colaborar na organização. -Organization owners and people with admin permissions to a {% data variables.projects.projects_v1_board %} can also: +Os proprietários da organização e as pessoas com permissões de administradores em um {% data variables.projects.projects_v1_board %} também podem: - Definir permissões de quadro de projeto padrão para todos os integrantes da organização. -- Gerenciar o acesso de integrantes, equipes e colaboradores externos da organização ao quadro de projeto. For more information, see "[Managing team access to an organization {% data variables.product.prodname_project_v1 %}](/articles/managing-team-access-to-an-organization-project-board)", "[Managing an individual’s access to an organization {% data variables.product.prodname_project_v1 %}](/articles/managing-an-individual-s-access-to-an-organization-project-board)", or "[Managing access to a {% data variables.product.prodname_project_v1 %} for organization members](/articles/managing-access-to-a-project-board-for-organization-members)." -- Gerenciar a visibilidade do quadro de projeto. For more information, see "[Managing access to a {% data variables.product.prodname_project_v1 %} for organization members](/articles/managing-access-to-a-project-board-for-organization-members)." +- Gerenciar o acesso de integrantes, equipes e colaboradores externos da organização ao quadro de projeto. Para obter mais informações, consulte "[Gerenciando o acesso da equipe a uma organização {% data variables.product.prodname_project_v1 %}](/articles/managing-team-access-to-an-organization-project-board)", "[Gerenciando o acesso de um indivíduo a uma organização {% data variables.product.prodname_project_v1 %}](/articles/managing-an-individual-s-access-to-an-organization-project-board)", ou "[Gerenciando o acesso a um {% data variables.product.prodname_project_v1 %} para os integrantes da organização](/articles/managing-access-to-a-project-board-for-organization-members)." +- Gerenciar a visibilidade do quadro de projeto. Para obter mais informações, consulte "[Gerenciando o acesso a um {% data variables.product.prodname_project_v1 %} para os integrantes da organização](/articles/managing-access-to-a-project-board-for-organization-members)". -## Cascading permissions for {% data variables.projects.projects_v1_boards %} +## Permissões em cascata para {% data variables.projects.projects_v1_boards %} {% data reusables.project-management.cascading-permissions %} -For example, if an organization owner has given all organization members read permissions to a {% data variables.projects.projects_v1_board %}, and a {% data variables.projects.projects_v1_board %} admin gives an organization member write permissions to that board as an individual collaborator, that person would have write permissions to the {% data variables.projects.projects_v1_board %}. +Por exemplo, se um proprietário da organização deu permissões de leitura a todos os integrantes da organização para um {% data variables.projects.projects_v1_board %}, e um administrador do {% data variables.projects.projects_v1_board %} conece a um integrante da organização permissões de gravação para esse quadro como colaborador individual, essa pessoa teria permissões de gravação no {% data variables.projects.projects_v1_board %}. -## {% data variables.projects.projects_v1_board_caps %} visibility +## visibilidade de {% data variables.projects.projects_v1_board_caps %} {% ifversion classic-project-visibility-permissions %}{% data reusables.projects.owners-can-limit-visibility-permissions %}{% endif %} -{% data reusables.project-management.project-board-visibility %} You can change the {% data variables.projects.projects_v1_board %}'s visibility from private to {% ifversion ghae %}internal{% else %}public{% endif %} and back again. For more information, see "[Changing {% data variables.product.prodname_project_v1 %} visibility](/articles/changing-project-board-visibility)." +{% data reusables.project-management.project-board-visibility %} Você pode alterar a visibilidade de {% data variables.projects.projects_v1_board %} de privada para {% ifversion ghae %}interna{% else %}{% endif %} e novamente para privada. Para obter mais informações, consulte "[Alterando a visibilidade de {% data variables.product.prodname_project_v1 %}](/articles/changing-project-board-visibility)". ## Leia mais -- "[Changing {% data variables.product.prodname_project_v1 %} visibility](/articles/changing-project-board-visibility)" -- "[Managing an individual’s access to an organization {% data variables.product.prodname_project_v1 %}](/articles/managing-an-individual-s-access-to-an-organization-project-board)" -- "[Managing team access to an organization {% data variables.product.prodname_project_v1 %}](/articles/managing-team-access-to-an-organization-project-board)" -- "[Managing access to a {% data variables.product.prodname_project_v1 %} for organization members](/articles/managing-access-to-a-project-board-for-organization-members)" +- "[Alterando a visibilidade de {% data variables.product.prodname_project_v1 %}](/articles/changing-project-board-visibility)" +- "[Gerenciando o acesso de um indivíduo a uma organização de {% data variables.product.prodname_project_v1 %}](/articles/managing-an-individual-s-access-to-an-organization-project-board)" +- "[Gerenciando o acesso de uma equipe a uma organização de {% data variables.product.prodname_project_v1 %}](/articles/managing-team-access-to-an-organization-project-board)" +- "[Gerenciando o acesso a um {% data variables.product.prodname_project_v1 %} para os integrantes da organização](/articles/managing-access-to-a-project-board-for-organization-members)". diff --git a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md index 0da2326542..6be4322435 100644 --- a/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md +++ b/translations/pt-BR/content/organizations/managing-access-to-your-organizations-project-boards/removing-an-outside-collaborator-from-an-organization-project-board.md @@ -1,6 +1,6 @@ --- -title: 'Removing an outside collaborator from an organization {% data variables.product.prodname_project_v1 %}' -intro: 'As an organization owner or {% data variables.projects.projects_v1_board %} admin, you can remove an outside collaborator''s access to a {% data variables.projects.projects_v1_board %}.' +title: 'Removendo um colaborador externo de uma organização de {% data variables.product.prodname_project_v1 %}' +intro: 'Como proprietário da organização ou administrador de {% data variables.projects.projects_v1_board %}, você pode remover o acesso de um colaborador externo a um {% data variables.projects.projects_v1_board %}.' redirect_from: - /articles/removing-an-outside-collaborator-from-an-organization-project-board - /github/setting-up-and-managing-organizations-and-teams/removing-an-outside-collaborator-from-an-organization-project-board @@ -21,7 +21,7 @@ allowTitleToDifferFromFilename: true {% data reusables.profile.access_org %} {% data reusables.user-settings.access_org %} {% data reusables.organizations.organization-wide-project %}{% ifversion projects-v2 %} -1. Click **Projects (classic)**{% endif %} +1. Clique em **Projetos (clássico)**{% endif %} {% data reusables.project-management.select-project %} {% data reusables.project-management.click-menu %} {% data reusables.project-management.access-collaboration-settings %} diff --git a/translations/pt-BR/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md b/translations/pt-BR/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md index 69bcc7db8f..c3fc79da7d 100644 --- a/translations/pt-BR/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md +++ b/translations/pt-BR/content/organizations/managing-organization-settings/allowing-project-visibility-changes-in-your-organization.md @@ -1,30 +1,30 @@ --- title: Permitindo alterações de visibilidade de projeto na sua organização -intro: 'Organization owners can allow members with admin permissions to adjust the visibility of {% data variables.projects.projects_v2_and_v1 %} in their organization.' +intro: 'Os proprietários da organização podem permitir que os integrantes com permissões de administrador ajustem a visibilidade de {% data variables.projects.projects_v2_and_v1 %} na sua organização.' versions: feature: classic-project-visibility-permissions-or-projects-v2 topics: - Organizations - Projects -shortTitle: Project visibility permissions +shortTitle: Permissões de visibilidade do projeto allowTitleToDifferFromFilename: true permissions: 'Organization owners can allow {% data variables.projects.project_v2_and_v1 %} visibility changes for an organization.' --- -You can restrict who has the ability to change the visibility of {% data variables.projects.projects_v2_and_v1 %} in your organization, such as restricting members from changing {% data variables.projects.projects_v2_and_v1 %} from private to public. +Você pode restringir quem tem a capacidade de alterar a visibilidade de {% data variables.projects.projects_v2_and_v1 %} na sua organização e impedir que os integrantes alterem {% data variables.projects.projects_v2_and_v1 %} de privado para público. -You can limit the ability to change {% data variables.projects.project_v2_and_v1 %} visibility to just organization owners, or you can allow anyone granted admin permissions to change the visibility. +Você pode limitar a capacidade de alterar a visibilidade de {% data variables.projects.project_v2_and_v1 %} para apenas os proprietários da organização ou você pode permitir que qualquer pessoa conceda permissões de administrador altere a visibilidade. {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -1. In the "Code, planning, and automation" section of the sidebar, click **{% octicon "table" aria-label="The table icon" %} Projects**. -1. To allow members to adjust project visibility, select **Allow members to change project visibilities for this organization**. ![Screenshot showing checkbox to set visibility changes](/assets/images/help/projects-v2/visibility-change-checkbox.png) +1. Na seção "código, planejamento e automação" na barra lateral, clique em **Projetos de {% octicon "table" aria-label="The table icon" %}**. +1. Para permitir que os integrantes ajustem a visibilidade do projeto, selecione **Permitir que os integrantes alterem a visibilidade do projeto para esta organização**. ![Captura de tela que mostra a caixa de seleção para definir alterações de visibilidade](/assets/images/help/projects-v2/visibility-change-checkbox.png) 1. Clique em **Salvar**. ## Leia mais {% ifversion projects-v2 %} -- "[Managing visibility of your {% data variables.projects.projects_v2 %}](/issues/planning-and-tracking-with-projects/managing-your-project/managing-visibility-of-your-projects)" +- "[Gerenciando a visibilidade do seu {% data variables.projects.projects_v2 %}](/issues/planning-and-tracking-with-projects/managing-your-project/managing-visibility-of-your-projects)" {%- endif %}{%- ifversion projects-v1 %} -- "[Changing {% data variables.product.prodname_project_v1 %} visibility](/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility)" +- "[Alterando a visibilidade de {% data variables.product.prodname_project_v1 %}](/issues/organizing-your-work-with-project-boards/managing-project-boards/changing-project-board-visibility)" {% endif %} diff --git a/translations/pt-BR/content/organizations/managing-organization-settings/disabling-insights-for-projects-in-your-organization.md b/translations/pt-BR/content/organizations/managing-organization-settings/disabling-insights-for-projects-in-your-organization.md index c3bb9cce0c..d448487bc0 100644 --- a/translations/pt-BR/content/organizations/managing-organization-settings/disabling-insights-for-projects-in-your-organization.md +++ b/translations/pt-BR/content/organizations/managing-organization-settings/disabling-insights-for-projects-in-your-organization.md @@ -1,25 +1,25 @@ --- -title: 'Disabling insights for {% data variables.projects.projects_v2 %} in your organization' -intro: 'Organization owners can turn off insights for {% data variables.product.prodname_projects_v2 %} in their organization.' +title: 'Desabilitando insights para {% data variables.projects.projects_v2 %} na sua organização' +intro: 'Os proprietários da organização podem desativar informações sobre {% data variables.product.prodname_projects_v2 %} na sua organização.' versions: feature: projects-v2 product: '{% data reusables.gated-features.historical-insights-for-projects %}' topics: - Projects -shortTitle: 'Disable {% data variables.product.prodname_projects_v2 %} insights' +shortTitle: 'Desabilitar insights de {% data variables.product.prodname_projects_v2 %}' allowTitleToDifferFromFilename: true --- -After you disable insights for projects in your organization, it won't be possible to access insights for any projects owned by the organization. +Depois que você desabilitar insights para projetos na sua organização, não será possível acessar os insights para projetos pertencentes à organização. {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} -1. In the sidebar, click **{% octicon "sliders" aria-label="The sliders icon" %} Features**. ![Screenshot showing features menu item](/assets/images/help/projects-v2/features-org-menu.png) -1. Under "Insights", deselect **Enable Insights for the organization**. ![Screenshot showing Enable Insights for the organization checkbox](/assets/images/help/projects-v2/disable-insights-checkbox.png) +1. Na barra lateral, clique em **Funcionalidades de {% octicon "sliders" aria-label="The sliders icon" %}**. ![Captura de tela que mostra o item de menu das funcionalidades](/assets/images/help/projects-v2/features-org-menu.png) +1. Em "Insights", desmarque **HabilitarInsights para a organização**. ![Captura de tela que mostra Habilitar Insights para a caixa de seleção da organização](/assets/images/help/projects-v2/disable-insights-checkbox.png) 1. Clique em **Salvar**. ![Captura de tela que mostra o botão salvar](/assets/images/help/projects-v2/disable-insights-save.png) ## Leia mais - "[Sobre o {% data variables.product.prodname_projects_v2 %}](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)" -- "[About insights for {% data variables.projects.projects_v2 %}](/issues/planning-and-tracking-with-projects/viewing-insights-from-your-project/about-insights-for-projects)" +- "[Sobre insights para {% data variables.projects.projects_v2 %}](/issues/planning-and-tracking-with-projects/viewing-insights-from-your-project/about-insights-for-projects)" diff --git a/translations/pt-BR/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md b/translations/pt-BR/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md index 0daad087c7..72a673238b 100644 --- a/translations/pt-BR/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md +++ b/translations/pt-BR/content/organizations/managing-organization-settings/disabling-project-boards-in-your-organization.md @@ -1,6 +1,6 @@ --- -title: 'Disabling {% ifversion projects-v2 %}projects{% else %}project boards{% endif %} in your organization' -intro: 'Organization owners can turn off {% ifversion projects-v2 %}organization-wide {% data variables.projects.projects_v2 %}, organization-wide {% data variables.projects.projects_v1_boards %}, and repository-level {% data variables.projects.projects_v1_boards %}{% else %}organization-wide project boards and repository project boards{% endif %} in an organization.' +title: 'Desabilitando {% ifversion projects-v2 %}projetos{% else %}quadros de projetos{% endif %} na sua organização' +intro: 'Os proprietários da organização podem desativar {% ifversion projects-v2 %}em toda a organização {% data variables.projects.projects_v2 %}, em toda a organização {% data variables.projects.projects_v1_boards %}, e o nível de repositório {% data variables.projects.projects_v1_boards %}{% else %}quadros de projetos e quadros de projetos de repositórios em toda a organização{% endif %} em uma organização.' redirect_from: - /github/managing-your-work-on-github/managing-project-boards/disabling-project-boards-in-your-organization - /articles/disabling-project-boards-in-your-organization @@ -12,11 +12,11 @@ versions: ghec: '*' topics: - Pull requests -shortTitle: Disable projects +shortTitle: Desabilitar projetos allowTitleToDifferFromFilename: true --- -Após a desabilitação dos quadros de projeto em toda a organização, não é mais possível criar quadros de projeto no nível da organização nem acessar os quadros de projeto no nível de organização já existentes pelas URLs anteriores. Os quadros de projeto em repositórios não são afetados. {% ifversion projects-v2 %}These settings apply to {% data variables.projects.projects_v2 %} and {% data variables.projects.projects_v1_boards %}.{% endif %} +Após a desabilitação dos quadros de projeto em toda a organização, não é mais possível criar quadros de projeto no nível da organização nem acessar os quadros de projeto no nível de organização já existentes pelas URLs anteriores. Os quadros de projeto em repositórios não são afetados. {% ifversion projects-v2 %}Estas configurações aplicam-se a {% data variables.projects.projects_v2 %} e {% data variables.projects.projects_v1_boards %}.{% endif %} Após a desabilitação dos quadros de projeto de repositório em uma organização, não é mais possível criar quadros de projeto em repositórios da organização nem acessar os quadros de projeto já existentes em repositórios da organização pelas URLs anteriores. Os quadros de projeto no nível da organização não são afetados. @@ -38,8 +38,8 @@ Quando você desabilita quadros de projeto, deixa de ver informações relaciona ## Leia mais -{% ifversion projects-v2 %}- "[About {% data variables.product.prodname_projects_v2 %}](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)"{% endif %} +{% ifversion projects-v2 %}- "[Sobre {% data variables.product.prodname_projects_v2 %}](/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)"{% endif %} - "[Sobre o {% data variables.product.prodname_projects_v1 %}](/articles/about-project-boards)" -- "[Closing a {% data variables.projects.projects_v1_board %}](/articles/closing-a-project-board)" -- "[Deleting a {% data variables.projects.projects_v1_board %}](/articles/deleting-a-project-board)" -- "[Disabling {% data variables.projects.projects_v1_boards %} in a repository](/articles/disabling-project-boards-in-a-repository)" +- "[Fechando um {% data variables.projects.projects_v1_board %}](/articles/closing-a-project-board)" +- "[Excluindo um {% data variables.projects.projects_v1_board %}](/articles/deleting-a-project-board)" +- "[Desabilitando {% data variables.projects.projects_v1_boards %} em um repositório](/articles/disabling-project-boards-in-a-repository)" diff --git a/translations/pt-BR/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md b/translations/pt-BR/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md index c06c37a2a8..b4333ec865 100644 --- a/translations/pt-BR/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md +++ b/translations/pt-BR/content/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization.md @@ -1,25 +1,25 @@ --- title: Gerenciando a política de aprovação do commit para sua organização -intro: 'You can require users to automatically sign off all commits they make in {% data variables.product.product_name %}''s web interface to repositories owned by your organization.' +intro: 'Você pode exigir que os usuários assinem automaticamente todos os commits que criarem na interface web do {% data variables.product.product_name %} em repositórios pertencentes à sua organização.' versions: feature: commit-signoffs permissions: Organization owners can require all commits to repositories owned by the organization be signed off by the commit author. topics: - Organizations -shortTitle: Manage the commit signoff policy +shortTitle: Gerenciar a política de aprovação de commit --- -## About commit signoffs +## Sobre as autorizações de commit -To affirm that a commit complies with the rules and licensing governing a repository, many organizations require developers to sign off on every commit. If your organization requires commit signoffs, you can make signing off a seamless part of the commit process by enabling compulsory commit signoffs for users committing through {% data variables.product.product_name %}'s web interface. After you enable compulsory commit signoffs for an organization, every commit made to repositories in that organization through {% data variables.product.product_name %}'s web interface will automatically be signed off on by the commit author. +Para afirmar que um commit está de acordo com as regras e licenciamento de um repositório, muitas organizações exigem que os desenvolvedores assinem em todos os commits. Se sua organização requer assinaturas do commit, você pode tornar a assinatura de uma parte ininterrupta do processo de commit, permitindo a aprovação obrigatória de commits para os usuários que fizerem commit da interface web de {% data variables.product.product_name %}. Após habilitar as assinaturas de commit obrigatórias para uma organização, cada commit criado nos repositórios dessa organização por meio da interface web de {% data variables.product.product_name %} será automaticamente assinado pelo autor do commit. -People with admin access to a repository can also enable compulsory commit signoffs at the repository level. For more information, see "[Managing the commit signoff policy for your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository)." +Pessoas com acesso de administrador a um repositório também podem habilitar assinaturas de commit obrigatórias no nível de repositório. Para obter mais informações, consulte "[Gerenciando a política de assinatura de commit para o seu repositório](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository)". {% data reusables.repositories.commit-signoffs %} -## Managing compulsory commit signoffs for your organization +## Gerenciando as assinaturas de commit obrigatórias para sua organização {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.repository-defaults %} -1. Select or deselect **Require contributors to sign off on web-based commits**. ![Screenshot of Require contributors to sign off on web-based commits](/assets/images/help/organizations/require-signoffs.png) +1. Selecione ou desmarque **Exigir que os colaboradores assinem em commits baseados na web**. ![Captura de tela dos contribuidores obrigatórios para assinar commits baseados na web](/assets/images/help/organizations/require-signoffs.png) diff --git a/translations/pt-BR/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md b/translations/pt-BR/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md index f12f0f2894..00c39b7439 100644 --- a/translations/pt-BR/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md +++ b/translations/pt-BR/content/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization.md @@ -92,10 +92,10 @@ Você só pode escolher uma permissão adicional se já não estiver incluída n - **Definir limites de interação**: Restrinja temporariamente certos usuários de comentários, problemas de abertura ou criação de pull requests no seu repositório público para aplicar um período de atividade limitada. Para obter mais informações, consulte "[Restringir interações no seu repositório](/communities/moderating-comments-and-conversations/limiting-interactions-in-your-repository)". {%- endif %} - **Defina a visualização social**: Adicione uma imagem de identificação ao repositório que aparece nas plataformas de mídia social quando seu repositório é vinculado. Para obter mais informações, consulte "[Personalizar a exibição das redes sociais do repositório](/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/customizing-your-repositorys-social-media-preview)". -- **Faça push commits para branches protegidos**: Faça push para um branch que é marcado como um branch protegido. Branch protection rules will still apply and could result in a push being rejected. +- **Faça push commits para branches protegidos**: Faça push para um branch que é marcado como um branch protegido. As regras de protecção dos branches continuarão sendo aplicadas e poderão resultar na rejeição de um "push". - **Crie etiquetas protegidas**: Crie etiquetas que correspondam a uma regra de proteção de tags. Para obter mais informações, consulte "[Configurando regras de proteção de tagsde](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules)". -- **Excluir tags protegidas**: Excluir tags que correspondam a uma regra de proteção de tags. For more information, see "[Configuring tag protection rules](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules)."{% ifversion bypass-branch-protections %} -- **Bypass branch protections**: Push to a protected branch without needing to comply with branch protection rules.{% endif %} +- **Excluir tags protegidas**: Excluir tags que correspondam a uma regra de proteção de tags. Para obter mais informações, consulte "[Configurando regras de proteção de tags](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules)".{% ifversion bypass-branch-protections %} +- **Proteções de branch de bypass**: Enviar por push para um ramo protegido sem ter de cumprir as regras de proteção de branch.{% endif %} ### Segurança diff --git a/translations/pt-BR/content/packages/index.md b/translations/pt-BR/content/packages/index.md index d18a8e456e..44f13ee989 100644 --- a/translations/pt-BR/content/packages/index.md +++ b/translations/pt-BR/content/packages/index.md @@ -18,6 +18,7 @@ featuredLinks: guideCards: - '{% ifversion docker-ghcr-enterprise-migration %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' - '{% ifversion fpt or ghec or ghes > 3.4 %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' + - '{% ifversion packages-npm-v2 %}/packages/working-with-a-github-packages-registry/working-with-the-npm-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry changelog: label: packages diff --git a/translations/pt-BR/content/packages/learn-github-packages/about-permissions-for-github-packages.md b/translations/pt-BR/content/packages/learn-github-packages/about-permissions-for-github-packages.md index dfdb7479e2..f999a3d477 100644 --- a/translations/pt-BR/content/packages/learn-github-packages/about-permissions-for-github-packages.md +++ b/translations/pt-BR/content/packages/learn-github-packages/about-permissions-for-github-packages.md @@ -18,20 +18,22 @@ As permissões para pacotes são do escopo do repositório ou do escopo de usuá Um pacote com escopo de repositório herda as permissões e visibilidade do repositório que possui o pacote. Você pode encontrar um escopo de pacote para um repositório, acessando a página principal do repositório e clicando no link **Pacotes** à direita da página. {% ifversion fpt or ghec %}Para obter mais informações, consulte "[Conectar um repositório a um pacote](/packages/learn-github-packages/connecting-a-repository-to-a-package)."{% endif %} -Os {% data variables.product.prodname_registry %} registros abaixo usam permissões com escopo do repositório: +Os registros de {% data variables.product.prodname_registry %} abaixo de **apenas** usam permissões com escopo do repositório: {% ifversion not fpt or ghec %}- Docker registry (`docker.pkg.github.com`){% endif %} - - Registro de npm + {% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - Registro do Rubygems - Registro do Apache Maven - Registro do NuGet +{% ifversion packages-npm-v2 %}Para {% data variables.product.prodname_ghcr_and_npm_registry %}, você pode optar por permitir que os pacotes tenham o escopo definido para um usuário, uma organização ou vinculados a um repositório.{% endif %} + {% ifversion fpt or ghec %} ## Permissões granulares para pacotes com escopo de usuário/organização Pacotes com permissões granulares são escopos para uma conta de usuário pessoal ou de organização. Você pode alterar o controle de acesso e a visibilidade do pacote separadamente de um repositório que está conectado (ou vinculado) a um pacote. -Atualmente, apenas o {% data variables.product.prodname_container_registry %} oferece permissões granulares para os seus pacotes de imagem de contêiner. +Atualmente, o {% data variables.product.prodname_ghcr_and_npm_registry %} oferece permissões granulares para seus pacotes de imagens de contêiner. ## Visibilidade e permissões de acesso para imagens de contêiner diff --git a/translations/pt-BR/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md b/translations/pt-BR/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md index 0050aa82d7..b8da0d51e5 100644 --- a/translations/pt-BR/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md +++ b/translations/pt-BR/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md @@ -16,7 +16,7 @@ shortTitle: Controle de acesso & visibilidade Pacotes com permissões granulares são escopos para uma conta de usuário pessoal ou de organização. Você pode alterar o controle de acesso e a visibilidade de um pacote separadamente do repositório ao qual ele está conectado (ou vinculado). -Atualmente, você só pode usar permissões granulares com o {% data variables.product.prodname_container_registry %}. Granular permissions are not supported in our other package registries, such as the npm registry.{% ifversion docker-ghcr-enterprise-migration %} For more information about migration to the {% data variables.product.prodname_container_registry %}, 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 %} +Atualmente, você só pode usar permissões granulares com o {% data variables.product.prodname_ghcr_and_npm_registry %}. As oermissões granulares não são compatíveis com os nossos registros de pacotes, como o registro do RubyGems.{% ifversion docker-ghcr-enterprise-migration %} Para mais informações sobre a migração para o {% data variables.product.prodname_container_registry %}, consulte "[Migrando para o {% data variables.product.prodname_container_registry %} do registro Docker](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry).{% endif %} Para obter mais informações sobre permissões para pacotes com escopo de repositório, escopos relacionados aos pacotes para PATs, ou gerenciar permissões para seus fluxos de trabalho de ações, consulte "[Sobre permissões para os Pacotes GitHub](/packages/learn-github-packages/about-permissions-for-github-packages)". @@ -95,7 +95,7 @@ Para personalizar ainda mais o acesso à sua imagem de contêiner, consulte "[Co {% ifversion fpt or ghec %} ## Assegurando acesso de {% data variables.product.prodname_codespaces %} ao seu pacote -Por padrão, um codespace pode acessar perfeitamente certos pacotes no Registro Contêiner de{% data variables.product.prodname_dotcom %} como, por exemplo, aqueles publicados no mesmo repositório com a opção **herdar acesso** selecionada. Para obter mais informações sobre o qual o acesso é automaticamente configurado, consulte "[Acessando imagens armazenadas no registro de contêiner de {% data variables.product.prodname_dotcom %}](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-github-container-registry)". +Por padrão, um codespac pode acessar perfeitamente certos pacotes em {% data variables.product.prodname_ghcr_and_npm_registry %}, como aqueles publicados no mesmo repositório com a opção **Herdar acesso** selecionada. Para obter mais informações sobre as quais o acesso é configurado automaticamente, consulte "[Permitindo que o seu codespace acesse um registro de imagens privadas](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-container-registry-and-npm-registry)". Caso contrário, para garantir que um código tenha acesso ao seu pacote, você deverá conceder acesso ao repositório onde o codespace está sendo iniciado. diff --git a/translations/pt-BR/content/packages/learn-github-packages/deleting-and-restoring-a-package.md b/translations/pt-BR/content/packages/learn-github-packages/deleting-and-restoring-a-package.md index 80123fc3a0..02ae35eeec 100644 --- a/translations/pt-BR/content/packages/learn-github-packages/deleting-and-restoring-a-package.md +++ b/translations/pt-BR/content/packages/learn-github-packages/deleting-and-restoring-a-package.md @@ -23,12 +23,12 @@ Em {% data variables.product.prodname_dotcom %} se você tiver o acesso necessá - um pacote privado inteiro - um pacote público inteiro, se não houver mais de 5000 downloads de qualquer versão do pacote - uma versão específica de um pacote privado -- uma versão específica de um pacote público, se a versão do pacote não tiver mais de 5000 downloads +- uma versão específica de um pacote público, se a versão do pacote não tiver mais de 5,000 downloads {% note %} **Observação:** -- Você não pode excluir um pacote público se uma versão do pacote tiver mais de 5000 downloads. Neste caso, entre em contato com o [suporte do GitHub](https://support.github.com/contact?tags=docs-packages) para obter mais assistência. +- Você não pode excluir um pacote público se uma versão do pacote tiver mais de 5,000 downloads. Neste caso, entre em contato com o [suporte do GitHub](https://support.github.com/contact?tags=docs-packages) para obter mais assistência. - Ao excluir pacotes públicos, esteja ciente de que você pode quebrar projetos que dependem do seu pacote. {% endnote %} @@ -46,7 +46,7 @@ Você pode usar a API REST para gerenciar seus pacotes. Para obter mais informa {% endif %} -Para pacotes que herdam suas permissões e acesso dos repositórios, você pode usar o GraphQL para excluir uma versão específica de pacotes.{% ifversion fpt or ghec %} A API do GraphQL de {% data variables.product.prodname_registry %} não é compatível com contêineres ou imagens Docker que usam o namespace `https://ghcr. o/OWNER/PACKAGE-NAME`.{% endif %} Para obter mais informações sobre o suporte do GraphQL, consulte "[Excluindo uma versão de um pacote com escopo de repositório com o GraphQL](#deleting-a-version-of-a-repository-scoped-package-with-graphql)". +Para pacotes que herdam suas permissões e acesso dos repositórios, você pode usar o GraphQL para excluir uma versão específica de pacotes.{% data reusables.package_registry.no-graphql-to-delete-packages %} Para obter mais informações sobre o suporte do GraphQL, consulte "[Excluindo uma versão de um pacote com escopo de repositório com GraphQL](#deleting-a-version-of-a-repository-scoped-package-with-graphql)". {% endif %} @@ -54,17 +54,19 @@ Para pacotes que herdam suas permissões e acesso dos repositórios, você pode Para pacotes que herdam as permissões de acesso dos repositórios, é possível excluir um pacote se você tiver permissões de administrador para o repositório. -Os pacotes com escopo de repositório em {% data variables.product.prodname_registry %} incluem estes pacotes: -- npm -- RubyGems -- maven -- Gradle -- NuGet -{% ifversion not fpt or ghec %}- Imagens do Docker em `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} +Os registros de {% data variables.product.prodname_registry %} abaixo de **apenas** usam permissões com escopo do repositório: + + {% ifversion not fpt or ghec %}- Imagens do Docker em `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} + {% ifversion packages-npm-v2 %}{% else %}- npm{% endif %} + - Registro do Rubygems + - Registro do Apache Maven + - Registro do NuGet + +{% ifversion packages-npm-v2 %}Para {% data variables.product.prodname_ghcr_and_npm_registry %}, você pode optar por permitir que os pacotes tenham o escopo definido para um usuário, uma organização ou vinculados a um repositório.{% endif %} {% ifversion fpt or ghec %} -Para excluir um pacote que tem permissões granulares separadas de um repositório, como imagens de contêiner armazenadas em `https://ghcr.io/OWNER/PACKAGE-NAME`, você deverá ter acesso de administrador ao pacote. Para obter mais informações, consulte "[Sobre permissões para {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)". +Para excluir um pacote que tem permissões granulares separadas de um repositório, como imagens de contêiner armazenadas em `https://ghcr. o/OWNER/PACKAGE-NAME` ou `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`, você deve ter acesso de administrador ao pacote. Para obter mais informações, consulte "[Sobre permissões para {% data variables.product.prodname_registry %}](/packages/learn-github-packages/about-permissions-for-github-packages)". {% endif %} @@ -86,11 +88,9 @@ Para excluir uma versão de um pacote com escopo do repositório, você deve ter Para pacotes que herdam suas permissões e acesso dos repositórios, você pode usar o GraphQL para excluir uma versão específica de pacotes. -{% ifversion fpt or ghec %} -Para contêineres ou imagens do Docker em `ghcr.io`, o GraphQL não é compatível, mas você pode usar a API REST. Para obter mais informações, consulte o "[API de {% data variables.product.prodname_registry %}](/rest/reference/packages)". -{% endif %} +{% data reusables.package_registry.no-graphql-to-delete-packages %}{% ifversion fpt or ghec %} Você pode usar a API REST. Para obter mais informações, consulte a "[API de {% data variables.product.prodname_registry %}](/rest/reference/packages)."{% endif %} -Use a mutação `deletePackageVersion` na API do GraphQL. Você deve usar um token com os escopos `read:packages`, `delete:packages` e `repo`. For more information about tokens, see "[About {% data variables.product.prodname_registry %}](/packages/publishing-and-managing-packages/about-github-packages#about-tokens)." +Use a mutação `deletePackageVersion` na API do GraphQL. Você deve usar um token com os escopos `read:packages`, `delete:packages` e `repo`. Para obter mais informações sobre tokens, consulte "[Sobre {% data variables.product.prodname_registry %}](/packages/publishing-and-managing-packages/about-github-packages#authenticating-to-github-packages)." O exemplo a seguir demonstra como excluir uma versão do pacote, usando um `packageVersionId` de `MDIyOlJlZ2lzdHJ5UGFja2FnZVZlcnNpb243MTExNg`. diff --git a/translations/pt-BR/content/packages/learn-github-packages/introduction-to-github-packages.md b/translations/pt-BR/content/packages/learn-github-packages/introduction-to-github-packages.md index fc5090006e..5450ffcff9 100644 --- a/translations/pt-BR/content/packages/learn-github-packages/introduction-to-github-packages.md +++ b/translations/pt-BR/content/packages/learn-github-packages/introduction-to-github-packages.md @@ -51,7 +51,7 @@ For more information about the configuration of {% data variables.product.prodna | | | |--------------------|--------------------| -| 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 %} | +| 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_ghcr_and_npm_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)." @@ -101,7 +101,9 @@ For more information about Docker and the {% data variables.product.prodname_con ## Managing 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)." +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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." + +{% data reusables.package_registry.no-graphql-to-delete-packages %} {% endif %} {% ifversion ghes %} @@ -112,7 +114,9 @@ You can delete a private or public package in the {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" 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 ghes or ghae %}"[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and {% endif %}"[Forming calls with GraphQL](/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)." diff --git a/translations/pt-BR/content/packages/learn-github-packages/viewing-packages.md b/translations/pt-BR/content/packages/learn-github-packages/viewing-packages.md index 845f2eb3f8..ef4a284eca 100644 --- a/translations/pt-BR/content/packages/learn-github-packages/viewing-packages.md +++ b/translations/pt-BR/content/packages/learn-github-packages/viewing-packages.md @@ -23,15 +23,15 @@ versions: A sua capacidade de visualizar um pacote depende de vários fatores. Por padrão, você pode visualizar todos os pacotes que você publicou. -Pacotes com escopo de repositórios herdam suas permissões e visibilidade do repositório que possui o pacote. Os registros abaixo usam este tipo de permissões:{% ifversion not fpt or ghec %} +Pacotes com escopo de repositórios herdam suas permissões e visibilidade do repositório que possui o pacote. Os registros abaixo **apenas** usam este tipo de permissões:{% ifversion not fpt or ghec %} - Registro Docker (`docker.pkg.github.com`){% endif %} -- Registro de npm +{% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - Registro do Rubygems - Registro do Apache Maven - Registro do NuGet {% ifversion fpt or ghec %} -O registro do contêiner oferece a opção de permissões e configurações de visibilidade granulares que podem ser personalizadas para cada pacote de propriedade de um usuário pessoal ou de uma conta de organização. Você pode optar por usar permissões granulares ou conectar o pacote a um repositório e herdar suas permissões. Para obter mais informações, consulte "[Conectar um repositório a um pacote](/packages/learn-github-packages/connecting-a-repository-to-a-package)". +O {% data variables.product.prodname_ghcr_and_npm_registry %} oferece a opção de permissões e configurações de visibilidade granulares que podem ser personalizadas para cada pacote de propriedade de uma conta pessoal ou da conta de uma organização. Você pode optar por usar permissões granulares ou conectar o pacote a um repositório e herdar suas permissões. Para obter mais informações, consulte "[Conectar um repositório a um pacote](/packages/learn-github-packages/connecting-a-repository-to-a-package)". {% endif %} Para obter mais informações consulte "[Sobre permissões para o GitHub Packages](/packages/learn-github-packages/about-permissions-for-github-packages){% ifversion fpt or ghec %}" e[Configurando controle de acesso e visibilidade de um pacote](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility){% endif %}." diff --git a/translations/pt-BR/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md b/translations/pt-BR/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md index f5ee768345..7f62a92fb0 100644 --- a/translations/pt-BR/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md +++ b/translations/pt-BR/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md @@ -24,9 +24,9 @@ shortTitle: Publicar & instalar com ações Você pode estender os recursos de CI e CD do seu repositório publicando ou instalando pacotes como parte do seu fluxo de trabalho. {% ifversion fpt or ghec %} -### Efetuar a autenticação no {% data variables.product.prodname_container_registry %} +### Efetuar a autenticação no {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} {% endif %} @@ -40,7 +40,7 @@ Você pode fazer referência ao `GITHUB_TOKEN` no seu arquivo de fluxo de trabal {% note %} -**Observação:** Os pacotes que possuem repositórios incluem RubyGems, npm, Apache Maven, NuGet, {% ifversion fpt or ghec %}e Gradle. {% else %}Os pacotes do Gradle e Docker que usam o pacote namespace `docker.pkg.github.com`.{% endif %} +**Observação:** Alguns registros, como RubyGems, {% ifversion packages-npm-v2 %}{% else %}npm, {% endif %}Apache Maven, NuGet, {% ifversion fpt or ghec %}e Gradle{% else %}Gradle e pacotes Docker que usam o namespace `docker.pkg.github.com`{% endif %}, só permitem pacotes propriedade de repositório. Com {% data variables.product.prodname_ghcr_and_npm_registry_full %} você pode optar por permitir que os pacotes sejam propriedade de um usuário, organização ou vinculados a um repositório. {% endnote %} @@ -49,11 +49,11 @@ Quando você habilita o GitHub Actions, o GitHub instala um aplicativo GitHub no {% data variables.product.prodname_registry %} permite que você faça push e pull de pacotes por meio do `GITHUB_TOKEN` disponível para um fluxo de trabalho de {% data variables.product.prodname_actions %}. {% ifversion fpt or ghec %} -## Sobre permissões e acesso de pacote para {% data variables.product.prodname_container_registry %} +## Sobre permissões e acesso de pacote para {% data variables.product.prodname_ghcr_and_npm_registry %} -O {% data variables.product.prodname_container_registry %} (`ghcr.io`) permite aos usuários criar e administrar contêineres como recursos independentes no nível da organização. Os contêineres podem pertencer a uma conta pessoal ou organização e você pode personalizar o acesso a cada um dos seus contêineres separadamente das permissões de repositório. +O {% data variables.product.prodname_ghcr_and_npm_registry_full %} permite aos usuários criar e administrar pacotes como recursos independentes no nível da organização. Os pacotes podem pertencer a uma conta organizacional ou pessoal e você pode personalizar o acesso a cada um dos seus pacotes separadamente das permissões de repositório. -Todos os workflows que acessam o {% data variables.product.prodname_container_registry %} devem usar o `GITHUB_TOKEN` em vez de um token de acesso pessoal. Para obter mais informações sobre as melhores práticas de segurança, consulte "[Enrijecimento de segurança para o GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)". +Todos os workflows que acessam o {% data variables.product.prodname_ghcr_and_npm_registry %} devem usar o `GITHUB_TOKEN` em vez de um token de acesso pessoal. Para obter mais informações sobre as melhores práticas de segurança, consulte "[Enrijecimento de segurança para o GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)". ## Configurações padrão de permissões e acesso para contêineres modificados por meio de fluxos de trabalho @@ -484,9 +484,9 @@ A instalação de pacotes hospedados pelo {% data variables.product.prodname_reg {% data reusables.package_registry.actions-configuration %} {% ifversion fpt or ghec %} -## Atualizando um fluxo de trabalho que acessa `ghcr.io` +## Atualizando um fluxo de trabalho que acessa um registro usando um PAT -O {% data variables.product.prodname_container_registry %} é compatível com `GITHUB_TOKEN` para autenticação fácil e segura nos seus fluxos de trabalho. Se seu fluxo de trabalho estiver usando um token de acesso pessoal (PAT) para efetuar a autenticação com `ghcr.io`, é altamente recomendável atualizar o seu fluxo de trabalho para usar o `GITHUB_TOKEN`. +O {% data variables.product.prodname_ghcr_and_npm_registry %} é compatível com `GITHUB_TOKEN` para autenticação fácil e segura nos seus fluxos de trabalho. Se seu fluxo de trabalho estiver usando um token de acesso pessoal (PAT) para efetuar a autenticação no registro, é altamente recomendável atualizar o seu fluxo de trabalho para usar o `GITHUB_TOKEN`. Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação em um fluxo de trabalho](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)". @@ -501,9 +501,9 @@ O uso do `GITHUB_TOKEN` em vez de um PAT, que inclui o escopo do `repositório` {% endnote %} 1. Opcionalmente, usando o menu suspenso "função", selecione o nível de acesso padrão que você gostaria que o repositório tivesse na imagem do seu contêiner. ![Níveis de acesso permitidos para repositórios](/assets/images/help/package-registry/repository-permission-options-for-package-access-through-actions.png) -1. Abra o arquivo do seu fluxo de trabalho. Na linha em que você efetua o login em `ghcr.io`, substitua seu PAT por {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. +1. Abra o arquivo do seu fluxo de trabalho. Na linha em que você fez login no registro, substitua o seu PAT por {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. -Por exemplo, este fluxo de trabalho publica um imagem do Docker usando {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} para efetuar a autenticação. +Por exemplo, este fluxo de trabalho publica uma imagem Docker para {% data variables.product.prodname_container_registry %} e usa {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} para efetuar a autenticação. ```yaml{:copy} name: Demo Push diff --git a/translations/pt-BR/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md b/translations/pt-BR/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md index 44177e2e46..e8cb93cd54 100644 --- a/translations/pt-BR/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md +++ b/translations/pt-BR/content/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry.md @@ -1,6 +1,6 @@ --- title: Fazendo a migração para o Registro do Contêiner a partir do Registro Docker -intro: '{% ifversion docker-ghcr-enterprise-migration %}An enterprise owner can{% else %}{% data variables.product.company_short %} will{% endif %} migrate Docker images previously stored in the Docker registry on {% data variables.product.product_location %} to the {% data variables.product.prodname_container_registry %}.' +intro: '{% ifversion docker-ghcr-enterprise-migration %}O proprietário de uma empresa pode{% else %}{% data variables.product.company_short %} irá{% endif %} migrar imagens do Docker previamente armazenadas no registro do Docker em {% data variables.product.product_location %} para o {% data variables.product.prodname_container_registry %}.' product: '{% data reusables.gated-features.packages %}' redirect_from: - /packages/getting-started-with-github-container-registry/migrating-to-github-container-registry-for-docker-images @@ -25,26 +25,26 @@ topics: ## Sobre a migração do registro do Docker -{% data reusables.package_registry.container-registry-replaces-docker-registry %} If you've stored Docker images in the Docker registry, {% ifversion docker-ghcr-enterprise-migration %}an enterprise owner{% else %}{% data variables.product.company_short %}{% endif %} will gradually migrate the images to the {% data variables.product.prodname_container_registry %}. No action is required on your part. +{% data reusables.package_registry.container-registry-replaces-docker-registry %} Se você armazenou imagens do Docker no registro do Docker, {% ifversion docker-ghcr-enterprise-migration %} o proprietário de uma empresa{% else %}{% data variables.product.company_short %}{% endif %} irá transferir gradualmente as imagens para o {% data variables.product.prodname_container_registry %}. Nenhuma ação é necessária de sua parte. {% ifversion docker-ghcr-enterprise-migration %} {% note %} -**Note**: {% data reusables.package_registry.container-registry-ghes-migration-availability %} For more information about finding the version of {% data variables.product.product_name %} that you use, see "[About versions of {% data variables.product.prodname_docs %}](/get-started/learning-about-github/about-versions-of-github-docs#github-enterprise-server)." +**Observação**: {% data reusables.package_registry.container-registry-ghes-migration-availability %} Para mais informações sobre como encontrar a versão de {% data variables.product.product_name %} que você usa, consulte "[Sobre as versões de {% data variables.product.prodname_docs %}](/get-started/learning-about-github/about-versions-of-github-docs#github-enterprise-server)". {% endnote %} {% endif %} -After a Docker image has been migrated to the {% data variables.product.prodname_container_registry %}, you'll see the following changes to the details for the package. +Depois que a imagem de um Docker foi transferida para {% data variables.product.prodname_container_registry %}, você verá as seguintes alterações nos detalhes do pacote. -- The icon will be the {% data variables.product.prodname_container_registry %} logo instead of the Docker logo. -- The domain in the pull URL will be {% data variables.product.prodname_container_registry_namespace %} instead of {% data variables.product.prodname_docker_registry_namespace %}. +- O ícone será o logotipo de {% data variables.product.prodname_container_registry %} ao invés do logo do Docker. +- O domínio na URL do pull será {% data variables.product.prodname_container_registry_namespace %} em vez de {% data variables.product.prodname_docker_registry_namespace %}. {% ifversion fpt or ghec %} -![Screenshot of a Docker image migrated to the {% data variables.product.prodname_container_registry %}](/assets/images/help/package-registry/container-registry-details-page.png) +![Captura de tela de uma imagem do Docker transferida para {% data variables.product.prodname_container_registry %}](/assets/images/help/package-registry/container-registry-details-page.png) {% endif %} @@ -52,11 +52,11 @@ After a Docker image has been migrated to the {% data variables.product.prodname {% ifversion fpt or ghec %} -After migration, you'll no longer be able to use the GraphQL API to query for packages with a `PackageType` of "DOCKER". Instead, you can use the REST API to query for packages with a `package_type` of "container". For more information, see "[Packages](/rest/reference/packages)" in the REST API documentation. +Após a migração, você não poderá mais usar o API do GraphQL para consultar pacotes com um `tipo de pacote` do "DOCKER". Em vez disso, você pode usar a API REST para consultar pacotes com um `package_type` de "contêiner". Para obter mais informações, consulte "[Pacotes](/rest/reference/packages)" na documentação da API REST. ## Sobre a cobrança do {% data variables.product.prodname_container_registry %} -For more information about billing for the {% data variables.product.prodname_container_registry %}, see "[About billing for {% data variables.product.prodname_registry %}](/billing/managing-billing-for-github-packages/about-billing-for-github-packages)." +Para obter mais informações sobre a cobrança para o {% data variables.product.prodname_container_registry %}, consulte "[Sobre a cobrança para {% data variables.product.prodname_registry %}](/billing/managing-billing-for-github-packages/about-billing-for-github-packages). {% endif %} @@ -64,6 +64,6 @@ For more information about billing for the {% data variables.product.prodname_co ## Leia mais -- "[Migrating your enterprise to the {% data variables.product.prodname_container_registry %} from the Docker registry](/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry)" +- "[Fazendo a migração da sua empresa para {% data variables.product.prodname_container_registry %} do registro Docker](/admin/packages/migrating-your-enterprise-to-the-container-registry-from-the-docker-registry)" {% endif %} diff --git a/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md b/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md index 3e8c702bbd..d9cf56e750 100644 --- a/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md +++ b/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md @@ -27,7 +27,7 @@ shortTitle: Container registry {% ifversion ghes > 3.4 %} -To use the {% data variables.product.prodname_container_registry %} on {% data variables.product.product_name %}, your site administrator must first configure {% data variables.product.prodname_registry %} for your instance **and** enable subdomain isolation. Para obter mais informações, consulte "[Primeiros passos com o GitHub Packages para sua empresa](/admin/packages/getting-started-with-github-packages-for-your-enterprise)" e "[Habilitando o isolamento do subdomínio](/admin/configuration/configuring-network-settings/enabling-subdomain-isolation)". +Para usar o {% data variables.product.prodname_container_registry %} em {% data variables.product.product_name %}, o administrador do site deve primeiro configurar {% data variables.product.prodname_registry %} para sua instância **e** habilitar o isolamento do subdomínio. Para obter mais informações, consulte "[Primeiros passos com o GitHub Packages para sua empresa](/admin/packages/getting-started-with-github-packages-for-your-enterprise)" e "[Habilitando o isolamento do subdomínio](/admin/configuration/configuring-network-settings/enabling-subdomain-isolation)". {% endif %} @@ -42,7 +42,9 @@ Ao instalar ou publicar uma imagem Docker, a {% data variables.product.prodname_ ## Efetuar a autenticação no {% data variables.product.prodname_container_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% ifversion fpt or ghec or ghes > 3.4 %} +Para efetuar a autenticação no {% data variables.product.prodname_container_registry %} (`ghcr.io`) dentro de um fluxo de trabalho de {% data variables.product.prodname_actions %}, use o `GITHUB_TOKEN` para uma melhor segurança e experiência. {% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} +{% endif %} {% ifversion ghes %}Certifique-se de substituir o `HOSTNAME` pelo nome do host {% data variables.product.product_location_enterprise %} ou endereço IP nos exemplos abaixo.{% endif %} diff --git a/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md b/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md index 6714384e4d..8007cd2b6f 100644 --- a/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md +++ b/translations/pt-BR/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md @@ -21,6 +21,8 @@ shortTitle: npm registry {% data reusables.package_registry.admins-can-configure-package-types %} +{% ifversion packages-npm-v2 %} +{% else %} ## 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. @@ -28,12 +30,17 @@ If you publish over 1,000 npm package versions to {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" or "[Contacting Support](/packages/learn-github-packages/about-github-packages#contacting-support)." +{% endif %} ## Authenticating to {% data variables.product.prodname_registry %} {% data reusables.package_registry.authenticate-packages %} -{% data reusables.package_registry.authenticate-packages-github-token %} +{% ifversion packages-npm-v2 %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} + +You can also choose to give access permissions to packages independently for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_actions %}. For more information, see "[Ensuring Codespaces access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-codespaces-access-to-your-package) and [Ensuring workflow access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." +{% endif %} ### Authenticating with a personal access token @@ -94,12 +101,24 @@ $ npm login --scope=@OWNER --registry=https://HOSTNAME/_regist {% endnote %} -By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. You can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. +{% ifversion packages-npm-v2 %} +The {% data variables.product.prodname_registry %} registry stores npm packages within your organization or personal account, and allows you to associate a package with a repository. You can choose whether to inherit permissions from a repository, or set granular permissions independently of a repository. +{% endif %} + +By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. If you're running [npm v8.5.3](https://github.com/npm/cli/releases/tag/v8.5.3) or later, you can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. You can publish multiple packages to the same {% data variables.product.prodname_dotcom %} repository by including a `URL` field in the *package.json* file. For more information, see "[Publishing multiple packages to the same repository](#publishing-multiple-packages-to-the-same-repository)." +{% ifversion fpt or ghec %} +When a package is published, it isn't automatically linked to a repository. You can however choose to link your published package to a repository using the user interface or command line. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)." +{% endif %} + You can set up the scope mapping for your project using either a local *.npmrc* file in the project or using the `publishConfig` option in the *package.json*. {% data variables.product.prodname_registry %} only supports scoped npm packages. Scoped packages have names with the format of `@owner/name`. Scoped packages always begin with an `@` symbol. You may need to update the name in your *package.json* to use the scoped name. For example, `"name": "@codertocat/hello-world-npm"`. +{% ifversion packages-npm-v2 %} +When you first publish a package, the default visibility is private. When a package is linked to repository, the package visibility is dependent on the repository's visibility. To change the visibility or set access permissions, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." +{% endif %} + {% data reusables.package_registry.viewing-packages %} ### Publishing a package using a local *.npmrc* file diff --git a/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md b/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md index 60b42b34a3..ea0ae847b8 100644 --- a/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md +++ b/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md @@ -40,13 +40,13 @@ O comando `dig`, que pode ser usado para verificar a configuração correta dos ## Configurando um subdomínio -To set up a `www` or custom subdomain, such as `www.example.com` or `blog.example.com`, you must add your domain in the repository settings. Em seguida, configure um registro CNAME com seu provedor DNS. +Para configurar um `www` ou um subdomínio personalizado como, por exemplo, `www.example.com` ou `blog.example.com`, você deve adicionar seu domínio nas configurações do repositório. Em seguida, configure um registro CNAME com seu provedor DNS. {% data reusables.pages.navigate-site-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} -4. Em "Domínio personalizado,", digite o seu domínio personalizado e clique em **Salvar**. If you are publishing your site from a branch, this will create a commit that adds a `CNAME` file to the root of your source branch. If you are publishing your site with a custom {% data variables.product.prodname_actions %} workflow , no `CNAME` file is created. For more information about your publishing source, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." ![Botão Salvar domínio personalizado](/assets/images/help/pages/save-custom-subdomain.png) -5. Navegue até o provedor DNS e crie um registro `CNAME` que aponte seu subdomínio para o domínio padrão do seu site. Por exemplo, se você quiser usar o subdomínio `www.example.com` para seu site de usuário, crie um registro `CNAME` que aponte `www.example.com` para `.github.io`. Se você desejar usar o subdomínio `www.anotherexample.com` no seu site da organização, crie um registro `CNAME` que aponte `www. notherexample.com` para `.github.io`. O registro `CNAME` sempre deve apontar para `.github.io` ou `.github.io`, excluindo o nome do repositório. {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} +4. Em "Domínio personalizado,", digite o seu domínio personalizado e clique em **Salvar**. Se você estiver publicando seu site a partir de um branch, isso irá criar um commit que adiciona um arquivo `CNAME` à raiz do seu branch de origem. Se você publicar o seu site com um fluxo de trabalho de {% data variables.product.prodname_actions %} personalizado, não será criado nenhum arquivo `CNAME`. Para obter mais informações sobre a fonte de publicação, consulte "[Configurando uma fonte de publicação para o site do GitHub Pages](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)". ![Botão Salvar domínio personalizado](/assets/images/help/pages/save-custom-subdomain.png) +5. Navegue até o provedor DNS e crie um registro `CNAME` que aponte seu subdomínio para o domínio padrão do seu site. Por exemplo, se você quiser usar o subdomínio `www.example.com` para seu site de usuário, crie um registro `CNAME` que aponte `www.example.com` para `.github.io`. Se você desejar usar o subdomínio `another.example.com` no seu site da organização, crie um registro `CNAME` que aponte `another.example.com` para `.github.io`. O registro `CNAME` sempre deve apontar para `.github.io` ou `.github.io`, excluindo o nome do repositório. {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} {% indented_data_reference reusables.pages.wildcard-dns-warning spaces=3 %} {% data reusables.command_line.open_the_multi_os_terminal %} @@ -63,14 +63,14 @@ To set up a `www` or custom subdomain, such as `www.example.com` or `blog.exampl ## Configurando um domínio apex -To set up an apex domain, such as `example.com`, you must configure a custom domain in your repository settings and at least one `ALIAS`, `ANAME`, or `A` record with your DNS provider. +Para configurar um domínio apex, como o `example.com`, você deve configurar um domínio personalizado nas configurações do repositório e pelo menos um `ALIAS`, `ANAME` ou registro `A` com o seu provedor DNS. {% data reusables.pages.www-and-apex-domain-recommendation %} Para obter mais informações, consulte "[Configurar um subdomínio](#configuring-a-subdomain)". {% data reusables.pages.navigate-site-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} -4. Em "Domínio personalizado,", digite o seu domínio personalizado e clique em **Salvar**. If you are publishing your site from a branch, this will create a commit that adds a `CNAME` file to the root of your source branch. If you are publishing your site with a custom {% data variables.product.prodname_actions %} workflow , no `CNAME` file is created. For more information about your publishing source, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." ![Botão Salvar domínio personalizado](/assets/images/help/pages/save-custom-apex-domain.png) +4. Em "Domínio personalizado,", digite o seu domínio personalizado e clique em **Salvar**. Se você estiver publicando seu site a partir de um branch, isso irá criar um commit que adiciona um arquivo `CNAME` à raiz do seu branch de origem. Se você publicar o seu site com um fluxo de trabalho de {% data variables.product.prodname_actions %} personalizado, não será criado nenhum arquivo `CNAME`. Para obter mais informações sobre a fonte de publicação, consulte "[Configurando uma fonte de publicação para o site do GitHub Pages](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)". ![Botão Salvar domínio personalizado](/assets/images/help/pages/save-custom-apex-domain.png) 5. Navegue até o provedor DNS e crie um registro `ALIAS`, `ANAME` ou `A`. Você também pode criar registros de `AAAA` para suporte ao IPv6. {% data reusables.pages.contact-dns-provider %} - Para criar um registro `ALIAS` ou `ANAME`, aponte o domínio apex para o domínio padrão do seu site. {% data reusables.pages.default-domain-information %} - Para criar registros `A`, aponte seu domínio apex para os endereços IP para {% data variables.product.prodname_pages %}. diff --git a/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md b/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md index f0b17a4def..4e7dbc2af1 100644 --- a/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md +++ b/translations/pt-BR/content/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages.md @@ -18,9 +18,9 @@ shortTitle: Solucione o problema de um domínio personalizado ## Erros _CNAME_ -{% ifversion pages-custom-workflow %}If you are publishing from a custom {% data variables.product.prodname_actions %} workflow, any _CNAME_ file is ignored and is not required.{% endif %} +{% ifversion pages-custom-workflow %}Se você publicando a partir de um fluxo de trabalho de {% data variables.product.prodname_actions %} personalizado, qualquer arquivo _CNAME_ será ignorado e não não será obrigatório.{% endif %} -If you are publishing from a branch, custom domains are stored in a _CNAME_ file in the root of your publishing source. que pode ser adicionado ou atualizado manualmente ou por meio das configurações do repositório. Para obter mais informações, consulte "[Gerenciar um domínio personalizado para seu site do {% data variables.product.prodname_pages %}](/articles/managing-a-custom-domain-for-your-github-pages-site)". +Se você estiver publicando a partir de um branch, os domínios personalizados serão armazenados em um arquivo _CNAME_ na raiz da fonte de publicação. que pode ser adicionado ou atualizado manualmente ou por meio das configurações do repositório. Para obter mais informações, consulte "[Gerenciar um domínio personalizado para seu site do {% data variables.product.prodname_pages %}](/articles/managing-a-custom-domain-for-your-github-pages-site)". Para que o site seja renderizado no domínio correto, verifique se o arquivo _CNAME_ ainda existe no repositório. Por exemplo, muitos geradores de site estáticos fazem push forçado para o repositório, o que pode substituir o arquivo _CNAME_ que foi adicionado ao repositório quando você configurou o domínio personalizado. Se você criar o site localmente e fizer push dos arquivos gerados para o {% data variables.product.product_name %}, primeiro insira o commit que adicionou o arquivo _CNAME_ ao repositório local, para que o arquivo seja incluído na criação. diff --git a/translations/pt-BR/content/pages/getting-started-with-github-pages/about-github-pages.md b/translations/pt-BR/content/pages/getting-started-with-github-pages/about-github-pages.md index 74e75dee5d..ec3d264fe7 100644 --- a/translations/pt-BR/content/pages/getting-started-with-github-pages/about-github-pages.md +++ b/translations/pt-BR/content/pages/getting-started-with-github-pages/about-github-pages.md @@ -1,6 +1,6 @@ --- title: Sobre o GitHub Pages -intro: 'Você pode usar {% data variables.product.prodname_pages %} para hospedar um site sobre você, sua organização, ou seu projeto diretamente a partir de um repositório em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}.' +intro: 'Você pode usar {% data variables.product.prodname_pages %} para hospedar um site sobre você, sua organização, ou seu projeto diretamente a partir de um repositório no {% 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 @@ -75,7 +75,7 @@ Para obter mais informações, consulte "[Habilitar isolamento de subdomínio](/ {% data reusables.pages.pages-about-publishing-source %} -For more information, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." +Para obter mais informações, consulte "[Configurando uma fonte de publicação para o site do GitHub Pages](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)". {% ifversion ghec %} ## Limitações para {% data variables.product.prodname_emus %} @@ -93,9 +93,9 @@ O {% data variables.product.prodname_pages %} publica qualquer arquivo estático {% ifversion pages-custom-workflow %} -If you use a custom build process or a static site generator other than Jekyll, you can write a {% data variables.product.prodname_actions %} to build and publish your site. {% data variables.product.product_name %} provides starter workflows for several static site generators. For more information, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." +Se você usar um processo de compilação personalizado ou um gerador de site estático diferente do Jekyll, você poderá escrever um {% data variables.product.prodname_actions %} para criar e publicar seu site. O {% data variables.product.product_name %} fornece fluxos de trabalho iniciais para vários geradores de site estáticos. Para obter mais informações, consulte "[Configurando uma fonte de publicação para o site do GitHub Pages](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)". -If you publish your site from a source branch, {% data variables.product.prodname_pages %} will use Jekyll to build your site by default. If you want to use a static site generator other than Jekyll, we recommend that you write a {% data variables.product.prodname_actions %} to build and publish your site instead. Otherwise, disable the Jekyll build process by creating an empty file called `.nojekyll` in the root of your publishing source, then follow your static site generator's instructions to build your site locally. +Se você publicar seu site a partir de um branch fonte, o {% data variables.product.prodname_pages %} usará o Jekyll para criar seu site por padrão. Se quiser usar um gerador de site estático diferente do Jekyll, recomendamos que você escreva um {% data variables.product.prodname_actions %} para criar e publicar seu site. Caso contrário, desabilite o processo de compilação do Jekyll criando um arquivo vazio denominado `.nojekyll` na raiz da fonte de publicação e, em seguida, siga as instruções do gerador de site estático para criar seu site localmente. {% else %} @@ -125,8 +125,8 @@ Os sites do {% data variables.product.prodname_pages %} estão sujeitos ao segui - Os sites do {% data variables.product.prodname_pages %} publicados não podem ter mais de 1 GB. {% ifversion fpt or ghec %} - Sites de {% data variables.product.prodname_pages %} têm um limite de banda larga *flexível* de 100 GB por mês. - - {% data variables.product.prodname_pages %} sites have a *soft* limit of 10 builds per hour.{% ifversion pages-custom-workflow %} This limit does not apply if you build and publish your site with a custom {% data variables.product.prodname_actions %} workflow {% endif %} - - In order to provide consistent quality of service for all {% data variables.product.prodname_pages %} sites, rate limits may apply. These rate limits are not intended to interfere with legitimate uses of {% data variables.product.prodname_pages %}. If your request triggers rate limiting, you will receive an appropriate response with an HTTP status code of `429`, along with an informative HTML body. + - Os sites de {% data variables.product.prodname_pages %} têm um limite de *soft* de 10 compilações por hora.{% ifversion pages-custom-workflow %} Esse limite não se aplica se você criar e publicar seu site com um fluxo de trabalho personalizado de {% data variables.product.prodname_actions %} {% endif %} + - Para fornecer uma qualidade consistente de serviço para todos os sites de {% data variables.product.prodname_pages %}, é possível que se apliquem limites de taxa. Esses limites de taxa não são destinados a interferir nos usos legítimos de {% data variables.product.prodname_pages %}. Se o seu pedido acionar limites de taxa, você receberá uma resposta apropriada com um código de status HTTP de `429`, junto com um texto HTML informativo. Se o seu site exceder essas cotas de uso, talvez não possamos atender a ele ou você receba um e-mail formal do {% data variables.contact.contact_support %} sugerindo estratégias para reduzir o impacto do site em nossos servidores, como colocar uma rede de distribuição de conteúdo (CDN, Content Distribution Network) de terceiros na frente do site, usar outros recursos do {% data variables.product.prodname_dotcom %}, como versões, ou migrar para outro serviço de hospedagem que possa atender melhor às suas necessidades. diff --git a/translations/pt-BR/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md b/translations/pt-BR/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md index 5543fb7bdd..47ad696404 100644 --- a/translations/pt-BR/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md +++ b/translations/pt-BR/content/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site.md @@ -1,6 +1,6 @@ --- title: Configurar uma fonte de publicação para o site do GitHub Pages -intro: '{% ifversion pages-custom-workflow %}You can configure your {% data variables.product.prodname_pages %} site to publish when changes are pushed to a specific branch, or you can write a {% data variables.product.prodname_actions %} workflow to publish your site.{% else%}If you use the default publishing source for your {% data variables.product.prodname_pages %} site, your site will publish automatically. You can also choose to publish your site from a different branch or folder.{% endif %}' +intro: '{% ifversion pages-custom-workflow %}Você pode configurar seu site de {% data variables.product.prodname_pages %} para publicar quando as alterações são enviadas para um branch específico ou você pode escrever um fluxo de trabalho de {% data variables.product.prodname_actions %} para publicar seu site.{% else%}Se você usar a fonte de publicação padrão do seu site de {% data variables.product.prodname_pages %}, seu site será publicado automaticamente. Você também pode optar por publicar o seu site a partir de um branch ou uma pasta diferente.{% endif %}' redirect_from: - /articles/configuring-a-publishing-source-for-github-pages - /articles/configuring-a-publishing-source-for-your-github-pages-site @@ -17,21 +17,21 @@ topics: shortTitle: Configurar fonte de publicação --- -## About publishing sources +## Sobre as fontes de publicação {% data reusables.pages.pages-about-publishing-source %} {% data reusables.pages.private_pages_are_public_warning %} -## Publishing from a branch +## Publicando a partir de um branch -1. Make sure the branch you want to use as your publishing source already exists in your repository. +1. Certifique-se de que o branch que você deseja usar como fonte de publicação já existe no repositório. {% data reusables.pages.navigate-site-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} {% ifversion pages-custom-workflow %} -1. Under "Build and deployment", under "Source", select **Deploy from a branch**. -1. Under "Build and deployment", under "Branch", use the **None** or **Branch** drop-down menu and select a publishing source. +1. Em "Compilação e implantação", em "Fonte", selecione **Implantar a partir de um branch**. +1. Em "Compilação e implantação", em "Branch", use o menu suspenso **Nenhum** ou **Branch** e selecione uma fonte de publicação. ![Menu suspenso para selecionar uma fonte de publicação](/assets/images/help/pages/publishing-source-drop-down.png) {% else %} @@ -40,7 +40,7 @@ shortTitle: Configurar fonte de publicação 4. Opcionalmente, use o menu suspenso para selecionar uma pasta para sua fonte de publicação. ![Menu suspenso para selecionar uma pasta para a fonte de publicação](/assets/images/help/pages/publishing-source-folder-drop-down.png) 5. Clique em **Salvar**. ![Botão para salvar alterações nas configurações da fonte de publicação](/assets/images/help/pages/publishing-source-save.png) -### Troubleshooting publishing from a branch +### Solucionar problemas de publicação a partir de um branch {% data reusables.pages.admin-must-push %} @@ -56,42 +56,42 @@ Para encontrar possíveis erros com a compilação ou implantação, você pode {% ifversion pages-custom-workflow %} -## Publishing with a custom {% data variables.product.prodname_actions %} workflow +## Publicação com um fluxo de trabalho de {% data variables.product.prodname_actions %} personalizado {% data reusables.pages.pages-custom-workflow-beta %} -To configure your site to publish with {% data variables.product.prodname_actions %}: +Para configurar seu site para publicar com {% data variables.product.prodname_actions %}: {% data reusables.pages.navigate-site-repo %} {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} -1. Under "Build and deployment", under "Source", select **GitHub Actions**. -1. {% data variables.product.product_name %} will suggest several starter workflows. If you already have a workflow to publish your site, you can skip this step. Otherwise, choose one of the options to create a {% data variables.product.prodname_actions %} workflow. For more information about creating your custom workflow, see "[Creating a custom {% data variables.product.prodname_actions %} workflow to publish your site](#creating-a-custom-github-actions-workflow-to-publish-your-site)." +1. Em "Compilação e implantação", em "Fonte", selecione **GitHub Actions**. +1. {% data variables.product.product_name %} irá sugerir vários fluxos de trabalho iniciais. Se você já tem um fluxo de trabalho para publicar o site, você pode pular esta etapa. Caso contrário, escolha uma das opções para criar um fluxo de trabalho de {% data variables.product.prodname_actions %}. Para obter mais informações sobre a criação de seu fluxo de trabalho personalizado, consulte "[Criando um fluxo de trabalho de {% data variables.product.prodname_actions %} personalizado para publicar seu site](#creating-a-custom-github-actions-workflow-to-publish-your-site)". - {% data variables.product.prodname_pages %} does not associate a specific workflow to the {% data variables.product.prodname_pages %} settings. However, the {% data variables.product.prodname_pages %} settings will link to the workflow run that most recently deployed your site. + {% data variables.product.prodname_pages %} não associa um fluxo de trabalho específico às configurações de {% data variables.product.prodname_pages %}. No entanto, as configurações do {% data variables.product.prodname_pages %} serão ligadas à execução do fluxo de trabalho que o seu site implantou mais recentemente. -### Creating a custom {% data variables.product.prodname_actions %} workflow to publish your site +### Criar um fluxo de trabalhode {% data variables.product.prodname_actions %} personalizado para publicar seu site -For more information about {% data variables.product.prodname_actions %}, see "[Actions](/actions)." +Para obter mais informações sobre {% data variables.product.prodname_actions %}, consulte "[Actions](/actions)." -When you configure your site to publish with {% data variables.product.prodname_actions %}, {% data variables.product.product_name %} will suggest starter workflows for common publishing scenarios. The general flow of a workflow is to: +Ao configurar seu site para publicar com {% data variables.product.prodname_actions %}, {% data variables.product.product_name %} irá sugerir fluxos de trabalho iniciantes para cenários de publicação comuns. O fluxo de trabalho geral é: -1. Trigger whenever there is a push to the default branch of the repository or whenever a pull request that targets the default branch is opened, reopened, or updated. -1. Use the [`actions/checkout`](https://github.com/actions/checkout) action to check out the repository contents. -1. If required by your site, build any static site files. -1. Use the [`actions/upload-pages-artifact`](https://github.com/actions/upload-pages-artifact) action to upload the static files as an artifact. -1. If the workflow was triggered by a push to the default branch, use the [`actions/deploy-pages`](https://github.com/actions/deploy-pages) action to deploy the artifact. This step is skipped if the workflow was triggered by a pull request. +1. Acionar sempre que houver um push para o branch padrão do repositório ou sempre que um pull request que apontar para o branch padrão for aberto, reaberto ou atualizado. +1. Use a ação [`ações/checkout`](https://github.com/actions/checkout) para conferir o conteúdo do repositório. +1. Se o seu site exigir, crie qualquer arquivo de site estático. +1. Use a ação [`actions/upload-pages-artifact`](https://github.com/actions/upload-pages-artifact) para fazer upload dos arquivos estáticos como um artefato. +1. Se o fluxo de trabalho foi acionado por um push para o branch padrão, use a ação [`actions/deploy-pages`](https://github.com/actions/deploy-pages) para implantar o artefato. Esta etapa é ignorada se o fluxo de trabalho foi acionado por um pull request. -The starter workflows use a deployment environment called `github-pages`. If your repository does not already include an environment called `github-pages`, the environment will be created automatically. We recommend that you add an environment protection rule so that only the default branch can deploy to this environment. Para obter mais informações, consulte "[Usando ambientes para implantação](/actions/deployment/targeting-different-environments/using-environments-for-deployment)". +Os fluxos de trabalho iniciais usam um ambiente de implantação denominado `github-pages`. Se seu repositório ainda não incluir um ambiente denominado `github-pages`, o ambiente será criado automaticamente. Recomendamos que você adicione uma regra de proteção de ambiente para que apenas o branch padrão possa fazer a implantação nesse ambiente. Para obter mais informações, consulte "[Usando ambientes para implantação](/actions/deployment/targeting-different-environments/using-environments-for-deployment)". {% note %} -**Note**: A `CNAME` file in your repository file does not automatically add or remove a custom domain. Instead, you must configure the custom domain through your repository settings or through the API. For more information, see "[Managing a custom domain for your GitHub Pages site](/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain)" and the [Pages API reference documentation](/rest/pages#update-information-about-a-github-pages-site). +**Observação**: Um arquivo `CNAME` no seu arquivo de repositório não adiciona ou remove automaticamente um domínio personalizado. Em vez disso, você deve configurar o domínio personalizado por meio das configurações do repositório ou da API. Para obter mais informações, consulte "[Gerenciando um domínio personalizado para o seu site do GitHub Pages](/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site#configuring-a-subdomain) e [a documentação de referência da API do Pages](/rest/pages#update-information-about-a-github-pages-site). {% endnote %} -### Troubleshooting publishing with a custom {% data variables.product.prodname_actions %} workflow +### Solucionar problemas de publicação com um fluxo de trabalho personalizado de {% data variables.product.prodname_actions %} -For information about how to troubleshoot your {% data variables.product.prodname_actions %} workflow, see "[About monitoring and troubleshooting](/actions/monitoring-and-troubleshooting-workflows/about-monitoring-and-troubleshooting)." +Para obter informações sobre como solucionar seu fluxo de trabalho de {% data variables.product.prodname_actions %}, consulte "[Sobre o monitoramento e solução de problemas](/actions/monitoring-and-troubleshooting-workflows/about-monitoring-and-troubleshooting)." {% endif %} diff --git a/translations/pt-BR/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md b/translations/pt-BR/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md index f11ec52aed..53a77c58fb 100644 --- a/translations/pt-BR/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md +++ b/translations/pt-BR/content/pages/getting-started-with-github-pages/creating-a-github-pages-site.md @@ -41,11 +41,11 @@ shortTitle: Criar um site do GitHub Pages {% data reusables.pages.navigate-site-repo %} {% data reusables.pages.decide-publishing-source %} -1. Create the entry file for your site. {% data variables.product.prodname_pages %} will look for an `index.html`, `index.md`, or `README.md` file as the entry file for your site. +1. Criar o arquivo de entrada para o seu site. {% data variables.product.prodname_pages %} procurará um arquivo `index.html`, `index.md` ou `LEIAME.md` como arquivo de postagem do seu site. - {% ifversion pages-custom-workflow %}If your publishing source is a branch and folder, the entry file must be at the top level of the source folder on the source branch. For example, if your publishing source is the `/docs` folder on the `main` branch, your entry file must be located in the `/docs` folder on a branch called `main`. + {% ifversion pages-custom-workflow %}Se sua fonte de publicação for um branch e uma psata, o arquivo de entrada deverá estar no nível superior da pasta de origem no branch de origem. Por exemplo, se a fonte de publicação for a pasta `/docs` no branch principal`, o arquivo de postagem deverá estar localizado na pasta /docs` em um branch denominado `principal`. - If your publishing source is a {% data variables.product.prodname_actions %} workflow, the artifact that you deploy must include the entry file at the top level of the artifact. Instead of adding the entry file to your repository, you may choose to have your {% data variables.product.prodname_actions %} workflow generate your entry file when the workflow runs.{% else %} The entry file must be at the top level of your chosen publishing source. For example, if your publishing source is the `/docs` folder on the `main` branch, your entry file must be located in the `/docs` folder on a branch called `main`.{% endif %} + Se sua fonte de publicação for um fluxo de trabalho de {% data variables.product.prodname_actions %}, o artefato de que você implantar deverá incluir o arquivo de entrada no nível superior do artefato. Em vez de adicionar o arquivo de entrada ao seu repositório, você pode optar por fazer com que o seu fluxo de trabalho {% data variables.product.prodname_actions %} gere o arquivo de entrada quando o fluxo de trabalho é executado.{% else %} O arquivo de entrada deve estar no nível superior da fonte de publicação escolhida. Por exemplo, se a fonte de publicação for a pasta `/docs` no branch principal`, o arquivo de postagem deverá estar localizado na pasta /docs` em um branch denominado `principal`.{% endif %} {% data reusables.pages.configure-publishing-source %} {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} @@ -59,7 +59,7 @@ shortTitle: Criar um site do GitHub Pages Você pode adicionar mais páginas ao seu site criando novos arquivos. Cada arquivo ficará disponível no site na mesma estrutura de diretórios que a fonte de publicação. Por exemplo, se a fonte de publicação do site de projeto for o branch `gh-pages` e você criar um arquivo chamado `/about/contact-us.md` no branch `gh-pages`, o arquivo novo ficará disponível em {% ifversion fpt or ghec %}`https://.github.io//{% else %}`http(s):///pages///{% endif %}about/contact-us.html`. -Também é possível adicionar um tema para personalizar a aparência do site. For more information, see "[Adding a theme to your {% data variables.product.prodname_pages %} site using Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)". +Também é possível adicionar um tema para personalizar a aparência do site. Para obter mais informações, consulte "[Adicionar um tema ao site do {% data variables.product.prodname_pages %} usando o Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)". Para personalizar seu site ainda mais, você pode usar o Jekyll, um gerador de site estático com suporte integrado para o {% data variables.product.prodname_pages %}. Para obter mais informações, consulte "[Sobre {% data variables.product.prodname_pages %} e o Jekyll](/articles/about-github-pages-and-jekyll)". diff --git a/translations/pt-BR/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md b/translations/pt-BR/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md index 1c38e0b8bc..90e51b5c4b 100644 --- a/translations/pt-BR/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md +++ b/translations/pt-BR/content/pages/getting-started-with-github-pages/unpublishing-a-github-pages-site.md @@ -22,13 +22,13 @@ shortTitle: Cancelar a publicação do site de páginas {% ifversion pages-custom-workflow %} -When you unpublish your site, the site will no longer be available. Any existing repository settings or content will not be affected. +Quando você cancelar a publicação de seu site, o site não estará mais disponível. Todas as configurações de repositório ou o conteúdo não serão afetados. {% data reusables.repositories.navigate-to-repo %} -1. Under **{% data variables.product.prodname_pages %}**, next to the **Your site is live at** message, click {% octicon "kebab-horizontal" aria-label="the horizontal kebab icon" %}. -1. In the menu that appears, select **Unpublish site**. +1. Em **{% data variables.product.prodname_pages %}**, ao lado da mensagem **seu site está ativo em**, clique em {% octicon "kebab-horizontal" aria-label="the horizontal kebab icon" %}. +1. No menu que será exibido, selecione **Cancelar a publicação do site**. - ![Drop down menu to unpublish site](/assets/images/help/pages/unpublish-site.png) + ![Menu suspenso para cancelar a publicação do site](/assets/images/help/pages/unpublish-site.png) {% else %} diff --git a/translations/pt-BR/content/pages/quickstart.md b/translations/pt-BR/content/pages/quickstart.md index ec69da6fa9..c2c223e7e2 100644 --- a/translations/pt-BR/content/pages/quickstart.md +++ b/translations/pt-BR/content/pages/quickstart.md @@ -26,11 +26,11 @@ Este guia irá orientar você com relação à criação de um site em `username 1. Digite `username.github.io` como nome do repositório. Substitua `nome de usuário` pelo seu nome de usuário de {% data variables.product.prodname_dotcom %}. Por exemplo, se seu nome de usuário for `octocat`, o nome do repositório deverá ser `octocat.github.io`. ![Campo nome do repositório](/assets/images/help/pages/create-repository-name-pages.png) {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} -1. Under "Build and deployment", under "Source", select **Deploy from a branch**. -1. Under "Build and deployment", under "Branch", use the **None** or **Branch** drop-down menu and select a publishing source. +1. Em "Compilação e implantação", em "Fonte", selecione **Implantar a partir de um branch**. +1. Em "Compilação e implantação", em "Branch", use o menu suspenso **Nenhum** ou **Branch** e selecione uma fonte de publicação. ![Menu suspenso para selecionar uma fonte de publicação](/assets/images/help/pages/publishing-source-drop-down.png) -1. Optionally, open the `README.md` file of your repository. O arquivo `README.md` é onde você escreverá o conteúdo do seu site. Você pode editar o arquivo ou manter o conteúdo padrão por enquanto. +1. Opcionalmente, abra o arquivo `README.md` do seu repositório. O arquivo `README.md` é onde você escreverá o conteúdo do seu site. Você pode editar o arquivo ou manter o conteúdo padrão por enquanto. 1. Acesse `username.github.io` para ver seu novo site. **Observação:** podem ser necessários até 10 minutos para que as alterações no site sejam publicadas após o push delas no {% data variables.product.product_name %}. ## Alterando o título e a descrição diff --git a/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md b/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md index a6b09ffb3c..69d3c52e4c 100644 --- a/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md +++ b/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.md @@ -75,9 +75,9 @@ Você pode adicionar `site.github` a uma publicação ou página para incluir me {% data reusables.pages.add-jekyll-theme %} Para obter mais informações, consulte "[Temas](https://jekyllrb.com/docs/themes/)" na documentação do Jekyll. {% ifversion fpt or ghec %} -É possível adicionar um tema compatível ao seu site no {% 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 using Jekyll"](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll). +É possível adicionar um tema compatível ao seu site no {% data variables.product.prodname_dotcom %}. Para obter mais informações, consulte "[temas compatíveis](https://pages.github.com/themes/)" no site de {% data variables.product.prodname_pages %} e [Adicionando um tema ao seu site de {% data variables.product.prodname_pages %} usando o 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)". +Para usar qualquer tema de código aberto do Jekyll hospedado em {% data variables.product.prodname_dotcom %}, você pode adicionar o tema manualmente.{% else %} Você pode adicionar um tema ao seu site manualmente.{% endif %} Para obter mais informações, consulte {% ifversion fpt or ghec %} [temas hospedados em {% data variables.product.prodname_dotcom %}](https://github.com/topics/jekyll-theme) e{% else %} "[Temas compatíveis](https://pages.github.com/themes/)" no site de {% data variables.product.prodname_pages %} e {% endif %} "[Adicionar um tema ao seu site do {% data variables.product.prodname_pages %} usando o Jekyll](/articles/adding-a-theme-to-your-github-pages-site-using-jekyll)." Você pode substituir qualquer um dos padrões do seu tema editando os arquivos do tema. Para obter mais informações, consulte a documentação do seu tema e "[Substituir padrões do tema](https://jekyllrb.com/docs/themes/#overriding-theme-defaults)" na documentação do Jekyll. diff --git a/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md b/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md index 298d1675f0..e3427823f8 100644 --- a/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md +++ b/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/about-jekyll-build-errors-for-github-pages-sites.md @@ -19,7 +19,7 @@ shortTitle: Erros de criação do Jekyll para as páginas ## Sobre erros de criação do Jekyll -{% ifversion pages-custom-workflow %}If you are publishing from a branch, sometimes{% else %}Sometimes,{% endif %} {% 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 %} +{% ifversion pages-custom-workflow %}Se você estiver publicando em uma branch, às vezes{% else %}às vezes,{% endif %} {% data variables.product.prodname_pages %} não tentará criar seu site depois que você fizer push das alterações na fonte de publicação do seu site.{% ifversion fpt or ghec %} - A pessoa que fez push das alterações não verificou o endereço de e-mail dela. Para obter mais informações, consulte "[Verificar o endereço de e-mail](/articles/verifying-your-email-address)".{% endif %} - Você está fazendo push com uma chave de implantação. Se desejar automatizar pushes para o repositório do seu site, você poderá configurar um usuário de máquina. Para obter mais informações, consulte "[Gerenciar chaves de implantação](/developers/overview/managing-deploy-keys#machine-users)". - Você está usando um serviço de CI que não está configurado para criar sua fonte de publicação. Por exemplo, Travis CI não criará o branch `gh-pages`, a menos que você adicione o branch a uma lista segura. Para obter mais informações, consulte "[Personalizar a criação](https://docs.travis-ci.com/user/customizing-the-build/#safelisting-or-blocklisting-branches)" em Travis CI ou na documentação do seu serviço de CI. @@ -58,15 +58,15 @@ Por padrão, seu site de {% data variables.product.prodname_pages %} foi criado ## Visualizando mensagens de erro de criação do Jekyll no seu pull request -{% ifversion pages-custom-workflow %}If you are publishing from a branch, when{% else %}When{% endif %} you create a pull request to update your publishing source on {% data variables.product.product_name %}, you can see build error messages on the **Checks** tab of the pull request. Para obter mais informações, consulte "[Sobre verificações de status](/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)". +{% ifversion pages-custom-workflow %}Se você estiver publicando a partir de um branch, quando{% else %}Quando{% endif %} você cria um pull request para atualizar a sua fonte de pulicação em {% data variables.product.product_name %}, você pode ver as mensagens de erro de criação na aba **Verificações** do pull request. Para obter mais informações, consulte "[Sobre verificações de status](/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)". -{% ifversion pages-custom-workflow %}If you are publishing with a custom {% data variables.product.prodname_actions %} workflow, in order to see build error messages in your pull request, you must configure your workflow to run on the `pull_request` trigger. When you do this, we recommend that you skip any deploy steps if the workflow was triggered by the `pull_request` event. This will allow you to see any build errors without deploying the changes from your pull request to your site. For more information, see "[Events that trigger workflows](/actions/using-workflows/events-that-trigger-workflows#pull_request)" and "[Expressions](/actions/learn-github-actions/expressions)."{% endif %} +{% ifversion pages-custom-workflow %}Se você estiver publicando com um fluxo de trabalho personalizado de {% data variables.product.prodname_actions %}, para ver as mensagens de erro de criação no seu pull request, você deve configurar seu fluxo de trabalho para executar o gatilho `pull_request`. Ao fazer isso, recomendamos que você ignore todas as etapas de implantação se o fluxo de trabalho foi acionado pelo evento `pull_request`. Isso permitirá que você veja todos os erros de criação sem implantar as alterações de seu pull request para seu site. Para obter mais informações, consulte "[Eventos que acionam fluxos de trabalho](/actions/using-workflows/events-that-trigger-workflows#pull_request)" e "[Expressões](/actions/learn-github-actions/expressions)".{% endif %} ## Visualizando os erros de criação do Jekyll por e-mail -{% ifversion pages-custom-workflow %}If you are publishing from a branch, when{% else %}When{% endif %} you push changes to your publishing source on {% data variables.product.product_name %}, {% data variables.product.prodname_pages %} will attempt to build your site. Se a criação falhar, você receberá um e-mail no seu endereço de e-mail principal. {% data reusables.pages.build-failure-email-server %} +{% ifversion pages-custom-workflow %}Se você estiver publicando a partir de um branch, quando{% else %}quando{% endif %} você fizer push de alterações na sua fonte de publicação em {% data variables.product.product_name %}, {% data variables.product.prodname_pages %} tentará criar seu site. Se a criação falhar, você receberá um e-mail no seu endereço de e-mail principal. {% data reusables.pages.build-failure-email-server %} -{% ifversion pages-custom-workflow %}If you are publishing with a custom {% data variables.product.prodname_actions %} workflow, in order to receive emails about build errors in your pull request, you must configure your workflow to run on the `pull_request` trigger. When you do this, we recommend that you skip any deploy steps if the workflow was triggered by the `pull_request` event. This will allow you to see any build errors without deploying the changes from your pull request to your site. For more information, see "[Events that trigger workflows](/actions/using-workflows/events-that-trigger-workflows#pull_request)" and "[Expressions](/actions/learn-github-actions/expressions)."{% endif %} +{% ifversion pages-custom-workflow %}Se você está publicando com um fluxo de trabalho personalizado de {% data variables.product.prodname_actions %}, para receber e-mails sobre erros de criação em sua pull request, você deve configurar seu fluxo de trabalho para executar o gatilho `pull_request`. Ao fazer isso, recomendamos que você ignore todas as etapas de implantação se o fluxo de trabalho foi acionado pelo evento `pull_request`. Isso permitirá que você veja todos os erros de criação sem implantar as alterações de seu pull request para seu site. Para obter mais informações, consulte "[Eventos que acionam fluxos de trabalho](/actions/using-workflows/events-that-trigger-workflows#pull_request)" e "[Expressões](/actions/learn-github-actions/expressions)".{% endif %} ## Visualizando as mensagens de erro do Jekyll no seu pull request com um serviço de CI de terceiros diff --git a/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/troubleshooting-jekyll-build-errors-for-github-pages-sites.md b/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/troubleshooting-jekyll-build-errors-for-github-pages-sites.md index d29a0d912a..38d5a0d9a9 100644 --- a/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/troubleshooting-jekyll-build-errors-for-github-pages-sites.md +++ b/translations/pt-BR/content/pages/setting-up-a-github-pages-site-with-jekyll/troubleshooting-jekyll-build-errors-for-github-pages-sites.md @@ -43,12 +43,12 @@ Se o Jekyll encontrar um erro ao criar seu site do {% data variables.product.pro Se você recebeu uma mensagem de erro genérica, verifique os problemas comuns. - Você está usando plugins incompatíveis. Para obter mais informações, consulte "[Sobre o {% data variables.product.prodname_pages %} e o Jekyll](/articles/about-github-pages-and-jekyll#plugins)".{% ifversion fpt or ghec %} - Seu repositório excedeu os limites de tamanho. Para obter mais informações, consulte "[Qual é a minha quota de disco?](/articles/what-is-my-disk-quota)"{% endif %} -- Você alterou a configuração `source` no arquivo *_config.yml*. {% ifversion pages-custom-workflow %}If you publish your site from a branch, {% endif %}{% data variables.product.prodname_pages %} overrides this setting during the build process. -- A filename in your published files contains a colon (`:`) which is not supported. +- Você alterou a configuração `source` no arquivo *_config.yml*. {% ifversion pages-custom-workflow %}Se você publicar seu site a partir de um branch, {% endif %}{% data variables.product.prodname_pages %} irá substituir essa configuração durante o processo de criação. +- Um nome de arquivo em seus arquivos publicados contém dois pontos (`:`) o que não é compatível. Se você recebeu uma mensagem de erro específica, revise abaixo as informações de solução de problemas relativas à mensagem de erro. -{% ifversion pages-custom-workflow %}After you've fixed any errors, trigger another build by pushing the changes to your site's source branch (if you are publishing from a branch) or by triggering your custom {% data variables.product.prodname_actions %} workflow (if you are publishing with {% data variables.product.prodname_actions %}).{% else %}After you've fixed any errors, push the changes to your site's publishing source to trigger another build on {% data variables.product.product_name %}.{% endif %} +{% ifversion pages-custom-workflow %}Depois de corrigir todos os erros, acionar outra compilação, enviando as alterações por push para o branch de origem do seu site de (se você estiver publicando de uma filial) ou acionando o fluxo de trabalho personalizado do {% data variables.product.prodname_actions %} (se você estiver publicando com {% data variables.product.prodname_actions %}).{% else %}Depois de corrigir todos os erros, envie as alterações por push para a fonte de publicação do seu site para acionar outra compilação em {% data variables.product.product_name %}.{% endif %} ## Erro no arquivo de configuração @@ -74,7 +74,7 @@ Este erro significa que o código faz referência a um arquivo que não existe n ## O arquivo é um link simbólico -This error means that your code references a symlinked file that does not exist in the published files for your site. +Este erro significa que o código faz referência a um arquivo com link simbólico que não existe nos arquivos publicados para o seu site. {% data reusables.pages.search-for-includes %} Se algum dos arquivos a que você fez referência for com link simbólico, copie ou mova os arquivos para o diretório *_includes*. @@ -162,9 +162,9 @@ Para solucionar problemas, remova a linha `relative_permalinks` do arquivo *_con ## O link simbólico não existe no repositório do site -This error means that your site includes a symbolic link (symlink) that does not exist in the published files for your site. Para obter mais informações sobre links simbólicos, consulte "[Link simbólico](https://en.wikipedia.org/wiki/Symbolic_link)" na Wikipédia. +Este erro significa que seu site inclui um link simbólico (symlink) que não existe nos arquivos publicados em seu site. Para obter mais informações sobre links simbólicos, consulte "[Link simbólico](https://en.wikipedia.org/wiki/Symbolic_link)" na Wikipédia. -Para solucionar problemas, determine se o arquivo na mensagem de erro é usado para criar o site. Se ele não for ou se você não quiser que o arquivo seja um link simbólico, exclua o arquivo. If the symlinked file is necessary to build your site, make sure the file or directory the symlink references is in the published files for your site. Para incluir ativos externos, considere usar {% ifversion fpt or ghec %}`submódulo do Git` ou {% endif %}um gerenciador de pacotes terceirizado como o [Bower](https://bower.io/).{% ifversion fpt or ghec %} Para obter mais informações, consulte "[Usar submódulos com o {% data variables.product.prodname_pages %}](/articles/using-submodules-with-github-pages)".{% endif %} +Para solucionar problemas, determine se o arquivo na mensagem de erro é usado para criar o site. Se ele não for ou se você não quiser que o arquivo seja um link simbólico, exclua o arquivo. Se o arquivo com o link simbólico for necessário para criar seu site, certifique-se de que o arquivo ou diretório ao qual o link simbólico faz referência esteja nos arquivos publicados no seu site. Para incluir ativos externos, considere usar {% ifversion fpt or ghec %}`submódulo do Git` ou {% endif %}um gerenciador de pacotes terceirizado como o [Bower](https://bower.io/).{% ifversion fpt or ghec %} Para obter mais informações, consulte "[Usar submódulos com o {% data variables.product.prodname_pages %}](/articles/using-submodules-with-github-pages)".{% endif %} ## Erro de sintaxe no loop 'for' diff --git a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md index c758116988..fd13d8791f 100644 --- a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md +++ b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges.md @@ -16,18 +16,18 @@ topics: - Pull requests --- -## Merge your commits +## Fazer merge dos seus commits {% data reusables.pull_requests.default_merge_option %} -## Squash and merge your commits +## Fazer combinação por squash e merge dos seus commits {% data reusables.pull_requests.squash_and_merge_summary %} ### Mesclar mensagem para uma mesclagem por squash {% ifversion default-merge-squash-commit-message %} -Ao fazer combinação por squash e merge, {% data variables.product.prodname_dotcom %} gera uma mensagem de commit padrão, que você pode editar. Depending on how the repository is configured and the number of commits in the pull request, not including merge commits, this message may include the pull request title, pull request description, or information about the commits. +Ao fazer combinação por squash e merge, {% data variables.product.prodname_dotcom %} gera uma mensagem de commit padrão, que você pode editar. Dependendo de como o repositório é configurado e do número de commits no pull request, não sem incluir os commits do merge, esta mensagem poderá incluir o título do pull request, descrição do pull request ou informações sobre o commits. {% else %} Ao fazer combinação por squash e merge, {% data variables.product.prodname_dotcom %} gera uma mensagem de commit padrão, que você pode editar. A mensagem padrão depende do número de commits no pull request, que não inclui commits de merge. @@ -43,7 +43,7 @@ Ao fazer combinação por squash e merge, {% data variables.product.prodname_dot | Mais de um commit | Título da pull request, seguido do número da pull request | Uma lista das mensagens de commit para todos os commits combinados por squash, por ordem de data | {% ifversion default-merge-squash-commit-message %} -People with maintainer or admin access to a repository can configure their repository's default merge message for all squashed commits to use the pull request title, the pull request title and commit details, or the pull request title and description. For more information, see "[Configure commit squashing](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests)".{% endif %} +As pessoas com acesso de mantenedor ou administrador a um repositório podem configurar a mensagem de merge padrão de seu repositório para todos os commits combinados por squash para usar o título do pull request, os detalhes do título e do commit do pull request ou o título e a descrição do pull request. Para obter mais informações, consulte "[Configurar o commit combinado por squash](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests)".{% endif %} {% ifversion ghes = 3.6 %} As pessoas com acesso de administrador a um repositório podem configurar o repositório para usar o título do pull request como a mensagem de merge padrão para todos os commits combinados por squash. Para obter mais informações, consulte "[Configurar o commit combinado por squash](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests)". @@ -57,7 +57,7 @@ Quando você cria uma pull request, o {% data variables.product.prodname_dotcom Uma vez que esse commit está apenas no branch base e não no branch head, o ancestral comum dos dois branches permanece inalterado. Se você continuar a trabalhar no branch head e, em seguida, criar uma nova pull request entre os dois branches, a pull request incluirá todos os commits desde o ancestral comum, incluindo commits que você combinou por squash e fez merge na pull request anterior. Se não houver conflitos, você pode mesclar esses commits com segurança. No entanto, este fluxo de trabalho torna os conflitos de mesclagem mais prováveis. Se você continuar a combinar por squash e mesclar pull requests para um branch head de longo prazo, você terá que resolver os mesmos conflitos repetidamente. -## Rebase and merge your commits +## Faça rebase e merge dos seus commits {% data reusables.pull_requests.rebase_and_merge_summary %} diff --git a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md index e98cfec19f..4fd7a21939 100644 --- a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md +++ b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md @@ -18,13 +18,13 @@ shortTitle: Fazer merge do PR automaticamente ## Sobre o merge automático -Se você habilitar o merge automático para um pull request, este será mesclado automaticamente quando todas as revisões necessárias forem atendidas e as verificações de status forem aprovadas. O merge automático impede que você espere que os sejam atendidos para que você possa passar para outras tarefas. +Se você habilitar o merge automático para um pull request, este será mesclado automaticamente quando todas as revisões necessárias forem atendidas e todas as verificações de status forem aprovadas. O merge automático impede que você espere que os sejam atendidos para que você possa passar para outras tarefas. Antes de usar o merge automático com um pull request, o merge automático deve ser habilitado para o repositório. Para obter mais informações, consulte "[Gerenciar merge automático para pull requests no seu repositório](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository). Depois que você ativar o merge automático para uma pull request, se alguém que não tiver permissões de gravação no repositório fizer push de novas alterações no branch principal ou alterar o branch de base do pull request, o merge automático será desabilitado. Por exemplo, se um mantenedor permitir o merge automático para um pull request a partir de uma bifurcação, o merge automático será desabilitado depois que um colaborador fizer push de novas alterações no pull request. -You can provide feedback about auto-merge through a [{% data variables.product.prodname_github_community %} discussion](https://github.com/orgs/community/discussions/categories/pull-requests). +Você pode fornecer feedback sobre a o merge automático por meio de uma discussão [{% data variables.product.prodname_github_community %}](https://github.com/orgs/community/discussions/categories/pull-requests). ## Habilitar merge automático diff --git a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request-with-a-merge-queue.md b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request-with-a-merge-queue.md index b95a75d9ba..614bd89a64 100644 --- a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request-with-a-merge-queue.md +++ b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request-with-a-merge-queue.md @@ -27,7 +27,7 @@ redirect_from: 1. Na lista "Pull Requests", clique no pull request que você gostaria de adicionar a uma fila de merge. 1. Clique em **Fazer merge quando estiver pronto** para adicionar o pull request à fila de merge. Como alternativa, se você for um administrador, você pode: - - Directly merge the pull request by checking **Merge without waiting for requirements to be met ({% ifversion bypass-branch-protections %}bypass branch protections{% else %}administrators only{% endif %})**, if allowed by branch protection settings, and follow the standard flow. ![Opções da fila de merge](/assets/images/help/pull_requests/merge-queue-options.png) + - Faça o merge direto do pull request marcando **Merge sem espera para atendimento dos requisitos ({% ifversion bypass-branch-protections %}ignorar proteções do branch{% else %}apenas administradores{% endif %})**, se permitido pelas configurações de proteção de branches e siga o fluxo padrão. ![Opções da fila de merge](/assets/images/help/pull_requests/merge-queue-options.png) {% tip %} diff --git a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md index 04908b3653..e4e2653ed6 100644 --- a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md +++ b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request.md @@ -27,7 +27,7 @@ Você pode fazer comentários na guia **Conversation** (Conversa) de uma pull re Também é possível comentar em seções específicas de um arquivo na guia **Files changed** (Arquivos alterados) de uma pull request na forma de comentários em linha individuais ou como parte de uma [revisão de pull request](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews). Adicionar comentários em linha é uma excelente maneira de discutir questões sobre implementação ou fornecer feedback ao autor. -For more information on adding line comments to a pull request review, see "[Reviewing proposed changes in a pull request](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request)." +Para obter mais informações sobre como adicionar comentários em linha a uma revisão de pull request, consulte "[Revisar alterações propostas em um pull request](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request)". {% note %} diff --git a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md index 72f51400c0..c8462071e8 100644 --- a/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md +++ b/translations/pt-BR/content/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork.md @@ -25,11 +25,11 @@ permissions: People with write access for a forked repository can sync the fork {% ifversion syncing-fork-web-ui %} 1. Em {% data variables.product.product_name %}, acesse a página principal do repositório bifurcado que você deseja sincronizar com o repositório upstream. -2. Select the **Sync fork** dropdown. !["Sync fork" dropdown emphasized](/assets/images/help/repository/sync-fork-dropdown.png) -3. Review the details about the commits from the upstream repository, then click **Update branch**. ![Sync fork modal with "Update branch" button emphasized](/assets/images/help/repository/update-branch-button.png) +2. Selecione o menu suspenso **Sincronizar bifurcação**. ![Menu suspenso "Sincronizar bifurcação" destacado](/assets/images/help/repository/sync-fork-dropdown.png) +3. Revise os detalhes sobre os commits do repositório upstream e clique em **Atualizar branch**. ![Modo sincronizar bifurcação com o botão "Atualizar branch" destacado](/assets/images/help/repository/update-branch-button.png) {% else %} 1. Em {% data variables.product.product_name %}, acesse a página principal do repositório bifurcado que você deseja sincronizar com o repositório upstream. -2. Select the **Fetch upstream** dropdown. ![Menu suspenso "Buscar upstream"](/assets/images/help/repository/fetch-upstream-drop-down.png) +2. Selecione o menu suspenso **Buscar upstream**. ![Menu suspenso "Buscar upstream"](/assets/images/help/repository/fetch-upstream-drop-down.png) 3. Revise as informações sobre os commits do repositório upstream e, em seguida, clique em **Buscar e merge**. !["Fetch and merge" button](/assets/images/help/repository/fetch-and-merge-button.png){% endif %} Se as alterações do repositório a upstream gerarem conflitos, {% data variables.product.company_short %} solicitará a criação de um pull request para resolver os conflitos. diff --git a/translations/pt-BR/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md b/translations/pt-BR/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md index 00fe1c38b4..2e7a215e47 100644 --- a/translations/pt-BR/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md +++ b/translations/pt-BR/content/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits.md @@ -19,7 +19,7 @@ versions: {% data reusables.commits.about-commits %} {% ifversion commit-signoffs %} -If the repository you are committing to has compulsory commit signoffs enabled, and you are committing via the web interface, you will automatically sign off on the commit as part of the commit process. For more information, see "[Managing the commit signoff policy for your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository)." {% endif %} +Se o repositório com o qual você está se comprometendo tiver assinaturas de commit habilitadas e você estiver fazendo o commit por meio da interface web, você irá automaticamente assinar o commit como parte do processo de commit. Para obter mais informações, consulte "[Gerenciando a política de assinatura de commit para o seu repositório](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository)". {% endif %} Você pode adicionar um coautor em qualquer commit em que colaborar. Para obter mais informações, consulte "[Criar um commit com vários autores](/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors)". diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md index ca2e7821d7..fe21fd3413 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-merging-for-pull-requests.md @@ -1,6 +1,6 @@ --- -title: Configuring commit merging for pull requests -intro: 'You can enforce, allow, or disable merging with a merge commit for all pull request merges on {% data variables.product.product_location %} in your repository.' +title: Configurar o merge do commit para pull requests +intro: 'É possível aplicar, permitir ou desabilitar o merge com um commit de merge para todos os merge de pull request em {% data variables.product.product_location %} no seu repositório.' versions: fpt: '*' ghes: '*' @@ -8,18 +8,18 @@ versions: ghec: '*' topics: - Repositories -shortTitle: Configure commit merging +shortTitle: Configurar o merge de commit --- {% data reusables.pull_requests.configure_pull_request_merges_intro %} {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. Under {% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-6069 %}"Pull Requests"{% else %}"Merge button"{% endif %}, select **Allow merge commits**. This allows contributors to merge a pull request with a full history of commits.{% ifversion default-merge-squash-commit-message %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits-no-dropdown.png){% endif %} +1. Em {% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-6069 %}"Pull Requests"{% else %}"Botão de merge"{% endif %}, selecione **Permitir commits de merge**. Isso permite que os contribuidores façam merge de um pull request com um histórico completo dos commits.{% ifversion default-merge-squash-commit-message %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-merge-commits-no-dropdown.png){% endif %} {% ifversion ghes < 3.6 %} ![allow_standard_merge_commits](/assets/images/help/repository/pr-merge-full-commits.png){% endif %} {% ifversion default-merge-squash-commit-message %} -1. Optionally, under **Allow merge commits**, use the dropdown to choose the format of the commit message presented to contributors when merging. The default message includes the pull request number and title. For example, `Merge pull request #123 from patch-1`. You can also choose to use just the pull request title, or the pull request title and description. ![Screenshot of emphasized default commit message dropdown](/assets/images/help/repository/default-commit-message-dropdown.png) +1. Opcionalmente, em **Permitir commits de merge**, use o menu suspenso para escolher o formato da mensagem de commit apresentada aos contribuidores quando realizar o merge. A mensagem padrão inclui o número e título do pull request. Por exemplo, `Merge pull request #123 from patch-1`. Você também pode escolher usar apenas o título do pull request ou o título e a descrição do pull request. ![Captura de tela do menu suspenso da mensagem do commit de combinação por squash padrão](/assets/images/help/repository/default-commit-message-dropdown.png) {% endif %} Se você selecionar mais de um método de merge, os colaboradores poderão escolher qual o tipo de commit de merge usar ao fazer o merge de um pull request. {% data reusables.repositories.squash-and-rebase-linear-commit-history %} diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-rebasing-for-pull-requests.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-rebasing-for-pull-requests.md index 33d1ef03b1..d093ff8b48 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-rebasing-for-pull-requests.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-rebasing-for-pull-requests.md @@ -21,7 +21,7 @@ shortTitle: Configurar rebase de commit {% data reusables.repositories.sidebar-settings %} 3. Em {% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-6069 %}"Pull Requests"{% else %}"Botão de merge"{% endif %}, selecione **Permitir merge de rebase**. Isso permite que os contribuidores façam merge de uma pull request fazendo rebase dos respectivos commits individuais no branch base. {% ifversion default-merge-squash-commit-message %} - ![Screenshot of Pull Request settings with allow rebase merging checkbox emphasized](/assets/images/help/repository/allow-rebase-merging.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow rebase merging checkbox emphasized](/assets/images/help/repository/allow-rebase-merging-no-dropdown.png){% endif %} + ![Captura de tela das configurações de pull request com a caixa de seleção permitir merge de rebase destacada](/assets/images/help/repository/allow-rebase-merging.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow rebase merging checkbox emphasized](/assets/images/help/repository/allow-rebase-merging-no-dropdown.png){% endif %} {% ifversion ghes < 3.6 %} ![Commits com rebase da pull request](/assets/images/help/repository/pr-merge-rebase.png){% endif %} diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md index 56dbb27442..c6165a65ee 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/configuring-commit-squashing-for-pull-requests.md @@ -21,11 +21,11 @@ shortTitle: Configurar combinação por squash de commit {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. Em {% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-6069 %}"Pull Requests"{% else %}"Botão de merge"{% endif %}, selecione **Permitir merge de combinação por squash**. Isso permite que os contribuidores façam merge de uma pull request combinando por squash todos os commits em um único commit. The default commit message presented to contributors when merging is the commit title and message if the pull request contains only 1 commit, or the pull request title and list of commits if the pull request contains 2 or more commits. {% ifversion ghes = 3.6 %} To always use the title of the pull request regardless of the number of commits in the pull request select **Default to PR title for squash merge commits**.{% endif %}{% ifversion default-merge-squash-commit-message %} ![Pull request squashed commits](/assets/images/help/repository/allow-squash-merging.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-squash-merging-no-dropdown.png){% endif %} +1. Em {% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-6069 %}"Pull Requests"{% else %}"Botão de merge"{% endif %}, selecione **Permitir merge de combinação por squash**. Isso permite que os contribuidores façam merge de uma pull request combinando por squash todos os commits em um único commit. A mensagem de commit padrão apresentada aos contribuidores ao fazer o merge é o título e a mensagem do commit se o pull request contiver apenas 1 commit, ou o título do pull request e lista de commits se o pull request contiver 2 ou mais commits. {% ifversion ghes = 3.6 %} Para usar sempre o título do pull request, independentemente do número de commits no pull request, selecione **Título padrão do PR para commits de merge de combinação por squash**.{% endif %}{% ifversion default-merge-squash-commit-message %} ![Pull request squashed commits](/assets/images/help/repository/allow-squash-merging.png){% endif %}{% ifversion ghes = 3.6 %} ![Screenshot of Pull Request settings with allow merge commits checkbox emphasized](/assets/images/help/repository/allow-squash-merging-no-dropdown.png){% endif %} {% ifversion ghes < 3.6 %} ![Commits de combinação por squash da pull request](/assets/images/enterprise/3.5/repository/pr-merge-squash.png){% endif %} {% ifversion default-merge-squash-commit-message %} -1. Optionally, under **Allow squash merging**, use the dropdown to choose the format of the default squash commit message presented to contributors when merging. The default message uses the commit title and message if the pull request contains only 1 commit, or the pull request title and list of commits if the pull request contains 2 or more commits. You can also choose to use just the pull request title, the pull request title and commit details, or the pull request title and description. ![Screenshot of emphasized default squash message dropdown](/assets/images/help/repository/default-squash-message-dropdown.png) +1. Opcionalmente, em **Permitir o merge de combinação por squash**, use o menu suspenso para escolher o formato da mensagem do commit da combinação por squash padrão apresentada para os contribuidores ao realizar o merge. A mensagem padrão usa o título e a mensagem de commit se o pull request contiver apenas 1 commit, ou o título do pull request e lista de commits se o pull request contiver 2 ou mais commits. Você também pode opter por usar apenas o título do pull request, o título e os detalhes de commit do pull request ou o título e descrição do pull request. ![Captura de tela do menu suspenso da mensagem de combinação por squash padrão](/assets/images/help/repository/default-squash-message-dropdown.png) {% endif %} Se você selecionar mais de um método de merge, os colaboradores poderão escolher qual o tipo de commit de merge usar ao fazer o merge de um pull request. {% data reusables.repositories.squash-and-rebase-linear-commit-history %} diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-a-merge-queue.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-a-merge-queue.md index a13a9d7974..b9e4cbafbb 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-a-merge-queue.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-a-merge-queue.md @@ -19,7 +19,7 @@ redirect_from: {% data reusables.pull_requests.merge-queue-overview %} -A fila de merge cria branches temporários com um prefixo especial para validar as alterações do pull request. The changes in the pull request are then grouped into a `merge_group` with the latest version of the `base_branch` as well as changes ahead of it in the queue. {% data variables.product.product_name %} fará merge de todas essas alterações em `base_branch` uma vez que as verificações exigidas pelas proteções do branch de `base_branch` sejam aprovadas. +A fila de merge cria branches temporários com um prefixo especial para validar as alterações do pull request. Em seguida, as alterações no pull request são agrupadas em um `merge_group` com a última versão do `base_branch` e também com as alterações antes dele na fila. {% data variables.product.product_name %} fará merge de todas essas alterações em `base_branch` uma vez que as verificações exigidas pelas proteções do branch de `base_branch` sejam aprovadas. Para obter informações sobre métodos de merge, consulte "[Sobre merges de pull requests](/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges)". @@ -34,11 +34,11 @@ Para obter informações sobre métodos de merge, consulte "[Sobre merges de pul {% data reusables.pull_requests.merge-queue-reject %} -### Triggering merge group checks with {% data variables.product.prodname_actions %} +### Acionando verificações de grupo de merge com {% data variables.product.prodname_actions %} -You can use the `merge_group` event to trigger your {% data variables.product.prodname_actions %} workflow when a pull request is added to a merge queue. Note that this is a different event from the `pull_request` and `push` events. +Você pode usar o evento `merge_group` para acionar o fluxo de trabalho {% data variables.product.prodname_actions %} quando um pull request é adicionado à fila de merge. Observe que este é um evento diferente dos eventos `pull_request` e `push`. -A workflow that reports a check which is required by the target branch's protections would look like this: +Um fluxo de trabalho que informa uma verificação necessária pelas proteções do branch de destino ficaria assim: ```yaml on: @@ -46,11 +46,11 @@ on: merge_group: ``` -For more information see "[Events that trigger workflows](/actions/using-workflows/events-that-trigger-workflows#merge-group)" +Para obter mais informações, consulte "[Eventos que acionam fluxos de trabalho](/actions/using-workflows/events-that-trigger-workflows#merge-group)" -### Triggering merge group checks with other CI providers +### Acionando verificações de grupo de merge com outros provedores de CI -With other CI providers, you may need to update your CI configuration to run when a branch that begins with the special prefix `gh-readonly-queue/{base_branch}` is created. +Com outros provedores de CI, é possível que você precise atualizar sua configuração de CI para ser executada quando uma branch que começa quando o prefixo especial `gh-readonly /{base_branch}` é criado. ## Gerenciando uma fila de merge diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md index a25cd9d89d..5107588067 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/about-protected-branches.md @@ -33,9 +33,9 @@ topics: Por padrão, cada regra de proteção de branch desabilita push forçado para os branches correspondentes e impede que os branches correspondentes sejam excluídos. Você pode, opcionalmente, desabilitar essas restrições e habilitar configurações adicionais de proteção de branches. {% ifversion bypass-branch-protections %} -By default, the restrictions of a branch protection rule don't apply to people with admin permissions to the repository or custom roles with the "bypass branch protections" permission. You can optionally apply the restrictions to administrators and roles with the "bypass branch protections" permission, too. For more information, see "[Managing custom repository roles for an organization](/en/enterprise-cloud@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". +Por padrão, as restrições de uma regra de proteção de branch não se aplicam a pessoas com permissões de administrador para o repositório ou funções personalizadas com a permissão de "ignorar proteção de branch". Opcionalmente, você pode aplicar as restrições para administradores e funções com a permissão "ignorar proteção de branch". Para obter mais informações, consulte "[Gerenciando funções de repositórios personalizados para uma organização](/en/enterprise-cloud@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". {% else %} -Por padrão, as restrições de uma regra de proteção de branch não se aplicam a pessoas com permissões de administrador para o repositório. You can optionally choose to include administrators, too.{% endif %} +Por padrão, as restrições de uma regra de proteção de branch não se aplicam a pessoas com permissões de administrador para o repositório. Opcionalmente, você também pode escolher incluir administradores.{% endif %} {% data reusables.repositories.branch-rules-example %} Para obter mais informações sobre os padrões de nomes do branch, consulte "[Gerenciar uma regra de proteção de branch](/github/administering-a-repository/managing-a-branch-protection-rule)". @@ -55,7 +55,7 @@ Para cada regra de proteção do branch, você pode escolher habilitar ou desabi {%- ifversion required-deployments %} - [Exige implantações para ter sucesso antes do merge](#require-deployments-to-succeed-before-merging) {%- endif %} -{% ifversion bypass-branch-protections %}- [Do not allow bypassing the above settings](#do-not-allow-bypassing-the-above-settings){% else %}- [Include administrators](#include-administrators){% endif %} +{% ifversion bypass-branch-protections %}- [Não permita que as configurações acima sejam ignoradas](#do-not-allow-bypassing-the-above-settings){% else %}- [Incluir administradores](#include-administrators){% endif %} - [Restringir quem pode fazer push para branches correspondentes](#restrict-who-can-push-to-matching-branches) - [Permitir push forçado](#allow-force-pushes) - [Permitir exclusões](#allow-deletions) @@ -152,15 +152,15 @@ Antes de exigir um histórico de commit linear, seu repositório deve permitir m Você pode exigir que as alterações sejam implantadas em ambientes específicos antes de ua branch poder ser mesclado. Por exemplo, você pode usar essa regra para garantir que as alterações sejam implantadas com sucesso em um ambiente de teste antes das alterações sofrerem merge no seu branch padrão. -{% ifversion bypass-branch-protections %}### Do not allow bypassing the above settings{% else %} -### Include administrators{% endif %} +{% ifversion bypass-branch-protections %}### Não permita que sejam ignoradas as configurações acima{% else %} +### Incluir administradores{% endif %} {% ifversion bypass-branch-protections %} -By default, the restrictions of a branch protection rule do not apply to people with admin permissions to the repository or custom roles with the "bypass branch protections" permission in a repository. +Por padrão, as restrições de uma regra de proteção de branch não se aplicam a pessoas com permissões de administrador para o repositório ou funções personalizadas com a permissão de "ignorar proteção de branch" em um repositório. -You can enable this setting to apply the restrictions to admins and roles with the "bypass branch protections" permission, too. For more information, see "[Managing custom repository roles for an organization](/en/enterprise-cloud@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". +Você pode habilitar esta configuração para aplicar as restrições aos administradores e funções com a permissão "ignorar proteção de branch". Para obter mais informações, consulte "[Gerenciando funções de repositórios personalizados para uma organização](/en/enterprise-cloud@latest/organizations/managing-peoples-access-to-your-organization-with-roles/managing-custom-repository-roles-for-an-organization)". {% else %} -Por padrão, as regras de branch protegidos não se aplicam a pessoas com permissões de administrador em um repositório. You can enable this setting to include administrators in your protected branch rules.{% endif %} +Por padrão, as regras de branch protegidos não se aplicam a pessoas com permissões de administrador em um repositório. Você pode habilitar essa configuração para incluir administradores em suas regras de proteção de branch.{% endif %} ### Restringir quem pode fazer push para branches correspondentes diff --git a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md index 8c536793dd..f040be4182 100644 --- a/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md +++ b/translations/pt-BR/content/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule.md @@ -77,14 +77,14 @@ Ao criar uma regra de branch, o branch que você especificar ainda não existe n 1. Opcionalmente, para fazer merge de pull requests usando uma fila de merge, selecione **Exigir fila de merge**. {% data reusables.pull_requests.merge-queue-references %} ![Opção de exigir fila de merge](/assets/images/help/repository/require-merge-queue.png) {% tip %} - **Dica:** O recurso de merge da fila de pull request está atualmente em versão beta pública limitada e sujeito a alterações. Organizations owners can request early access to the beta by joining the [waitlist](https://github.com/features/merge-queue/signup). + **Dica:** O recurso de merge da fila de pull request está atualmente em versão beta pública limitada e sujeito a alterações. As organizações às quais os proprietários podem solicitar acesso antecipado ao beta entrando na [lista de espera](https://github.com/features/merge-queue/signup). {% endtip %} {%- endif %} {%- ifversion required-deployments %} 1. Opcionalmente, para escolher em quais ambientes as alterações devem ser implantadas com sucesso antes de fazer merge, selecione **Exigir implantações para ser bem-sucedidas antes do merge** e, em seguida, selecione os ambientes. ![Exigir uma opção de implantação bem-sucedida](/assets/images/help/repository/require-successful-deployment.png) {%- endif %} -1. Optionally, select {% ifversion bypass-branch-protections %}**Do not allow bypassing the above settings**. ![Do not allow bypassing the above settings checkbox](/assets/images/help/repository/do-not-allow-bypassing-the-above-settings.png){% else %}**Apply the rules above to administrators**. ![Apply the rules above to administrators checkbox](/assets/images/help/repository/include-admins-protected-branches.png){% endif %} +1. Opcionalmente, selecione {% ifversion bypass-branch-protections %}**Não permita que sejam ignoradas as configurações acima**. ![Do not allow bypassing the above settings checkbox](/assets/images/help/repository/do-not-allow-bypassing-the-above-settings.png){% else %}**Aplicar as regras acima aos administradores**. ![Apply the rules above to administrators checkbox](/assets/images/help/repository/include-admins-protected-branches.png){% endif %} 1. Opcionalmente, {% ifversion fpt or ghec %} se o repositório pertencer a uma organização que usa {% data variables.product.prodname_team %} ou {% data variables.product.prodname_ghe_cloud %},{% endif %} habilitar as restrições de branches. - Selecione **Restringir quem pode fazer push para os branches correspondentes**. ![Branch restriction checkbox](/assets/images/help/repository/restrict-branch.png){% ifversion restrict-pushes-create-branch %} - Opcionalmente, para também restringir a criação de branches correspondentes, selecione **Restringir pushes que criam branches correspondentes**. ![Branch creation restriction checkbox](/assets/images/help/repository/restrict-branch-create.png){% endif %} diff --git a/translations/pt-BR/content/repositories/creating-and-managing-repositories/about-repositories.md b/translations/pt-BR/content/repositories/creating-and-managing-repositories/about-repositories.md index 7d4b78c205..bcbf580bb5 100644 --- a/translations/pt-BR/content/repositories/creating-and-managing-repositories/about-repositories.md +++ b/translations/pt-BR/content/repositories/creating-and-managing-repositories/about-repositories.md @@ -90,12 +90,12 @@ Todos os integrantes da empresa têm permissões de leitura no repositório inte {% data reusables.repositories.internal-repo-default %} -{% ifversion ghec %}Unless your enterprise uses {% data variables.product.prodname_emus %}, members{% else %}Members{% endif %} of the enterprise can fork any internal repository owned by an organization in the enterprise. O repositório bifurcado pertencerá à conta pessoal do integrante e a visibilidade da bifurcação será privada. Se um usuário for removido de todas as organizações pertencentes à empresa, essas bifurcações do usuário dos repositórios internos do usuário serão removidas automaticamente. +{% ifversion ghec %}A menos que sua empresa use {% data variables.product.prodname_emus %}, os integrantes{% else %}Integrantes{% endif %} da empresa poderão bifurcar qualquer repositório interno de propriedade de uma organização na empresa. O repositório bifurcado pertencerá à conta pessoal do integrante e a visibilidade da bifurcação será privada. Se um usuário for removido de todas as organizações pertencentes à empresa, essas bifurcações do usuário dos repositórios internos do usuário serão removidas automaticamente. {% ifversion ghec %} {% note %} -**Note:** {% data variables.product.prodname_managed_users_caps %} cannot fork internal repositories. For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts)." +**Observação:** {% data variables.product.prodname_managed_users_caps %} não pode realizar a bifurcação a partir de repositórios internos. Para obter mais informações, consulte "[Sobre {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts)." {% endnote %} {% endif %} @@ -109,9 +109,9 @@ A maioria dos limites abaixo afetam o {% data variables.product.product_name %} ### Limites de texto -Os arquivos de texto acima de **512 KB** são sempre exibidos como texto sem formatação. Code is not syntax highlighted, and prose files are not converted to HTML (such as Markdown, AsciiDoc, *etc.*). +Os arquivos de texto acima de **512 KB** são sempre exibidos como texto sem formatação. O código não destaca a sintaxe e arquivos em prosa não são convertidos em HTML (como markdown, AsciiDoc *etc.*). -Text files over **5 MB** are only available through their raw URLs, which are served through `{% data variables.product.raw_github_com %}`; for example, `https://{% data variables.product.raw_github_com %}/octocat/Spoon-Knife/master/index.html`. Click the **Raw** button to get the raw URL for a file. +Arquivos de texto acima de **5 MB** somente estão disponíveis por meio de suas URLs não processadas, que são servidas em `{% data variables.product.raw_github_com %}`; por exemplo, `https://{% data variables.product.raw_github_com %}/octocat/Spoon-Knife/master/index.html`. Clique no botão **Não processado** para obter a URL não processada de um arquivo. ### Limites de diff @@ -126,7 +126,7 @@ Algumas partes de um diff limitado podem ser exibidas, mas qualquer excedente de ### Limites de listas de commits -As páginas de visualização comparada e pull requests exibem uma lista de commits entre as revisões `base` e `head`. These lists are limited to **250** commits. Caso o limite seja excedido, uma observação indicará que commits adicionais estão presentes (mas não são mostrados). +As páginas de visualização comparada e pull requests exibem uma lista de commits entre as revisões `base` e `head`. Essas listas são limitadas a **250** commits. Caso o limite seja excedido, uma observação indicará que commits adicionais estão presentes (mas não são mostrados). ## Leia mais diff --git a/translations/pt-BR/content/repositories/creating-and-managing-repositories/transferring-a-repository.md b/translations/pt-BR/content/repositories/creating-and-managing-repositories/transferring-a-repository.md index 4093783174..140953a966 100644 --- a/translations/pt-BR/content/repositories/creating-and-managing-repositories/transferring-a-repository.md +++ b/translations/pt-BR/content/repositories/creating-and-managing-repositories/transferring-a-repository.md @@ -31,7 +31,7 @@ Pré-requisitos para transferências no repositório: - Ao transferir um repositório que possui para outra conta pessoal, o novo proprietário receberá um e-mail de confirmação.{% ifversion fpt or ghec %} O e-mail de confirmação inclui instruções para aceitar a transferência. Se o novo proprietário não aceitar a transferência em um dia, o convite vai expirar.{% endif %} - Para transferir um repositório que você possui para uma organização, é preciso ter permissão para criar um repositório na organização de destino. - A conta de destino não deve ter um repositório com o mesmo nome ou uma bifurcação na mesma rede. -- O proprietário original do repositório é adicionado como colaborador no repositório transferido. Other collaborators to the transferred repository remain intact.{% ifversion ghes < 3.7 %} +- O proprietário original do repositório é adicionado como colaborador no repositório transferido. Outros colaboradores no repositório transferido permanecem intactos.{% ifversion ghes < 3.7 %} - Os repositórios internos não podem ser transferidos.{% endif %} - Bifurcações privadas não podem ser transferidas. diff --git a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md index 5d34fb20d2..c1bd353596 100644 --- a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md +++ b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md @@ -48,7 +48,7 @@ Para reduzir o tamanho do seu arquivo CODEOWNERS, considere o uso de padrões cu ## Sintaxe de CODEOWNERS -Um arquivo CODEOWNERS usa um padrão que segue a maioria das mesmas regras usadas nos arquivos [gitignore](https://git-scm.com/docs/gitignore#_pattern_format), com [algumas exceções](#syntax-exceptions). O padrão é seguido por um ou mais nomes de usuário ou nomes de equipe do {% data variables.product.prodname_dotcom %} usando o formato padrão `@username` ou `@org/team-name`. Users and teams must have explicit `write` access to the repository, even if the team's members already have access. +Um arquivo CODEOWNERS usa um padrão que segue a maioria das mesmas regras usadas nos arquivos [gitignore](https://git-scm.com/docs/gitignore#_pattern_format), com [algumas exceções](#syntax-exceptions). O padrão é seguido por um ou mais nomes de usuário ou nomes de equipe do {% data variables.product.prodname_dotcom %} usando o formato padrão `@username` ou `@org/team-name`. Os usuários e as equipes devem ter acesso explícito de `gravação` para o repositório, mesmo que os integrantes da equipe já tenham acesso. {% ifversion fpt or ghec%}Na maioria dos casos você{% else %}Você{% endif %} também pode se referir a um usuário por um endereço de e-mail que foi adicionado a sua conta em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}, por exemplo, `user@example tom`. {% ifversion fpt or ghec %} Você não pode usar um endereço de e-mail para fazer referência a um {% data variables.product.prodname_managed_user %}. Para obter mais informações sobre {% data variables.product.prodname_managed_users %}, consulte "[Sobre {% data variables.product.prodname_emus %}](/enterprise-cloud@latest/admin/identity-and-access-management/managing-iam-with-enterprise-managed-users/about-enterprise-managed-users){% ifversion fpt %}" na documentação de {% data variables.product.prodname_ghe_cloud %}.{% else %}."{% endif %}{% endif %} diff --git a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md index c030b96573..c98221d36a 100644 --- a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md +++ b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes.md @@ -65,3 +65,6 @@ Um README deve conter apenas as informações necessárias para desenvolvedores - "[Adicionar um arquivo a um repositório](/articles/adding-a-file-to-a-repository)" - "[Tornar READMEs legíveis](https://github.com/18F/open-source-guide/blob/18f-pages/pages/making-readmes-readable.md)" da 18F +{%- ifversion fpt or ghec %} +- "[Adding an 'Open in GitHub Codespaces' badge](/codespaces/setting-up-your-project-for-codespaces/adding-a-codespaces-badge)" +{%- endif %} diff --git a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md index c4678ef37d..64aa9bd18c 100644 --- a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md +++ b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository.md @@ -18,7 +18,7 @@ shortTitle: Exibir um botão de patrocinador Para configurar o botão de patrocinador, edite um arquivo _FUNDING.yml_ na pasta `.github` do repositório, no branch padrão. É possível configurar o botão para incluir desenvolvedores patrocinados no {% data variables.product.prodname_sponsors %}, em plataformas de financiamento externas ou em uma URL de financiamento personalizado. Para obter mais informações a respeito do {% data variables.product.prodname_sponsors %}, consulte "[Sobre o GitHub Sponsors](/sponsors/getting-started-with-github-sponsors/about-github-sponsors)". -Você pode adicionar um nome de usuário, de pacote ou de projeto por plataforma de financiamento externa e até quatro URLs personalizadas. You can add one organization and up to four sponsored developers in {% data variables.product.prodname_sponsors %}. Adicione cada plataforma em uma nova linha, usando a seguinte sintaxe: +Você pode adicionar um nome de usuário, de pacote ou de projeto por plataforma de financiamento externa e até quatro URLs personalizadas. Você pode adicionar uma organização e até quatro desenvolvedores patrocinados em {% data variables.product.prodname_sponsors %}. Adicione cada plataforma em uma nova linha, usando a seguinte sintaxe: | Plataforma | Sintaxe | | ----------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | diff --git a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md index a333f2fae9..349867a03a 100644 --- a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md +++ b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/disabling-project-boards-in-a-repository.md @@ -1,6 +1,6 @@ --- -title: 'Disabling {% data variables.projects.projects_v1_boards %} in a repository' -intro: 'Repository administrators can turn off {% data variables.projects.projects_v1_boards %} for a repository if you or your team manages work differently.' +title: 'Desabilitando {% data variables.projects.projects_v1_boards %} em um repositório' +intro: 'Os administradores do repositório podem desativar {% data variables.projects.projects_v1_boards %} para um repositório, se você ou sua equipe gerenciarem trabalhos de forma diferente.' redirect_from: - /github/managing-your-work-on-github/managing-project-boards/disabling-project-boards-in-a-repository - /articles/disabling-project-boards-in-a-repository @@ -13,14 +13,14 @@ versions: ghec: '*' topics: - Pull requests -shortTitle: 'Disable {% data variables.projects.projects_v1_boards %}' +shortTitle: 'Desabilite {% data variables.projects.projects_v1_boards %}' allowTitleToDifferFromFilename: true --- -When you disable {% data variables.projects.projects_v1_boards %}, you will no longer see {% data variables.projects.projects_v1_board %} information in timelines or [audit logs](/articles/reviewing-your-security-log/). +Ao desabilitar {% data variables.projects.projects_v1_boards %}, você não verá mais as informações de {% data variables.projects.projects_v1_board %} em linhas do tempo ou em [logs de auditoria](/articles/reviewing-your-security-log/). {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} 3. Em "Features" (Recursos), desmarque a caixa de seleção **Projects** (Projetos). ![Caixa de seleção Remove Projects (Remover projetos)](/assets/images/help/projects/disable-projects-checkbox.png) -After {% data variables.projects.projects_v1_boards %} are disabled, existing {% data variables.projects.projects_v1_boards %} are inaccessible at their previous URLs. {% data reusables.organizations.disable_project_board_results %} +Após {% data variables.projects.projects_v1_boards %} ser desabilitado, {% data variables.projects.projects_v1_boards %} existente poderá ser acessado nas suas URLs anteriores. {% data reusables.organizations.disable_project_board_results %} diff --git a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md index 0e76db15bc..2ccb44ce8f 100644 --- a/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md +++ b/translations/pt-BR/content/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository.md @@ -1,24 +1,24 @@ --- -title: Managing the commit signoff policy for your repository -intro: 'You can require users to automatically sign off on the commits they make to your repository using {% data variables.product.product_name %}''s web interface.' +title: Gerenciando a política de assinatura do commit para seu repositório +intro: 'Você pode exigir que os usuários assinem automaticamente os commits que criarem no seu repositório usando a interface web do {% data variables.product.product_name %}.' versions: feature: commit-signoffs permissions: Organization owners and repository administrators can require all commits to a repository to be signed off by the commit author. topics: - Repositories -shortTitle: Manage the commit signoff policy +shortTitle: Gerenciar a política de aprovação de commit --- -## About commit signoffs +## Sobre as autorizações de commit -Commit signoffs enable users to affirm that a commit complies with the rules and licensing governing a repository. You can enable compulsory commit signoffs on individual repositories for users committing through {% data variables.product.product_location %}'s web interface, making signing off on a commit a seemless part of the commit process. Once compulsory commit signoffs are enabled for a repository, every commit made to that repository through {% data variables.product.product_location %}'s web interface will automatically be signed off on by the commit author. +As assinaturas de commits permitem que os usuários afirmem que um commit cumpre as regras e licenciamento que regem um repositório. Você pode habilitar assinaturas de commit obrigatórias em repositórios individuais para os usuários que fazem commit através da interface web do {% data variables.product.product_location %}, tornando a assinatura de um commit uma parte integrante do processo de commit. Uma vez que as assinaturas obrigatórias de commit estiverem habilitadas para um repositório, cada commit criado para esse repositório por meio da interface web do {% data variables.product.product_location %} será automaticamente assinado pelo autor do commit. -Organization owners can also enable compulsory commit signoffs at the organization level. For more information, see "[Managing the commit signoff policy for your organization](/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization)." +Os proprietários da organização também podem habilitar assinaturas de commit obrigatórias no nível da organização. Para obter mais informações, consulte "[Gerenciando a política de assinatura de commit para a sua organização](/organizations/managing-organization-settings/managing-the-commit-signoff-policy-for-your-organization)". {% data reusables.repositories.commit-signoffs %} -## Enabling or disabling compulsory commit signoffs for your repository +## Habilitando ou desabilitando as assinaturas obrigatórias de commit para o seu repositório {% data reusables.repositories.navigate-to-repo %} {% data reusables.repositories.sidebar-settings %} -1. Select **Require contributors to sign off on web-based commits**. ![Screenshot of Require contributors to sign off on web-based commits](/assets/images/help/repository/require-signoffs.png) +1. Selecione **Exigir que os contribuidores assinem os commits baseados na web**. ![Captura de tela dos contribuidores obrigatórios para assinar commits baseados na web](/assets/images/help/repository/require-signoffs.png) diff --git a/translations/pt-BR/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md b/translations/pt-BR/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md index e6f77eeb6a..78c55b1fed 100644 --- a/translations/pt-BR/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md +++ b/translations/pt-BR/content/repositories/working-with-files/managing-files/adding-a-file-to-a-repository.md @@ -1,6 +1,6 @@ --- title: Adicionar um arquivo a um repositório -intro: 'Você pode fazer o upload e o commit de um arquivo existente para um repositório no {% data variables.product.product_name %} ou usando a linha de comando.' +intro: 'Você pode fazer o upload e o commit de um arquivo existente para um repositório em {% data variables.product.product_name %} ou usando a linha de comando.' redirect_from: - /articles/adding-a-file-to-a-repository - /github/managing-files-in-a-repository/adding-a-file-to-a-repository @@ -22,7 +22,7 @@ shortTitle: Adicionar um arquivo ## Adicionando um arquivo a um repositório em {% data variables.product.product_name %} -Os arquivos que você adiciona a um repositório por meio do navegador são limitados a {% data variables.large_files.max_github_browser_size %} por arquivo. É possível adicionar arquivos maiores, de até {% data variables.large_files.max_github_size %} cada um, usando a linha de comando. Para obter mais informações, consulte "[Adicionar um arquivo a um repositório usando a linha de comando](#adding-a-file-to-a-repository-using-the-command-line)". To add files larger than {% data variables.large_files.max_github_size %}, you must use {% data variables.large_files.product_name_long %}. For more information, see "[About large files on {% data variables.product.product_name %}](/repositories/working-with-files/managing-large-files/about-large-files-on-github)." +Os arquivos que você adiciona a um repositório por meio do navegador são limitados a {% data variables.large_files.max_github_browser_size %} por arquivo. É possível adicionar arquivos maiores, de até {% data variables.large_files.max_github_size %} cada um, usando a linha de comando. Para obter mais informações, consulte "[Adicionar um arquivo a um repositório usando a linha de comando](#adding-a-file-to-a-repository-using-the-command-line)". Para adicionar arquivos maiores que {% data variables.large_files.max_github_size %}, você deve usar {% data variables.large_files.product_name_long %}. Para obter mais informações, consulte "[Sobre arquivos grandes em {% data variables.product.product_name %}](/repositories/working-with-files/managing-large-files/about-large-files-on-github)." {% tip %} diff --git a/translations/pt-BR/content/repositories/working-with-files/using-files/working-with-non-code-files.md b/translations/pt-BR/content/repositories/working-with-files/using-files/working-with-non-code-files.md index 70dc064c89..71226163b4 100644 --- a/translations/pt-BR/content/repositories/working-with-files/using-files/working-with-non-code-files.md +++ b/translations/pt-BR/content/repositories/working-with-files/using-files/working-with-non-code-files.md @@ -363,7 +363,7 @@ Ao visualizar o arquivo no repositório, ele é interpretado como um gráfico de Se o seu gráfico não faz nenhuma interpretação, verifique se ele contém uma sintaxe válida do Markdown do Mermaid, verificando sua carta com [editor ativo do Mermaid](https://mermaid.live/edit). -If the chart displays, but does not appear as you'd expect, you can create a new [{% data variables.product.prodname_github_community %} discussion](https://github.com/orgs/community/discussions/categories/general), and add the `Mermaid` label. +Se o gráfico for exibido, mas não aparecer como você esperara, você poderá uma nova [discussão de {% data variables.product.prodname_github_community %} discussão](https://github.com/orgs/community/discussions/categories/general) e adicionar a etiqueta `Mermaid`. #### Problemas conhecidos diff --git a/translations/pt-BR/content/rest/actions/cache.md b/translations/pt-BR/content/rest/actions/cache.md index 2c0dcb2956..67035b74c3 100644 --- a/translations/pt-BR/content/rest/actions/cache.md +++ b/translations/pt-BR/content/rest/actions/cache.md @@ -13,4 +13,4 @@ versions: ## About a API do cache -A API do cache do {% data variables.product.prodname_actions %} permite que você consulte e gerencie o cache {% data variables.product.prodname_actions %} para repositórios. {% ifversion actions-cache-management %}You can also install a {% data variables.product.prodname_cli %} extension to manage your caches from the command line. {% endif %}For more information, see "[Caching dependencies to speed up workflows](/actions/advanced-guides/caching-dependencies-to-speed-up-workflows#managing-caches)." +A API do cache do {% data variables.product.prodname_actions %} permite que você consulte e gerencie o cache {% data variables.product.prodname_actions %} para repositórios. {% ifversion actions-cache-management %}Você também pode instalar uma extensão de {% data variables.product.prodname_cli %} para gerenciar seus caches a partir da linha de comando. {% endif %}Para obter mais informações, consulte "[Dependências de cache para acelerar os fluxos de trabalho](/actions/advanced-guides/caching-dependencies-to-speed-up-workflows#managing-caches)". diff --git a/translations/pt-BR/content/rest/apps/installations.md b/translations/pt-BR/content/rest/apps/installations.md index 2ef081090b..b477c12348 100644 --- a/translations/pt-BR/content/rest/apps/installations.md +++ b/translations/pt-BR/content/rest/apps/installations.md @@ -17,4 +17,4 @@ versions: Uma _instalação_ refere-se a qualquer usuário ou conta de organização que instalou o aplicativo. Para obter informações sobre como efetuar a autenticação como uma instalação e limitar o acesso a repositórios específicos, consulte "[Efetuar a autenticação como uma instalação](/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation)". -Para listar todas as instalações do aplicativo GitHub para uma organização, consulte "[Listar instalações de aplicativos para uma organização](/rest/reference/orgs#list-app-installations-for-an-organization)". +Para listar todas as instalações do aplicativo GitHub para uma organização, consulte "[Listar instalações de aplicativos para uma organização](/rest/orgs/orgs#list-app-installations-for-an-organization)". diff --git a/translations/pt-BR/content/rest/deployments/branch-policies.md b/translations/pt-BR/content/rest/deployments/branch-policies.md index 77279b9fe8..b6cb80a805 100644 --- a/translations/pt-BR/content/rest/deployments/branch-policies.md +++ b/translations/pt-BR/content/rest/deployments/branch-policies.md @@ -1,8 +1,8 @@ --- -title: Deployment branch policies +title: Políticas de branch de implantação allowTitleToDifferFromFilename: true -shortTitle: Deployment branch policies -intro: The Deployment branch policies API allows you to manage custom deployment branch policies. +shortTitle: Políticas de branch de implantação +intro: A API de políticas de branch de implantação permite que você gerencie políticas personalizadas de branch de implantação. versions: fpt: '*' ghes: '*' @@ -13,8 +13,8 @@ topics: miniTocMaxHeadingLevel: 3 --- -## About the Deployment branch policies API +## Sobre a API das políticas de branch de implantação -The Deployment branch policies API allows you to specify custom name patterns that branches must match in order to deploy to an environment. The `deployment_branch_policy.custom_branch_policies` property for the environment must be set to `true` to use these endpoints. To update the `deployment_branch_policy` for an environment, see "[Create or update an environment](/rest/deployments/environments#create-or-update-an-environment)." +A API de políticas de branch de implantação permite que você especifique padrões de nome personalizados aos quais os branchs devem corresponder para fazer a implantação em um ambiente. A propriedade `deployment_branch_policy.custom_branch_policy` para o ambiente deve ser definida como `verdadeiro` para usar estas extremidades. Para atualizar o `deployment_branch_policy` para um ambiente, consulte "[Criando ou atualizando um ambiente](/rest/deployments/environments#create-or-update-an-environment)". -For more information about restricting environment deployments to certain branches, see "[Using environments for deployment](/actions/deployment/targeting-different-environments/using-environments-for-deployment#deployment-branches)." +Para obter mais informações sobre como restringir implantações de ambiente em certos branches, consulte "[Usando ambientes para implantação](/actions/deployment/targeting-different-environments/using-environments-for-deployment#deployment-branches). ". diff --git a/translations/pt-BR/content/rest/deployments/deployments.md b/translations/pt-BR/content/rest/deployments/deployments.md index 3b5dd1922a..1b3a87d635 100644 --- a/translations/pt-BR/content/rest/deployments/deployments.md +++ b/translations/pt-BR/content/rest/deployments/deployments.md @@ -19,7 +19,7 @@ Os status de implantação externos permitem marcar implantações com `error`, Os status de implantação também podem incluir uma `descrição` opcional e `log_url`, que são altamente recomendados porque tornam o status de implantação mais útil. O `log_url` é a URL completa para a saída de implantação e a `descrição` é um resumo de alto nível do que aconteceu com a implantação. -O GitHub envia os eventos de `implantação` e `deployment_status` quando novas implantações de status de implantação são criadas. Esses eventos permitem que as integrações de terceiros recebam resposta para solicitações de implantação e atualizem o status de implantação conforme o progresso é feito. +O GitHub envia os eventos de `implantação` e `deployment_status` quando novas implantações de status de implantação são criadas. Esses eventos permitem que as integrações de terceiros recebam e respondam às solicitações de implantação e atualizem o status de implantação conforme o progresso é feito. Abaixo está um diagrama de sequência sobre para como essas interações funcionariam. diff --git a/translations/pt-BR/content/rest/guides/getting-started-with-the-checks-api.md b/translations/pt-BR/content/rest/guides/getting-started-with-the-checks-api.md index 93eba6bfd7..917f8978ab 100644 --- a/translations/pt-BR/content/rest/guides/getting-started-with-the-checks-api.md +++ b/translations/pt-BR/content/rest/guides/getting-started-with-the-checks-api.md @@ -41,7 +41,7 @@ Uma execução de verificação é um teste individual que faz parte de um conju ![Fluxo de trabalho das execuções de verificação](/assets/images/check_runs.png) -Se uma execução de verificação estiver em um estado incompleto por mais de 14 dias, a execução de verificação `conclusão` irá tornar-se `obsoleta` e será exibida em {% data variables.product.prodname_dotcom %} como obsoleto com {% octicon "issue-reopened" aria-label="The issue-reopened icon" %}. Somente {% data variables.product.prodname_dotcom %} pode marcar a execuções de verificação como `obsoleto`. Para obter mais informações sobre possíveis conclusões de uma execução de verificação, consulte o parâmetro [`conclusão`](/rest/reference/checks#create-a-check-run--parameters). +Se uma execução de verificação estiver em estado incompleto por mais de 14 dias, a execução de verificação `conclusão` irá tornar-se `obsoleta` e será exibida em {% data variables.product.prodname_dotcom %} como obsoleta com {% octicon "issue-reopened" aria-label="The issue-reopened icon" %}. Somente {% data variables.product.prodname_dotcom %} pode marcar a execuções de verificação como `obsoleto`. Para obter mais informações sobre possíveis conclusões de uma execução de verificação, consulte o parâmetro [`conclusão`](/rest/reference/checks#create-a-check-run--parameters). Assim que você receber o webhook de [`check_suite`](/webhooks/event-payloads/#check_suite), você poderá criar a execução de verificação, mesmo que a verificação não esteja completa. Você pode atualizar o `status` da execução de verificação, pois ele é completado com os valores de `queued`, `in_progress` ou `completed`, e você poderá atualizar a saída de `` conforme mais informações forem disponibilizadas. Uma verificação de execução pode conter registros de hora, um link para obter mais informações sobre o seu site externo, anotações detalhadas para linhas específicas de código, e informações sobre a análise realizada. diff --git a/translations/pt-BR/content/rest/guides/getting-started-with-the-rest-api.md b/translations/pt-BR/content/rest/guides/getting-started-with-the-rest-api.md index 940cef7d5c..3b7bf73726 100644 --- a/translations/pt-BR/content/rest/guides/getting-started-with-the-rest-api.md +++ b/translations/pt-BR/content/rest/guides/getting-started-with-the-rest-api.md @@ -1,9 +1,6 @@ --- title: Primeiros passos com a API REST -intro: 'Aprenda os fundamentos para usar a API REST, começando com a autenticação e alguns exemplos de pontos de extremidade.' -redirect_from: - - /guides/getting-started - - /v3/guides/getting-started +intro: 'Aprenda a usar a API REST de {% data variables.product.prodname_dotcom %}.' versions: fpt: '*' ghes: '*' @@ -11,418 +8,754 @@ versions: ghec: '*' topics: - API -shortTitle: Primeiros passos - REST API +shortTitle: Usando a API +miniTocMaxHeadingLevel: 3 --- +## Sobre a API REST de {% data variables.product.prodname_dotcom %} -Vamos andar pelos conceitos básicos da API, à medida que abordamos alguns casos de uso diário. +Esse artigo descreve como usar a API REST de {% data variables.product.prodname_dotcom %}, usando {% data variables.product.prodname_cli %}, JavaScript ou cURL. Para um guia de início rápido, consulte " Quickstart[Início rápido para a API REST do GitHub](/rest/quickstart)." -{% data reusables.rest-api.dotcom-only-guide-note %} +Ao fazer uma solicitação para a API REST, você especifica um método HTTP e um caminho. Além disso, você também pode especificar cabeçalhos de solicitação e caminho, consulta ou parâmetros de texto. A API retornará o código de status de resposta, cabeçalhos de resposta e, potencialmente, um texto de resposta. -## Visão Geral +A documentação de referência da API REST descreve o método HTTP, o caminho e os parâmetros para cada operação. Els também exibe exemplos de solicitações e respostas para cada operação. Para obter mais informações, consulte a [Documentação de referência de REST](/rest). -A maioria dos aplicativos usará uma [biblioteca de segurança][wrappers] existente na linguagem da sua escolha, mas é importante familiarizar-se primeiro com os métodos HTTP e de API subjacentes. +## Fazendo uma solicitação -Não há uma maneira mais de fazê-lo do que através do [cURL][curl].{% ifversion fpt or ghec %} Se você estiver usando um cliente alternativo, observe que você será obrigado a enviar um [cabeçalho do agente de usuário](/rest/overview/resources-in-the-rest-api#user-agent-required) válido na sua solicitação.{% endif %} +Para fazer uma solicitação, primeiro encontre o método HTTP e o caminho para a operação que você deseja usar. Por exemplo, a operação "Obter Octocat" usa o método `GET` e o caminho `/octocat`. Para a documentação completa de referência para esta operação, consulte "[Obter Octocat](/rest/meta#get-octocat)". -### Hello World +{% cli %} -Vamos começar testando a nossa configuração. Abra uma instrução de comando e digite o comando a seguir: +{% note %} + +**Observação**: Você deve instalar {% data variables.product.prodname_cli %} para usar os comandos nos exemplos de {% data variables.product.prodname_cli %}. Para obter instruções de instalação, consulte o [repositório de {% data variables.product.prodname_cli %}](https://github.com/cli/cli#installation). + +{% endnote %} + +Se você ainda não está efetuando a autenticação em {% data variables.product.prodname_cli %}, você deve usar o subcomando de autenticação `gh login` para efetuar a autenticação antes de fazer qualquer solicitação. Para obter mais informações, consulte "[Efetuando a autenticação](#authenticating)". + +Para fazer uma solicitação usando {% data variables.product.prodname_cli %}, use o subcomando `api` junto com o caminho. Use o sinalizador `--method` ou `-X` para especificar o método. ```shell -$ curl https://api.github.com/zen - -> Keep it logically awesome. +gh api /octocat --method GET ``` -A resposta será uma seleção aleatória das nossas filosofias de design. +{% endcli %} -Next, let's `GET` [Chris Wanstrath's][defunkt github] [GitHub profile][users api]: +{% javascript %} + +{% note %} + +**Observação**: Você deve instalar e importar o `octokit` para usar a biblioteca Octokit.js usada nos exemplos de JavaScript. Para obter mais informações, consulte [o README do Octokit.js](https://github.com/octokit/octokit.js/#readme). + +{% endnote %} + +Para fazer uma solicitação usando o JavaScript, você pode usar o Octokit.js. Para obter mais informações, consulte [o README do Octokit.js](https://github.com/octokit/octokit.js/#readme). + +Primeiro, crie uma instância de `Octokit`.{% ifversion ghes or ghae %} Defina a URL de base como `{% data variables.product.api_url_code %}`. Substitua `[hostname]` pelo nome de {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}", +{% endif %}}); +``` + +Em seguida, use o método `solicitação` para fazer solicitações. Passe o método HTTP e o caminho como o primeiro argumento. + +```javascript +await octokit.request("GET /octocat", {}); +``` + +{% endjavascript %} + +{% curl %} + +Anteponha a URL base para a API REST de {% data variables.product.prodname_dotcom %}, `{% data variables.product.api_url_code %}`, para o caminho para obter a URL completa: `{% data variables.product.api_url_code %}/octocat`.{% ifversion ghes or ghae %} Substitua `[hostname]` pelo nome de {% data variables.product.product_location %}.{% endif %} + +Use o comando `curl` na sua linha de comando. Use o sinalizador `--request` ou `-X` seguido do método HTTP. Use o sinalizador `--url` seguido da URL completa. ```shell -# GET /users/defunkt -$ curl https://api.github.com/users/defunkt - -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> ... -> } +curl --request GET \ +--url "https://api.github.com/octocat" ``` -Mmmmm, tastes like [JSON][json]. Vamos adicionar o sinalizador `-i` para incluir cabeçalhos: +{% note %} + +**Observação**: Se você receber uma mensagem semelhante a command not found: curl", talvez você tenha de fazer o download e instalar o cURL. Para obter mais informações, consulte [a página de download do projeto do cURL](https://curl.se/download.html). + +{% endnote %} + +{% endcurl %} + +Continue lendo para aprender como efetuar a autenticação, enviar parâmetros e usar a resposta. + +## Autenticando + +Muitas operações exigem autenticação ou devolução de informações adicionais se você estiver autenticado. Além disso, você pode fazer mais solicitações quando estiver autenticado.{% cli %} Embora algumas operações da API REST possam ser acessadas sem autenticação, você deve efetuar a autenticação em {% data variables.product.prodname_cli %} para usar o subcomando `api` .{% endcli %} + +### Sobre tokens + +Você pode autenticar a sua solicitação adicionando um token. + +Se você deseja usar a API REST de {% data variables.product.company_short %} para uso pessoal, você pode criar um token de acesso pessoal (PAT). As operações da API REST usadas neste artigo exigem um escopo `repo` para tokens de acesso pessoal. Outras operações podem exigir diferentes escopos. Para obter mais informações sobre a criação de um token de acesso pessoal, consulte[Criando um token de acesso pessoal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." + +Se você quiser usar a API em nome de uma organização ou outro usuário, {% data variables.product.company_short %} recomenda que você use um {% data variables.product.prodname_github_app %}. Se uma operação estiver disponível para {% data variables.product.prodname_github_apps %}, a documentação de referência REST para essa operação dirá "Funciona com aplicativos GitHub". As operações da API REST usadas neste artigo exigem permissões de leitura e gravação de `problemas` para {% data variables.product.prodname_github_apps %}. Outras operações podem exigir diferentes permissões. Para obter mais informações, consulte "[Criando um aplicativo GitHub](/developers/apps/building-github-apps/creating-a-github-app)", "[Efetuando a autenticação com aplicativos GitHub](/developers/apps/building-github-apps/authenticating-with-github-apps) e "[Identificando e autorizando os usuários pelos aplicativos GitHub](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)". + +Se você quiser usar a API em um fluxo de trabalho de {% data variables.product.prodname_actions %}, {% data variables.product.company_short %} recomenda que você efetue a autenticação com o `GITHUB_TOKEN` ao invés de criar um token. Você pode conceder permissões para o `GITHUB_TOKEN` com a tecla `permissões`. Para obter mais informações, consulte "[Autenticação automática de tokens](/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)". + +### Exemplo de autenticação + +{% cli %} + +Com {% data variables.product.prodname_cli %}, você não precisa criar um token de acesso antecipadamente. Use o subcomando `auth login` para efetuar a autenticação em {% data variables.product.prodname_cli %}: ```shell -$ curl -i https://api.github.com/users/defunkt - -> HTTP/2 200 -> server: GitHub.com -> date: Thu, 08 Jul 2021 07:04:08 GMT -> content-type: application/json; charset=utf-8 -> cache-control: public, max-age=60, s-maxage=60 -> vary: Accept, Accept-Encoding, Accept, X-Requested-With -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" -> last-modified: Fri, 01 Nov 2019 21:56:00 GMT -> x-github-media-type: github.v3; format=json -> access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, Deprecation, Sunset -> access-control-allow-origin: * -> strict-transport-security: max-age=31536000; includeSubdomains; preload -> x-frame-options: deny -> x-content-type-options: nosniff -> x-xss-protection: 0 -> referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin -> content-security-policy: default-src 'none' -> x-ratelimit-limit: 60 -> x-ratelimit-remaining: 53 -> x-ratelimit-reset: 1625731053 -> x-ratelimit-resource: core -> x-ratelimit-used: 7 -> accept-ranges: bytes -> content-length: 1305 -> x-github-request-id: 9F60:7019:ACC5CD5:B03C931:60E6A368 -> -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> -> ... -> } +gh auth login ``` -Há algumas partes interessantes nos cabeçalhos da resposta. Como esperado, o `Content-Type` é `application/json`. +Você pode usar o sinalizador `--escopes` para especificar quais escopos você quer. Se você deseja efetuar a autenticação com um token que você criou, você pode usar o sinalizador `--with-token`. Para obter mais informações, consulte a [documentação de {% data variables.product.prodname_cli %} `login de autenticação`](https://cli.github.com/manual/gh_auth_login). -Qualquer cabeçalho que começar com `X -` é um cabeçalho personalizado e não está incluído nas especificações de HTTP. Por exemplo, anote os cabeçalhos `X-RateLimit-Limit` e `X-RateLimit-Remaining`. This pair of headers indicate [how many requests a client can make][rate-limiting] in a rolling time period (typically an hour) and how many of those requests the client has already spent. +{% endcli %} -## Autenticação - -Clientes sem autenticação podem fazer 60 solicitações por hora. Para obter mais solicitações por hora, precisaremos _efetuar a autenticação_. 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]. - -### Usar tokens de acesso pessoal - -A maneira melhor e mais fácil de efetuar a autenticação com a {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API é usando a Autenticação Básica [por meio dos tokens do OAuth](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens). OAuth tokens include [personal access tokens][personal token]. - -Use um sinalizador `-u` para definir o seu nome de usuário: - -```shell -$ curl -i -u your_username {% data variables.product.api_url_pre %}/users/octocat - -``` - -Quando solicitado, você poderá inserir o seu token OAuth, mas nós recomendamos que você configure uma variável para isso: - -Você pode usar `-u "your_username:$token"` e configurar uma variável para `token` para evitar deixar seu token no histórico do shell, o que deve ser evitado. - -```shell -$ curl -i -u your_username:$token {% data variables.product.api_url_pre %}/users/octocat - -``` - -Ao efetuar a autenticação, você deverá ver seu limite de taxa disparado para 5.000 slicitações por hora, conforme indicado no cabeçalho `X-RateLimit-Limit`. Além de fornecer mais chamadas por hora, a autenticação permite que você leia e escreva informações privadas usando a API. - -You can easily [create a **personal access token**][personal token] using your [Personal access tokens settings page][tokens settings]: +{% javascript %} {% warning %} -Para ajudar a manter suas informações seguras, é altamente recomendável definir um vencimento para seus tokens de acesso pessoal. +**Aviso**: Trate seu token de acesso como uma senha. + +Para manter seu token seguro, você pode armazenar o seu token como um segredo e executar o seu script através de {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". + +{% ifversion ghec or fpt %}Você também pode armazenar seu token como um segredo de {% data variables.product.prodname_codespaces %} e executar seu script em {% data variables.product.prodname_codespaces %}. Para obter mais informações, consulte "[Gerenciar segredos criptografados para seus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + +Se essas opções não forem possíveis, considere usar outro serviço como [o 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para armazenar seu token de forma segura. {% endwarning %} -{% ifversion fpt or ghes or ghec %} -![Seleção de Token Pessoal](/assets/images/personal_token.png) +Para efetuar a autenticação com a biblioteca do Octokit.js, você pode passar seu token ao criar uma instância de `Octokit`. Substitua `YOUR-TOKEN` pelo seu token.{% ifversion ghes or ghae %} Substitua `[hostname]` pelo nome de {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: 'YOUR-TOKEN', +}); +``` + +{% endjavascript %} + +{% curl %} + +{% warning %} + +**Aviso**: Trate seu token de acesso como uma senha. + +Para ajudar a manter sua conta segura, você pode usar {% data variables.product.prodname_cli %} ao invés de cURL. O {% data variables.product.prodname_cli %} cuidará da autenticação para você. Para obter mais informações, consulte a versão de {% data variables.product.prodname_cli %} desta página. + +{% ifversion ghec or fpt %}Você também pode armazenar seu token como um segredo de {% data variables.product.prodname_codespaces %} e usar a linha de comando através de {% data variables.product.prodname_codespaces %}. Para obter mais informações, consulte "[Gerenciar segredos criptografados para seus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + +Se essas opções não forem possíveis, considere usar outro serviço como [o 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para armazenar seu token de forma segura. + +{% endwarning %} + +Com cURL, você enviará um cabeçalho `Autorização` com seu token. Substitua `YOUR-TOKEN` pelo seu token: + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% note %} + +**Observação:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + +{% endcurl %} + +### Exemplo de autenticação para {% data variables.product.prodname_actions %} + +{% cli %} + +Você também pode usar a palavra-chave `executar` para executar comandos de {% data variables.product.prodname_cli %} nos seus fluxos de trabalho {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Sintaxe do fluxo de trabalho para o GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +Em vez de usar o comando de autenticação `gh login`, passe seu token como uma variável de ambiente denominada `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recomenda que você efetue a autenticação com o `GITHUB_TOKEN` integrado em vez de criar um token. Se isso não for possível, armazene seu token como um segredo e substitua `GITHUB_TOKEN` no exemplo abaixo pelo nome do seu segredo. Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação automática de token](/actions/security-guides/automatic-token-authentication)." Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api /octocat +``` + +{% endcli %} + +{% javascript %} + +Você também pode usar a palavra-chave `executar` para executar seus scripts do JavaScript nos seus fluxos de trabalho de {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Sintaxe do fluxo de trabalho para o GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recomenda que você efetue a autenticação com o `GITHUB_TOKEN` integrado em vez de criar um token. Se isso não for possível, armazene seu token como um segredo e substitua `GITHUB_TOKEN` no exemplo abaixo pelo nome do seu segredo. Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação automática de token](/actions/security-guides/automatic-token-authentication)." Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". + +O seguinte exemplo de fluxo de trabalho: + +1. Faz check-out do conteúdo do repositório +1. Configura o Node.js +1. Instala `octokit` +1. Armazena o valor de `GITHUB_TOKEN` como uma variável de ambiente denominada `TOKEN` e executa `.github/actions-scripts/use-the-api.mjs`, que pode acessar essa variável de ambiente como `process.env.TOKEN` + +Exemplo de fluxo de trabalho: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + node .github/actions-scripts/use-the-api.mjs +``` + +Exemplo de script do JavaScript, com o caminho do arquivo `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit"; + +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: process.env.TOKEN, +}); + +await octokit.request("GET /octocat", {}); +``` + +Em vez de armazenar seu script em um arquivo separado e executar o script do seu fluxo de trabalho, você pode usar a ação `actions/github-script` para executar um script. Para obter mais informações, consulte [actions/github-script README](https://github.com/actions/github-script). + +```yaml +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - uses: {% data reusables.actions.action-github-script %} + with: + github-token: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + script: | + await github.request('GET /octocat', {}) +``` + +{% endjavascript %} + +{% curl %} + +Você também pode usar a palavra-chave `executar` para executar comandos do cURL nos fluxos de trabalho {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Sintaxe do fluxo de trabalho para o GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recomenda que você efetue a autenticação com o `GITHUB_TOKEN` integrado em vez de criar um token. Se isso não for possível, armazene seu token como um segredo e substitua `GITHUB_TOKEN` no exemplo abaixo pelo nome do seu segredo. Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação automática de token](/actions/security-guides/automatic-token-authentication)." Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/octocat" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## Usando cabeçalhos + +A maioria das operações especifica que você deve passar um cabeçalho `Aceitar` com um valor de `application/vnd.github.v3+json`. Outras operações podem especificar que você deve enviar um cabeçalho `Aceitar` diferente ou cabeçalhos adicionais. + +{% cli %} + +Para enviar um cabeçalho com {% data variables.product.prodname_cli %}, utilize o sinalizador `--header` ou `-H` seguido pelo formato de cabeçalho em `key: value`. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /octocat +``` + +{% endcli %} + +{% javascript %} + +A biblioteca do Octokit.js passa automaticamente o cabeçalho <`Accept: application/vnd.github.v3+json`. Para passar cabeçalhos adicionais ou um outro cabeçalho `Aceitar`, adicione uma propriedade de `cabeçalhos` ao objeto que é passado como um segundo argumento ao mpetodo de `solicitação`. O valor da propriedade dos `cabeçalhos` propriedade é um objeto com os nomes de cabeçalho como chaves e valores de cabeçalho como valores. Por exemplo, para enviar um cabeçalho `content-type` com um valor de `text/plain`: + +```javascript +await octokit.request("GET /octocat", { + headers: { + "content-type": "text/plain", + }, +}); +``` + +{% endjavascript %} + +{% curl %} + +Para enviar um cabeçalho com cURL, use o sinalizador `--header` ou `-H` seguido pelo cabeçalho no formato `key: value`. + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% endcurl %} + +## Usando parâmetros de caminho + +Os parâmetros de caminho modificam o caminho da operação. Por exemplo, o caminho "Listar problemas de repositório" é `/repos/{owner}/{repo}/issues`. As chaves `{}` denotam parâmetros de caminhos que você precisa especificar. Neste caso, você deve especificar o proprietário e o nome do repositório. Para a documentação de referência para esta operação, consulte "[Listar problemas com o repositório](/rest/issues/issues#list-repository-issues)". + +{% cli %} + +{% ifversion ghes or ghae %} +{% note %} + +**Observação:** Para que este comando funcione para {% data variables.product.product_location %}, substitua `octocat/Spoon-Knife` por um repositório pertencente ao {% data variables.product.product_location %}. Caso contrário, execute novamente o comando `gh login` para efetuar a autenticação em {% data variables.product.prodname_dotcom_the_website %} em vez de {% data variables.product.product_location %}. + +{% endnote %} {% endif %} -{% ifversion ghae %} -![Seleção de Token Pessoal](/assets/images/help/personal_token_ghae.png) +Para obter problemas do repositório `octocat/Spoon-Knife`, substitua `{owner}` por `octocat` e `{repo}` por `Spoon-Knife`. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +{% ifversion ghes or ghae %} +{% note %} + +**Observação:** Para que este exemplo funcione para {% data variables.product.product_location %}, substitua `octocat/Spoon-Knife` por um repositório pertencente ao {% data variables.product.product_location %}. Caso contrário, crie uma nova instância `Octokit` e não especifique `baseURL`. + +{% endnote %} {% endif %} -As solicitações da API que usam um token de acesso pessoal vencido retornará a data de validade do token por meio do cabeçalho `GitHub-Authentication-Token-Expiration`. Você pode usar o cabeçalho nos seus scripts para fornecer uma mensagem de aviso quando o token estiver próximo da data de vencimento. +Ao fazer uma solicitação com Octokit.js, todos os parâmetros, incluindo os parâmetros de caminho, são passados em um objeto como o segundo argumento para o método `solicitação`. Para obter problemas do repositório `octocat/Spoon-Knife`, especifique `proprietário` como `octocat` e `repo` como `Spoon-Knife`. -### Obtenha seu próprio perfil de usuário - -Quando autenticado corretamente, você pode aproveitar as permissões associadas à sua conta em {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %}. Por exemplo, tente obter - -```shell -$ curl -i -u your_username:your_token {% data variables.product.api_url_pre %}/user - -> { -> ... -> "plan": { -> "space": 2516582, -> "collaborators": 10, -> "private_repos": 20, -> "name": "medium" -> } -> ... -> } +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife" +}); ``` -This time, in addition to the same set of public information we retrieved for [@defunkt][defunkt github] earlier, you should also see the non-public information for your user profile. Por exemplo, você verá um objeto `plano` na resposta, que fornece detalhes sobre o plano de {% data variables.product.product_name %} para a conta. +{% endjavascript %} -### Usar tokens do OAuth para aplicativos +{% curl %} -Os aplicativos que precisam ler ou escrever informações privadas usando a API em nome de outro usuário devem usar o [OAuth][oauth]. +Para obter problemas do repositório `octocat/Spoon-Knife`, substitua `{owner}` por `octocat` e `{repo}` por `Spoon-Knife`. Para criar o caminho completo, preencha a URL de base para a API REST de {% data variables.product.prodname_dotcom %}, `https://api.github.com`: `https://api.github.com/repos/octocat/Spoon-Knife/issues`. -O OAuth usa _tokens_. Os tokens fornecem dois grandes recursos: +{% ifversion ghes or ghae %} +{% note %} -* **Acesso revogável**: os usuários podem revogar a autorização a aplicativos de terceiros a qualquer momento -* **Acesso limitado**: os usuários podem revisar o acesso específico que um token fornecerá antes de autorizar um aplicativo de terceiros +**Observação:** Se você quiser usar {% data variables.product.product_location %} em vez de {% data variables.product.prodname_dotcom_the_website %}, use `{% data variables.product.api_url_code %}` em vez de `https://api.github.com` e substitua `[hostname]` pelo nome de {% data variables.product.product_location %}. Substitua `octocat/Spoon-Knife` por um repositório pertencente a {% data variables.product.product_location %}. -Os tokens devem ser criados por meio de um [fluxo web][webflow]. Um aplicativo envia os usuários para {% data variables.product.product_name %} para efetuar o login. {% data variables.product.product_name %} apresenta uma caixa de diálogo, que indica o nome do aplicativo, bem como o nível de acesso que o aplicativo tem uma após ser autorizado pelo usuário. Depois que um usuário autoriza o acesso, {% data variables.product.product_name %} redireciona o usuário de volta para o aplicativo: - -![Diálogo do GitHub's OAuth](/assets/images/oauth_prompt.png) - -**Trate os tokens de OAuth como senhas!** Não compartilhe-os com outros usuários ou armazene-os em lugares inseguros. Os tokens nestes exemplos são falsos e os nomes foram alterados para proteger os inocentes. - -Now that we've got the hang of making authenticated calls, let's move along to the [Repositories API][repos-api]. - -## Repositórios - -Quase qualquer uso significativo da {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API envolverá algum nível de informação do repositório. We can [`GET` repository details][get repo] in the same way we fetched user details earlier: +{% endnote %} +{% endif %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/twbs/bootstrap +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -In the same way, we can [view repositories for the authenticated user][user repos api]: +{% endcurl %} + +A operação retorna uma lista de problemas e dados sobre cada problema. Para obter mais informações sobre como usar a resposta, consulte a seção "[Usando a resposta](#using-the-response). + +## Usando parâmetros de consulta + +Os parâmetros de consulta permitem que você controle quais dados são retornados para uma solicitação. Por exemplo, um parâmetro de consulta pode permitir que você especifique quantos itens são retornados quando a resposta é paginada. + +Por padrão, a operação "Listar problemas do repositório" retorna trinta problemas, ordenados em ordem decrescente pela data em que eles foram criados. Você pode usar o parâmetro `per_page` para retornar dois problemas em vez de 30. Você pode usar o parâmetro `ordenar` para classificar os problemas pela data em que foram atualizados pela última vez de ordenar pela data em que foram criados. Você pode usar o parâmetro `direção` para classificar os resultados em ordem ascendente em vez de descemdente. + +{% cli %} + +Para {% data variables.product.prodname_cli %}, use o sinalizador `-F` para passar um parâmetro que é um número, booleano ou nulo. Use `-f` para passar parâmetros de string + +{% note %} + +**Observação**: {% data variables.product.prodname_cli %} no momento não aceita parâmetros que são matrizes. Para obter mais informações, consulte [este problema](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 -f sort=updated -f direction=asc ``` -Or, we can [list repositories for another user][other user repos api]: +{% endcli %} + +{% javascript %} + +Ao fazer uma solicitação com Octokit.js, todos os parâmetros, incluindo os parâmetros de consulta, são passados em um objeto como o segundo argumento para o método `solicitação`. + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + sort: "updated", + direction: "asc", +}); +``` + +{% endjavascript %} + +{% curl %} + +Para o cURL, adicione um `?` ao final do caminho e, em seguida, anexe o nome e o valor do parâmetro de consulta na forma `parameter_name=value`. Separe os parâmetros múltiplos de consulta com `&`. ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/octocat/repos +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2&sort=updated&direction=asc" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -Or, we can [list repositories for an organization][org repos api]: +{% endcurl %} + +A operação retorna uma lista de problemas e dados sobre cada problema. Para obter mais informações sobre como usar a resposta, consulte a seção "[Usando a resposta](#using-the-response). + +## Usando parâmetros do texto + +Os parâmetros do texto permitem que você passe dados adicionais para a API. Por exemplo, a operação "Criar um problema" exige que você especifique um título para o novo problema. Ela também permite especificar outras informações, como texto para colocar no texto do problema. Para a documentação completa de referência para esta operação, consulte "[Criar um problema](/rest/issues/issues#create-an-issue)". + +A operação "Criar um problema" usa o mesmo caminho da operação "Listar problemas de repositório" nos exemplos acima, mas usa um método `POST` em vez de um método `GET`. + +{% cli %} + +Para {% data variables.product.prodname_cli %}, use o sinalizador `-F` para passar um parâmetro que é um número, booleano ou nulo. Use `-f` para passar parâmetros de string + +{% note %} + +**Observação**: {% data variables.product.prodname_cli %} no momento não aceita parâmetros que são matrizes. Para obter mais informações, consulte [este problema](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/orgs/octo-org/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method POST /repos/octocat/Spoon-Knife/issues -f title="Created with the REST API" -f body="This is a test issue created by the REST API" ``` -As informações retornadas dessas chamadas dependerão de quais escopos o nosso token terá quando efetuarmos a autenticação: +{% endcli %} -{%- ifversion fpt or ghec or ghes %} -* A token with `public_repo` [scope][scopes] returns a response that includes all public repositories we have access to see on {% data variables.product.product_location %}. -{%- endif %} -* A token with `repo` [scope][scopes] returns a response that includes all {% ifversion fpt %}public or private{% elsif ghec or ghes %}public, private, or internal{% elsif ghae %}private or internal{% endif %} repositories we have access to see on {% data variables.product.product_location %}. +{% javascript %} -As the [docs][repos-api] indicate, these methods take a `type` parameter that can filter the repositories returned based on what type of access the user has for the repository. Desta forma, podemos buscar apenas repositórios de propriedade direta, repositórios da organização ou repositórios nos quais o usuário colabora por meio de uma equipe. +Ao fazer uma solicitação com Octokit.js, todos os parâmetros, incluindo os parâmetros de texto, são passados em um objeto como o segundo argumento para o método `solicitação`. + +```javascript +await octokit.request("POST /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + title: "Created with the REST API", + body: "This is a test issue created by the REST API", +}); +``` + +{% endjavascript %} + +{% curl %} + +Para o cURL, use o sinalizador `--data` para passar os parâmetros de texto em um objeto do JSON. ```shell -$ curl -i "{% data variables.product.api_url_pre %}/users/octocat/repos?type=owner" +curl --request POST \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--data '{ + "title": "Created with the REST API", + "body": "This is a test issue created by the REST API" +}' ``` -Neste exemplo, pegamos apenas os repositórios que o octocat possui, não os nos quais ela colabora. Observe a URL entre aspas acima. Dependendo de sua configuração do shell, a cURL às vezes exigirá uma URL entre aspas ou irá ignorar a string de consulta. +{% endcurl %} -### Criar um repositório +A operação cria um problema e retorna dados sobre o novo problema. Na resposta, encontre o `html_url` do seu problema e acesse o seu problema no navegador. Para obter mais informações sobre como usar a resposta, consulte a seção "[Usando a resposta](#using-the-response). -Buscar informações para repositórios existentes é um caso de uso comum, mas a -{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} A API é compatível com a criação de novos repositórios também. To [create a repository][create repo], -precisamos `POST` alguns JSON que contém informações e opções de configuração. +## Usando a resposta + +### Sobre o código de resposta e cabeçalhos + +Cada solicitação retornará um código de status HTTP que indica o sucesso da resposta. Para obter mais informações sobre códigos de resposta, consulte [a documentação de código de status de resposta de HTTP MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status). + +Além disso, a resposta incluirá cabeçalhos que fornecem mais detalhes sobre a resposta. Os cabeçalhos que começam com `X-` ou `x-` são personalizados para {% data variables.product.company_short %}. Por exemplo, os cabeçalhos `x-ratelimit-remaining` e `x-ratelimit-reset` mostram quantas solicitações você pode fazer em um período de tempo. + +{% cli %} + +Para ver o código de status e os cabeçalhos, use o sinalizador `--include` ou `--i` ao enviar sua solicitação. + +Por exemplo, essa solicitação: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - -d '{ - "name": "blog", - "auto_init": true, - "private": true, - "gitignore_template": "nanoc" - }' \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 --include ``` -In this minimal example, we create a new private repository for our blog (to be served on [GitHub Pages][pages], perhaps). Embora o blogue {% ifversion not ghae %}seja público{% else %}, ele pode ser acessado por todos os integrantes da empresa{% endif %}, tornamos o repositório privado. In this single step, we'll also initialize it with a README and a [nanoc][nanoc]-flavored [.gitignore template][gitignore templates]. - -O repositório resultante será encontrado em `https://github.com//blog`. Para criar um repositório sob uma organização da qual você é proprietário, altere apenas o método API de `/user/repos` para `/orgs//repos`. - -Em seguida, vamos buscar nosso repositório recém-criado: +retorna o código de resposta e cabeçalhos como: ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/pengwynn/blog - -> HTTP/2 404 - -> { -> "message": "Not Found" -> } +HTTP/2.0 200 OK +Access-Control-Allow-Origin: * +Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +Cache-Control: private, max-age=60, s-maxage=60 +Content-Security-Policy: default-src 'none' +Content-Type: application/json; charset=utf-8 +Date: Thu, 04 Aug 2022 19:56:41 GMT +Etag: W/"a63dfbcfdb73621e9d2e89551edcf9856731ced534bd7f1e114a5da1f5f73418" +Link: ; rel="next", ; rel="last" +Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin +Server: GitHub.com +Strict-Transport-Security: max-age=31536000; includeSubdomains; preload +Vary: Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding, Accept, X-Requested-With +X-Accepted-Oauth-Scopes: repo +X-Content-Type-Options: nosniff +X-Frame-Options: deny +X-Github-Api-Version-Selected: 2022-08-09 +X-Github-Media-Type: github.v3; format=json +X-Github-Request-Id: 1C73:26D4:E2E500:1EF78F4:62EC2479 +X-Oauth-Client-Id: 178c6fc778ccc68e1d6a +X-Oauth-Scopes: gist, read:org, repo, workflow +X-Ratelimit-Limit: 15000 +X-Ratelimit-Remaining: 14996 +X-Ratelimit-Reset: 1659645499 +X-Ratelimit-Resource: core +X-Ratelimit-Used: 4 +X-Xss-Protection: 0 ``` -Ah não! Onde ele foi parar? Uma vez que criamos o repositório como _privado_, precisamos autenticá-lo para poder vê-lo. Se você é um usuário de HTTP, você pode esperar um `403`. Como não queremos vazar informações sobre repositórios privados, a API {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} retorna `404` neste caso, como se dissesse "não podemos nem confirmar nem negar a existência deste repositório". +Neste exemplo, o código de resposta é `200`, o que indica uma solicitação bem-sucedida. -## Problemas +{% endcli %} -A interface de usuário para problemas no {% data variables.product.product_name %} visa a fornecer fluxo de trabalho "apenas suficiente" enquanto permanece fora de seu caminho. With the {% data variables.product.product_name %} [Issues API][issues-api], you can pull data out or create issues from other tools to create a workflow that works for your team. +{% javascript %} -Assim como o github.com, a API fornece alguns métodos para exibir problemas para o usuário autenticado. To [see all your issues][get issues api], call `GET /issues`: +Ao fazer uma solicitação com o Octokit.js, o método `solicitação` retorna uma promessa. Se a solicitação foi bem-sucedida, a promessa é resolvida em um objeto que inclui o código de status HTTP da resposta (`status`) e os cabeçalhos de resposta (`cabeçalhos`). Se um erro ocorrer, a promessa será resolvida em um objeto que inclui o código de status HTTP da resposta (`status`) e os cabeçalhos de resposta (`response.headers`). + +Você pode usar um bloco `try/catch` para capturar um erro, caso ocorra. Por exemplo, se o pedido no script seguinte for bem-sucedido, o script registrará o código de status e o valor do cabeçalho `x-ratelimit-restante`. Se a solicitação não for bem sucedida, o script registrará o código de status, o valor do cabeçalho `x-ratelimit-remaining` e a mensagem de erro. + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + console.log(`Success! Status: ${result.status}. Rate limit remaining: ${result.headers["x-ratelimit-remaining"]}`) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Rate limit remaining: ${error.headers["x-ratelimit-remaining"]}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +Para ver o código de status e os cabeçalhos, use o sinalizador `--include` ou `--i` ao enviar sua solicitação. + +Por exemplo, essa solicitação: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/issues +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--include ``` -To get only the [issues under one of your {% data variables.product.product_name %} organizations][get issues api], call `GET -/orgs//issues`: +retorna o código de resposta e cabeçalhos como: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/orgs/rails/issues +HTTP/2 200 +server: GitHub.com +date: Thu, 04 Aug 2022 20:07:51 GMT +content-type: application/json; charset=utf-8 +cache-control: public, max-age=60, s-maxage=60 +vary: Accept, Accept-Encoding, Accept, X-Requested-With +etag: W/"7fceb7e8c958d3ec4d02524b042578dcc7b282192e6c939070f4a70390962e18" +x-github-media-type: github.v3; format=json +link: ; rel="next", ; rel="last" +access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +access-control-allow-origin: * +strict-transport-security: max-age=31536000; includeSubdomains; preload +x-frame-options: deny +x-content-type-options: nosniff +x-xss-protection: 0 +referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin +content-security-policy: default-src 'none' +x-ratelimit-limit: 15000 +x-ratelimit-remaining: 14996 +x-ratelimit-reset: 1659645535 +x-ratelimit-resource: core +x-ratelimit-used: 4 +accept-ranges: bytes +content-length: 4936 +x-github-request-id: 14E0:4BC6:F1B8BA:208E317:62EC2715 ``` -We can also get [all the issues under a single repository][repo issues api]: +Neste exemplo, o código de resposta é `200`, o que indica uma solicitação bem-sucedida. + +{% endcurl %} + +### Sobre o texto de resposta + +Muitas operações retornarão um texto de resposta. A menos que seja especificado, o texto da resposta está em formato JSON. Por exemplo, esta solicitação retorna uma lista de problemas com dados sobre cada problema: + +{% cli %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 ``` -### Paginação +{% endcli %} -Um projeto do tamanho de Rails tem milhares de problemas. We'll need to [paginate][pagination], making multiple API calls to get the data. Vamos repetir essa última chamada, anotando os cabeçalhos de resposta: +{% javascript %} + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, +}); +``` + +{% endjavascript %} + +{% curl %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues - -> HTTP/2 200 - -> ... -> Link: <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=2>; rel="next", <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=30>; rel="last" -> ... +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -The [`Link` header][link-header] provides a way for a response to link to external resources, in this case additional pages of data. Como nossa chamada encontrou mais de trinta problemas (o tamanho da página padrão), a API nos informa onde podemos encontrar a próxima página e a última página de resultados. +{% endcurl %} -### Criar um problema +Ao contrário da API do GraphQL, em que você especifica quais informações você quer, a API REST normalmente retorna mais informações do que você precisa. Se desejar, você pode analisar a resposta para extrair partes específicas da informação. -Now that we've seen how to paginate lists of issues, let's [create an issue][create issue] from the API. +{% cli %} -Para criar um problema, precisamos estar autenticados. Portanto, passaremos um token do OAuth no cabeçalho. Além disso, passaremos o título, texto, e as etiquetas no texto do JSON para o caminho `/issues` abaixo do repositório em que queremos criar o problema: +Por exemplo, você pode usar `>` para redirecionar a resposta para um arquivo: ```shell -$ curl -i -H 'Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a' \ -$ -d '{ \ -$ "title": "New logo", \ -$ "body": "We should have one", \ -$ "labels": ["design"] \ -$ }' \ -$ {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues - -> HTTP/2 201 -> Location: {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17 -> X-RateLimit-Limit: 5000 - -> { -> "pull_request": { -> "patch_url": null, -> "html_url": null, -> "diff_url": null -> }, -> "created_at": "2012-11-14T15:25:33Z", -> "comments": 0, -> "milestone": null, -> "title": "New logo", -> "body": "We should have one", -> "user": { -> "login": "pengwynn", -> "gravatar_id": "7e19cd5486b5d6dc1ef90e671ba52ae0", -> "avatar_url": "https://secure.gravatar.com/avatar/7e19cd5486b5d6dc1ef90e671ba52ae0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png", -> "id": 865, -> "url": "{% data variables.product.api_url_pre %}/users/pengwynn" -> }, -> "closed_at": null, -> "updated_at": "2012-11-14T15:25:33Z", -> "number": 17, -> "closed_by": null, -> "html_url": "https://github.com/pengwynn/api-sandbox/issues/17", -> "labels": [ -> { -> "color": "ededed", -> "name": "design", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/labels/design" -> } -> ], -> "id": 8356941, -> "assignee": null, -> "state": "open", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17" -> } +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 > data.json ``` -A resposta nos dá algumas indicações sobre a questão recém-criada, tanto no cabeçalho de resposta da `Localização` quanto no campo `url` da resposta do JSON. - -## Solicitações condicionais - -Uma grande parte de ser um bom cidadão da API é respeitar os limites de taxa por meio de armazenamento de informações que não mudaram. The API supports [conditional requests][conditional-requests] and helps you do the right thing. Considere a primeira chamada de que fizemos para obter o perfil de defunkt: +Em seguida, você pode usar jq para obter o título e o ID do autor de cada problema: ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 200 -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" +jq '.[] | {title: .title, authorID: .user.id}' data.json ``` -Além do texto do JSON, anote o código de status de HTTP de `200` e o cabeçalho `ETag`. The [ETag][etag] is a fingerprint of the response. Se passarmos isso em chamadas subsequentes, podemos dizer à API para nos dar o recurso novamente, somente se tiver mudado: +Os dois comandos anteriores retornam algo parecido a: + +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` + +Para obter mais informações sobre jq, consulte [a documentação do jq](https://stedolan.github.io/jq/) e [jq play](https://jqplay.org/). + +{% endcli %} + +{% javascript %} + +Por exemplo, você pode obter o ID do autor e título de cada problema: + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +Por exemplo, você pode usar `>` para redirecionar a resposta para um arquivo: ```shell -$ curl -i -H 'If-None-Match: "61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0"' \ -$ {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 304 +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" > data.json ``` -O status `304` indica que o recurso não mudou desde a última vez que pedimos e a resposta não conterá texto. As a bonus, `304` responses don't count against your [rate limit][rate-limiting]. +Em seguida, você pode usar jq para obter o título e o ID do autor de cada problema: -Agora você sabe o básico da API {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %}! +```shell +jq '.[] | {title: .title, authorID: .user.id}' data.json +``` -* Autenticação básica do & OAuth -* Buscar e criar de repositórios e problemas -* Solicitações condicionais +Os dois comandos anteriores retornam algo parecido a: -Keep learning with the next API guide [Basics of Authentication][auth guide]! +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` -[wrappers]: /libraries/ -[curl]: http://curl.haxx.se/ -[oauth]: /apps/building-integrations/setting-up-and-registering-oauth-apps/ -[webflow]: /apps/building-oauth-apps/authorizing-oauth-apps/ -[scopes]: /apps/building-oauth-apps/understanding-scopes-for-oauth-apps/ -[repos-api]: /rest/reference/repos -[repos-api]: /rest/reference/repos -[pages]: http://pages.github.com -[nanoc]: http://nanoc.ws/ -[gitignore templates]: https://github.com/github/gitignore -[issues-api]: /rest/reference/issues -[link-header]: https://www.w3.org/wiki/LinkHeader -[conditional-requests]: /rest#conditional-requests -[rate-limiting]: /rest/overview/resources-in-the-rest-api#rate-limit-http-headers -[rate-limiting]: /rest/overview/resources-in-the-rest-api#rate-limit-http-headers -[users api]: /rest/reference/users#get-a-user -[defunkt github]: https://github.com/defunkt -[defunkt github]: https://github.com/defunkt -[json]: http://en.wikipedia.org/wiki/JSON -[authentication]: /rest#authentication -[personal token]: /articles/creating-an-access-token-for-command-line-use -[personal token]: /articles/creating-an-access-token-for-command-line-use -[tokens settings]: https://github.com/settings/tokens -[pagination]: /rest#pagination -[get repo]: /rest/reference/repos#get-a-repository -[create repo]: /rest/reference/repos#create-a-repository-for-the-authenticated-user -[create issue]: /rest/reference/issues#create-an-issue -[auth guide]: /guides/basics-of-authentication -[user repos api]: /rest/reference/repos#list-repositories-for-the-authenticated-user -[other user repos api]: /rest/reference/repos#list-repositories-for-a-user -[org repos api]: /rest/reference/repos#list-organization-repositories -[get issues api]: /rest/reference/issues#list-issues-assigned-to-the-authenticated-user -[get issues api]: /rest/reference/issues#list-issues-assigned-to-the-authenticated-user -[repo issues api]: /rest/reference/issues#list-repository-issues -[etag]: http://en.wikipedia.org/wiki/HTTP_ETag +Para obter mais informações sobre jq, consulte [a documentação do jq](https://stedolan.github.io/jq/) e [jq play](https://jqplay.org/). + +{% endcurl %} + +## Próximas etapas + +Este artigo demonstrou como listar e criar problemas em um repositório. Para mais adquirir prática, tente comentar sobre um problema, editar o título de um problema ou fechar um problema. Para obter mais informações sobre essas operações, consulte "[Criar um comentário de problema](/rest/issues#create-an-issue-comment)" e "[Atualizar um problema](/rest/issues/issues#update-an-issue)". + +Para obter mais informações sobre as operações que você pode usar, consulte a [documentação de referência de REST](/rest). diff --git a/translations/pt-BR/content/rest/index.md b/translations/pt-BR/content/rest/index.md index e71c82453c..9242b32bba 100644 --- a/translations/pt-BR/content/rest/index.md +++ b/translations/pt-BR/content/rest/index.md @@ -3,7 +3,8 @@ title: API de REST do GitHub shortTitle: API REST intro: 'Para criar integrações, recuperar dados e automatizar seus fluxos de trabalho, crie com a API REST de {% data variables.product.prodname_dotcom %}.' introLinks: - quickstart: /rest/guides/getting-started-with-the-rest-api + quickstart: /rest/quickstart + overview: /rest/guides/getting-started-with-the-rest-api featuredLinks: guides: - /rest/guides/getting-started-with-the-rest-api @@ -31,6 +32,7 @@ versions: ghae: '*' ghec: '*' children: + - /quickstart - /overview - /guides - /actions diff --git a/translations/pt-BR/content/rest/orgs/security-managers.md b/translations/pt-BR/content/rest/orgs/security-managers.md index 9385167d76..09febe3b35 100644 --- a/translations/pt-BR/content/rest/orgs/security-managers.md +++ b/translations/pt-BR/content/rest/orgs/security-managers.md @@ -1,10 +1,10 @@ --- -title: Security Managers +title: Gerentes de segurança intro: '' versions: fpt: '*' ghes: '>=3.7' - ghae: 'issue-7691' + ghae: issue-7691 ghec: '*' topics: - API diff --git a/translations/pt-BR/content/rest/overview/other-authentication-methods.md b/translations/pt-BR/content/rest/overview/other-authentication-methods.md index 228bc546f0..fd5e9e6308 100644 --- a/translations/pt-BR/content/rest/overview/other-authentication-methods.md +++ b/translations/pt-BR/content/rest/overview/other-authentication-methods.md @@ -76,10 +76,16 @@ Se você tem a autenticação de dois fatores ativada, certifique-se de entender {% endnote %} +{% note %} + +**Observação:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + Se você estiver usando a API para acessar uma organização que força o [SSO do SAML][saml-sso] para autenticação, você deverá criar um token de acesso pessoal (PAT) e [autorizar o token][allowlist] para essa organização. Visite a URL especificada no `X-GitHub-SSO` para autorizar o token para a organização. ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test > X-GitHub-SSO: required; url=https://github.com/orgs/octodocs-test/sso?authorization_request=AZSCKtL4U8yX1H3sCQIVnVgmjmon5fWxks5YrqhJgah0b2tlbl9pZM4EuMz4 { @@ -91,7 +97,7 @@ $ curl -v -H "Authorization: token TOKEN" {% data variables.product.api Ao solicitar dados que poderiam vir de várias organizações (por exemplo, [solicitando uma lista de problemas criados pelo usuário][user-issues]), o cabeçalho `X-GitHub-SSO` indica quais organizações exigem que você autorize seu token de acesso pessoal: ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/user/issues +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/user/issues > X-GitHub-SSO: partial-results; organizations=21955855,20582480 ``` diff --git a/translations/pt-BR/content/rest/overview/resources-in-the-rest-api.md b/translations/pt-BR/content/rest/overview/resources-in-the-rest-api.md index 68adb9957d..419e10f205 100644 --- a/translations/pt-BR/content/rest/overview/resources-in-the-rest-api.md +++ b/translations/pt-BR/content/rest/overview/resources-in-the-rest-api.md @@ -79,7 +79,7 @@ $ curl -u "username" {% data variables.product.api_url_pre %} ### Token do OAuth2 (enviado em um cabeçalho) ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %} +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %} ``` {% note %} @@ -88,6 +88,12 @@ Observação: O GitHub recomenda enviar tokens do OAuth usando o cabeçalho de a {% endnote %} +{% note %} + +**Observação:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + Leia [mais sobre o OAuth2](/apps/building-oauth-apps/). Observe que os tokens do OAuth2 podem ser adquiridos usando o [fluxo de aplicação web](/developers/apps/authorizing-oauth-apps#web-application-flow) para aplicativos de produção. {% ifversion fpt or ghes or ghec %} @@ -233,7 +239,7 @@ Outros códigos de status de redirecionamento podem ser usados de acordo com a e ## Verbos HTTP -Sempre que possível, a API REST do {% data variables.product.product_name %} busca usar verbos HTTP apropriados para cada ação. Note that HTTP verbs are case-sensitive. +Sempre que possível, a API REST do {% data variables.product.product_name %} busca usar verbos HTTP apropriados para cada ação. Note que os verbos HTTP diferenciam maiúsculas de minúsculas. | Verbo | Descrição | | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -306,7 +312,7 @@ Os valores de `rel` possíveis são: ## Tempo esgotado -If {% data variables.product.prodname_dotcom %} takes more than 10 seconds to process an API request, {% data variables.product.prodname_dotcom %} will terminate the request and you will receive a timeout response like this: +Se {% data variables.product.prodname_dotcom %} demorar mais de 10 segundos para processar uma solicitação de API, {% data variables.product.prodname_dotcom %} encerrará a solicitação e você receberá uma resposta de tempo esgotado dessa forma: ```json { @@ -314,7 +320,7 @@ If {% data variables.product.prodname_dotcom %} takes more than 10 seconds to pr } ``` -{% data variables.product.product_name %} reserves the right to change the timeout window to protect the speed and reliability of the API. +{% data variables.product.product_name %} reserva-se o direito de alterar a janela de tempo limite para proteger a velocidade e a confiabilidade da API. ## Limite de taxa diff --git a/translations/pt-BR/content/rest/overview/troubleshooting.md b/translations/pt-BR/content/rest/overview/troubleshooting.md index b28955adb9..c8ca4e3c4f 100644 --- a/translations/pt-BR/content/rest/overview/troubleshooting.md +++ b/translations/pt-BR/content/rest/overview/troubleshooting.md @@ -44,13 +44,13 @@ curl -u my_user:my_password https://api.github.com/user/repos Em vez disso, use um [token de acesso pessoal](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line) ao testar pontos de extremidade ou fazer desenvolvimento local: ```bash -curl -H 'Authorization: token my_access_token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my_access_token' https://api.github.com/user/repos ``` Para aplicativos OAuth, você deve usar o [fluxo de aplicativo web](/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow) para gerar um token do OAuth para usar no cabeçalho da chamada da API: ```bash -curl -H 'Authorization: token my-oauth-token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my-oauth-token' https://api.github.com/user/repos ``` ## Tempo esgotado diff --git a/translations/pt-BR/content/rest/projects/cards.md b/translations/pt-BR/content/rest/projects/cards.md index 893d6413c5..76af8dae46 100644 --- a/translations/pt-BR/content/rest/projects/cards.md +++ b/translations/pt-BR/content/rest/projects/cards.md @@ -1,8 +1,8 @@ --- -title: '{% data variables.product.prodname_project_v1_caps %} cards' +title: 'Cartões de {% data variables.product.prodname_project_v1_caps %}' shortTitle: Cartões allowTitleToDifferFromFilename: true -intro: 'The {% data variables.product.prodname_project_v1 %} cards API lets you create and manage cards on a {% data variables.projects.projects_v1_board %}.' +intro: 'A API de cartões de {% data variables.product.prodname_project_v1 %} permite que você crie e gerencie cartões em um {% data variables.projects.projects_v1_board %}.' versions: fpt: '*' ghes: '*' diff --git a/translations/pt-BR/content/rest/projects/collaborators.md b/translations/pt-BR/content/rest/projects/collaborators.md index 1f9ddf287a..c8673b69a2 100644 --- a/translations/pt-BR/content/rest/projects/collaborators.md +++ b/translations/pt-BR/content/rest/projects/collaborators.md @@ -1,8 +1,8 @@ --- -title: '{% data variables.product.prodname_project_v1_caps %} collaborators' +title: 'colaboradores de {% data variables.product.prodname_project_v1_caps %}' shortTitle: Colaboradores allowTitleToDifferFromFilename: true -intro: 'The {% data variables.product.prodname_project_v1 %} collaborators API lets you manage collaborators on a {% data variables.projects.projects_v1_board %}.' +intro: 'A API de colaboradores de {% data variables.product.prodname_project_v1 %} permite que você gerencie os colaboradores em um {% data variables.projects.projects_v1_board %}.' versions: fpt: '*' ghes: '*' diff --git a/translations/pt-BR/content/rest/projects/columns.md b/translations/pt-BR/content/rest/projects/columns.md index fabf2f3daf..390e1daaff 100644 --- a/translations/pt-BR/content/rest/projects/columns.md +++ b/translations/pt-BR/content/rest/projects/columns.md @@ -1,8 +1,8 @@ --- -title: '{% data variables.product.prodname_project_v1_caps %} columns' +title: 'colunas de {% data variables.product.prodname_project_v1_caps %}' shortTitle: Colunas allowTitleToDifferFromFilename: true -intro: 'The {% data variables.product.prodname_project_v1 %} columns API lets you create and manage columns on a {% data variables.projects.projects_v1_board %}.' +intro: 'A API de colunas {% data variables.product.prodname_project_v1 %} permite que você crie e gerencie as colunas em um {% data variables.projects.projects_v1_board %}.' versions: fpt: '*' ghes: '*' diff --git a/translations/pt-BR/content/rest/projects/index.md b/translations/pt-BR/content/rest/projects/index.md index 7064fbb384..376f470c15 100644 --- a/translations/pt-BR/content/rest/projects/index.md +++ b/translations/pt-BR/content/rest/projects/index.md @@ -1,6 +1,6 @@ --- title: '{% data variables.product.prodname_projects_v1_caps %}' -intro: 'The {% data variables.product.prodname_projects_v1 %} API lets you create, list, update, delete and customize {% data variables.projects.projects_v1_boards %}.' +intro: 'A API de {% data variables.product.prodname_projects_v1 %} permite que você crie, liste, atualize, esxclua e personalize {% data variables.projects.projects_v1_boards %}.' redirect_from: - /v3/projects - /rest/reference/projects diff --git a/translations/pt-BR/content/rest/projects/projects.md b/translations/pt-BR/content/rest/projects/projects.md index 64cddc91ad..e4fa7aa4d4 100644 --- a/translations/pt-BR/content/rest/projects/projects.md +++ b/translations/pt-BR/content/rest/projects/projects.md @@ -2,7 +2,7 @@ title: '{% data variables.product.prodname_projects_v1_caps %}' shortTitle: Quadros allowTitleToDifferFromFilename: true -intro: 'The {% data variables.product.prodname_projects_v1 %} API lets you create and manage {% data variables.projects.projects_v1_boards %} in a repository.' +intro: 'A API de {% data variables.product.prodname_projects_v1 %} permite criar e gerenciar {% data variables.projects.projects_v1_boards %} em um repositório.' versions: fpt: '*' ghes: '*' diff --git a/translations/pt-BR/content/rest/quickstart.md b/translations/pt-BR/content/rest/quickstart.md new file mode 100644 index 0000000000..c7fcd8b221 --- /dev/null +++ b/translations/pt-BR/content/rest/quickstart.md @@ -0,0 +1,351 @@ +--- +title: Início rápido para a API REST do GitHub +intro: 'Saiba como começar com a API REST de {% data variables.product.prodname_dotcom %}.' +allowTitleToDifferFromFilename: true +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +shortTitle: QuickStart +topics: + - API +redirect_from: + - /guides/getting-started + - /v3/guides/getting-started +miniTocMaxHeadingLevel: 3 +--- + +Esse artigo descreve como começar rapidamente com a API REST de {% data variables.product.prodname_dotcom %} usando {% data variables.product.prodname_cli %}, JavaScript ou cURL. Para um guia mais detalhado, consulte "[Primeiros passos com a API REST](/rest/guides/getting-started-with-the-rest-api)." + +{% cli %} + +## Primeiros passos para usar o {% data variables.product.prodname_cli %} + +### Usando {% data variables.product.prodname_cli %} na linha de comando + +{% data variables.product.prodname_cli %} é a maneira mais fácil de usar a API REST de {% data variables.product.prodname_dotcom %} a partir da linha de comando. + +1. Instale o {% data variables.product.prodname_cli %} se você ainda não o instalou. Para obter instruções de instalação, consulte o [repositório de {% data variables.product.prodname_cli %}](https://github.com/cli/cli#installation). +1. Use o subcomando `auth login` para efetuar a autenticação em {% data variables.product.prodname_cli %}. Para obter mais informações, consulte a [documentação de {% data variables.product.prodname_cli %} `login de autenticação`](https://cli.github.com/manual/gh_auth_login). + + ```shell + gh auth login + ``` + +1. Use o subcomando `api` para fazer sua solicitação de API. Para obter mais informações, consulte a [documentação de {% data variables.product.prodname_cli %} `api`](https://cli.github.com/manual/gh_api). + + ```shell + gh api repos/octocat/Spoon-Knife/issues + ``` + +### Usando {% data variables.product.prodname_cli %} em {% data variables.product.prodname_actions %} + +Você também pode usar {% data variables.product.prodname_cli %} nos seus fluxos de trabalho de {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Usando o CLI do GitHub nos fluxos de trabalho](/actions/using-workflows/using-github-cli-in-workflows)". + +Em vez de usar o comando de autenticação `gh auth login`, passe um token de acesso como uma variável de ambiente denominada `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recomenda que você use o `GITHUB_TOKEN` incorporado em vez de criar um token. Se isso não for possível, armazene seu token como um segredo e substitua `GITHUB_TOKEN` no exemplo abaixo pelo nome do seu segredo. Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação automática de token](/actions/security-guides/automatic-token-authentication)." Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +Se você estiver efetuando a autenticação com um {% data variables.product.prodname_github_app %}, você poderá criar um token de acesso de instalação dentro do seu fluxo de trabalho: + +1. Armazene a identificação do ID do seu {% data variables.product.prodname_github_app %} como segredo. No exemplo a seguir, substitua `APP_ID` pelo nome do segredo. Você pode encontrar o ID do seu aplicativo na página de configurações do seu aplicativo ou por meio da API do aplicativo. Para obter mais informações, consulte "[Aplicativos](/rest/apps/apps#get-an-app)". Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". +1. Gerar uma chave privada para o seu aplicativo. Armazena o conteúdo do arquivo resultante como um segredo. (Armazene todo o conteúdo do arquivo, incluindo `-----BEGIN RSA PRIVATE KEY-----` e `-----END RSA PRIVATE KEY-----`.) No exemplo a seguir, substitua `APP_PEM` pelo nome do segredo. Para obter mais informações, consulte "[Efetuando a autenticação com o {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)". +1. Adicione um passo para gerar um token e use esse token em vez de `GITHUB_TOKEN`. Observe que este token irá vencer após 60 minutos. Por exemplo: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + track_pr: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +## Primeiros passos com o JavaScript + +Você pode usar Octokit.js para interagir com a API REST de {% data variables.product.prodname_dotcom %} nos seus scripts do JavaScript. Para obter mais informações, consulte [o README do Octokit.js](https://github.com/octokit/octokit.js/#readme). + +### Usando o Octokit.js + +1. Crie um token de acesso. Por exemplo, crie um token de acesso pessoal (PAT) ou um token de acesso do usuário para servidor de {% data variables.product.prodname_github_app %}. Para obter mais informações, consulte "[" Criando um token de acesso pessoal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" ou "[Identificando e autorizando usuários dos aplicativos GitHub](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)". + + {% warning %} + + **Aviso**: Trate seu token de acesso como uma senha. + + Para manter seu token seguro, você pode armazenar o seu token como um segredo e executar o seu script através de {% data variables.product.prodname_actions %}. Para obter mais informações, consulte a seção "[usando Octokit.js em {% data variables.product.prodname_actions %}](#using-octokitjs-in-github-actions)". + + {%- ifversion fpt or ghec %} + + Você também pode armazenar seu token como um segredo de {% data variables.product.prodname_codespaces %} e executar seu script em {% data variables.product.prodname_codespaces %}. Para obter mais informações, consulte "[Gerenciar segredos criptografados para seus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + + Se essas opções não forem possíveis, considere usar outro serviço como [o 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para armazenar seu token de forma segura. + + {% endwarning %} + +1. Instale o ``octokit. Por exemplo, `npm install octokit`. Para outras formas de instalar ou carregar o `octokit`, consulte o [README do Octokit.js](https://github.com/octokit/octokit.js/#readme). +1. Importar `octokit` para o seu script. Por exemplo, `import { Octokit } from "octokit";`. Para outras maneiras de importar `octokit`, consulte [o README do Octokit.js](https://github.com/octokit/octokit.js/#readme). +1. Crie uma instância do `Octokit` com seu token. Substitua `YOUR-TOKEN` pelo seu token. + + ```javascript + const octokit = new Octokit({ + auth: 'YOUR-TOKEN' + }); + ``` + +1. Use `octokit.request` para executar sua solicitação. Envie o método HTTP e o caminho como o primeiro argumento. Especifique todos os parâmetros de caminho, consulta e texto em um objeto como o segundo argumento. Por exemplo, na solicitação a seguir, o método HTTP é `GET`, o caminho é `/repos/{owner}/{repo}/issues` e os parâmetros são `owner: "octocat"` e `repo: "Spoon-Knife"`. + + ```javascript + await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + ``` + +### Usando o Octokit.js em {% data variables.product.prodname_actions %} + +Você também pode executar seus scripts JavaScript nos seus fluxos de trabalho de {% data variables.product.prodname_actions %}. Para obter mais informações, consulte "[Sintaxe do fluxo de trabalho para o GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recomenda que você use o `GITHUB_TOKEN` incorporado em vez de criar um token. Se isso não for possível, armazene seu token como um segredo e substitua `GITHUB_TOKEN` no exemplo abaixo pelo nome do seu segredo. Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação automática de token](/actions/security-guides/automatic-token-authentication)." Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". + +O seguinte exemplo de fluxo de trabalho: + +1. Faz check-out do conteúdo do repositório +1. Configura o Node.js +1. Instala `octokit` +1. Armazena o valor de `GITHUB_TOKEN` como uma variável de ambiente denominada `TOKEN` e executa `.github/actions-scripts/use-the-api.mjs`, que pode acessar essa variável de ambiente como `process.env.TOKEN` + +Exemplo de fluxo de trabalho: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} +``` + +Exemplo de script do JavaScript, com o caminho do arquivo `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit" + +const octokit = new Octokit({ + auth: process.env.TOKEN +}); + +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +Se você estiver efetuando a autenticação com um {% data variables.product.prodname_github_app %}, você poderá criar um token de acesso de instalação dentro do seu fluxo de trabalho: + +1. Armazene a identificação do ID do seu {% data variables.product.prodname_github_app %} como segredo. No exemplo a seguir, substitua `APP_ID` pelo nome do segredo. Você pode encontrar o ID do seu aplicativo na página de configurações do seu aplicativo ou por meio da API do aplicativo. Para obter mais informações, consulte "[Aplicativos](/rest/apps/apps#get-an-app)". Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". +1. Gerar uma chave privada para o seu aplicativo. Armazena o conteúdo do arquivo resultante como um segredo. (Armazene todo o conteúdo do arquivo, incluindo `-----BEGIN RSA PRIVATE KEY-----` e `-----END RSA PRIVATE KEY-----`.) No exemplo a seguir, substitua `APP_PEM` pelo nome do segredo. Para obter mais informações, consulte "[Efetuando a autenticação com o {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)". +1. Adicione um passo para gerar um token e use esse token em vez de `GITHUB_TOKEN`. Observe que este token irá vencer após 60 minutos. Por exemplo: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} +``` + +{% endjavascript %} + +{% curl %} + +## Primeiros passos com o cURL + +### Usando o cURL na linha de comando + +{% note %} + +**Observação:** Se você quiser fazer solicitações da API da linha de comando de {% data variables.product.prodname_dotcom %} recomenda que você use {% data variables.product.prodname_cli %}, o que simplifica a autenticação e os pedidos. Para obter mais informações sobre como dar os primeiros passos com a API REST usando {% data variables.product.prodname_cli %}, consulte a versão de {% data variables.product.prodname_cli %} deste artigo. + +{% endnote %} + +1. Instale o cURL se ele ainda não estiver instalado no seu computador. Para verificar se o cURL está instalado, execute `curl --version` na linha de comando. Se a saída for uma informação sobre a versão do cURL, significa que o cURL está instalado. Se você receber uma mensagem semelhante a `command not found: curl`, você deverá fazer o download do cURL. Para obter mais informações, consulte [a página de download do projeto do cURL](https://curl.se/download.html). +1. Crie um token de acesso. Por exemplo, crie um token de acesso pessoal (PAT) ou um token de acesso do usuário para servidor de {% data variables.product.prodname_github_app %}. Para obter mais informações, consulte "[" Criando um token de acesso pessoal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" ou "[Identificando e autorizando usuários dos aplicativos GitHub](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)". + + {% warning %} + + **Aviso**: Trate seu token de acesso como uma senha. + + {%- ifversion fpt or ghec %} + + Para manter o seu token seguro, você pode armazenar o seu token como um segredo de {% data variables.product.prodname_codespaces %} e usar a linha de comando por meio de {% data variables.product.prodname_codespaces %}. Para obter mais informações, consulte "[Gerenciar segredos criptografados para seus codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)".{% endif %} + + Você também pode usar {% data variables.product.prodname_cli %} ao invés do cURL. O {% data variables.product.prodname_cli %} cuidará da autenticação para você. Para obter mais informações, consulte a versão de {% data variables.product.prodname_cli %} desta página. + + Se essas opções não forem possíveis, considere usar outro serviço como [o 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) para armazenar seu token de forma segura. + + {% endwarning %} + +1. Use o comando `cURL` para fazer sua solicitação. Passe seu token em um cabeçalho de `autorização`. Substitua `YOUR-TOKEN` pelo seu token. + + ```shell + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer YOUR-TOKEN" + ``` + + {% note %} + + **Observação:** {% data reusables.getting-started.bearer-vs-token %} + + {% endnote %} + +### Usando o cURL em {% data variables.product.prodname_actions %} + +Você também pode usar o cURL em seus fluxos de trabalho de {% data variables.product.prodname_actions %}. + +{% data variables.product.prodname_dotcom %} recomenda que você use o `GITHUB_TOKEN` incorporado em vez de criar um token. Se isso não for possível, armazene seu token como um segredo e substitua `GITHUB_TOKEN` no exemplo abaixo pelo nome do seu segredo. Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação automática de token](/actions/security-guides/automatic-token-authentication)." Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +Se você estiver efetuando a autenticação com um {% data variables.product.prodname_github_app %}, você poderá criar um token de acesso de instalação dentro do seu fluxo de trabalho: + +1. Armazene a identificação do ID do seu {% data variables.product.prodname_github_app %} como segredo. No exemplo a seguir, substitua `APP_ID` pelo nome do segredo. Você pode encontrar o ID do seu aplicativo na página de configurações do seu aplicativo ou por meio da API do aplicativo. Para obter mais informações, consulte "[Aplicativos](/rest/apps/apps#get-an-app)". Para obter mais informações sobre segredos, consulte "[Segredos criptografados](/actions/security-guides/encrypted-secrets)". +1. Gerar uma chave privada para o seu aplicativo. Armazena o conteúdo do arquivo resultante como um segredo. (Armazene todo o conteúdo do arquivo, incluindo `-----BEGIN RSA PRIVATE KEY-----` e `-----END RSA PRIVATE KEY-----`.) No exemplo a seguir, substitua `APP_PEM` pelo nome do segredo. Para obter mais informações, consulte "[Efetuando a autenticação com o {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)". +1. Adicione um passo para gerar um token e use esse token em vez de `GITHUB_TOKEN`. Observe que este token irá vencer após 60 minutos. Por exemplo: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## Próximas etapas + +Para um guia mais detalhado, consulte "[Primeiros passos com a API REST](/rest/guides/getting-started-with-the-rest-api)." diff --git a/translations/pt-BR/content/rest/users/index.md b/translations/pt-BR/content/rest/users/index.md index 83bf244a92..d90d7857f6 100644 --- a/translations/pt-BR/content/rest/users/index.md +++ b/translations/pt-BR/content/rest/users/index.md @@ -19,5 +19,6 @@ children: - /followers - /gpg-keys - /keys + - /ssh-signing-keys --- diff --git a/translations/pt-BR/content/rest/users/ssh-signing-keys.md b/translations/pt-BR/content/rest/users/ssh-signing-keys.md new file mode 100644 index 0000000000..c66bb88b9d --- /dev/null +++ b/translations/pt-BR/content/rest/users/ssh-signing-keys.md @@ -0,0 +1,16 @@ +--- +title: Chaves SSH assinadas +intro: '' +versions: + fpt: '*' + ghes: '>=3.7' + ghec: '*' +topics: + - API +miniTocMaxHeadingLevel: 3 +allowTitleToDifferFromFilename: true +--- + +## Sobre a API de assinatura de chaves SSH do usuário + +{% data reusables.user-settings.user-api %} diff --git a/translations/pt-BR/content/rest/webhooks/index.md b/translations/pt-BR/content/rest/webhooks/index.md index 12d70969a4..97fb7ce394 100644 --- a/translations/pt-BR/content/rest/webhooks/index.md +++ b/translations/pt-BR/content/rest/webhooks/index.md @@ -70,9 +70,9 @@ Solicitações do PubSubHubbub podem ser enviadas várias vezes. Se o hook já e #### Parâmetros -| Nome | Tipo | Descrição | -| -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `hub.mode` | `string` | **Obrigatório**. `Assine` ou `cancele a assinatura`. | -| `hub.topic` | `string` | **Obrigatório**. A URI do repositório do GitHub a ser assinada. O caminho deve estar no formato `/{owner}/{repo}/events/{event}`. | -| `hub.callback` | `string` | A URI para receber as atualizações do tópico. | -| `hub.secret` | `string` | Uma chave de segredo compartilhado que gera uma assinatura de hash do conteúdo de saída do texto. You can verify a push came from GitHub by comparing the raw request body with the contents of the {% ifversion fpt or ghes or ghec %}`X-Hub-Signature` or `X-Hub-Signature-256` headers{% elsif ghae %}`X-Hub-Signature-256` header{% endif %}. Você pode ver [a documentação do PubSubHubbub](https://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.4.html#authednotify) para obter mais informações. | +| Nome | Tipo | Descrição | +| -------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `hub.mode` | `string` | **Obrigatório**. `Assine` ou `cancele a assinatura`. | +| `hub.topic` | `string` | **Obrigatório**. A URI do repositório do GitHub a ser assinada. O caminho deve estar no formato `/{owner}/{repo}/events/{event}`. | +| `hub.callback` | `string` | A URI para receber as atualizações do tópico. | +| `hub.secret` | `string` | Uma chave de segredo compartilhado que gera uma assinatura de hash do conteúdo de saída do texto. Você pode verificar se um push veio do GitHub comparando o texto da solicitação não processada com o conteúdo dos cabeçalhos {% ifversion fpt or ghes or ghec %}`X-Hub-Signature` ou `X-Hub-Signature-256` {% elsif ghae %}`X-Hub-Signature-256` cabeçalho{% endif %}. Você pode ver [a documentação do PubSubHubbub](https://pubsubhubbub.github.io/PubSubHubbub/pubsubhubbub-core-0.4.html#authednotify) para obter mais informações. | diff --git a/translations/pt-BR/content/search-github/searching-on-github/finding-files-on-github.md b/translations/pt-BR/content/search-github/searching-on-github/finding-files-on-github.md index db96c2f487..53b2e9e119 100644 --- a/translations/pt-BR/content/search-github/searching-on-github/finding-files-on-github.md +++ b/translations/pt-BR/content/search-github/searching-on-github/finding-files-on-github.md @@ -18,12 +18,12 @@ topics: **Dicas:** -- By default, file finder results exclude some directories like `build`, `log`, `tmp`, and `vendor`. To search for files in these directories, use the [`filename` code search qualifier](/search-github/searching-on-github/searching-code#search-by-filename).{% ifversion file-finder-exclusion-controls %} Alternatively, you can customize which directories are excluded by default [using a `.gitattributes` file](#customizing-excluded-files).{% endif %} +- Por padrão, os resultados da busca de arquivos excluem alguns diretórios como `criar`, `log`, `tmp` e `fornecedor`. Para pesquisar os arquivos nesses diretórios, use o qualificador de pesquisa do código [`nome do arquivo`](/search-github/searching-on-github/searching-code#search-by-filename).{% ifversion file-finder-exclusion-controls %} Como alternativa, você pode personalizar quais diretórios são excluídos por padrão [usando um arquivo `.gitattributes`](#customizing-excluded-files).{% endif %} - É possível também abrir o file finder (localizador de arquivos) digitando `t` no teclado. Para obter mais informações, consulte "[Atalhos de teclado](/articles/keyboard-shortcuts)". {% endtip %} -## Using the file finder +## Usando o buscador de arquivos {% data reusables.repositories.navigate-to-repo %} 2. Acima da lista de arquivos, clique em **Ir para o arquivo**. ![Botão Find file (Localizar arquivo)](/assets/images/help/search/find-file-button.png) @@ -32,9 +32,9 @@ topics: {% ifversion file-finder-exclusion-controls %} -## Customizing excluded files +## Personalizando arquivos excluídos -By default, file finder results do not include files in the following directories if they exist at your repository root: +Por padrão, os resultados do buscador de arquivos não incluem arquivos nos seguintes diretórios se eles existem na raiz do repositório: - `.git` - `.hg` @@ -46,22 +46,22 @@ By default, file finder results do not include files in the following directorie - `tmp` - `vendor` -You can override these default exclusions using a `.gitattributes` file. +Você pode substituir estas exclusões padrão usando um arquivo `.gitattributes`. -To do this, create or update a file called `.gitattributes` in your repository root, setting the [`linguist-generated`](https://github.com/github/linguist/blob/master/docs/overrides.md) attribute to `false` for each directory that should be included in file finder results. +Para fazer isso, crie ou atualize um arquivo denominado `.gitattributes` na raiz do seu repositório, definindo o atrivuto [`linguist-generated`](https://github.com/github/linguist/blob/master/docs/overrides.md) como `falso` para cada diretório que deve ser incluído nos resultados do busca de arquivos. -For example, the following `.gitattributes` file would cause files in the `build/` directory to be available to the file finder: +Por exemplo, o seguinte arquivo `.gitattributes` faria com que os arquivos no diretório `build/` estivessem disponíveis no gerenciador de arquivos: ``` build/** linguist-generated=false ``` -Note that this override requires the use of the recursive glob pattern (`**`). For more information, see "[pattern format](https://git-scm.com/docs/gitignore#_pattern_format)" in the Git documentation. More complex overrides of subdirectories within excluded-by-default directories are not supported. +Observe que esta substituição exige o uso do padrão glob recursivo (`**`). Para obter mais informações, consulte "[formato padrão](https://git-scm.com/docs/gitignore#_pattern_format)" na documentação do Git. As substituições mais complexas de subdiretórios dentro de diretórios excluídos por padrão não são compatíveis. {% endif %} ## Leia mais -- "[About searching on GitHub](/search-github/getting-started-with-searching-on-github/about-searching-on-github)"{% ifversion file-finder-exclusion-controls %} -- "[Customizing how changed files appear on GitHub](/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github)" -- [`.gitattributes`](https://git-scm.com/docs/gitattributes) in the Git documentation{% endif %} +- "[Sobre a pesquisa no GitHub](/search-github/getting-started-with-searching-on-github/about-searching-on-github)"{% ifversion file-finder-exclusion-controls %} +- "[Personalizando como arquivos alterados aparecem no GitHub](/repositories/working-with-files/managing-files/customizing-how-changed-files-appear-on-github)" +- [`.gitattributes`](https://git-scm.com/docs/gitattributes) na documentação do Git{% endif %} diff --git a/translations/pt-BR/content/search-github/searching-on-github/searching-for-repositories.md b/translations/pt-BR/content/search-github/searching-on-github/searching-for-repositories.md index fdd6d4abb6..7796c6d080 100644 --- a/translations/pt-BR/content/search-github/searching-on-github/searching-for-repositories.md +++ b/translations/pt-BR/content/search-github/searching-on-github/searching-for-repositories.md @@ -91,7 +91,7 @@ Você pode pesquisar repositórios com base no número de estrelas que os reposi | Qualifier | Exemplo | | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | stars:n | [**stars:500**](https://github.com/search?utf8=%E2%9C%93&q=stars%3A500&type=Repositories) identifica repositórios com exatamente 500 estrelas. | -| | [**stars:10..20 size:<1000**](https://github.com/search?q=stars%3A10..20+size%3A%3C1000&type=Repositories) matches repositories 10 to 20 stars, that are smaller than 1000 KB. | +| | [**stars:10..20 size:<1000**](https://github.com/search?q=stars%3A10..20+size%3A%3C1000&type=Repositories) identifica repositórios com 10 a 20 estrelas cujo tamanho é inferior a 1000 KB. | | | [**stars:>=500 fork:true language:php**](https://github.com/search?q=stars%3A%3E%3D500+fork%3Atrue+language%3Aphp&type=Repositories) identifica os repositórios que tem no mínimo 500 estrelas, incluindo os bifurcados e que foram escritos em PHP. | ## Pesquisar por data da criação ou da última atualização do repositório diff --git a/translations/pt-BR/content/site-policy/github-terms/github-community-code-of-conduct.md b/translations/pt-BR/content/site-policy/github-terms/github-community-code-of-conduct.md index 67b7c23fa5..3028f6d751 100644 --- a/translations/pt-BR/content/site-policy/github-terms/github-community-code-of-conduct.md +++ b/translations/pt-BR/content/site-policy/github-terms/github-community-code-of-conduct.md @@ -1,5 +1,5 @@ --- -title: GitHub Community Code of Conduct +title: Código de Conduta da Comunidade GitHub redirect_from: - /articles/github-community-forum-code-of-conduct - /github/site-policy/github-community-forum-code-of-conduct @@ -16,21 +16,21 @@ topics: Milhões de desenvolvedores em todo o mundo hospedam milhões de projetos, tanto de código aberto como de código fechado, no GitHub. Nós temos sorte de poder participar da colaboração em toda a comunidade de desenvolvedores todos os dias que é uma responsabilidade que não aceitamos de de forma leviana. Juntos, todos nós temos a oportunidade interessante de fazer desta uma comunidade de que nos podemos orgulhar. -GitHub Community, powered by GitHub Discussions, is intended to be a place for further collaboration, support, and brainstorming. Este é um lugar civilizado para se conectar com outros usuários, aprender novas habilidades, compartilhar feedbacks e ideias e encontrar todo o suporte necessário para seus projetos do GitHub. By participating in GitHub Community, you are agreeing to the same [Terms of Service](/github/site-policy/github-terms-of-service/) and [GitHub Acceptable Use Policies](/github/site-policy/github-acceptable-use-policies) that apply to GitHub.com, as well as this GitHub Community-specific Code of Conduct. +A comunidade do GitHub, com base em Discussões do GitHub, destina-se a ser um lugar para mais colaboração, suporte e levantamento de ideias. Este é um lugar civilizado para se conectar com outros usuários, aprender novas habilidades, compartilhar feedbacks e ideias e encontrar todo o suporte necessário para seus projetos do GitHub. Ao participar da Comunidade do GitHub, você concorda com os mesmos [Termos de Serviço](/github/site-policy/github-terms-of-service/) e [Políticas de Uso Aceitáveis do GitHub](/github/site-policy/github-acceptable-use-policies) que se aplicam ao GitHub, bem como este Código de Conduta específico da Comunidade do GitHub. -With this Code of Conduct, we hope to help you understand how best to collaborate in GitHub Community, what you can expect from moderators, and what type of actions or content may result in temporary or permanent suspension from community participation. We will investigate any abuse reports and may moderate public content within GitHub Community that we determine to be in violation of either the GitHub Terms of Service or this Code of Conduct. +Com este Código de Conduta, esperamos ajudá-lo a entender a melhor forma de colaborar com a Comunidade do GitHub, o que você pode esperar dos moderadores e que tipo de ações ou conteúdo pode resultar em suspensão temporária ou permanente da participação na comunidade. Investigaremos quaisquer relatos de abuso e poderemos moderar o conteúdo público dentro da Comunidade do GitHub que determinarmos estar violando os Termos de Serviço do GitHub ou este Código de Conduta. Nossa base de usuários diversificada traz perspectivas, ideias e experiências diferentes, e varia entre pessoas que criaram seu primeiro projeto "Hello World" na semana passada e os desenvolvedores de software mais conhecidos do mundo. Temos o compromisso de fazer do GitHub um ambiente que acolhe todas as diferentes vozes e perspectivas que a nossa comunidade tem a oferecer, mantendo um lugar seguro para os desenvolvedores fazerem o seu melhor trabalho. ## Compromisso -In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in GitHub Community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. +Com o intuito de promover um ambiente aberto e acolhedor, nós, como colaboradores e mantenedores, nos comprometemos a fazer da participação na Comunidade do GitHub uma experiência livre de assédio para todos, independentemente da idade, tamanho corporal, deficiência, etnia, identidade de gênero e expressão, nível de experiência, nacionalidade, aparência pessoal, raça, religião ou identidade e orientação sexual. ## Padrão -Treat GitHub Community with respect. Somos um recurso compartilhado — um lugar para compartilhar habilidades, conhecimentos e interesses através de conversas contínuas. +Trate com respeito a Comunidade do GitHub. Somos um recurso compartilhado — um lugar para compartilhar habilidades, conhecimentos e interesses através de conversas contínuas. -The following are not hard and fast rules, merely aids to the human judgment of our community. Use essas diretrizes para manter este lugar limpo e bem iluminado para um debate público civilizado. +As seguintes regras não são rígidas, elas apenas auxiliam no julgamento humano da nossa comunidade. Use essas diretrizes para manter este lugar limpo e bem iluminado para um debate público civilizado. ### *Práticas recomendadas para manter uma comunidade forte* @@ -48,44 +48,44 @@ A finalidade principal da comunidade do GitHub é colaborar em projetos de softw - **Melhore a discussão.** Ajude-nos a tornar este um ótimo lugar para discussão, sempre trabalhando para melhorar o debate de alguma forma, por menor que seja. Se você não tem certeza que seu comentário vai acrescentar algo à conversa, pense no que você quer dizer e tente novamente mais tarde. Os assuntos aqui discutidos importam para nós, e queremos que você aja como se eles importassem para você também. Respeite os temas e as pessoas que os discutem, mesmo que discorde de algumas coisas que estão sendo ditas. - - **Be clear and stay on topic.** GitHub Community is for collaboration, sharing ideas, and helping each other get stuff done. Comentários fora do assunto são uma distração (às vezes, bem-vinda, mas geralmente não) para o trabalho produtivo. Manter-se dentro do assunto ajuda a fomentar debates positivos e produtivos. + - **Seja claro e não fuja do assunto.** A Comunidade do GitHub é para colaboração, compartilhamento de ideias e para ajudar uns aos outros a fazer as coisas. Comentários fora do assunto são uma distração (às vezes, bem-vinda, mas geralmente não) para o trabalho produtivo. Manter-se dentro do assunto ajuda a fomentar debates positivos e produtivos. - Isso também se aplica ao compartilhamento de links. Any links shared in GitHub Community discussions should be shared with the intent of providing relevant and appropriate information. Os links não devem ser postados para simplesmente direcionar o tráfego ou a atenção para um site. Os links devem ser sempre acompanhados de uma explicação completa do conteúdo e da finalidade do link. Postar links, especialmente os não solicitados, sem contexto relevante e valioso, pode aparecer publicidade ou servir a propósitos ainda mais maliciosos. + Isso também se aplica ao compartilhamento de links. Quaisquer links compartilhados nas discussões da Comunidade do GitHub devem ser compartilhados com a intenção de fornecer informações relevantes e apropriadas. Os links não devem ser postados para simplesmente direcionar o tráfego ou a atenção para um site. Os links devem ser sempre acompanhados de uma explicação completa do conteúdo e da finalidade do link. Postar links, especialmente os não solicitados, sem contexto relevante e valioso, pode aparecer publicidade ou servir a propósitos ainda mais maliciosos. - - **Compartilhe conscientemente.** Ao pedir que outros lhe dêem feedback ou colaborem em um projeto, compartilhe recursos valiosos e relevantes apenas para fornecer contexto. Don't post links that don't add value to the discussion, and don't post unsolicited links to your own projects or sites on other user's threads. + - **Compartilhe conscientemente.** Ao pedir que outros lhe dêem feedback ou colaborem em um projeto, compartilhe recursos valiosos e relevantes apenas para fornecer contexto. Não poste links que não adicionem valor à discussão e não publique links não solicitados para seus próprios projetos ou sites em tópicos de outros usuários. - Além disso, não compartilhe informações confidenciais. Isso inclui o seu próprio endereço de e-mail. We don't allow the sharing of such information in GitHub Community, as it can create security and privacy risks for the poster, as well as other users. If you'd like to invite other GitHub users to collaborate on a project or work with you, share a link to the repository in which the project you are working on exists. Ao compartilhar o link para o repositório do seu projeto - com algumas informações sobre o que é o seu projeto e que tipo de ajuda ou feedback você está procurando - você pode convidar outros usuários para colaborar com você por meio de problemas ou pull requests sem ter que compartilhar suas informações privadas. Você também pode adicionar outras pessoas como colaborador externo no seu repositório de projeto para lhes dar permissões especiais e ajudá-lo a desenvolver o seu projeto. + Além disso, não compartilhe informações confidenciais. Isso inclui o seu próprio endereço de e-mail. Não permitimos a partilha de tal informação nessa Comunidade do GitHub, já que isso pode gerar riscos à segurança e privacidade para o usuário que postou, bem como para outros usuários. Se você quiser convidar outros usuários do GitHub para colaborar em um projeto ou trabalhar com você, compartilhe um link para o repositório no qual o projeto em que você está trabalhando se localiza. Ao compartilhar o link para o repositório do seu projeto - com algumas informações sobre o que é o seu projeto e que tipo de ajuda ou feedback você está procurando - você pode convidar outros usuários para colaborar com você por meio de problemas ou pull requests sem ter que compartilhar suas informações privadas. Você também pode adicionar outras pessoas como colaborador externo no seu repositório de projeto para lhes dar permissões especiais e ajudá-lo a desenvolver o seu projeto. - **Mantenha tudo arrumado.** Faça um esforço para colocar as coisas no lugar certo, para que possamos gastar mais tempo discutindo e menos tempo limpando. Então: - - Don’t start a discussion in the wrong category. - - Don’t cross-post the same thing in multiple discussions. + - Não inicie uma discussão na categoria errada. + - Não poste a mesma coisa em múltiplas discussões. - Não publique respostas sem conteúdo. - Não faça "up" em posts, a menos que você tenha informações novas e relevantes para compartilhar. - - Don’t divert a discussion by changing it midstream. + - Não desvie as discussões alterando-a no meio do assunto. - Rather than posting “+1” or “Agreed”, use the upvote button. Rather than taking an existing discussion in a radically different direction, open a new discussion. + Em vez de postar "+1" ou "Concordo", use o botão de votar. Em vez de enveredar por uma discussão existente numa direcção radicalmente diferente, abra uma nova discussão. - Seja confiável. - - **Always be honest.** Don’t knowingly share incorrect information or intentionally mislead other GitHub Community participants. Se você não sabe a resposta para a pergunta de alguém, mas ainda quer ajudar, você pode tentar ajudá-lo a pesquisar ou encontrar recursos em vez disso. GitHub staff will also be active in GitHub Community, so if you’re unsure of an answer, it’s likely a moderator will be able to help. + - **Sempre seja honesto.** Não compartilhe informações incorretas ou engane outros participantes da comunidade GitHub de propósito. Se você não sabe a resposta para a pergunta de alguém, mas ainda quer ajudar, você pode tentar ajudá-lo a pesquisar ou encontrar recursos em vez disso. A equipe do GitHub também estará ativa na Comunidade do GitHub, portanto, se você não tiver certeza de uma resposta, é provável que um moderador possa ajudar. ### *O que não é permitido* -As [Políticas de Uso Aceitável](/site-policy/acceptable-use-policies/github-acceptable-use-policies) do GitHub, que fazem parte dos [Termos de Serviço](/github/site-policy/github-terms-of-service/)do GitHub, definem uma linha de base para o que não é permitido no GitHub. Since GitHub Community is on GitHub.com, these terms and restrictions apply to GitHub Community, including the following restrictions: +As [Políticas de Uso Aceitável](/site-policy/acceptable-use-policies/github-acceptable-use-policies) do GitHub, que fazem parte dos [Termos de Serviço](/github/site-policy/github-terms-of-service/)do GitHub, definem uma linha de base para o que não é permitido no GitHub. Uma vez que a comunidade GitHub está no GitHub.com, esses termos e restrições aplicam-se à comunidade do GitHub, incluindo as seguintes restrições: -- **Anyone under the age of 13.** If you're a child under the age of 13, you may not have an account on GitHub. O GitHub não coleta informações nem direciona qualquer conteúdo especificamente a crianças com menos de 13 anos. If we learn or have reason to suspect that you are a user who is under the age of 13, we will unfortunately have to close your GitHub.com account. Não pretendemos desmotivar o seu aprendizado na área de programação, mas devemos cumprir as regras. Consulte nossos [Termos de Serviço](/github/site-policy/github-terms-of-service/) e saiba mais sobre o encerramento de contas. +- **Qualquer pessoa com menos de 13 anos de idade.** Se você tiver menos de 13 anos, você não pode ter uma conta no GitHub. O GitHub não coleta informações nem direciona qualquer conteúdo especificamente a crianças com menos de 13 anos. Se soubermos ou tivermos motivo para suspeitar que você é um usuário com idade inferior a 13 anos, infelizmente, teremos de fechar a sua conta no GitHub.com. Não pretendemos desmotivar o seu aprendizado na área de programação, mas devemos cumprir as regras. Consulte nossos [Termos de Serviço](/github/site-policy/github-terms-of-service/) e saiba mais sobre o encerramento de contas. -- **Criando uma nova conta após a restrição de conta.** Os [Termos de Serviço](/github/site-policy/github-terms-of-service/) do GitHub afirmam que "Uma pessoa ou entidade legal pode manter não mais de uma conta grátis". Additional free accounts created to inquire about flagged or suspended accounts in GitHub will be removed. +- **Criando uma nova conta após a restrição de conta.** Os [Termos de Serviço](/github/site-policy/github-terms-of-service/) do GitHub afirmam que "Uma pessoa ou entidade legal pode manter não mais de uma conta grátis". As contas gratuitas adicionais criadas para inquirir sobre contas sinalizadas ou suspensas no GitHub serão removidas. -- **Other conduct which could reasonably be considered inappropriate in a professional setting.** GitHub Community is a professional space and should be treated as such. +- **Outras condutas que poderiam ser razoavelmente consideradas inadequadas em um ambiente profissional.** A Comunidade do GitHub é um espaço profissional e deve ser tratado como tal. -- **Violation of Terms of Service.** If your GitHub.com account is identified in violation of [Terms of Service](/github/site-policy/github-terms-of-service/) we will have to close your account. +- **Violação dos Termos de Serviço.** Se for determinado que a sua conta do GitHub.com viola os [termos de serviço](/github/site-policy/github-terms-of-service/) teremos que fechar a sua conta. ## Cumprimento da lei -### *What GitHub Community Participants Can Do* +### *O que os participantes da comunidade GitHub podem fazer* -- **If you see a problem, report it.** Moderators have special authority; they are responsible for this GitHub Community. Mas você também. With your help, moderators can be community facilitators, not just janitors or police. +- **Se você vir um problema, relate-o.** Os moderadores têm autoridade especial; eles são responsáveis por esta comunidade GitHub. Mas você também. Com a sua ajuda, os moderadores podem ser facilitadores da comunidade, não apenas os zeladores ou polícia. - Quando vir um mau comportamento, não responda. Você encoraja o mau comportamento ao reconhecê-lo, isso consome sua energia e desperdiça o tempo de todos. You can report a disruptive user or disruptive content to GitHub. Para obter mais informações, consulte "[Relatar abuso ou spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)". + Quando vir um mau comportamento, não responda. Você encoraja o mau comportamento ao reconhecê-lo, isso consome sua energia e desperdiça o tempo de todos. Você pode denunciar um usuário ou conteúdo disruptivo para o GitHub. Para obter mais informações, consulte "[Relatar abuso ou spam](/communities/maintaining-your-safety-on-github/reporting-abuse-or-spam)". ### Nossas Responsabilidades @@ -96,16 +96,16 @@ Cada caso requer uma abordagem diferente e tentamos adaptar a nossa resposta às Ações que podemos fazer em resposta a um relatório ou sinalizador de abuso incluem, mas não estão limitadas a: - Remoção de Conteúdo - Bloqueio de Conteúdo - - GitHub Account Suspension - - GitHub Account Termination + - Suspensão da Conta do GitHub + - Cancelamento da conta do GitHub -GitHub Community moderators who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the GitHub Community's leadership. +Os moderadores da Comunidade do GitHub que não seguem ou aplicam o Código de Conduta de boa-fé podem enfrentar repercussões temporárias ou permanentes, conforme determinado por outros integrantes da liderança da Comunidade do GitHub. ## Contactando o pessoal do GitHub -If, for any reason, you want to contact GitHub Staff, the Community Managers, Administrators, or Moderators of GitHub Community privately, you can use our [Support contact form](https://support.github.com/contact?tags=docs-community-support). Contacting any member of GitHub Staff via unsolicited mentions or pings, or via channels other than GitHub Community itself, or the Support contact form is strongly discouraged and may be considered a violation of our prohibition against harassment. +Se você quiser, por qualquer razão, entrar em contato com a equipe do GitHub, os gerentes da comunidade, os administradores, ou moderadores da comunidade do GitHub privadamente, você pode usar nosso [formulário de suporte](https://support.github.com/contact?tags=docs-community-support). Entrar em contato com qualquer integrante da equipe do GitHub por meio de menções ou pings não solicitados ou por meio de canais que não sejam a própria Comunidade do GitHub m ou o formulário de contato de suporte é altamente não recomendado e pode ser considerado uma violação à nossa proibição de assédio. -Let's work together to keep GitHub Community a place where people feel safe to participate by being respectful of them and their time. +Vamos trabalhar juntos para manter a Comunidade GitHub um lugar onde as pessoas se sintam seguras para participar, tendo respeito umas pelas outras e pelo tempo de cada um. ## Avisos Legais @@ -115,4 +115,4 @@ Este Código de Conduta não altera nossos [Termos de Serviço](/github/site-pol ### Retenção e exclusão de dados -If you're a GitHub user, you may access, update, alter, or delete your basic user profile information by [editing your user profile](https://github.com/settings/profile) or contacting [GitHub Support](https://support.github.com/contact). Nós vamos reter e usar as suas informações, conforme necessário, para cumprir as nossas obrigações legais, resolver disputas e fazer cumprir nossos contratos. No entanto, com exceção dos requisitos legais, excluiremos o seu perfil completo (com motivo justificado) dentro de 90 dias a partir da sua solicitação. Para obter mais informações, consulte a [Declaração de Privacidade do GitHub](/github/site-policy/github-privacy-statement). +Se você é um usuário do GitHub, você pode acessar, atualizar, alterar, ou excluir suas informações básicas de perfil de usuário por [editando seu perfil de usuário](https://github.com/settings/profile) ou entrando em contato com o [Suporte do GitHub](https://support.github.com/contact). Nós vamos reter e usar as suas informações, conforme necessário, para cumprir as nossas obrigações legais, resolver disputas e fazer cumprir nossos contratos. No entanto, com exceção dos requisitos legais, excluiremos o seu perfil completo (com motivo justificado) dentro de 90 dias a partir da sua solicitação. Para obter mais informações, consulte a [Declaração de Privacidade do GitHub](/github/site-policy/github-privacy-statement). diff --git a/translations/pt-BR/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md b/translations/pt-BR/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md index 4fb913086a..e80c51dcf2 100644 --- a/translations/pt-BR/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md +++ b/translations/pt-BR/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md @@ -21,9 +21,9 @@ Ao usar o GitHub, você pode ter acesso a muitos produtos e funcionalidades adic Ao usar as Funcionalidades e Produtos Adicionais, você também concorda com os Termos do GitHub aplicáveis para Produtos Adicionais e Funcionalidades listados abaixo. Uma violação destes Termos do GitHub para Produtos e Funcionalidades é uma violação do Contrato. Os termos em maiúsculas não definidos aqui têm o significado consignado no Contrato. **Para usuários corporativos** -- Os usuários do **GitHub Enterprise Cloud** podem ter acesso aos seguintes Produtos e Funcionalidades: Ações, Segurança avançada, base de dados de consultores, códigos, pré-visualizações do Dependabot, importaor do GitHub Enterprise, laboratório de aprendizado, pacotes e páginas. +- Os usuários do **GitHub Enterprise Cloud** podem ter acesso aos seguintes Produtos e Funcionalidades: Ações, Segurança avançada, base de dados de consultores, códigos, pré-visualizações do Dependabot, importaor do GitHub Enterprise e pacotes e páginas. -- Os usuários do **GitHub Enterprise Server** podem ter acesso aos seguintes Produtos e Funcionalidades: Ações, Segurança Avançada, Dados de Consultoria, Conexões, Visualização de Dependabot, Importador do GitHub Enterprise, Laboratório de Aprendizado, Pacotes, Páginas e Imagens de Servidor SQL. +- Os usuários do **GitHub Enterprise Server** podem ter acesso aos seguintes Produtos e Funcionalidades: Ações, Segurança Avançada, Dados de Consultoria, Conexões, Visualização de Dependabot, Importador do GitHub Enterprise, Pacotes, Páginas e Imagens de Servidor SQL. - Os usuários do **GitHub AE** podem ter acesso aos seguintes produtos e funcionalidades: ações, segurança avançada, dados de consultoria, conexões, visualização de dependência, Importador do GitHub Enterprise, pacotes e páginas. @@ -106,19 +106,6 @@ O GitHub Copilot (i) poderá, dependendo das suas configurações de telemetria ## Importador do GitHub Enterprise O Importador é uma estrutura para exportar dados de outras fontes a serem importados para a plataforma GitHub. O Importador é fornecido como se apresenta. -## Learning Lab -O GitHub Learning Lab oferece cursos interativos grátis que são construídos no GitHub com feedback e ajuda automatizados instantaneamente. - -*Materiais do Curso.* O GitHub tem materiais de curso que fornece e concede a você um mundo inteiro, não exclusivo, limitado e não transferível, licença gratuita para copiar, manter, usar e executar tais materiais do curso para seus propósitos de negócio internos associados ao uso do Learning Lab. - -Os termos da licença de código aberto podem ser aplicados a partes do código-fonte fornecidas nos materiais do curso. - -Você tem materiais do curso que você cria e concede ao GitHub uma licença global, não exclusiva, perpétua, não transferível, livre de royalties para copiar, manter, usar, hospedar e executar tais materiais do curso. - -O uso de materiais e criação e armazenamento do seu próprio curso no GitHub não constituem uma propriedade conjunta para a propriedade intelectual de nenhuma das partes. - -O uso de dados pessoais é regido pela [Declaração de Privacidade do GitHub](/github/site-policy/github-privacy-statement). - ## npm npm é um serviço de hospedagem de pacotes de software que permite a você hospedar seus pacotes de software de forma privada ou pública e usar pacotes como dependências nos seus projetos. npm é o registro do ecossistema do JavaScript. O registro público do npm é gratuito para usar, mas os clientes são cobrados se quiserem publicar pacotes privados ou gerenciar pacotes privados usando equipes. A [documentação do npm](https://docs.npmjs.com/) inclui detalhes sobre a limitação dos tipos de conta e como gerenciar [pacotes privados](https://docs.npmjs.com/about-private-packages) e [organizações](https://docs.npmjs.com/organizations). O uso aceitável do registro npm está definido nos [termos do open-source](https://www.npmjs.com/policies/open-source-terms). Existem termos suplementares para os dois planos do npm [solo](https://www.npmjs.com/policies/solo-plan) e [org](https://www.npmjs.com/policies/orgs-plan). Os [Termos de Uso](https://www.npmjs.com/policies/terms) do npm aplicam-se ao seu uso do npm. diff --git a/translations/pt-BR/content/site-policy/other-site-policies/guidelines-for-legal-requests-of-user-data.md b/translations/pt-BR/content/site-policy/other-site-policies/guidelines-for-legal-requests-of-user-data.md index 94d34f2600..328e5c22c2 100644 --- a/translations/pt-BR/content/site-policy/other-site-policies/guidelines-for-legal-requests-of-user-data.md +++ b/translations/pt-BR/content/site-policy/other-site-policies/guidelines-for-legal-requests-of-user-data.md @@ -174,7 +174,7 @@ c/o Corporation Service Company 2710 Gateway Oaks Drive, Suite 150N Sacramento, CA 95833-3505 ``` -Courtesy copies may be emailed to legal-support@github.com +Cópias de cortesia podem ser enviadas para legal-support@github.com Por favor, faça suas solicitações da forma mais específica e breve quanto for possível, incluindo as seguintes informações: diff --git a/translations/pt-BR/content/site-policy/privacy-policies/github-privacy-statement.md b/translations/pt-BR/content/site-policy/privacy-policies/github-privacy-statement.md index 97b0499ba3..4702af1de9 100644 --- a/translations/pt-BR/content/site-policy/privacy-policies/github-privacy-statement.md +++ b/translations/pt-BR/content/site-policy/privacy-policies/github-privacy-statement.md @@ -15,7 +15,7 @@ topics: - Legal --- -Data de vigência: 31 de maio de 2022 +Data de vigência: 1 de setembro de 2022 Obrigado por confiar ao GitHub Inc. ou GitHub B.V. ("GitHub", "nós", "nos" ou "nosso") o seu código-fonte, seus projetos e seus dados pessoais. Esta declaração de privacidade explica nossas práticas em relação à coleta, uso e divulgação dos seus dados, incluindo quaisquer dados pessoais que coletamos e processamos em conexão com nosso site e quaisquer aplicativos, software, produtos e serviços fornecidos pelo GitHub, incluindo quaisquer pré-visualizações Beta (coletivamente denominado "Serviço"). @@ -25,28 +25,28 @@ Todos os termos em maiúsculas estão definidos nos [Termos de Serviço do GitHu ## Resumo -Usamos suas informações pessoais conforme descrito nesta Declaração de Privacidade. Não importa onde estiver, onde morar, ou qual for a sua cidadania, fornecemos os mesmos elevados padrões de proteção da privacidade a todos os nossos usuários em todo o mundo, independentemente do seu país de origem ou localização. +Usamos suas informações pessoais conforme descrito nesta Declaração de Privacidade. Não importa onde você estiver, morar ou qual for a sua cidadania, você tem o mesmo padrão de proteção de privacidade ao usar produtos do GitHub como todos os nossos usuários em todo o mundo, independentemente do seu país de origem ou localidade. Para ver nossa notificação de privacidade para os residentes da Califórnia, acesse [Notificação do GitHub sobre a Lei de Privacidade do Consumidor da Califórnia](#githubs-notice-to-california-residents) ou desça a barra de rolagem. ## Sumário -| Seção | Conteúdo | -| -------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [Quem é o responsável pelo processamento das suas informações](#who-is-responsible-for-the-processing-of-your-information) | Com exceções limitadas, o GitHub é o controlador e a entidade responsável pelo processamento dos seus dados pessoais relacionados ao site ou serviço. | -| [Que tipo de informação o GitHub coleta](#what-information-github-collects) | O GitHub coleta informações diretamente de você para fins de registro, pagamento, transações e perfil de usuário. Também coletamos automaticamente cookies e informações do dispositivo das suas informações de uso, sujeito, quando necessário, ao seu consentimento. O GitHub também pode coletar dados pessoais de terceiros. Nós coletamos apenas a quantidade mínima de dados pessoais necessários, a menos que você opte por fornecer outras informações. | -| [Como o GitHub usa suas informações](#how-github-uses-your-information) | Nesta seção, descrevemos como usamos suas informações, inclusive para fornecer o Serviço, para se comunicar com você, para fins de segurança e conformidade e para melhorar nosso site ou serviço, ou desenvolver novos recursos e funcionalidades do nosso site ou serviço. A seção também descreve a base jurídica na qual processamos suas informações quando tal processamento for exigido por lei. | -| [Como compartilhamos as informações obtidas](#how-we-share-the-information-we-collect) | Podemos compartilhar suas informações com terceiros diante de uma das seguintes circunstâncias: com seu consentimento, com nossos prestadores de serviços para fins de segurança, para cumprir as nossas obrigações legais, ou quando houver mudança de controle ou venda de entidades corporativas ou unidades de negócios. Não vendemos suas informações pessoais e não hospedamos anúncios no GitHub. | -| [Suas escolhas em relação ao processamento de seus dados pessoais](#your-choices-regarding-our-processing-of-your-personal-data) | Propomos algumas medidas para você acessar, alterar ou excluir suas informações pessoais. | -| [Cookies](#cookies) | Nós usamos apenas cookies estritamente necessários para fornecer, proteger e melhorar nosso site ou serviço ou desenvolver novos recursos e funcionalidades do nosso site ou serviço. Temos uma página que torna o processo bastante transparente. Não enviamos nenhuma informação para serviços de análise de terceiros. | -| [Como o GitHub protege suas informações](#how-github-secures-your-information) | Nós tomamos todas as medidas razoavelmente necessárias para proteger a confidencialidade, a integridade, e disponibilidade de seus Dados Pessoais no GitHub e para proteger a resiliência dos nossos servidores. | -| [Preferências de comunicação](#communication-preferences) | Nossa comunicação com você ocorrerá por e-mail. É possível controlar os nossos meios de contato com você nas configurações da sua conta. | -| [Resolução de conflitos](#resolving-complaints) | Na hipótese improvável de sermos incapazes de resolver um problema de privacidade de dados de forma rápida e detalhada, indicaremos um caminho para a resolução de litígios. | -| [Mudanças nesta Declaração de Privacidade](#changes-to-our-privacy-statement) | Você receberá notificações sobre mudanças concretas nesta Declaração de Privacidade 30 dias antes de tais mudanças entrarem em vigor. Também é possível acompanhar as mudanças no nosso repositório da Política do Site. | -| [Licença](#license) | Esta Declaração de Privacidade é licenciada sob a [licença Creative Commons Zero](https://creativecommons.org/publicdomain/zero/1.0/). | -| [Contato com a GitHub](#contacting-github) | Entre em contato em caso de dúvidas sobre a nossa Declaração de Privacidade. | -| [Traduções](#translations) | Acesse os links para consultar algumas traduções da Declaração de Privacidade. | +| Seção | Conteúdo | +| -------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [Quem é o responsável pelo processamento das suas informações](#who-is-responsible-for-the-processing-of-your-information) | Sujeito a exceções limitadas, o GitHub é o controlador e a entidade responsável pelo processamento dos seus dados pessoais relacionados ao site ou serviço, caso você esteja na América do Norte. Para indivíduos fora da América do Norte, o controlador de dados é o GitHub B.V. | +| [Que tipo de informação o GitHub coleta](#what-information-github-collects) | O GitHub coleta informações diretamente de você para fins de registro, pagamento, transações e perfil de usuário. Também coletamos automaticamente cookies e informações do dispositivo das suas informações de uso, sujeito, quando necessário, ao seu consentimento. O GitHub também pode coletar dados pessoais de terceiros. Nós coletamos apenas a quantidade mínima de dados pessoais necessários, a menos que você opte por fornecer outras informações. | +| [Como o GitHub usa suas informações](#how-github-uses-your-information) | Nesta seção, descrevemos como usamos suas informações, inclusive para fornecer o Serviço, para se comunicar com você, para fins de segurança e conformidade e para melhorar nosso site ou serviço, ou desenvolver novos recursos e funcionalidades do nosso site ou serviço. A seção também descreve a base jurídica na qual processamos suas informações quando tal processamento for exigido por lei. | +| [Como compartilhamos as informações obtidas](#how-we-share-the-information-we-collect) | Podemos compartilhar suas informações com terceiros diante de uma das seguintes circunstâncias: com seu consentimento, com nossos prestadores de serviços para fins de segurança, para cumprir as nossas obrigações legais, ou quando houver mudança de controle ou venda de entidades corporativas ou unidades de negócios. Não vendemos suas informações pessoais e não hospedamos anúncios no GitHub. | +| [Suas escolhas em relação ao processamento de seus dados pessoais](#your-choices-regarding-our-processing-of-your-personal-data) | Propomos algumas medidas para você acessar, alterar ou excluir suas informações pessoais. | +| [Cookies](#cookies) | Exceto pelos cookies usados em nossas Páginas de Marketing Empresarial, usamos somente cookies estritamente necessários para fornecer, proteger e melhorar o nosso site ou serviço ou desenvolver novos recursos e funcionalidades do nosso site ou serviço.

Conforme descrito abaixo, podemos usar cookies não essenciais em certas páginas do nosso site para apoiar nossos esforços corporativos de marketing e comercializar nossos produtos e serviços para clientes corporativos, por exemplo, no que se refere a resources.github.com (coletivamente denominado “Páginas de Marketing Empresarial”).

Oferecemos uma [página](https://github.com/privacy/cookies) que torna todos os usos de cookies muito transparentes. | +| [Como o GitHub protege suas informações](#how-github-secures-your-information) | Nós tomamos todas as medidas razoavelmente necessárias para proteger a confidencialidade, a integridade, e disponibilidade de seus Dados Pessoais no GitHub e para proteger a resiliência dos nossos servidores. | +| [Preferências de comunicação](#communication-preferences) | Nossa comunicação com você ocorrerá por e-mail. É possível controlar os nossos meios de contato com você nas configurações da sua conta. | +| [Resolução de conflitos](#resolving-complaints) | Na hipótese improvável de sermos incapazes de resolver um problema de privacidade de dados de forma rápida e detalhada, indicaremos um caminho para a resolução de litígios. | +| [Mudanças nesta Declaração de Privacidade](#changes-to-our-privacy-statement) | Você receberá notificações sobre mudanças concretas nesta Declaração de Privacidade 30 dias antes de tais mudanças entrarem em vigor. Também é possível acompanhar as mudanças no nosso repositório da Política do Site. | +| [Licença](#license) | Esta Declaração de Privacidade é licenciada sob a [licença Creative Commons Zero](https://creativecommons.org/publicdomain/zero/1.0/). | +| [Contato com a GitHub](#contacting-github) | Entre em contato em caso de dúvidas sobre a nossa Declaração de Privacidade. | +| [Traduções](#translations) | Acesse os links para consultar algumas traduções da Declaração de Privacidade. | ## Declaração de Privacidade do GitHub @@ -122,13 +122,14 @@ Podemos utilizar suas informações para fornecer, administrar, analisar, gerenc - Personalização de nosso Serviço ao entender-se você e suas preferências para melhorar sua experiência e prazer usando nosso serviço. - Fornecer suporte ao cliente e responder às suas perguntas. - Enviar publicidae para você sobre novos serviços, funcionalidades, ofertas, promoções e outras informações sobre nosso Serviço. +- Personalize e meça a eficácia dos anúncios corporativos de negócios, comunicações promocionais ou marketing que você recebe relacionados às Páginas de Marketing Empresarial. - Enviar informações, incluindo confirmações, faturas, avisos técnicos, atualizações, alertas de segurança, suporte e mensagens administrativas. Combinamos os dados que coletamos de diferentes fontes para esses propósitos e para dar a você uma experiência perfeita, consistente e personalizada. ## Como compartilhamos as informações obtidas -Compartilhamos os dados pessoais com o seu consentimento ou conforme necessário para concluir suas transações ou fornecer os serviços que você solicitou ou autorizou. Além disso, podemos compartilhar cada uma das categorias de seus dados pessoais descritas acima com os tipos de terceiros descritos abaixo para os seguintes fins comerciais: +Compartilhamos os dados pessoais, conforme descrito abaixo, com o seu consentimento ou conforme necessário para concluir suas transações ou fornecer os serviços que você solicitou ou autorizou. Além disso, podemos compartilhar cada uma das categorias de seus dados pessoais descritas acima com os tipos de terceiros descritos abaixo para os seguintes fins comerciais: ### Informações públicas Você pode selecionar as opções disponíveis por meio do nosso Serviço para exibir publicamente e compartilhar seu nome e/ou nome de usuário e certas informações como seu perfil, dados demográficos, conteúdo e arquivos ou dados de geolocalização. Por exemplo, se você quiser que seu endereço de e-mail permaneça privado, mesmo quando estiver comentando em repositórios públicos, [você poderá ajustar sua configuração para que seu endereço de e-mail seja privado em seu perfil de usuário](https://github.com/settings/emails). Você também pode [atualizar sua configuração local do Git para usar seu endereço de e-mail privado](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address). Saiba mais sobre endereços de e-mail em mensagens de commit [aqui](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address). @@ -144,9 +145,9 @@ Você pode habilitar ou adicionar aplicativos de terceiros, conhecidos como "pro Você pode indicar, por meio das suas ações no GitHub, que você está disposto a compartilhar seus dados pessoais. Se você colaborar ou se tornar um integrante de uma organização, os proprietários da sua conta poderão receber seus dados pessoais. Ao aceitar um convite para uma organização, você receberá uma notificação sobre os tipos de informações que os proprietários poderão ver (saiba mais na seção [Sobre associação à organização](/github/setting-up-and-managing-your-github-user-account/about-organization-membership)). Entre em contato com os proprietários de contas para obter mais informações sobre como podem processar seus dados pessoais na sua Organização e as formas para você acessar, atualizar, alterar ou excluir os dados pessoais armazenados na conta. ### Provedores de serviço -Compartilhamos seus dados pessoais com os prestadores de serviços que processam as informações em nosso nome para prestar ou melhorar nossos Serviços. Por exemplo, nossos prestadores de serviços podem realizar processamento de pagamentos, atendimento ao cliente, transmissão de dados de rede, segurança e outros serviços similares. Embora o GitHub processe todos os dados pessoais nos Estados Unidos, nossos prestadores de serviços podem processar dados fora dos Estados Unidos ou da União Europeia. Esse processamento por parte dos prestadores de serviços estará em conformidade com a legislação aplicável, incluindo qualquer mecanismo de transferência relevante. +Compartilhamos seus dados pessoais com os prestadores de serviços que processam as informações em nosso nome para prestar ou melhorar nossos Serviços. Por exemplo, nossos prestadores de serviços podem realizar processamento de pagamentos, atendimento ao cliente, transmissão de dados de rede, análise web, operações de marketing, segurança e outros serviços similares. Embora o GitHub processe todos os dados pessoais nos Estados Unidos, nossos prestadores de serviços podem processar dados fora dos Estados Unidos ou da União Europeia. Esse processamento por parte dos prestadores de serviços estará em conformidade com a legislação aplicável, incluindo qualquer mecanismo de transferência relevante. - ### Afiliados Nós habiltamos o acesso aos dados pessoais nas nossas subsidiárias, afiliados e empresas relacionadas, Por exemplo, onde compartilhamos sistemas de dados comuns ou onde é necessário acesso para operar e prestar o Serviço. + ### Afiliados Nós habiltamos o acesso aos dados pessoais nas nossas subsidiárias, afiliados e empresas relacionadas, por exemplo, onde compartilhamos sistemas de dados comuns, quando as afailiadas prestam serviços em nosso nome ou quando o acesso é necessário para operar e prestar o Serviço. ### Por motivos de segurança Iremos divulgar os dados pessoais se acreditarmos que são necessários para: @@ -171,7 +172,7 @@ Nós *não* vendemos seus dados pessoais para fins monetários ou outras conside ## Suas escolhas em relação ao processamento de seus dados pessoais Nós damos escolhas sobre os dados pessoais que coletamos sobre você. As escolhas que você fizer não se aplicarão a nenhum dado pessoal associado a uma Organização na sua Conta. -Acesso, correção e exclusão. Se você for usuário do GitHub, você poderá acessar, atualizar, alterar ou excluir suas informações básicas de perfil de usuário ao [editar seu perfil de usuário](https://github.com/settings/profile) ou entrar em contato com o [Suporte do GitHub](https://support.github.com/contact) ou o [Suporte Premium do GitHub](https://enterprise.githubsupport.com/hc/en-us). Você pode controlar as informações que coletamos sobre você ao limitar as informações do seu perfil, manter suas informações atualizadas ou entrar em contato com o [Suporte do GitHub](https://support.github.com/contact) ou o [Suporte Premium do GitHub](https://enterprise.githubsupport.com/hc/en-us). +Acesso, correção e exclusão. Se você for usuário do GitHub, você poderá acessar, atualizar, alterar ou excluir suas informações básicas de perfil de usuário ao [editar seu perfil de usuário](https://github.com/settings/profile) ou entrar em contato com o [Suporte do GitHub](https://support.github.com/contact) ou o [Suporte Premium do GitHub](https://enterprise.githubsupport.com/hc/en-us). Você pode controlar as informações que coletamos sobre você ao limitar as informações do seu perfil, manter suas informações atualizadas, alterando as suas preferências de cookies ou entrando em contato com o [Suporte do GitHub](https://support.github.com/contact) ou o [Suporte Premium do GitHub](https://enterprise.githubsupport.com/hc/en-us). Mantemos e usamos suas informações conforme descrito nesta Declaração de Privacidade, mas, com exceção dos requisitos legais, excluiremos seu perfil completo dentro de 90 dias a partir da sua solicitação. Alguns dados permanecerão após a exclusão de uma conta, como contribuições em repositórios de outros Usuários e comentários em problemas de outrem. No entanto, iremos excluir ou desidentificar seus dados pessoais, incluindo seu nome de usuário e endereço de e-mail, do campo do autor de issues, pull requests e comentários associando-os a um usuário fantasma. Dito isto, o endereço de e-mail que você forneceu por meio das configurações de commit do Git sempre será associado aos seus commits no sistema do Git. Se decidir tornar seu endereço de e-mail privado, você também deverá atualizar suas configurações de commit do Git. Não podemos alterar ou excluir dados no histórico de commit do Git; o software Git foi desenvolvido para manter um registro, mas você pode controlar as informações que insere nesse registro. @@ -208,13 +209,65 @@ Confiamos em diferentes bases legais para coletar e processar os seus dados pess ### Cookies e tecnologias de rastreamento -O GitHub usa cookies para prestar, proteger e melhorar nosso serviço ou para desenvolver novos recursos e funcionalidades do nosso Serviço. Por exemplo, nós os usamos para manter você conectado, lembrar as suas preferências, identificar o seu dispositivo para fins de segurança, compilar relatórios estatísticos e fornecer informações para o desenvolvimento futuro do GitHub. Usamos nossos próprios cookies e não usamos prestadores de serviços de terceiros nesse contexto. Se você desabilitar o navegador ou a capacidade de o dispositivo de aceitar esses cookies, você não poderá efetuar o login nem usar nosso serviço. Fornecemos mais informações sobre [cookies no GitHub](/github/site-policy/github-subprocessors-and-cookies#cookies-on-github) na nossa página [Subprocessadores e Cookies do GitHub](/github/site-policy/github-subprocessors-and-cookies) que descreve os cookies que definimos, a necessidade que temos para esses cookies e a expiração desses cookies. +O GitHub usa cookies para prestar, proteger e melhorar nosso serviço ou para desenvolver novos recursos e funcionalidades do nosso Serviço. Por exemplo, nós os usamos para (i) manter você conectado, (ii) lembrar suas preferências, (ii) identificar seu dispositivo para fins de segurança e fraude, incluindo, se necessário, para manter a integridade do nosso Serviço, (iv) compilar relatórios estatísticos e (v) fornecer informações e visão para o desenvolvimento futuro do GitHub. Nós fornecemos mais informações sobre [cookies no GitHub](https://github.com/privacy/cookies) que descreve os cookies que definimos as necessidades que temos para esses cookies e o vencimento desses cookies. + +Para páginas de marketing corporativo, também podemos usar cookies não essenciais para (i) coletar informações sobre os interesses dos usuários da empresa e atividades on-line para personalizar suas experiências, incluindo os anúncios, conteúdos, recomendações, e o marketing visto ou recebido de forma mais relevante e (ii) srvir e medir a eficácia da publicidade orientada e de outros esforços de marketing. Se você desabilitar os cookies não essenciais nas Páginas de Marketing Empresarial, os anúncios e o conteúdo e marketing que você vir poderão ser menos relevantes. Nossos e-mails enviados para os usuários podem conter uma tag de pixel, isto é, uma imagem pequena que pode nos mostrar se você abriu uma mensagem e nos informar o seu endereço IP. Usamos essa tag de pixel para tornar a comunicação com nosso e-mail mais eficaz e garantir que não estamos enviando e-mails indesejados para você. -### DNT +O período que um cookie ficará em seu navegador ou dispositivo depende de ser um cookie "persistente" ou "sessão". Os cookies de sessão só ficarão no seu dispositivo até que você pare a navegação. Os cookies persistentes permanecem até vencerem ou serem excluídos. O tempo de vencimento ou período de retenção aplicável aos cookies persistentes depende do propósito da coleção e ferramenta de cookies utilizada. Pode ser possível excluir dados de cookie, conforme descrito aqui. + +#### O que são cookies e tecnologias semelhantes? + +Usamos cookies e tecnologias semelhantes, como web beacons, armazenamento local e análise de dispositivos móveis para operar e prestar nossos Serviços. Ao visitar Páginas de Marketing Empresarial, como resources.github.com, estes e cookies adicionais, como IDs de publicidade, podem ser usados para fins de vendas e marketing. + +Os cookies são pequenos arquivos de texto armazenados pelo navegador no seu dispositivo. Um cookie pode ser lido mais tarde quando seu navegador se conectar a um servidor da web no mesmo domínio que colocou o cookie. O texto em um cookie contém uma string de números e letras que podem identificar exclusivamente o seu dispositivo e também conter outras informações. Isso permite que o servidor web reconheça seu navegador ao longo do tempo, cada vez que ele se conectar ao servidor web. + +Os web beacons são imagens eletrônicas (também denominadas "um pixel" ou "GIFs limpos") contidas em um site ou e-mail. Quando seu navegador abrir uma página web ou um e-mail que contenha um web beacon, ele irá conectar-se automaticamente ao servidor web que hospeda a imagem (normalmente operada por terceiros). Isso permite que esse servidor registre informações sobre seu dispositivo e defina e leia seus próprios cookies. Da mesma forma, o conteúdo de terceiros em nossos sites (como vídeos incorporados, plug-ins, ou anúncios) fazem com que o seu navegador se conecte ao servidor web de terceiros que hospedam esse conteúdo. + +Os identificadores móveis para análises podem ser acessados e usados por aplicativos em dispositivos móveis da mesma forma que os sites acessam e usam cookies. Ao acessar Páginas de Marketing Empresarial, como resources.github., em um dispositivo móvel, nos é permitido a nós e nossos parceiros de análise e publicidade de terceiros coletar dados para fins de venda e marketing. + +Nós também podemos usar os denominados "cookies de flash” (também conhecidos como “Objetos Locais” ou “LSOs”) para coletar e armazenar informações sobre o seu uso dos nossos Serviços. Os cookies de flash são comumente utilizados para anúncios e vídeos. + +#### Como nós e nossos parceiros utilizamos cookies e tecnologias semelhantes? + +Os Serviços do GitHub usam cookies e tecnologias similares para uma variedade de finalidades, incluindo para armazenar suas preferências e configurações, permitir o login, analisar como nossos Serviços funcionam, monitorar sua interação com os Serviços, desenvolver inferências, combater fraudes e cumprir outros fins legítimos. Alguns destes cookies e tecnologias podem ser fornecidos por terceiros, incluindo prestadores de serviços e parceiros de publicidade. Por exemplo, nossos parceiros de análise e publicidade podem usar essas tecnologias em nossos Serviços para coletar informações pessoais (como as páginas que você visita, os links nos quais você clica, e informações de uso semelhantes, identificadores e informações do dispositivo) relacionados às suas atividades on-line ao longo do tempo e em todos os Serviços para vários fins, incluindo publicidade direcionada. O GitHub colocará cookies não essenciais em páginas onde comercializamos produtos e serviços para os clientes corporativos, por exemplo, em resources.github.com. + +Nós e/ou nossos parceiros também compartilhamos as informações que coletamos ou inferimos com terceiros para esses fins. + +A tabela abaixo fornece informações adicionais sobre como usamos diferentes tipos de cookies: + +| Finalidade | Descrição | +|:------------------- |:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Cookies necessários | O GitHub usa cookies necessários para realizar funções essenciais do site e fornecer os serviços. Por exemplo, os cookies são usados para iniciar a sessão, salvar suas preferências de idioma, fornecer uma experiência de carrinho de compras, melhorar o desempenho, encaminhar tráfego entre servidores da web, detectar o tamanho de sua tela, determinar o tempo de carregamento da página, melhorar a experiência do usuário e medir o público. Esses cookies são necessários para que nossos sites funcionem. | +| Análise | Permitimos que terceiros usem cookies de análise para entender como você usa nossos sites e para que possamos torná-los melhores. Por exemplo, os cookies são usados para coletar informações sobre as páginas que você acessa e quantos cliques você precisa para realizar uma tarefa. Também usamos alguns cookies de análise para fornecer publicidade personalizada. | +| Mídias sociais | O GitHub e terceiros usam cookies de mídia social para exibir anúncios e conteúdos com base nos seus perfis de mídia social e atividade nos sites do GitHub. Isso garante que os anúncios e o conteúdo que você vê em nossos sites e nas redes sociais reflitam melhor os seus interesses. Isso também permite que terceiros desenvolvam e melhorem seus produtos, que podem usar em sites que não são propriedade ou operados pelo GitHub. | +| Publicidade | Além disso, o GitHub e terceiros usam cookies de publicidade para mostrar novos anúncios baseados em anúncios que você já viu. Os cookies também registram quais anúncios você clica ou compra você depois de clicar em um anúncio. Isso é feito tanto para fins de pagamento quanto para exibir anúncios que são mais relevantes para você. Por exemplo, os cookies são usados para detectar quando você clica em um anúncio e para exibir anúncios com base no seu interesse de mídia social e histórico de navegação do site. | + +#### Quais são suas escolhas e controles de cookies? + + Você tem várias opções para desabilitar cookies não essenciais: + + 1. **Especificamente nas Páginas de Marketing Empresariais do GitHub** + + Qualquer página do GitHub que ofereça cookies não essenciais terá um link no rodapé da página para configurações de cookie. Você pode expressar suas preferências a qualquer momento clicando nesse link e atualizando suas configurações. + + Alguns usuários também poderão gerenciar cookies não essenciais por meio de um banner de consentimento de cookies, incluindo as opções de aceitar, gerenciar e rejeitar todos os cookies não essenciais. + 2. **De modo geral, para todos os sites** + + Você pode controlar os cookies encontrados na web usando uma série de ferramentas amplamente disponíveis. Por exemplo: + - Se o seu navegador enviar um sinal [Não Rastrear](https://en.wikipedia.org/wiki/Do_Not_Track) (DNT), o GitHub não definirá cookies não essenciais e não carregará recursos de terceiros que definem cookies não essenciais. + - Muitos navegadores fornecem controles de cookies que podem limitar os tipos de cookies que você encontra on-line. Confira a documentação do seu navegador para saber mais. + - Se você habilitar uma extensão de navegador projetada para bloquear o rastreamento, como [Selo de privacidade](https://en.wikipedia.org/wiki/Privacy_Badger), cookies não essenciais definidos por um site ou terceiros podem ser desabilitados. + - Se você habilitar uma extensão de navegador projetada para bloquear conteúdo indesejado, como [uBlock Origin](https://en.wikipedia.org/wiki/UBlock_Origin), os cookies não essenciais serão desabilitados na medida em que o conteúdo que define cookies não essenciais for bloqueado. + - Controles de publicidade. Nossos parceiros de publicidade podem participar de associações que fornecem maneiras simples de optar por não ser alvo de anúncios, que você pode acessar em: + - Estados Unidos: [NAI](http://optout.networkadvertising.org) e [DAA](http://optout.aboutads.info/) + - Canadá: [Aliança de Publicidade Digital do Canadá](https://youradchoices.ca/) + - Europa: [Aliança de Publicidade Digital Europeia](http://www.youronlinechoices.com/) + + Essas opções são específicas para o navegador que você está usando. Se você acessar nossos Serviços a partir de outros dispositivos ou navegadores, tome essas ações desses sistemas para garantir que suas escolhas se apliquem aos dados coletados quando você usa esses sistemas. + -"[Não rastrear](https://www.eff.org/issues/do-not-track)" (DNT) é uma preferência de privacidade que você pode definir no seu navegador se não quiser que os serviços on-line coletem e compartilhem certos tipos de informações sobre a sua atividade on-line de serviços de rastreamento de terceiros. O GitHub responde aos sinais de DNT dos navegadores e segue o [padrão do W3C de resposta aos sinais de DNT](https://www.w3.org/TR/tracking-dnt/). Se você deseja configurar seu navegador para sinalizar que não gostaria de ser rastreado, verifique a documentação do seu navegador para saber como habilitar essa sinalização. Há também bons aplicativos que bloqueiam o rastreamento on-line, como [Badger de Privacidade](https://privacybadger.org/). ## Retenção de dados pessoais Nós mantemos os dados pessoais pelo tempo necessário para prestar os serviços e realizar as transações solicitadas, cumprir nossas obrigações legais, resolver disputas, aplicar os nossos contratos e outros fins comerciais legítimos e lícitos. Uma vez que estas necessidades podem variar de acordo com diferentes tipos de dados no contexto de diferentes serviços, os períodos de retenção reais podem variar significativamente com base em critérios, como expectativas do usuário ou consentimento, a sensibilidade dos dados, a disponibilidade de controles automatizados que permitem aos usuários excluir dados e nossas obrigações legais ou contratuais. Por exemplo, podemos manter seus dados pessoais por períodos mais longos, quando necessário, sujeitos à lei aplicável, para fins de segurança. @@ -238,15 +291,11 @@ O GitHub processa dados pessoais dentro e fora dos Estados Unidos e depende de m ### Resolução de conflitos Se você estiver preocupado com a forma como o GitHub está processando os seus dados pessoais, avise-nos imediatamente. Estamos à sua disposição para ajudar no que for necessário. Entre em contato conosco preenchendo o [formulário de contato de Privacidade](https://support.github.com/contact/privacy). Você também pode nos enviar um e-mail diretamente para **(privacy [at] github [dot] com)** com o assunto "Problemas de privacidade." Responderemos sua solicitação o quanto antes, no máximo em 45 dias. -Você também pode entrar em contato diretamente com o nosso Departamento de Proteção de Dados. +Você também pode entrar em contato com nosso Agente de Proteção de Dados diretamente no **github [at]dp-officer [dot] com** -| Sede nos Estados Unidos | Filial na UE | -| ------------------------------------------- | --------------------------------- | -| Departamento de Proteção de dados do GitHub | GitHub BV | -| 88 Colin P. Kelly Jr. St. | Vijzelstraat 68-72 | -| San Francisco, CA 94107 | 1017 HL Amsterdam | -| Estados Unidos | Holanda | -| **privacy [at] github [dot] com** | **privacy [at] github [dot] com** | +**If you are in North America:**
GitHub Data Protection Officer
88 Colin P. Kelly Jr. St.
San Francisco, CA 94107
United States
**privacy [at] github [dot] com**
+ +**Se você estiver fora da América do Norte:**
Github Data Protection Officer
c/o DP Dock DPO Services GmbH,
Attn: GitHub BV, Gut Projensdorf,
24161 Altenholz, Germany
github@dp-officer.com cc: **privacy [at] github [dot] com**
CC: GitHub BV, Vijzelstraat 68-72, 1017 HL Amsterdam, The Netherlands ### Processo de resolução de conflitos @@ -289,22 +338,22 @@ Embora a tabela abaixo contenha informações sobre as categorias de informaçõ | Dados de geolocalização (como qualquer informação coletada após dar aos usuários a oportunidade de optar por serviços baseados na localização, que dependem dos serviços de localização precisos de um dispositivo. ) | Informação que o consumidor fornece automaticamente através da interação com os nossos Serviços | | Informações de áudio, eletrônicas, visuais ou similares, como conteúdo e arquivos enviados para o Serviço. | Informações que o consumidor pode optar por fornecer diretamente | | Informações profissionais ou de emprego | Informações que o consumidor pode optar por fornecer diretamente | -| Inferences drawn from any of the information identified in this table to create a profile about a consumer reflecting the consumer’s preferences | Informação que o consumidor fornece direta ou automaticamente através da interação com os nossos Serviços | +| Inferências extraídas de qualquer informação identificada nesta tabela para criar um perfil sobre um consumidor que reflete as preferências do consumidor | Informação que o consumidor fornece direta ou automaticamente através da interação com os nossos Serviços | -We use the categories of personal information described above for the purposes listed in the [“How GitHub uses your information”](/github/site-policy/github-privacy-statement#how-github-uses-your-information) section of our Privacy Statement. We also disclose the categories of personal information listed above for business purposes. Please see the [“How we share the information we collect”](/github/site-policy/github-privacy-statement#how-we-share-the-information-we-collect) section of our Privacy Statement for additional details. +Usamos as categorias de informações pessoais descritas acima para os fins listados na seção ["Como o GitHub usa suas informações"](/github/site-policy/github-privacy-statement#how-github-uses-your-information) da nossa Declaração de Privacidade. Também divulgamos as categorias de informações pessoais listadas acima para fins comerciais. Consulte a seção ["Como compartilhamos as informações que coletamos"](/github/site-policy/github-privacy-statement#how-we-share-the-information-we-collect) da nossa Declaração de Privacidade para obter detalhes adicionais. ### Não vendemos suas informações pessoais -De acordo com a CCPA, um negócio que consiste na venda de informações pessoais de residentes da Califórnia para outros: 1) deve avisar os residentes da Califórnia antes de vender suas informações pessoais para outros; e 2) deve fornecer o direito de opt-out (autoexclusão) pela venda de suas informações pessoais. GitHub does not sell personal information, including personal information of anyone under 16 years old. +De acordo com a CCPA, um negócio que consiste na venda de informações pessoais de residentes da Califórnia para outros: 1) deve avisar os residentes da Califórnia antes de vender suas informações pessoais para outros; e 2) deve fornecer o direito de opt-out (autoexclusão) pela venda de suas informações pessoais. O Github não vende informações pessoais, incluindo informações pessoais de menores de 16 anos. ### Seus direitos sob a CCPA A CCPA fornece aos residentes da Califórnia certos direitos relacionados às suas informações pessoais. Para enviar uma solicitação com base nesses direitos, entre em contato conosco por meio do nosso [formulário de contato](https://support.github.com/contact?tags=docs-policy). -Ao receber uma solicitação, verificaremos se o indivíduo que fez a solicitação é o residente a quem pertencem as informações pessoais sujeitas à solicitação. California residents may exercise their rights themselves or may use an authorized agent, designated in writing or through a power of attorney, to make requests on their behalf. If you use an authorized agent to submit a request, we may require that you provide us additional information demonstrating that the agent is acting on your behalf, and we may need you to verify your identity directly with us. With respect to your personal information, California residents may exercise the rights described below. -#### Right to Know. -You have a right to request that we disclose to you the personal information we have collected about you. Você também tem o direito de solicitar informações adicionais sobre nossa coleta, uso, divulgação ou venda dessas informações pessoais. Observe que fornecemos muitas dessas informações nesta declaração de privacidade. Você pode usar a API de Migração do Usuário GitHub para acessar e fazer o download dos seus dados. Saiba mais aqui. Você também pode fazer esse "pedido de conhecimento" entrando em contato conosco aqui. +Ao receber uma solicitação, verificaremos se o indivíduo que fez a solicitação é o residente a quem pertencem as informações pessoais sujeitas à solicitação. Os residentes da Califórnia podem exercer seus direitos eles mesmos ou utilizar um agente autorizado, designado por escrito ou por meio de um advogado, para fazer pedidos em seu nome. Se você usar um agente autorizado para enviar uma solicitação podemos exigir que você nos forneça informações adicionais que demonstrem que o agente está agindo em seu nome, e talvez seja necessário que você verifique sua identidade diretamente conosco. Com relação às suas informações pessoais, os residentes da Califórnia podem exercer os direitos descritos abaixo. +#### Direito de saber. +Você tem o direito de solicitar que divulgamos para você as informações pessoais que coletamos sobre você. Você também tem o direito de solicitar informações adicionais sobre nossa coleta, uso, divulgação ou venda dessas informações pessoais. Observe que fornecemos muitas dessas informações nesta declaração de privacidade. Você pode usar a API de Migração do Usuário GitHub para acessar e fazer o download dos seus dados. Saiba mais aqui. Você também pode fazer esse "pedido de conhecimento" entrando em contato conosco aqui. #### Direito de solicitar a exclusão. Você também tem o direito de solicitar que excluamos informações pessoais em certas circunstâncias, sujeitas a várias exceções. Para fazer um pedido de exclusão, você pode usar a API de migração de usuário do GitHub para acessar e fazer o download dos seus dados. Saiba mais aqui. Você também pode fazer esse "pedido de exclusão" entrando em contato conosco aqui. @@ -314,9 +363,9 @@ Você tem o direito de não participar de “vendas” futuras de informações #### Direito à não discriminação. Você tem o direito de não ser discriminado por exercer os seus direitos do CCPA. Não discriminaremos você pelo exercício dos seus direitos no âmbito do CCPA. -Você pode designar, por escrito ou por meio de advogado, um agente autorizado a fazer pedidos em seu nome para exercer seus direitos nos termos do CCPA. Antes de aceitar tal solicitação de um agente, exigimos que o agente forneça a prova que o autorizou a agir em seu nome, e talvez seja necessário que você verifique sua identidade diretamente conosco. Além disso, para fornecer ou excluir informações pessoais específicas, precisaremos verificar sua identidade de acordo com o grau de certeza exigido pela lei. Verificaremos a sua solicitação pedindo que você envie a solicitação do endereço de e-mail associado à sua conta ou exigindo que você forneça as informações necessárias para verificar sua conta. [Please note that you may use two-factor authentication with your GitHub account](/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication). -Finally, you have a right to receive notice of our practices at or before collection of personal information. +Você pode designar, por escrito ou por meio de advogado, um agente autorizado a fazer pedidos em seu nome para exercer seus direitos nos termos do CCPA. Antes de aceitar tal solicitação de um agente, exigimos que o agente forneça a prova que o autorizou a agir em seu nome, e talvez seja necessário que você verifique sua identidade diretamente conosco. Além disso, para fornecer ou excluir informações pessoais específicas, precisaremos verificar sua identidade de acordo com o grau de certeza exigido pela lei. Verificaremos a sua solicitação pedindo que você envie a solicitação do endereço de e-mail associado à sua conta ou exigindo que você forneça as informações necessárias para verificar sua conta. [Observeque você pode usar a autenticação de dois fatores com sua conta do GitHub.](/authentication/securing-your-account-with-two-factor-authentication-2fa/accessing-github-using-two-factor-authentication) +Por fim, você tem o direito de receber o aviso de nossas práticas durante ou antes da coleta de informações pessoais. -Additionally, under California Civil Code section 1798.83, also known as the “Shine the Light” law, California residents who have provided personal information to a business with which the individual has established a business relationship for personal, family, or household purposes (“California Customers”) may request information about whether the business has disclosed personal information to any third parties for the third parties’ direct marketing purposes. Tenha em mente que não divulgamos informações pessoais a terceiros para fins de marketing direto, conforme definido nesta lei. California Customers may request further information about our compliance with this law by emailing **(privacy [at] github [dot] com)**. Observe que as empresas são obrigadas a responder a uma solicitação por cliente da Califórnia todos os anos e que talvez não seja necessário responder às solicitações por outros meios, além do endereço de e-mail designado. +Além disso, nos termos da secção 1798, do Código Civil da Califórnia. 3, também conhecida como a lei "Shine the Light", os residentes na Califórnia que forneceram informações pessoais a uma empresa com a qual o indivíduo estabeleceu uma relação comercial para a família pessoal, ou fins domésticos (“Clientes da Califórnia”) podem solicitar informações sobre se a empresa divulgou informações pessoais a terceiros para fins de marketing direto de terceiros. Tenha em mente que não divulgamos informações pessoais a terceiros para fins de marketing direto, conforme definido nesta lei. Os Clientes da Califórnia podem solicitar informações adicionais sobre a nossa conformidade com esta lei, enviando um e-mail para **(privacy [at] github [dot] com)**. Observe que as empresas são obrigadas a responder a uma solicitação por cliente da Califórnia todos os anos e que talvez não seja necessário responder às solicitações por outros meios, além do endereço de e-mail designado. Os residentes da Califórnia com idade inferior a 18 anos que são usuários registrados de sites, serviços ou aplicativos on-line têm o direito, nos termos da Seção 22581 do Código de Negócios e Profissões da Califórnia de remover ou solicitar e obter a remoção de. conteúdo ou informações que tenham publicado. Para remover conteúdo ou informações que você publicou, [envie uma solicitação de remoção de informações privadas](https://support.github.com/contact/private-information). Como alternativa, para solicitar a remoção desse conteúdo ou informação, envie uma descrição detalhada do conteúdo ou informações específicas que você deseja que sejam removidas para o [suporte do GitHub](https://support.github.com/contact). Tenha em mente que sua solicitação não garante a remoção completa ou abrangente de conteúdo ou informações postadas on-line e que a lei não pode permitir ou exigir remoção em determinadas circunstâncias. Em caso de dúvidas sobre nossas práticas de privacidade em relação aos residentes da Califórnia, entre em contato conosco por meio do nosso [formulário de contato](https://support.github.com/contact?tags=docs-policy). diff --git a/translations/pt-BR/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md b/translations/pt-BR/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md index 515fd465ff..2cd92bbab6 100644 --- a/translations/pt-BR/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md +++ b/translations/pt-BR/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md @@ -14,74 +14,23 @@ topics: - Legal --- -Data de entrada em vigor: **2 de abril de 2021** +Entrada em vigor: **1 de setembro de 2022** -{% note %} - -**Note:** Changes to the list of cookies on this page are currently pending. - -{% endnote %} O GitHub fornece um grande acordo de transparência em relação à forma como usamos seus dados, como os coletamos e com quem compartilhamos. Para essa finalidade, disponibilizamos esta página, que detalha os [nossos subprocessadores](#github-subprocessors) e como usamos [cookies](#cookies-on-github). ## Subprocessadores GitHub -Quando compartilhamos suas informações com terceiros subprocessadores, tais como nossos fornecedores e provedores de serviços, permanecemos responsáveis por elas. Trabalhamos muito duro para manter sua confiança quando trazemos novos fornecedores, e exigimos que todos os fornecedores se submetam a contratos de proteção de dados conosco que restringem seu processamento de Informações Pessoais dos Usuários (conforme definido na [Declaração de Privacidade](/articles/github-privacy-statement/)). You can sign up to receive subprocessor list updates [here](https://www.github.com/privacy/subprocessors). +Quando compartilhamos suas informações com terceiros subprocessadores, tais como nossos fornecedores e provedores de serviços, permanecemos responsáveis por elas. Trabalhamos muito duro para manter sua confiança quando trazemos novos fornecedores, e exigimos que todos os fornecedores se submetam a contratos de proteção de dados conosco que restringem seu processamento de Informações Pessoais dos Usuários (conforme definido na [Declaração de Privacidade](/articles/github-privacy-statement/)). -| Nome do subprocessador | Descrição do processamento | Local do Processamento | Localização corporativa | -|:------------------------ |:--------------------------------------------------------------------------- |:---------------------- |:----------------------- | -| Automattic | Serviço de blogs | Estados Unidos | Estados Unidos | -| AWS Amazon | Hospedagem de dados | Estados Unidos | Estados Unidos | -| Braintree (PayPal) | Processador de pagamento de assinatura com cartão de crédito | Estados Unidos | Estados Unidos | -| Clearbit | Serviço de enriquecimento de dados de marketing | Estados Unidos | Estados Unidos | -| Discourse | Provedor de software do fórum comunitário | Estados Unidos | Estados Unidos | -| Eloqua | Automatização da campanha marketing | Estados Unidos | Estados Unidos | -| Google Apps | Infraestrutura interna da empresa | Estados Unidos | Estados Unidos | -| MailChimp | Fornecedor de serviços de correio para emissão de bilhetes a clientes | Estados Unidos | Estados Unidos | -| Mailgun | Provedor de serviços de correio transacional | Estados Unidos | Estados Unidos | -| Microsoft | Microsoft Services | Estados Unidos | Estados Unidos | -| Nexmo | Provedor de notificação de SMS | Estados Unidos | Estados Unidos | -| Salesforce.com | Gerenciamento de relacionamento com clientes | Estados Unidos | Estados Unidos | -| Sentry.io | Provedor de monitoramento de aplicativo | Estados Unidos | Estados Unidos | -| Stripe | Provedor de pagamentos | Estados Unidos | Estados Unidos | -| Twilio & Twilio Sendgrid | Provedor de notificação de SMS & Provedor de serviço de e-mail transacional | Estados Unidos | Estados Unidos | -| Zendesk | Sistema de bilhetagem de suporte ao cliente | Estados Unidos | Estados Unidos | -| Zuora | Sistema de faturamento corporativo | Estados Unidos | Estados Unidos | +Quando trouxermos um novo subprocessador que lida com as Informações Pessoais de nossos Usuários, ou removermos um subprocessador, ou mudarmos a forma como usamos um subprocessador, atualizaremos a lista de subprocessadores. Você pode visualizar a lista atual de subprocessadores e se inscrever para receber atualizações da lista de subprocessadores, em [https://www.github.com/privacy/subprocessors](https://www.github.com/privacy/subprocessors). -Quando trouxermos um novo subprocessador que lida com as Informações Pessoais de nossos Usuários, ou removermos um subprocessador, ou mudarmos a forma como usamos um subprocessador, atualizaremos esta página. Se você tiver dúvidas ou preocupações sobre um novo subprocessador, ficaremos felizes em ajudar. Entre em contato conosco via {% data variables.contact.contact_privacy %}. +Se você tiver dúvidas ou preocupações sobre um novo subprocessador, ficaremos felizes em ajudar. Entre em contato conosco via {% data variables.contact.contact_privacy %}. ## Cookies no GitHub O GitHub usa cookies para fornecer e proteger nossos sites, bem como analisar o uso dos nossos sites, para oferecer a você uma ótima experiência de usuário. Consulte nossa [Declaração de privacidade](/github/site-policy/github-privacy-statement#our-use-of-cookies-and-tracking) se você quiser saber mais informações sobre cookies e sobre como e por que os usamos. -Como o número e os nomes dos cookies podem mudar, a tabela abaixo pode ser atualizada de vez em quando. - -| Provedor de serviço | Nome do cookie | Descrição | Vencimento* | -|:------------------- |:------------------------------------ |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:---------------------------------------------------------------------------- | -| GitHub | `app_manifest_token` | Este cookie é usado durante o fluxo do manifesto do aplicativo para manter o estado do fluxo durante o redirecionamento para buscar uma sessão do usuário. | cinco minutos | -| GitHub | `color_mode` | Este cookie é usado para indicar a preferência de tema selecionada pelo usuário. | sessão | -| GitHub | `_device_id` | Este cookie é usado para rastrear dispositivos reconhecidos para fins de segurança. | um ano | -| GitHub | `dotcom_user` | Este cookie é usado para sinalizar que o usuário já está conectado. | um ano | -| GitHub | `_gh_ent` | Este cookie é usado para aplicação temporária e para o estado da estrutura entre páginas, como em que etapa o cliente se encontra em um processo de várias etapas. | duas semanas | -| GitHub | `_gh_sess` | Este cookie é usado para aplicação temporária e para o estado do framework entre páginas, como por exemplo, em qual etapa o usuário está em um formulário de várias etapas. | sessão | -| GitHub | `gist_oauth_csrf` | Este cookie é definido pelo Gist para garantir que o usuário que iniciou o fluxo de autenticação seja o mesmo usuário que o completa. | excluído quando o estado do oauth é validado | -| GitHub | `gist_user_session` | Este cookie é usado pelo Gist ao ser executado em um host separado. | duas semanas | -| GitHub | `has_recent_activity` | Este cookie é usado para impedir a exibição de intersticial de segurança para usuários que visitaram o aplicativo recentemente. | uma hora | -| GitHub | `__Host-gist_user_session_same_site` | Este cookie foi definido para garantir que os navegadores que suportam cookies do SameSite possam verificar se uma solicitação é originária do GitHub. | duas semanas | -| GitHub | `__Host-user_session_same_site` | Este cookie foi definido para garantir que os navegadores que suportam cookies do SameSite possam verificar se uma solicitação é originária do GitHub. | duas semanas | -| GitHub | `logged_in` | Este cookie é usado para sinalizar que o usuário já está conectado. | um ano | -| GitHub | `marketplace_repository_ids` | Este cookie é usado para o fluxo de instalação do marketplace. | uma hora | -| GitHub | `marketplace_suggested_target_id` | Este cookie é usado para o fluxo de instalação do marketplace. | uma hora | -| GitHub | `_octo` | Este cookie é usado para o gerenciamento de sessões, incluindo o cache de conteúdo dinâmico, acesso condicional a recursos, suporte a metadados solicitados e análise da primeira parte. | um ano | -| GitHub | `org_transform_notice` | Este cookie é usado para fornecer aviso durante a transformação da organização. | uma hora | -| GitHub | `private_mode_user_session` | Este cookie é usado para solicitações de autenticação da empresa. | duas semanas | -| GitHub | `saml_csrf_token` | Este cookie é definido pelo método de caminho de autenticação SAML para associar um token ao cliente. | até que o usuário feche o navegador ou conclua a solicitação de autenticação | -| GitHub | `saml_csrf_token_legacy` | Este cookie é definido pelo método de caminho de autenticação SAML para associar um token ao cliente. | até que o usuário feche o navegador ou conclua a solicitação de autenticação | -| GitHub | `saml_return_to` | Este cookie é definido pelo método de caminho de autenticação SAML para manter o estado durante o loop de autenticação SAML. | até que o usuário feche o navegador ou conclua a solicitação de autenticação | -| GitHub | `saml_return_to_legacy` | Este cookie é definido pelo método de caminho de autenticação SAML para manter o estado durante o loop de autenticação SAML. | até que o usuário feche o navegador ou conclua a solicitação de autenticação | -| GitHub | `tz` | Este cookie nos permite personalizar os horários para seu fuso horário. | sessão | -| GitHub | `user_session` | Este cookie é usado para fazer seu login. | duas semanas | - -_*_ A data de **expiração** para os cookies listados abaixo geralmente se aplicam em uma base contínua. +Você pode ver a lista atual de cookies no GitHub e se inscrever para receber atualizações da lista de cookies em [https://github.com/privacy/cookies](https://github.com/privacy/cookies). (!) Observe que, embora limitemos o uso de cookies de terceiros aos que forem necessários para fornecer funcionalidade externa ao processar conteúdo externo, certas páginas no nosso site podem definir outros cookies de terceiros. Por exemplo, podemos incorporar conteúdo, como vídeos, de outro site que define um cookie. Embora tentemos minimizar esses cookies de terceiros, nem sempre podemos controlar quais cookies esse conteúdo de terceiros define. diff --git a/translations/pt-BR/data/features/actions-hosted-runners.yml b/translations/pt-BR/data/features/actions-hosted-runners.yml new file mode 100644 index 0000000000..fcc88d707d --- /dev/null +++ b/translations/pt-BR/data/features/actions-hosted-runners.yml @@ -0,0 +1,5 @@ +#Reference: #6458 +#Larger GitHub-hosted runners +versions: + fpt: '*' + ghec: '*' diff --git a/translations/pt-BR/data/features/actions-oidc-hardening-config.yml b/translations/pt-BR/data/features/actions-oidc-hardening-config.yml new file mode 100644 index 0000000000..f3048bac8b --- /dev/null +++ b/translations/pt-BR/data/features/actions-oidc-hardening-config.yml @@ -0,0 +1,6 @@ +#Reference: #7336 +#General versioning for oidc hardening options +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' diff --git a/translations/pt-BR/data/features/audit-log-sso-response-events.yml b/translations/pt-BR/data/features/audit-log-sso-response-events.yml new file mode 100644 index 0000000000..318ee46eab --- /dev/null +++ b/translations/pt-BR/data/features/audit-log-sso-response-events.yml @@ -0,0 +1,5 @@ +#Documentation for adding business.sso_response and org.sso_repsonse +versions: + ghec: '*' + ghes: '>=3.8' + ghae: 'issue-7939' diff --git a/translations/pt-BR/data/features/code-scanning-exclude-queries-from-analysis.yml b/translations/pt-BR/data/features/code-scanning-exclude-queries-from-analysis.yml new file mode 100644 index 0000000000..2157533a6d --- /dev/null +++ b/translations/pt-BR/data/features/code-scanning-exclude-queries-from-analysis.yml @@ -0,0 +1,7 @@ +#Issue 7617 +#Users can easily exclude CodeQL queries from code scanning analyses - [GA] +versions: + fpt: '*' + ghec: '*' + ghes: '>3.6' + ghae: 'issue-7617' diff --git a/translations/pt-BR/data/features/dependabot-alerts-vulnerable-calls.yml b/translations/pt-BR/data/features/dependabot-alerts-vulnerable-calls.yml index 84825c368b..a7f772a7c5 100644 --- a/translations/pt-BR/data/features/dependabot-alerts-vulnerable-calls.yml +++ b/translations/pt-BR/data/features/dependabot-alerts-vulnerable-calls.yml @@ -3,5 +3,4 @@ versions: fpt: '*' ghec: '*' - ghes: '>3.5' ghae: 'issue-6076' diff --git a/translations/pt-BR/data/features/dependency-review-action-ghes.yml b/translations/pt-BR/data/features/dependency-review-action-ghes.yml new file mode 100644 index 0000000000..2d8bca37f3 --- /dev/null +++ b/translations/pt-BR/data/features/dependency-review-action-ghes.yml @@ -0,0 +1,4 @@ +#Reference: Issue #7753 Dependency review action has shipped with GHES 3.6 and needs admin docs +versions: + ghes: '>3.5' + ghae: 'issue-7753' diff --git a/translations/pt-BR/data/features/enterprise-namespace-repo-setting.yml b/translations/pt-BR/data/features/enterprise-namespace-repo-setting.yml new file mode 100644 index 0000000000..e20549f3ea --- /dev/null +++ b/translations/pt-BR/data/features/enterprise-namespace-repo-setting.yml @@ -0,0 +1,6 @@ +#Reference: #7757 +#Setting to disable personal namespace repo creation for EMUs, GHES 3.7+ and GHAE 3.7+ users +versions: + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7757' diff --git a/translations/pt-BR/data/features/ip-allow-list-address-check.yml b/translations/pt-BR/data/features/ip-allow-list-address-check.yml new file mode 100644 index 0000000000..c4dda87a70 --- /dev/null +++ b/translations/pt-BR/data/features/ip-allow-list-address-check.yml @@ -0,0 +1,3 @@ +versions: + ghec: '*' + ghae: 'issue-7818' diff --git a/translations/pt-BR/data/features/multiple-accounts-one-workstation.yml b/translations/pt-BR/data/features/multiple-accounts-one-workstation.yml new file mode 100644 index 0000000000..9fce93b34e --- /dev/null +++ b/translations/pt-BR/data/features/multiple-accounts-one-workstation.yml @@ -0,0 +1,5 @@ +#Issue #7330 +#Documentation for managing multiple GitHub accounts on one workstation +versions: + fpt: '*' + ghec: '*' diff --git a/translations/pt-BR/data/features/packages-npm-v2.yml b/translations/pt-BR/data/features/packages-npm-v2.yml new file mode 100644 index 0000000000..572e412e4a --- /dev/null +++ b/translations/pt-BR/data/features/packages-npm-v2.yml @@ -0,0 +1,5 @@ +#Issue 7039 +#npm Package Registry Improvements (v2) GA +versions: + fpt: '*' + ghec: '*' diff --git a/translations/pt-BR/data/features/push-protection-custom-link-orgs-beta.yml b/translations/pt-BR/data/features/push-protection-custom-link-orgs-beta.yml new file mode 100644 index 0000000000..509caa9fb4 --- /dev/null +++ b/translations/pt-BR/data/features/push-protection-custom-link-orgs-beta.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links beta flags +#See "push-protection-custom-link-orgs" for the feature +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/pt-BR/data/features/push-protection-custom-link-orgs.yml b/translations/pt-BR/data/features/push-protection-custom-link-orgs.yml new file mode 100644 index 0000000000..fce23efa96 --- /dev/null +++ b/translations/pt-BR/data/features/push-protection-custom-link-orgs.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links +#See "push-protection-custom-link-orgs-beta" for the beta flags +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/pt-BR/data/features/ssh-commit-verification.yml b/translations/pt-BR/data/features/ssh-commit-verification.yml new file mode 100644 index 0000000000..7851b1c8b7 --- /dev/null +++ b/translations/pt-BR/data/features/ssh-commit-verification.yml @@ -0,0 +1,8 @@ +#Reference: github/docs-content#6709 +#Initial docs for showing SSH signed commits as verified and +#uploading SSH signing keys +versions: + fpt: '*' + ghec: '*' + ghes: '>= 3.7' + ghae: '*' diff --git a/translations/pt-BR/data/features/streaming-datadog.yml b/translations/pt-BR/data/features/streaming-datadog.yml new file mode 100644 index 0000000000..ab90546c8d --- /dev/null +++ b/translations/pt-BR/data/features/streaming-datadog.yml @@ -0,0 +1,4 @@ +#Reference #7495 +#Documentation for audit log streaming to a Datadog endpoint +versions: + ghec: '*' diff --git a/translations/pt-BR/data/graphql/ghec/graphql_upcoming_changes.public.yml b/translations/pt-BR/data/graphql/ghec/graphql_upcoming_changes.public.yml index 45eba08d2b..f025d7e4e5 100644 --- a/translations/pt-BR/data/graphql/ghec/graphql_upcoming_changes.public.yml +++ b/translations/pt-BR/data/graphql/ghec/graphql_upcoming_changes.public.yml @@ -996,7 +996,7 @@ upcoming_changes: owner: lukewar - location: ProjectView.groupedItems - description: '`groupedItems` will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement.' + description: 'O `groupedItems` será removido. Siga o guia ProjectV2 em https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/ para encontrar um substituto adequado.' reason: A API `ProjectNext` está obsoleta para favorecer a API `ProjectV2` que tem mais capacidade. date: '2022-10-01T00:00:00+00:00' criticality: breaking diff --git a/translations/pt-BR/data/graphql/graphql_upcoming_changes.public.yml b/translations/pt-BR/data/graphql/graphql_upcoming_changes.public.yml index 45eba08d2b..f025d7e4e5 100644 --- a/translations/pt-BR/data/graphql/graphql_upcoming_changes.public.yml +++ b/translations/pt-BR/data/graphql/graphql_upcoming_changes.public.yml @@ -996,7 +996,7 @@ upcoming_changes: owner: lukewar - location: ProjectView.groupedItems - description: '`groupedItems` will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement.' + description: 'O `groupedItems` será removido. Siga o guia ProjectV2 em https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/ para encontrar um substituto adequado.' reason: A API `ProjectNext` está obsoleta para favorecer a API `ProjectV2` que tem mais capacidade. date: '2022-10-01T00:00:00+00:00' criticality: breaking diff --git a/translations/pt-BR/data/learning-tracks/admin.yml b/translations/pt-BR/data/learning-tracks/admin.yml index 9c7defdddb..cfa1b4d02f 100644 --- a/translations/pt-BR/data/learning-tracks/admin.yml +++ b/translations/pt-BR/data/learning-tracks/admin.yml @@ -113,6 +113,7 @@ configure_github_advanced_security: - /admin/advanced-security/about-licensing-for-github-advanced-security - /admin/advanced-security/enabling-github-advanced-security-for-your-enterprise - /admin/advanced-security/configuring-code-scanning-for-your-appliance + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-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: diff --git a/translations/pt-BR/data/learning-tracks/code-security.yml b/translations/pt-BR/data/learning-tracks/code-security.yml index 22db7b40dc..bac6b7fbfb 100644 --- a/translations/pt-BR/data/learning-tracks/code-security.yml +++ b/translations/pt-BR/data/learning-tracks/code-security.yml @@ -15,8 +15,8 @@ security_advisories: - /code-security/repository-security-advisories/removing-a-collaborator-from-a-repository-security-advisory #Feature available on dotcom and GHES 3.3+, so articles available on GHAE and earlier GHES hidden to hide the learning track dependabot_alerts: - title: 'Get notifications for insecure dependencies' - description: 'Set up Dependabot to alert you to new vulnerabilities{% ifversion GH-advisory-db-supports-malware %} or malware{% endif %} in your dependencies.' + title: 'Receber notificações para dependências inseguras' + description: 'Configure o dependente para alertar você sobre novas vulnerabilidades{% ifversion GH-advisory-db-supports-malware %} ou malware{% endif %} em suas dependências.' guides: - /code-security/dependabot/dependabot-alerts/about-dependabot-alerts - '{% ifversion fpt or ghec or ghes > 3.2 %}/github/administering-a-repository/managing-repository-settings/managing-security-and-analysis-settings-for-your-repository{% endif %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-2/17.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-2/17.yml index 198fb8ef6a..dc29512c04 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-2/17.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-2/17.yml @@ -2,11 +2,11 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICO**: O contêiner do Elasticsearch do GitHub Enterprise Server usou uma versão do OpenJDK 8 que era vulnerável a um problema de truncação integral ao processar folhas de estilo maliciosas do XSLT. A vulnerabilidade é rastreada como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTO**: Anteriormente foi concedida permissão para acessar uma organização em tokens de acesso com escopo depois que a conta de usuário foi transformada em uma conta da organização. Essa vulnerabilidade foi reportada por meio do [programa de Recompensas de Erros do GitHub](https://bounty.github.com). bugs: - - When a custom dormancy threshold was set for the instance, suspending all dormant users did not reliably respect the threshold. For more information about dormancy, see "[Managing dormant users](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." + - Quando foi fixado um limite de inatividade personalizado, a suspensão de todos os usuários inativos não respeitava de forma fiável o limite. Para obter mais informações sobre a inatividade, consulte "[Gerenciando usuários inativos](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." known_issues: - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. - As regras de firewall personalizadas são removidas durante o processo de atualização. diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-2/18.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-2/18.yml new file mode 100644 index 0000000000..d69d66df6d --- /dev/null +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-2/18.yml @@ -0,0 +1,16 @@ +date: '2022-08-30' +sections: + bugs: + - As chaves SSH administrativas duplicadas podem aparecer tanto no Console de Gerenciamento quanto no arquivo `/home/admin/.ssh/authorized_keys`. + - Em alguns casos, as tarefas de segundo plano podem ser fixadas devido a uma biblioteca que foi usada simultaneamente apesar de não ser segura para correntes. + changes: + - A geração de pacotes de suporte é mais rápida como resultado de uma sanitização paralela de registros. Para obter mais informações sobre pacotes de suporte, consulte "[Fornecendo dados para o suporte do GitHub](/support/contacting-github-support/providing-data-to-github-support)." + known_issues: + - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. + - As regras de firewall personalizadas são removidas durante o processo de atualização. + - Arquivos LFS do Git [enviados através da interface web](https://github.com/blog/2105-upload-files-to-your-repositories) são adicionados diretamente ao repositório e de forma incorreta. + - Os problemas não podem ser fechados se contiverem um permalink para um blob no mesmo repositório, onde o caminho do arquivo blob's é maior que 255 caracteres. + - Quando "Usuários podem pesquisar pelo GitHub.com" está habilitado com {% data variables.product.prodname_github_connect %}, os problemas nos repositórios privados e internos não são incluídos nos resultados de pesquisa de {% data variables.product.prodname_dotcom_the_website %}. + - O registro npm de {% data variables.product.prodname_registry %} não retorna mais o valor de tempo em respostas de metadados. Isso foi feito para permitir melhorias substanciais de desempenho. Continuamos a ter todos os dados necessários para devolver um valor de tempo como parte da resposta aos metadados e retomaremos o retorno desse valor no futuro, assim que tivermos resolvido os problemas de desempenho existentes. + - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-3/0.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-3/0.yml index 61375092d8..5ef0b20a88 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-3/0.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-3/0.yml @@ -7,15 +7,15 @@ sections: heading: Função do gerente de segurança notes: - | - Organization owners can now grant teams the access to manage security alerts and settings on their repositories. The "security manager" role can be applied to any team and grants the team's members the following access: + Os proprietários da organização agora podem conceder às equipes o acesso para gerenciar alertas de segurança e configurações de seus repositórios. A função de "gerente de segurança" pode ser aplicada a qualquer equipe e concede aos integrantes da equipe o seguinte acesso: - - Read access on all repositories in the organization. - - Write access on all security alerts in the organization. - - Access to the organization-level security tab. - - Write access on security settings at the organization level. - - Write access on security settings at the repository level. + - Acesso de leitura em todos os repositórios da organização. + - Acesso de gravação em todos os alertas de segurança na organização + - Acesso à aba de segurança a nível da organização. + - Acesso de gravação nas configurações de segurança no nível da organização + - Acesso de gravação nas configurações de segurança no nível de repositório. - The security manager role is available as a public beta and subject to change. For more information, see "[Managing security managers in your organization](/organizations/managing-peoples-access-to-your-organization-with-roles/managing-security-managers-in-your-organization)." [Updated 2022-07-29] + A função de gerente de segurança está disponível como uma versão beta pública e sujeita a alterações. Para obter mais informações, consulte "[Gerenciando os gerentes de segurança na sua organização](/organizations/managing-peopleles-access-to-your-organization-with-roles/managing-security-managers-in-your-organization)." [Atualizado em 2022-07-29] - heading: 'Executores efêmeros auto-hospedados no GitHub Actions e novos webhooks para dimensionamento automático' notes: diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-3/11.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-3/11.yml index e7a29f9b4d..ca5a6d071c 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-3/11.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-3/11.yml @@ -5,7 +5,7 @@ sections: - "**MÉDIO**: Impede que um invasor execute o código do Javascript explorando uma vulnerabilidade de script entre sites (XSS) nos elementos da interface de usuário do menu suspenso na interface web do GitHub Enterprise Server." - Atualiza o Grafana para a versão 7.5.16, que aborda várias vulnerabilidades de segurança, incluindo [CVE-2020-13379](https://github.com/advisories/GHSA-wc9w-wvq2-ffm9) e [CVE-2022-21702](https://github.com/grafana/grafana/security/advisories/GHSA-xc3p-28hw-q24g). - Os pacotes foram atualizados para as últimas versões de segurança. - - "**MEDIUM**: A stored XSS vulnerability was identified in GitHub Enterprise Server that allowed the injection of arbitrary attributes. This injection was blocked by Github's Content Security Policy (CSP). This vulnerability was reported via the GitHub Bug Bounty program and has been assigned [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Updated: 2022-07-31]" + - "**MÉDIO**: Uma vulnerabilidade XSS armazenada foi identificada no GitHub Enterprise Server que permitiu a injeção de atributos arbitrários. Essa injeção foi bloqueada pela Política de Segurança de Conteúdo do GitHub (CSP). Esta vulnerabilidade foi relatada no programa de Compensação de Erro do GitHub foi atribuída a [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Atualizado: 2022-07-31]" bugs: - Corrigido um problema em que os arquivos dentro dos arquivos zip do artefato tinham permissões de 000 quando descompactados usando uma ferramenta descompactada. Agora, os arquivos terão as permissões definidas como 644, da mesma maneira que funciona no GitHub.com. - Em alguns casos, o collectd daemon poderia consumir o excesso de memória. diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-3/12.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-3/12.yml index 459f444aa0..c7ddbe92f7 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-3/12.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-3/12.yml @@ -2,13 +2,13 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICO**: O contêiner do Elasticsearch do GitHub Enterprise Server usou uma versão do OpenJDK 8 que era vulnerável a um problema de truncação integral ao processar folhas de estilo maliciosas do XSLT. A vulnerabilidade é rastreada como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTO**: Anteriormente foi concedida permissão para acessar uma organização em tokens de acesso com escopo depois que a conta de usuário foi transformada em uma conta da organização. Essa vulnerabilidade foi reportada por meio do [programa de Recompensas de Erros do GitHub](https://bounty.github.com). bugs: - - When a custom dormancy threshold was set for the instance, suspending all dormant users did not reliably respect the threshold. For more information about dormancy, see "[Managing dormant users](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." + - Quando foi fixado um limite de inatividade personalizado, a suspensão de todos os usuários inativos não respeitava de forma fiável o limite. Para obter mais informações sobre a inatividade, consulte "[Gerenciando usuários inativos](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." changes: - - 'The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + - 'O log de auditoria corporativo agora inclui mais eventos gerados pelo usuário, como `project.create`. A API REST também retorna eventos adicionais gerados pelo usuário, como `repo.create`. Para obter mais informações, consulte "[Acessando o log de auditoria da sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" e "[Usando a API de log de auditoria para sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' known_issues: - Após a atualização para {% data variables.product.prodname_ghe_server %} 3.3, {% data variables.product.prodname_actions %} pode não ser iniciado automaticamente. Para resolver esse problema, conecte-se ao dispositivo via SSH e execute o comando `ghe-actions-start`. - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-3/13.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-3/13.yml new file mode 100644 index 0000000000..ccbf07c474 --- /dev/null +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-3/13.yml @@ -0,0 +1,23 @@ +date: '2022-08-30' +sections: + bugs: + - Depois de desbloquear um repositório para acesso temporário, um administrador do site não conseguiu gerenciar configurações para produtos de segurança no repositório. + - As chaves SSH administrativas duplicadas podem aparecer tanto no Console de Gerenciamento quanto no arquivo `/home/admin/.ssh/authorized_keys`. + - Em alguns casos, a execução de `ghe-cluster-config-apply` poderia replicar uma configuração vazia para nós existentes em um cluster. + - Em alguns casos, as execuções da configuração começaram com 'ghe-config-apply' não foi concluído ou retornou um erro de 'Incompatibilidade de contagem de contêiner'. + - Depois de atualizar um certificado TLS autoassinado em uma instância do GitHub Enterprise Server, os elementos da interface de usuário não apareceram em algumas páginas. + - Em alguns casos, as tarefas de segundo plano podem ser fixadas devido a uma biblioteca que foi usada simultaneamente apesar de não ser segura para correntes. + changes: + - A geração de pacotes de suporte é mais rápida como resultado de uma sanitização paralela de registros. Para obter mais informações sobre pacotes de suporte, consulte "[Fornecendo dados para o suporte do GitHub](/support/contacting-github-support/providing-data-to-github-support)." + - 'O log de auditoria corporativo agora inclui mais eventos gerados pelo usuário, como `project.create`. A API REST também retorna eventos adicionais gerados pelo usuário, como `repo.create`. Para obter mais informações, consulte "[Acessando o log de auditoria da sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" e "[Usando a API de log de auditoria para sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + known_issues: + - Após a atualização para {% data variables.product.prodname_ghe_server %} 3.3, {% data variables.product.prodname_actions %} pode não ser iniciado automaticamente. Para resolver esse problema, conecte-se ao dispositivo via SSH e execute o comando `ghe-actions-start`. + - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. + - As regras de firewall personalizadas são removidas durante o processo de atualização. + - Arquivos LFS do Git [enviados através da interface web](https://github.com/blog/2105-upload-files-to-your-repositories) são adicionados diretamente ao repositório e de forma incorreta. + - Os problemas não podem ser fechados se contiverem um permalink para um blob no mesmo repositório, onde o caminho do arquivo blob's é maior que 255 caracteres. + - Quando "Usuários podem pesquisar pelo GitHub.com" está habilitado com {% data variables.product.prodname_github_connect %}, os problemas nos repositórios privados e internos não são incluídos nos resultados de pesquisa de {% data variables.product.prodname_dotcom_the_website %}. + - O registro npm de {% data variables.product.prodname_registry %} não retorna mais o valor de tempo em respostas de metadados. Isso foi feito para permitir melhorias substanciais de desempenho. Continuamos a ter todos os dados necessários para devolver um valor de tempo como parte da resposta aos metadados e retomaremos o retorno desse valor no futuro, assim que tivermos resolvido os problemas de desempenho existentes. + - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. + - 'As configurações de armazenamento de {% data variables.product.prodname_actions %} não podem ser validadas e salvas no {% data variables.enterprise.management_console %} quando "Forçar estilo de caminho" for selecionado e deverão ser definidas com a ferramenta de linha de comando `ghe-actions-precheck`.' + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-4/3.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-4/3.yml index c302c19d71..9fb1b24c83 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-4/3.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-4/3.yml @@ -37,5 +37,5 @@ sections: - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. - | Depois de registrar um executor auto-hospedado com o parâmetro `--ephemeral` em mais de um nível (por exemplo, tanto na empresa quanto na organização), o executor pode ficar preso em um estado ocioso e exigir o recadastro. [Atualizado: 2022-06-17] - - After upgrading to {% data variables.product.prodname_ghe_server %} 3.4 releases may appear to be missing from repositories. This can occur when the required Elasticsearch index migrations have not successfully completed. + - Depois de atualizar para {% data variables.product.prodname_ghe_server %} 3.4, as versões podem parecer ausentes nos repositórios. Isso pode ocorrer quando as migrações necessárias do índice Elasticsearch não tiverem sido concluídas com sucesso. - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-4/5.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-4/5.yml index 3d5d90e6b7..f67eaa06ad 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-4/5.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-4/5.yml @@ -25,6 +25,6 @@ sections: - O registro npm de {% data variables.product.prodname_registry %} não retorna mais o valor de tempo em respostas de metadados. Isso foi feito para permitir melhorias substanciais de desempenho. Continuamos a ter todos os dados necessários para devolver um valor de tempo como parte da resposta aos metadados e retomaremos o retorno desse valor no futuro, assim que tivermos resolvido os problemas de desempenho existentes. - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. - | - After registering a self-hosted runner with the `--ephemeral` parameter on more than one level (for example, both enterprise and organization), the runner may get stuck in an idle state and require re-registration. + Depois de registrar um executor auto-hospedado com o parâmetro `--ephemeral` em mais de um nível (por exemplo, tanto na empresa quanto na organização), o executor pode ficar preso em um estado ocioso e exigir o recadastro. - Depois de atualizar para {% data variables.product.prodname_ghe_server %} 3.4, as versões podem parecer ausentes nos repositórios. Isso pode ocorrer quando as migrações necessárias do índice Elasticsearch não tiverem sido concluídas com sucesso. - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-4/6.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-4/6.yml index 8fd7ef72ea..fbfaba67a9 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-4/6.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-4/6.yml @@ -5,7 +5,7 @@ sections: - "**MÉDIO**: Impede que um invasor execute o código do Javascript explorando uma vulnerabilidade de script entre sites (XSS) nos elementos da interface de usuário do menu suspenso na interface web do GitHub Enterprise Server." - Atualiza o Grafana para a versão 7.5.16, que aborda várias vulnerabilidades de segurança, incluindo [CVE-2020-13379](https://github.com/advisories/GHSA-wc9w-wvq2-ffm9) e [CVE-2022-21702](https://github.com/grafana/grafana/security/advisories/GHSA-xc3p-28hw-q24g). - Os pacotes foram atualizados para as últimas versões de segurança. - - "**MEDIUM**: A stored XSS vulnerability was identified in GitHub Enterprise Server that allowed the injection of arbitrary attributes. This injection was blocked by Github's Content Security Policy (CSP). This vulnerability was reported via the GitHub Bug Bounty program and has been assigned [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Updated: 2022-07-31]" + - "**MÉDIO**: Uma vulnerabilidade XSS armazenada foi identificada no GitHub Enterprise Server que permitiu a injeção de atributos arbitrários. Essa injeção foi bloqueada pela Política de Segurança de Conteúdo do GitHub (CSP). Esta vulnerabilidade foi relatada no programa de Compensação de Erro do GitHub foi atribuída a [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Atualizado: 2022-07-31]" bugs: - Em alguns casos, o collectd daemon poderia consumir o excesso de memória. - Em alguns casos, os backups dos arquivos de log girados podem acumular e consumir o excesso de armazenamento. @@ -13,8 +13,8 @@ sections: - Em alguns casos, quando um branch protegido exigia mais de uma revisão de aprovação, um pull request pode ser mesclado com menos do que o número necessário de revisões de aprovação. - Em instâncias que usam a autenticação LDAP, a solicitação de autenticação do modo sudo colocou incorretamente o cursor dentro do campo de senha por padrão quando campos de texto para um nome de usuário e senha estavam visíveis. - Em alguns casos, os fluxos de trabalho agendados do GitHub Actions podem ficar desabilitados. - - 'The Billing API''s "[Get GitHub Advanced Security active committers for an organization](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" endpoint now returns `Link` headers to provide information about pagination.' - - 'The Billing API''s "[Get GitHub Advanced Security active committers for an organization](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" endpoint now returns the correct number of total committers.' + - 'O ponto de extremidade da API de cobrança "[Obter committers ativos do GitHub Advanced Security para uma organização](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" agora retorna cabeçalhos de "Link" para fornecer informações sobre a paginação.' + - 'O ponto de extremidade da API de cobrança "[Obter committers ativos do GitHub Advanced Security para uma organização](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" agora retorna o número correto do total de commiters.' changes: - A ferramenta de linha de comando `ghe-set-password` inicia os serviços necessários automaticamente quando a instância é iniciada no modo de recuperação. - As métricas para processos em segundo plano `aqueduct` são coletadas para encaminhamento e exibição no console de gerenciamento. diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-4/7.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-4/7.yml index 4829505056..0bfd4ddf5b 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-4/7.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-4/7.yml @@ -2,16 +2,16 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICO**: O contêiner do Elasticsearch do GitHub Enterprise Server usou uma versão do OpenJDK 8 que era vulnerável a um problema de truncação integral ao processar folhas de estilo maliciosas do XSLT. A vulnerabilidade é rastreada como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTO**: Anteriormente foi concedida permissão para acessar uma organização em tokens de acesso com escopo depois que a conta de usuário foi transformada em uma conta da organização. Essa vulnerabilidade foi reportada por meio do [programa de Recompensas de Erros do GitHub](https://bounty.github.com). bugs: - - In some cases, GitHub Enterprise Server instances on AWS that used the `r4.4xlarge` instance type would fail to boot. - - 'When calculating committers for GitHub Advanced Security, it was not possible to specify individual repositories. For more information, see "[Site admin dashboard](/admin/configuration/configuring-your-enterprise/site-admin-dashboard#advanced-security-committers)."' - - When a custom dormancy threshold was set for the instance, suspending all dormant users did not reliably respect the threshold. For more information about dormancy, see "[Managing dormant users](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." + - Em alguns casos, as instâncias do GitHub Enterprise Server no AWS que usaram o tipo de instância `r4.4xlarge` falhariam ao inicializar. + - 'Ao calcular os committers para o GitHub Advanced Security, não foi possível especificar repositórios individuais. Para obter mais informações, consulte "[Painel de administração do site](/admin/configuration/configuring-your-enterprise/site-admin-dashboard#advanced-security-committers)."' + - Quando foi fixado um limite de inatividade personalizado, a suspensão de todos os usuários inativos não respeitava de forma fiável o limite. Para obter mais informações sobre a inatividade, consulte "[Gerenciando usuários inativos](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." changes: - - '`pre_receive_hook.rejected_push` events were not displayed in the enterprise audit log.' - - Both migration archives for repositories and archive exports for user accounts include release reactions. + - 'Os eventos `pre_receive_hook.rejected_push` não foram exibidos no log de auditoria corporativa.' + - Tanto os arquivos de migração para repositórios como as exportações de arquivos para contas de usuário incluem reações de versão. known_issues: - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. - As regras de firewall personalizadas são removidas durante o processo de atualização. diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-4/8.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-4/8.yml new file mode 100644 index 0000000000..26100d1173 --- /dev/null +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-4/8.yml @@ -0,0 +1,26 @@ +date: '2022-08-30' +sections: + bugs: + - Depois de desbloquear um repositório para acesso temporário, um administrador do site não conseguiu gerenciar configurações para produtos de segurança no repositório. + - As chaves SSH administrativas duplicadas podem aparecer tanto no Console de Gerenciamento quanto no arquivo `/home/admin/.ssh/authorized_keys`. + - A página de administração do site para usuários individuais em http(s)://HOSTNAME/stafftools/users/USERNAME/admin continha funcionalidades não destinadas ao GitHub Enterprise Server. + - Em alguns casos, a execução de `ghe-cluster-config-apply` poderia replicar uma configuração vazia para nós existentes em um cluster. + - Em alguns casos, as execuções da configuração começaram com 'ghe-config-apply' não foi concluído ou retornou um erro de 'Incompatibilidade de contagem de contêiner'. + - Depois de atualizar um certificado TLS autoassinado em uma instância do GitHub Enterprise Server, os elementos da interface de usuário não apareceram em algumas páginas. + - Em alguns casos, as tarefas de segundo plano podem ser fixadas devido a uma biblioteca que foi usada simultaneamente apesar de não ser segura para correntes. + changes: + - A geração de pacotes de suporte é mais rápida como resultado de uma sanitização paralela de registros. Para obter mais informações sobre pacotes de suporte, consulte "[Fornecendo dados para o suporte do GitHub](/support/contacting-github-support/providing-data-to-github-support)." + - As APIs que contêm o encaminhamento `organização` ou `org` agora aceitam o slug ou o ID da organização. Anteriormente, as APIs só aceitavam slugs, o que fazia com que os cabeçalhos `Link` dos pontos de extremidade do GitHub Advanced Security não pudessem ser acessados. Para obter mais informações, consulte "[Organizations](https://docs.github.com/rest/orgs/orgs)" na documentação da API REST. + - 'O log de auditoria corporativo agora inclui mais eventos gerados pelo usuário, como `project.create`. A API REST também retorna eventos adicionais gerados pelo usuário, como `repo.create`. Para obter mais informações, consulte "[Acessando o log de auditoria da sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" e "[Usando a API de log de auditoria para sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + known_issues: + - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. + - As regras de firewall personalizadas são removidas durante o processo de atualização. + - Arquivos LFS do Git [enviados através da interface web](https://github.com/blog/2105-upload-files-to-your-repositories) são adicionados diretamente ao repositório e de forma incorreta. + - Os problemas não podem ser fechados se contiverem um permalink para um blob no mesmo repositório, onde o caminho do arquivo blob's é maior que 255 caracteres. + - Quando "Usuários podem pesquisar pelo GitHub.com" está habilitado com {% data variables.product.prodname_github_connect %}, os problemas nos repositórios privados e internos não são incluídos nos resultados de pesquisa de {% data variables.product.prodname_dotcom_the_website %}. + - O registro npm de {% data variables.product.prodname_registry %} não retorna mais o valor de tempo em respostas de metadados. Isso foi feito para permitir melhorias substanciais de desempenho. Continuamos a ter todos os dados necessários para devolver um valor de tempo como parte da resposta aos metadados e retomaremos o retorno desse valor no futuro, assim que tivermos resolvido os problemas de desempenho existentes. + - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. + - | + Depois de registrar um executor auto-hospedado com o parâmetro `--ephemeral` em mais de um nível (por exemplo, tanto na empresa quanto na organização), o executor pode ficar preso em um estado ocioso e exigir o recadastro. [Atualizado: 2022-06-17] + - Depois de atualizar para {% data variables.product.prodname_ghe_server %} 3.4, as versões podem parecer ausentes nos repositórios. Isso pode ocorrer quando as migrações necessárias do índice Elasticsearch não tiverem sido concluídas com sucesso. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-5/0-rc1.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-5/0-rc1.yml index 213cadcabf..9121c9b1cb 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-5/0-rc1.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-5/0-rc1.yml @@ -37,7 +37,7 @@ sections: heading: De modo geral, as atualizações do Dependabot estão disponíveis notes: - | - Dependabot version and security updates are now generally available in GitHub Enterprise Server 3.5. All the popular ecosystems and features that work on GitHub.com repositories now can be set up on your GitHub Enterprise Server instance. Dependabot on GitHub Enterprise Server requires GitHub Actions and a pool of self-hosted Dependabot runners, GitHub Connect enabled, and Dependabot enabled by an admin. For more information, see "[Setting up Dependabot updates](https://docs.github.com/en/enterprise-server@3.5/admin/github-actions/enabling-github-actions-for-github-enterprise-server/setting-up-dependabot-updates)." + A versão do Dependabot e as atualizações de segurança agora estão geralmente disponíveis no GitHub Enterprise Server 3.5. Agora todos os ecossistemas e funcionalidades populares que funcionam nos repositórios GitHub.com podem ser configurados na sua instância do GitHub Enterprise Server. O Dependabot no GitHub Enterprise Server exige o GitHub Actions e um conjunto de executores do Dependabot auto-hospedados, GitHub Connect habilitado e Dependabot habilitado por um administrador. Para obter mais informações, consulte "[Configurar atualizações de Dependabot](https://docs.github.com/en/enterprise-server@3.5/admin/github-actions/enabling-github-actions-for-github-enterprise-server/setting-up-dependabot-updates)." - heading: Estatísticas do Servidor na versão beta pública notes: @@ -245,13 +245,13 @@ sections: heading: Eventos do Git no log de auditoria da empresa notes: - | - The following Git-related events can now appear in the enterprise audit log. If you enable the feature and set an audit log retention period, the new events will be available for search via the UI and API, or export via JSON or CSV. + Os eventos a seguir relacionados ao Gits agora podem aparecer no log de auditorias corporativas. Se você habilitar o recurso e definir um período de retenção de registro de auditoria, os novos eventos estarão disponíveis para pesquisa por meio da interface do usuário e API, ou exportação via JSON ou CSV. - `git.clone` - `git.fetch` - - `git.push` + - `git. ush` - Due to the large number of Git events logged, we recommend you monitor your instance's file storage and review your related alert configurations. For more information, see "[Configuring the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise#managing-git-events-in-the-audit-log)." + Devido ao grande número de eventos do Git registrados, recomendamos que você monitore o armazenamento de arquivos da sua instância e revise as configurações de alerta relacionadas. Para obter mais informações, consulte "[Configurar o log de auditoria para a sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise#managing-git-events-in-the-audit-log)". - heading: Melhorias nos CODEOWNERS notes: diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-5/0.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-5/0.yml index 6f707887bf..e249343b9f 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-5/0.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-5/0.yml @@ -29,7 +29,7 @@ sections: heading: De modo geral, as atualizações do Dependabot estão disponíveis notes: - | - Dependabot version and security updates are now generally available in GitHub Enterprise Server 3.5. All the popular ecosystems and features that work on GitHub.com repositories now can be set up on your GitHub Enterprise Server instance. Dependabot on GitHub Enterprise Server requires GitHub Actions and a pool of self-hosted Dependabot runners, GitHub Connect enabled, and Dependabot enabled by an admin. For more information, see "[Setting up Dependabot updates](https://docs.github.com/en/enterprise-server@3.5/admin/github-actions/enabling-github-actions-for-github-enterprise-server/setting-up-dependabot-updates)." + A versão do Dependabot e as atualizações de segurança agora estão geralmente disponíveis no GitHub Enterprise Server 3.5. Agora todos os ecossistemas e funcionalidades populares que funcionam nos repositórios GitHub.com podem ser configurados na sua instância do GitHub Enterprise Server. O Dependabot no GitHub Enterprise Server exige o GitHub Actions e um conjunto de executores do Dependabot auto-hospedados, GitHub Connect habilitado e Dependabot habilitado por um administrador. Para obter mais informações, consulte "[Configurar atualizações de Dependabot](https://docs.github.com/en/enterprise-server@3.5/admin/github-actions/enabling-github-actions-for-github-enterprise-server/setting-up-dependabot-updates)." - heading: Estatísticas do Servidor na versão beta pública notes: @@ -115,8 +115,8 @@ sections: heading: O gráfico de dependências é compatível com o GitHub Actions notes: - | - The dependency graph now detects YAML files for GitHub Actions workflows. GitHub Enterprise Server will display the workflow files within the **Insights** tab's dependency graph section. Repositories that publish actions will also be able to see the number of repositories that depend on that action from the "Used By" control on the repository homepage. For more information, see "[About the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + O gráfico de dependências agora detecta arquivos YAML para fluxos de trabalho do GitHub Actions. O GitHub Enterprise Server exibirá os arquivos de fluxo de trabalho na aba **Insights** da guia do gráfico de dependências. Os repositórios que publicam ações também poderão ver o número de repositórios que dependem dessa ação do controle "Usado por" na página inicial do repositório. Para obter mais informações, consulte "[Sobre o gráfico de dependência](/code-security/supply chain-security/understanding-your-software-supply-chain/about-the-dependency-graph)." + - **Observação**: Este recurso estava indisponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. O recurso está disponível em 3.5.4 e posterior. [Atualizado: 2022-08-16] - heading: Visão geral de segurança para empresas na beta pública notes: @@ -200,8 +200,8 @@ sections: heading: Reabrir alertas de Dependabot ignorados notes: - | - You can now reopen dismissed Dependabot alerts through the UI page for a closed alert. This does not affect Dependabot pull requests or the GraphQL API. For more information, see "[About Dependabot alerts](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + Agora você pode reabrir alertas Dependabot ignorados por meio da página da interface de usuário para um alerta fechado. Isso não afeta os pull requests do Dependabot ou a API do GraphQL. Para obter mais informações, consulte "[Sobre alertas de Dependabot](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts). + - **Observação**: Este recurso não estava disponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. O recurso está disponível na versão 3.5.4 e posterior. [Atualizado: 2022-08-16] - heading: O suporte público para atualizações da versão dependente está na versão beta pública notes: @@ -239,13 +239,13 @@ sections: heading: Eventos do Git no log de auditoria da empresa notes: - | - The following Git-related events can now appear in the enterprise audit log. If you enable the feature and set an audit log retention period, the new events will be available for search via the UI and API, or export via JSON or CSV. + Os eventos a seguir relacionados ao Gits agora podem aparecer no log de auditorias corporativas. Se você habilitar o recurso e definir um período de retenção de registro de auditoria, os novos eventos estarão disponíveis para pesquisa por meio da interface do usuário e API, ou exportação via JSON ou CSV. - `git.clone` - `git.fetch` - - `git.push` + - `git. ush` - Due to the large number of Git events logged, we recommend you monitor your instance's file storage and review your related alert configurations. For more information, see "[Configuring the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise#managing-git-events-in-the-audit-log)." + Devido ao grande número de eventos do Git registrados, recomendamos que você monitore o armazenamento de arquivos da sua instância e revise as configurações de alerta relacionadas. Para obter mais informações, consulte "[Configurar o log de auditoria para a sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/configuring-the-audit-log-for-your-enterprise#managing-git-events-in-the-audit-log)". - heading: Melhorias nos CODEOWNERS notes: @@ -261,12 +261,12 @@ sections: heading: Outras formas de manter o branch de um pull request atualizado notes: - | - The **Update branch** button on the pull request page lets you update your pull request's branch with the latest changes from the base branch. This is useful for verifying your changes are compatible with the current version of the base branch before you merge. Two enhancements now give you more ways to keep your branch up-to-date. + O botão **Atualizar o branch** na página do pull request permite que você atualize o branch do pull request com as últimas alterações do branch base. Isso é útil para verificar se as alterações são compatíveis com a versão atual do branch base antes de fazer merge. Duas melhorias agora oferecem mais maneiras de manter seu branch atualizado. - - When your pull request's topic branch is out of date with the base branch, you now have the option to update it by rebasing on the latest version of the base branch. Rebasing applies the changes from your branch onto the latest version of the base branch, resulting in a branch with a linear history since no merge commit is created. To update by rebasing, click the drop down menu next to the **Update Branch** button, click **Update with rebase**, and then click **Rebase branch**. Previously, **Update branch** performed a traditional merge that always resulted in a merge commit in your pull request branch. This option is still available, but now you have the choice. For more information, see "[Keeping your pull request in sync with the base branch](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/keeping-your-pull-request-in-sync-with-the-base-branch)." + - Quando o branch de tópico do seu pull request está desatualizado com o branch de base, agora você tem a opção de atualizá-lo baseado na versão mais recente do branch de base. O rabase aplica as alterações do branch na versão mais recente do branch base, gerando um branch com um histórico linear, uma vez que nenhum commit de merge foi criado. Para atualizar o rebase, clique no menu suspenso ao lado do botão **Atualizar Branch**, clique em **Atualizar com rebase** e, em seguida, clique em **Branch de rebase**. Anteriormente, **Atualizar o branch** realizou um merge tradicional que sempre resultou em um commit de merge no seu branch de pull request. Esta opção ainda está disponível, mas agora você pod escolher. Para obter mais informações, consulte "[Manter seu pull request em sincronia com o branch base](/pull-requests/collaborating-with-pull-requests/proponing-changes-to-your-work-with-pull-requests/keeping-your-pull-request-in-sync-with-the-base-branch). - - A new repository setting allows the **Update branch** button to always be available when a pull request's topic branch is not up to date with the base branch. Previously, this button was only available when the **Require branches to be up to date before merging** branch protection setting was enabled. People with admin or maintainer access can manage the **Always suggest updating pull request branches** setting from the **Pull Requests** section in repository settings. For more information, see "[Managing suggestions to update pull request branches](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + - Uma nova configuração do repositório permite que o botão **Atualizar o branch** esteja sempre disponível quando o branch de tópico de um pull request não estiver atualizado com o branch base. Anteriormente, esse botão só estava disponível quando a configuração de preoteção do branch **Exigir que os branches estejam atualizados antes do merge** estava habilitada. As pessoas com acesso de administrador ou mantenedor podem gerenciar a configuração **Sempre sugerir atualizar os branches de pull request** na seção **Pull Requests** nas configurações do repositório. Para obter mais informações, consulte "[Gerenciando as sugestões para atualizar os branches de pull request](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches). + - **Observação**: Este recurso não estava disponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. O recurso está disponível na versão 3.5.4 e posterior. [Atualizado: 2022-08-16] - heading: Configurar headers de HTTP personalizados para sites do GitHub Pages notes: @@ -281,8 +281,8 @@ sections: heading: O tema de alto contraste claro está geralmente disponível notes: - | - A light high contrast theme, with greater contrast between foreground and background elements, is now generally available. For more information, see "[Managing your theme settings](/account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings)." - - **Note**: This feature was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature is available in 3.5.4 and later. [Updated: 2022-08-16] + Um tema de alto contraste claro, com maior contraste entre os elementos em primeiro plano e em segundo plano, agora está disponível de modo geral. Para mais informações, consulte "[Gerenciando as configurações de tema](/account-and-profile/setting-up-and-managing-up-and-managing-your-github-user-account/managing-user-account-settings/managing-your-theme-settings). + - **Observação**: Este recurso não estava disponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. O recurso está disponível na versão 3.5.4 e posterior. [Atualizado: 2022-08-16] - heading: Regras de proteção para tags notes: @@ -293,12 +293,12 @@ sections: Agora é possível para o aplicativo GitHub Apps upload de ativos de versão. changes: - | - Minimum requirements for root storage and memory increased for GitHub Enterprise Server 2.10 and 3.0, and are now enforced as of 3.5.0. + Os requisitos mínimos de armazenamento root e memória foram aumentados para o GitHub Enterprise Server 2.10 e 3.0, e agora foram aplicados a partir da versão 3.5.0. - - In version 2.10, the minimum requirement for root storage increased from 80 GB to 200 GB. As of 3.5.0, system preflight checks will fail if the root storage is smaller than 80 GB. - - In version 3.0, the minimum requirement for memory increased from 16 GB to 32 GB. As of 3.5.0, system preflight checks will fail if the system has less than 28 GB of memory. + - Na versão 2.10, o requisito mínimo de armazenamento root aumentou de 80 GB para 200 GB. A partir de 3.5.0, as verificações de pré-voo do sistema irão falhar se o armazenamento raiz for menor que 80 GB. + - Na versão 3.0, o requisito mínimo de memória aumentou de 16 GB para 32 GB. A partir da versão 3.5.0, os controlos de pré-voo do sistema falharão se o sistema tiver menos de 28 GB de memória. - For more information, see the minimum requirements for each supported deployment platform in "[Setting up a GitHub Enterprise Server instance](/admin/installation/setting-up-a-github-enterprise-server-instance)." [Updated: 2022-06-20] + Para obter mais informações, consulte os requisitos mínimos para cada plataforma de implantação compativel em "[Configurar uma instância do GitHub Enterprise Server](/admin/installation/setting-up-a-github-enterprise-server-instance)." [Atualizado: 2022-06-20] - | Para usar o fluxo de autorização do dispositivo para os aplicativos OAuth e GitHub, você deve habilitar o recurso manualmente. Essa alteração reduz a probabilidade de aplicativos serem usados em ataques de phishing contra usuários do GitHub Enterprise Server, garantindo que os integradores estejam cientes dos riscos e fazendo uma escolha consciente para apoiar essa forma de autenticação. Se você possui ou gerencia um aplicativo OAuth ou GitHub e quer usar o fluxo do dispositivo, você pode habilitá-lo para seu aplicativo através da página de configurações do aplicativo. Os pontos de extremidade da API do dispositivo responderão com o código de status `400` aos aplicativos que não habilitaram este recurso. Para obter mais informações, consulte "[Autorizando aplicativos OAuth](/developers/apps/building-oauth-apps/authorizing-oauth-apps#device-flow)". - | @@ -348,13 +348,13 @@ sections: - O registro npm de {% data variables.product.prodname_registry %} não retorna mais o valor de tempo em respostas de metadados. Isso foi feito para permitir melhorias substanciais de desempenho. Continuamos a ter todos os dados necessários para devolver um valor de tempo como parte da resposta aos metadados e retomaremos o retorno desse valor no futuro, assim que tivermos resolvido os problemas de desempenho existentes. - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. - Os serviços de ações precisam ser reiniciados após a restauração de um dispositivo de um backup em um host diferente. - - 'Deleted repositories will not be purged from disk automatically after the 90-day retention period ends. This issue is resolved in the 3.5.1 patch release. [Updated: 2022-06-10]' + - 'Os repositórios excluídos não serão removidos do disco automaticamente após o período de retenção de 90 dias. Esse problema é resolvido na versão de patch 3.5.1. [Atualizado: 2022-06-10]' - 'O Console de Gerenciamento pode aparecer preso na tela de _Starting_ depois de atualizar uma instância subprovisionada para o GitHub Enterprise Server 3.5. [Atualizado: 2022-06-20]' - | - The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16] + Os seguintes recursos não estavam disponíveis para usuários no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. Os recursos estão disponíveis na versão 3.5.4 e posterior. [Atualizado: 2022-08-16] - - Detection of GitHub Actions workflow files for the dependency graph - - Reopening of dismissed Dependabot alerts - - Enabling the **Update branch** button for all pull requests in a repository - - Light high contrast theme + - Detecção de arquivos de fluxo de trabalho do GitHub Actions para o gráfico de dependências + - Reabertura de alertas de Dependência ignorados + - Habilitando o botão **Atualizar branch** para todos os pull requests no repositório + - Tema de alto contraste leve - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-5/1.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-5/1.yml index 1a2725f722..f5c81ef6ae 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-5/1.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-5/1.yml @@ -32,10 +32,10 @@ sections: - 'Os repositórios excluídos não serão removidos do disco automaticamente após o período de retenção de 90 dias. Esse problema é resolvido na versão 3.5.1. [Atualizado: 2022-06-10]' - 'O Console de Gerenciamento pode aparecer preso na tela de _Starting_ depois de atualizar uma instância subprovisionada para o GitHub Enterprise Server 3.5. [Atualizado: 2022-06-20]' - | - The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16] + Os seguintes recursos não estavam disponíveis para usuários no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. Os recursos estão disponíveis na versão 3.5.4 e posterior. [Atualizado: 2022-08-16] - - Detection of GitHub Actions workflow files for the dependency graph - - Reopening of dismissed Dependabot alerts - - Enabling the **Update branch** button for all pull requests in a repository - - Light high contrast theme + - Detecção de arquivos de fluxo de trabalho do GitHub Actions para o gráfico de dependências + - Reabertura de alertas de Dependência ignorados + - Habilitando o botão **Atualizar branch** para todos os pull requests no repositório + - Tema de alto contraste leve - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-5/2.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-5/2.yml index ed98aaf4f3..ed23f97d2f 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-5/2.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-5/2.yml @@ -33,10 +33,10 @@ sections: - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. - Os serviços de ações precisam ser reiniciados após a restauração de um dispositivo de um backup em um host diferente. - | - The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16] + Os seguintes recursos não estavam disponíveis para usuários no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. Os recursos estão disponíveis na versão 3.5.4 e posterior. [Atualizado: 2022-08-16] - - Detection of GitHub Actions workflow files for the dependency graph - - Reopening of dismissed Dependabot alerts - - Enabling the **Update branch** button for all pull requests in a repository - - Light high contrast theme + - Detecção de arquivos de fluxo de trabalho do GitHub Actions para o gráfico de dependências + - Reabertura de alertas de Dependência ignorados + - Habilitando o botão **Atualizar branch** para todos os pull requests no repositório + - Tema de alto contraste leve - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-5/3.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-5/3.yml index 96dec358ac..ac59742fab 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-5/3.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-5/3.yml @@ -5,7 +5,7 @@ sections: - "**MÉDIO**: Impede que um invasor execute o código do Javascript explorando uma vulnerabilidade de script entre sites (XSS) nos elementos da interface de usuário do menu suspenso na interface web do GitHub Enterprise Server." - Atualiza o Grafana para a versão 7.5.16, que aborda várias vulnerabilidades de segurança, incluindo [CVE-2020-13379](https://github.com/advisories/GHSA-wc9w-wvq2-ffm9) e [CVE-2022-21702](https://github.com/grafana/grafana/security/advisories/GHSA-xc3p-28hw-q24g). - Os pacotes foram atualizados para as últimas versões de segurança. - - "**MEDIUM**: A stored XSS vulnerability was identified in GitHub Enterprise Server that allowed the injection of arbitrary attributes. This injection was blocked by Github's Content Security Policy (CSP). This vulnerability was reported via the GitHub Bug Bounty program and has been assigned [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Updated: 2022-07-31]" + - "**MÉDIO**: Uma vulnerabilidade XSS armazenada foi identificada no GitHub Enterprise Server que permitiu a injeção de atributos arbitrários. Essa injeção foi bloqueada pela Política de Segurança de Conteúdo do GitHub (CSP). Esta vulnerabilidade foi relatada no programa de Compensação de Erro do GitHub foi atribuída a [CVE-2022-23733](https://www.cve.org/CVERecord?id=CVE-2022-23733). [Atualizado: 2022-07-31]" bugs: - Em alguns casos, o collectd daemon poderia consumir o excesso de memória. - Em alguns casos, os backups dos arquivos de log girados podem acumular e consumir o excesso de armazenamento. @@ -14,8 +14,8 @@ sections: - O GitHub Enterprise Importer não realizou a migração corretamente das configurações para projetos dentro dos repositórios. - Em instâncias que usam a autenticação LDAP, a solicitação de autenticação do modo sudo colocou incorretamente o cursor dentro do campo de senha por padrão quando campos de texto para um nome de usuário e senha estavam visíveis. - O painel de administração do site incluiu erroneamente uma opção para exportar um relatório que lista os usuários inativos. - - 'The Billing API''s "[Get GitHub Advanced Security active committers for an organization](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" endpoint now returns `Link` headers to provide information about pagination.' - - 'The Billing API''s "[Get GitHub Advanced Security active committers for an organization](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" endpoint now returns the correct number of total committers.' + - 'O ponto de extremidade da API de cobrança "[Obter committers ativos do GitHub Advanced Security para uma organização](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" agora retorna cabeçalhos de "Link" para fornecer informações sobre a paginação.' + - 'O ponto de extremidade da API de cobrança "[Obter committers ativos do GitHub Advanced Security para uma organização](/rest/billing#get-github-advanced-security-active-committers-for-an-organization)" agora retorna o número correto do total de commiters.' - Na barra lateral para configurações de uma organização, o item de navegação **Arquivar** não continha filhos. changes: - A ferramenta de linha de comando `ghe-set-password` inicia os serviços necessários automaticamente quando a instância é iniciada no modo de recuperação. @@ -31,10 +31,10 @@ sections: - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. - Os serviços de ações precisam ser reiniciados após a restauração de um dispositivo de um backup em um host diferente. - | - The following features were unavailable for users in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The features are available in 3.5.4 and later. [Updated: 2022-08-16] + Os seguintes recursos não estavam disponíveis para usuários no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3. Os recursos estão disponíveis na versão 3.5.4 e posterior. [Atualizado: 2022-08-16] - - Detection of GitHub Actions workflow files for the dependency graph - - Reopening of dismissed Dependabot alerts - - Enabling the **Update branch** button for all pull requests in a repository - - Light high contrast theme + - Detecção de arquivos de fluxo de trabalho do GitHub Actions para o gráfico de dependências + - Reabertura de alertas de Dependência ignorados + - Habilitando o botão **Atualizar branch** para todos os pull requests no repositório + - Tema de alto contraste leve - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-5/4.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-5/4.yml index f27d5c371f..91939ff3b8 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-5/4.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-5/4.yml @@ -2,22 +2,22 @@ date: '2022-08-11' sections: security_fixes: - | - **CRITICAL**: GitHub Enterprise Server's Elasticsearch container used a version of OpenJDK 8 that was vulnerable to an integer truncation issue when processing malicious XSLT stylesheets. The vulnerability is tracked as [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). + **CRÍTICO**: O contêiner do Elasticsearch do GitHub Enterprise Server usou uma versão do OpenJDK 8 que era vulnerável a um problema de truncação integral ao processar folhas de estilo maliciosas do XSLT. A vulnerabilidade é rastreada como [CVE-2022-34169](https://github.com/advisories/GHSA-9339-86wc-4qgf). - | - **HIGH**: Previously installed apps on user accounts were automatically granted permission to access an organization on scoped access tokens after the user account was transformed into an organization account. This vulnerability was reported via the [GitHub Bug Bounty program](https://bounty.github.com). + **ALTO**: Anteriormente foi concedida permissão para acessar uma organização em tokens de acesso com escopo depois que a conta de usuário foi transformada em uma conta da organização. Essa vulnerabilidade foi reportada por meio do [programa de Recompensas de Erros do GitHub](https://bounty.github.com). bugs: - - In some cases, GitHub Enterprise Server instances on AWS that used the `r4.4xlarge` instance type would fail to boot. - - In some cases, UI elements within a pull request's **Files changed** tab could overlap. - - When a custom dormancy threshold was set for the instance, suspending all dormant users did not reliably respect the threshold. For more information about dormancy, see "[Managing dormant users](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." - - 'When calculating committers for GitHub Advanced Security, it was not possible to specify individual repositories. For more information, see "[Site admin dashboard](/admin/configuration/configuring-your-enterprise/site-admin-dashboard#advanced-security-committers)."' - - In some cases, Elasticsearch's post-upgrade `es:upgrade` process could crash before completion. - - The script for migration to internal repositories failed to convert the visibility for public repositories to internal or private. For more information about the migration, see "[Migrating to internal repositories](/admin/user-management/managing-repositories-in-your-enterprise/migrating-to-internal-repositories)." - - 'Detection of GitHub Actions workflow files for the dependency graph was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[About the dependency graph](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#supported-package-ecosystems)."' - - 'The ability to reopen dismissed Dependabot alerts was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[Viewing and updating Dependabot alerts](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts#viewing-and-updating-closed-alerts)."' - - The ability to always suggest updates from the base branch to a pull request's HEAD was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[Managing suggestions to update pull request branches](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches)." - - The light high contrast theme was unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3, but is now available in 3.5.4. For more information, see "[Managing your theme settings](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings)." + - Em alguns casos, as instâncias do GitHub Enterprise Server no AWS que usaram o tipo de instância `r4.4xlarge` falhariam ao inicializar. + - Em alguns casos, os elementos da interface de usuário na aba **Arquivos alterados** de um pull request poderiam se sobrepor. + - Quando foi fixado um limite de inatividade personalizado, a suspensão de todos os usuários inativos não respeitava de forma fiável o limite. Para obter mais informações sobre a inatividade, consulte "[Gerenciando usuários inativos](/admin/user-management/managing-users-in-your-enterprise/managing-dormant-users)." + - 'Ao calcular os committers para o GitHub Advanced Security, não foi possível especificar repositórios individuais. Para obter mais informações, consulte "[Painel de administração do site](/admin/configuration/configuring-your-enterprise/site-admin-dashboard#advanced-security-committers)."' + - Em alguns casos, o processo de pós-atualização do Elasticsearch 'es:upgrade' pode falhar antes da conclusão. + - O script para a migração para repositórios internos falhou ao converter a visibilidade de repositórios públicos para repositórios internos ou privados. Para obter mais informações sobre a migração, consulte "[Migrando para repositórios internos](/admin/user-management/managing-repositories-in-your-enterprise/migring-to-internal-repositories)." + - 'A detecção de arquivos de fluxo de trabalho do GitHub Actions para o gráfico de dependências não estava disponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3, mas agora está disponível em 3.5.4. Para obter mais informações, consulte "[Sobre o gráfico de dependência](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-the-dependency-graph#supported-package-ecosystems)."' + - 'A capacidade de reabrir alertas do Dependabot ignorados não estava disponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3, mas agora está disponível na versão 3.5.4. Para obter mais informações, consulte "[Visualizando e atualizando os alertas do Dependabot](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts#viewing-and-updating-and-closed-alerts)."' + - A capacidade de sempre sugerir atualizações do branch base para o HEAD de um pull request não estava disponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3, mas agora está disponível na versão 3.5.4. Para obter mais informações, consulte "[Gerenciando as sugestões para atualizar os branches de pull request](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-suggestions-to-update-pull-request-branches)." + - O tema de alto contraste claro não estava disponível no GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 e 3.5.3, mas agora está disponível na versão 3.5.4. Para obter mais informações, consulte "[Gerenciando as configurações do tema](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-theme-settings)." changes: - - '`pre_receive_hook.rejected_push` events were not displayed in the enterprise audit log.' + - 'Os eventos `pre_receive_hook.rejected_push` não foram exibidos no log de auditoria corporativa.' known_issues: - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. - As regras de firewall personalizadas são removidas durante o processo de atualização. diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-5/5.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-5/5.yml new file mode 100644 index 0000000000..abbec26211 --- /dev/null +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-5/5.yml @@ -0,0 +1,27 @@ +date: '2022-08-30' +sections: + bugs: + - Depois de desbloquear um repositório para acesso temporário, um administrador do site não conseguiu gerenciar configurações para produtos de segurança no repositório. + - As chaves SSH administrativas duplicadas podem aparecer tanto no Console de Gerenciamento quanto no arquivo `/home/admin/.ssh/authorized_keys`. + - A página de administração do site para usuários individuais em http(s)://HOSTNAME/stafftools/users/USERNAME/admin continha funcionalidades não destinadas ao GitHub Enterprise Server. + - Em alguns casos, a execução de `ghe-cluster-config-apply` poderia replicar uma configuração vazia para nós existentes em um cluster. + - Em alguns casos, as execuções da configuração começaram com 'ghe-config-apply' não foi concluído ou retornou um erro de 'Incompatibilidade de contagem de contêiner'. + - Depois de atualizar um certificado TLS autoassinado em uma instância do GitHub Enterprise Server, os elementos da interface de usuário não apareceram em algumas páginas. + - A barra de administração do site na parte superior da interface web continha um link quebrado para o SHA para a versão em execução do aplicativo. + - Em alguns casos, as tarefas de segundo plano podem ser fixadas devido a uma biblioteca que foi usada simultaneamente apesar de não ser segura para correntes. + - Os alertas da digitalização de segredo de clientes do GitHub Advanced Security estavam ausentes na interface do usuário web e API REST se um administrador do site não atualizasse diretamente para o GitHub Enterprise Server 3.4. Os alertas agora estão visíveis. + - Quando um usuário bifurcou um repositório na organização, uma longa lista de organizações não seria interpretada corretamente. + changes: + - A geração de pacotes de suporte é mais rápida como resultado de uma sanitização paralela de registros. Para obter mais informações sobre pacotes de suporte, consulte "[Fornecendo dados para o suporte do GitHub](/support/contacting-github-support/providing-data-to-github-support)." + - As APIs que contêm o encaminhamento `organização` ou `org` agora aceitam o slug ou o ID da organização. Anteriormente, as APIs só aceitavam slugs, o que fazia com que os cabeçalhos `Link` dos pontos de extremidade do GitHub Advanced Security não pudessem ser acessados. Para obter mais informações, consulte "[Organizations](https://docs.github.com/rest/orgs/orgs)" na documentação da API REST. + - 'O log de auditoria corporativo agora inclui mais eventos gerados pelo usuário, como `project.create`. A API REST também retorna eventos adicionais gerados pelo usuário, como `repo.create`. Para obter mais informações, consulte "[Acessando o log de auditoria da sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" e "[Usando a API de log de auditoria para sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + - Em alguns casos, as replicas de cache poderiam rejeitar algumas operações do Git em repositórios recentemente atualizados. Para obter mais informações sobre cache de repositórios, consulte "[Sobre cache de repositórios](/admin/enterprise-management/caching-repositórios/about-repository-caching)." + known_issues: + - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. + - As regras de firewall personalizadas são removidas durante o processo de atualização. + - Arquivos LFS do Git [enviados através da interface web](https://github.com/blog/2105-upload-files-to-your-repositories) são adicionados diretamente ao repositório e de forma incorreta. + - Os problemas não podem ser fechados se contiverem um permalink para um blob no mesmo repositório, onde o caminho do arquivo blob's é maior que 255 caracteres. + - Quando "Usuários podem pesquisar pelo GitHub.com" está habilitado com o GitHub Connect, os problemas em repositórios privados e internos não estão incluídos nos resultados de pesquisa do GitHub.com. + - O registro npm de {% data variables.product.prodname_registry %} não retorna mais o valor de tempo em respostas de metadados. Isso foi feito para permitir melhorias substanciais de desempenho. Continuamos a ter todos os dados necessários para devolver um valor de tempo como parte da resposta aos metadados e retomaremos o retorno desse valor no futuro, assim que tivermos resolvido os problemas de desempenho existentes. + - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. + - Os serviços de ações precisam ser reiniciados após a restauração de um dispositivo de um backup em um host diferente. diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-6/0-rc1.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-6/0-rc1.yml index 28ecbcd03c..0e3bfcc386 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-6/0-rc1.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-6/0-rc1.yml @@ -4,44 +4,44 @@ deprecated: true intro: | {% note %} - **Note:** If {% data variables.product.product_location %} is running a release candidate build, you can't upgrade with a hotpatch. We recommend that you only run release candidates in a test environment. + **Observação:** Se {% data variables.product.product_location %} está executando uma compilação candidata a versão, você não pode atualizar com um hotpatch. Recomendamos que você só execute candidatos à versão em ambiente de teste. {% endnote %} - For upgrade instructions, see "[Upgrading {% data variables.product.prodname_ghe_server %}](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server)." + Para obter instruções de atualização, consulte "[Atualizando {% data variables.product.prodname_ghe_server %}](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server)." sections: features: - heading: Infraestrutura notes: - | - Repository caching is generally available. Repository caching increases Git read performance for distributed developers, providing the data locality and convenience of geo-replication without impact on push workflows. With the general availability release, GitHub Enterprise Server caches both Git and Git LFS data. For more information, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + De modo geral, o cache do repositório está disponível. O cache do repositório aumenta o desempenho de leitura do Git para desenvolvedores distribuídos, fornecendo a localidade e a conveniência de dados de georreplicação sem impacto em fluxos de trabalho de push. Com a versão de disponibilidade geral, o GitHub Enterprise Server armazena em cache os dados do Git e Git LFS. Para obter mais informações, consulte "[Sobre cache de repositórios](/admin/enterprise-management/caching-repositóries/about-repository-caching)." - - heading: Instance security + heading: Segurança da instância notes: - | - GitHub has changed the supported algorithms and hash functions for all SSH connections to GitHub Enterprise Server, disabled the unencrypted and unauthenticated Git protocol, and optionally allowed the advertisement of an Ed25519 host key. For more information, see the [GitHub Blog](https://github.blog/2022-06-28-improving-git-protocol-security-on-github-enterprise-server/) and the following articles. + O GitHub mudou os algoritmos e funções hash compatíveis para todas as conexões SSH para o GitHub Enterprise Server, desabilitou o protocolo do Git não criptografado e não autenticado e, opcionalmente, permitiu o anúncio de uma chave de host Ed25519. Para obter mais informações, consulte o [Blogue do GitHub](https://github.blog/2022-06-28-improving-git-protocol-security-on-github-enterprise-server/) e os artigos a seguir. - - "[Configuring SSH connections to your instance](/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance)" - - "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)" - - "[Configuring host keys for your instance](/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance)" + - "[Configurando conexões SSH para a sua instância](/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance)" + - "[Aplicando políticas de gerenciamento de repositórios na sua empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)" + - "[Configurando chaves de hospedagem para sua instância](/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance)" - | - You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications)." + Você pode exigir criptografia de TLS para conexões SMTP recebidas para a sua instância. Para obter mais informações, consulte "[Configurando e-mail para notificações](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications)." - heading: Logs de auditoria notes: - | - You can stream audit log and Git events for your instance to Amazon S3, Azure Blob Storage, Azure Event Hubs, Google Cloud Storage, or Splunk. Audit log streaming is in public beta and subject to change. For more information, see "[Streaming the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise)." + Você pode transmitir eventos de auditoria e do Git para sua instância para Amazon S3, Azure Blob Storage, Azure Event Hubs, Google Cloud Storage ou Splunk. A transmissão de logs de auditoria está em beta público e sujeita a alterações. Para obter mais informações, consulte "[Transmitindo o log de auditoria da sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise)." - heading: GitHub Connect notes: - | - Server Statistics is now generally available. Server Statistics collects aggregate usage data from your GitHub Enterprise Server instance, which you can use to better anticipate the needs of your organization, understand how your team works, and show the value you get from GitHub Enterprise Server. For more information, see "[About Server Statistics](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics)." + As estatísticas do servidor agora está amplamente disponível. As estatísticas do servidor coletam dados de uso agregado da sua instância do GitHub Enterprise Server, que você pode usar para antecipar melhor as necessidades da sua organização, entender como a sua equipe funciona e mostrar o valor que você recebe do GitHub Enterprise Server. Para obter mais informações, consulte "[Sobre as estatísticas de servidor](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics)." - - heading: Administrator experience + heading: Experiência do administrador notes: - | - Enterprise owners can join organizations on the instance as a member or owner from the enterprise account's **Organizations** page. For more information, see "[Managing your role in an organization owned by your enterprise](/admin/user-management/managing-organizations-in-your-enterprise/managing-your-role-in-an-organization-owned-by-your-enterprise)." + Os proprietários da empresa podem participar de organizações na instância como integrante ou proprietário da página **Organizações** da conta corporativa. Para obter mais informações, consulte "[Gerenciando a sua função em uma organização pertencente à sua empresa](/admin/user-management/managing-organizations-in-your-enterprise/managing-your-role-in-an-organization-owned-by-your-enterprise)." - | Enterprise owners can allow users to dismiss the configured global announcement banner. For more information, see "[Customizing user messages for your enterprise](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)." - diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-6/0.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-6/0.yml index fe69c1d244..60899715fe 100644 --- a/translations/pt-BR/data/release-notes/enterprise-server/3-6/0.yml +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-6/0.yml @@ -3,44 +3,46 @@ deprecated: false intro: | {% note %} - **Note:** If {% data variables.product.product_location %} is running a release candidate build, you can't upgrade with a hotpatch. We recommend that you only run release candidates in a test environment. + **Observação:** Se {% data variables.product.product_location %} está executando uma compilação candidata a versão, você não pode atualizar com um hotpatch. Recomendamos que você só execute candidatos à versão em ambiente de teste. {% endnote %} - For upgrade instructions, see "[Upgrading {% data variables.product.prodname_ghe_server %}](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server)." + Para obter instruções de atualização, consulte "[Atualizando {% data variables.product.prodname_ghe_server %}](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/upgrading-github-enterprise-server)." sections: features: - heading: Infraestrutura notes: - | - Repository caching is generally available. Repository caching increases Git read performance for distributed developers, providing the data locality and convenience of geo-replication without impact on push workflows. With the general availability release, GitHub Enterprise Server caches both Git and Git LFS data. For more information, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + De modo geral, o cache do repositório está disponível. O cache do repositório aumenta o desempenho de leitura do Git para desenvolvedores distribuídos, fornecendo a localidade e a conveniência de dados de georreplicação sem impacto em fluxos de trabalho de push. Com a versão de disponibilidade geral, o GitHub Enterprise Server armazena em cache os dados do Git e Git LFS. Para obter mais informações, consulte "[Sobre cache de repositórios](/admin/enterprise-management/caching-repositóries/about-repository-caching)." - - heading: Instance security + heading: Segurança da instância notes: - | - GitHub has changed the supported algorithms and hash functions for all SSH connections to GitHub Enterprise Server, disabled the unencrypted and unauthenticated Git protocol, and optionally allowed the advertisement of an Ed25519 host key. For more information, see the [GitHub Blog](https://github.blog/2022-06-28-improving-git-protocol-security-on-github-enterprise-server/) and the following articles. + O GitHub mudou os algoritmos e funções hash compatíveis para todas as conexões SSH para o GitHub Enterprise Server, desabilitou o protocolo do Git não criptografado e não autenticado e, opcionalmente, permitiu o anúncio de uma chave de host Ed25519. Para obter mais informações, consulte o [Blogue do GitHub](https://github.blog/2022-06-28-improving-git-protocol-security-on-github-enterprise-server/) e os artigos a seguir. - - "[Configuring SSH connections to your instance](/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance)" - - "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)" - - "[Configuring host keys for your instance](/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance)" + - "[Configurando conexões SSH para a sua instância](/admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance)" + - "[Aplicando políticas de gerenciamento de repositórios na sua empresa](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)" + - "[Configurando chaves de hospedagem para sua instância](/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance)" - | - You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications)." + Você pode exigir criptografia TLS para conexões SMTP recebidas para a sua instância. Para obter mais informações, consulte "[Configurando e-mail para notificações](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications#enforcing-tls-for-smtp-connections). + + - **Observação**: este recurso não está disponível no GitHub Enterprise Server 3.6.0. O recurso estará disponível em uma versão futura. [Atualizado: 2022-08-26] - heading: Logs de auditoria notes: - | - You can stream audit log and Git events for your instance to Amazon S3, Azure Blob Storage, Azure Event Hubs, Google Cloud Storage, or Splunk. Audit log streaming is in public beta and subject to change. For more information, see "[Streaming the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise)." + Você pode transmitir eventos de auditoria e do Git para sua instância para Amazon S3, Azure Blob Storage, Azure Event Hubs, Google Cloud Storage ou Splunk. A transmissão de logs de auditoria está em beta público e sujeita a alterações. Para obter mais informações, consulte "[Transmitindo o log de auditoria da sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise)." - heading: GitHub Connect notes: - | - Server Statistics is now generally available. Server Statistics collects aggregate usage data from your GitHub Enterprise Server instance, which you can use to better anticipate the needs of your organization, understand how your team works, and show the value you get from GitHub Enterprise Server. For more information, see "[About Server Statistics](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics)." + As estatísticas do servidor agora está amplamente disponível. As estatísticas do servidor coletam dados de uso agregado da sua instância do GitHub Enterprise Server, que você pode usar para antecipar melhor as necessidades da sua organização, entender como a sua equipe funciona e mostrar o valor que você recebe do GitHub Enterprise Server. Para obter mais informações, consulte "[Sobre as estatísticas de servidor](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics)." - - heading: Administrator experience + heading: Experiência do administrador notes: - | - Enterprise owners can join organizations on the instance as a member or owner from the enterprise account's **Organizations** page. For more information, see "[Managing your role in an organization owned by your enterprise](/admin/user-management/managing-organizations-in-your-enterprise/managing-your-role-in-an-organization-owned-by-your-enterprise)." + Os proprietários da empresa podem participar de organizações na instância como integrante ou proprietário da página **Organizações** da conta corporativa. Para obter mais informações, consulte "[Gerenciando a sua função em uma organização pertencente à sua empresa](/admin/user-management/managing-organizations-in-your-enterprise/managing-your-role-in-an-organization-owned-by-your-enterprise)." - | Enterprise owners can allow users to dismiss the configured global announcement banner. For more information, see "[Customizing user messages for your enterprise](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)." - @@ -211,3 +213,4 @@ sections: - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. - In some cases, users cannot convert existing issues to discussions. - Custom patterns for secret scanning have `.*` as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the `.*` delimiter. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/pt-BR/data/release-notes/enterprise-server/3-6/1.yml b/translations/pt-BR/data/release-notes/enterprise-server/3-6/1.yml new file mode 100644 index 0000000000..cd9989bc79 --- /dev/null +++ b/translations/pt-BR/data/release-notes/enterprise-server/3-6/1.yml @@ -0,0 +1,33 @@ +date: '2022-08-30' +sections: + bugs: + - Depois de desbloquear um repositório para acesso temporário, um administrador do site não conseguiu gerenciar configurações para produtos de segurança no repositório. + - As chaves SSH administrativas duplicadas podem aparecer tanto no Console de Gerenciamento quanto no arquivo `/home/admin/.ssh/authorized_keys`. + - A página de administração do site para usuários individuais em http(s)://HOSTNAME/stafftools/users/USERNAME/admin continha funcionalidades não destinadas ao GitHub Enterprise Server. + - Em alguns casos, a execução de `ghe-cluster-config-apply` poderia replicar uma configuração vazia para nós existentes em um cluster. + - Em alguns casos, as execuções da configuração começaram com 'ghe-config-apply' não foi concluído ou retornou um erro de 'Incompatibilidade de contagem de contêiner'. + - Depois de atualizar um certificado TLS autoassinado em uma instância do GitHub Enterprise Server, os elementos da interface de usuário não apareceram em algumas páginas. + - Em alguns casos, as tarefas de segundo plano podem ser fixadas devido a uma biblioteca que foi usada simultaneamente apesar de não ser segura para correntes. + - A barra de administração do site na parte superior da interface web continha um link quebrado para o SHA para a versão em execução do aplicativo. + - Os proprietários da organização não conseguiram definir o nível de acesso necessário para criar discussões. + - Os usuários das discussões foram redirecionados incorretamente para as diretrizes da comunidade para o GitHub.com. + - Em alguns casos, os usuários foram instruídos incorretamente a verificar seu e-mail antes de criar uma discussão. + - Os alertas da digitalização de segredo de clientes do GitHub Advanced Security estavam ausentes na interface do usuário web e API REST se um administrador do site não atualizasse diretamente para o GitHub Enterprise Server 3.4. Os alertas agora estão visíveis. + changes: + - A geração de pacotes de suporte é mais rápida como resultado de uma sanitização paralela de registros. Para obter mais informações sobre pacotes de suporte, consulte "[Fornecendo dados para o suporte do GitHub](/support/contacting-github-support/providing-data-to-github-support)." + - As APIs que contêm o encaminhamento `organização` ou `org` agora aceitam o slug ou o ID da organização. Anteriormente, as APIs só aceitavam slugs, o que fazia com que os cabeçalhos `Link` dos pontos de extremidade do GitHub Advanced Security não pudessem ser acessados. Para obter mais informações, consulte "[Organizations](https://docs.github.com/rest/orgs/orgs)" na documentação da API REST. + - 'O log de auditoria corporativo agora inclui mais eventos gerados pelo usuário, como `project.create`. A API REST também retorna eventos adicionais gerados pelo usuário, como `repo.create`. Para obter mais informações, consulte "[Acessando o log de auditoria da sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" e "[Usando a API de log de auditoria para sua empresa](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + - Em alguns casos, as replicas de cache poderiam rejeitar algumas operações do Git em repositórios recentemente atualizados. Para obter mais informações sobre cache de repositórios, consulte "[Sobre cache de repositórios](/admin/enterprise-management/caching-repositórios/about-repository-caching)." + - 'Agora você pode configurar o banner de anúncio global para ser descartado usando a API REST. Para obter mais informações, consulte "[Personalizando mensagens de usuário para a sua empresa](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)."' + known_issues: + - Em uma instância de {% data variables.product.prodname_ghe_server %} recém-configurada sem usuários, um invasor pode criar o primeiro usuário administrador. + - As regras de firewall personalizadas são removidas durante o processo de atualização. + - Arquivos LFS do Git [enviados através da interface web](https://github.com/blog/2105-upload-files-to-your-repositories) são adicionados diretamente ao repositório e de forma incorreta. + - Os problemas não podem ser fechados se contiverem um permalink para um blob no mesmo repositório, onde o caminho do arquivo blob's é maior que 255 caracteres. + - Quando "Usuários podem pesquisar pelo GitHub.com" está habilitado com o GitHub Connect, os problemas em repositórios privados e internos não estão incluídos nos resultados de pesquisa do GitHub.com. + - O registro npm de {% data variables.product.prodname_registry %} não retorna mais o valor de tempo em respostas de metadados. Isso foi feito para permitir melhorias substanciais de desempenho. Continuamos a ter todos os dados necessários para devolver um valor de tempo como parte da resposta aos metadados e retomaremos o retorno desse valor no futuro, assim que tivermos resolvido os problemas de desempenho existentes. + - Os limites de recursos que são específicos para processamento de hooks pre-receive podem causar falha em alguns hooks pre-receive. + - Actions services need to be restarted after restoring an instance from a backup taken on a different host. + - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. + - In some cases, users cannot convert existing issues to discussions. + - Custom patterns for secret scanning have `.*` as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the `.*` delimiter. diff --git a/translations/pt-BR/data/reusables/accounts/create-personal-access-tokens.md b/translations/pt-BR/data/reusables/accounts/create-personal-access-tokens.md new file mode 100644 index 0000000000..8dde9bbdee --- /dev/null +++ b/translations/pt-BR/data/reusables/accounts/create-personal-access-tokens.md @@ -0,0 +1 @@ +1. Para cada uma das suas contas, crie um PAT dedicado com o escopo `repo`. Para obter mais informações, consulte "[Criando um token de acesso pessoal](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)." \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/about-runner-groups.md b/translations/pt-BR/data/reusables/actions/about-runner-groups.md new file mode 100644 index 0000000000..41c7a3df4b --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/about-runner-groups.md @@ -0,0 +1,18 @@ +{% ifversion fpt %} +{% note %} + +**Observação:** Todas as organizações têm um único grupo de executores padrão. Somente contas corporativas e organizações pertencentes a contas corporativas podem criar e gerenciar grupos de executores adicionais. + +{% endnote %} + +Os grupos de executores são usados para controlar o acesso a executores. Os administradores da organização podem configurar políticas de acesso que controlam quais repositórios em uma organização têm acesso ao grupo de runner. + +Se você usar {% data variables.product.prodname_ghe_cloud %}, você poderá criar grupos de executores adicionais. Os administradores das empresas podem configurar políticas de acesso que controlam quais organizações em uma empresa têm acesso ao grupo de executores; e os administradores da organização podem atribuir políticas adicionais de acesso ao repositório granular para o grupo de executores corporativos. +{% endif -%} +{% ifversion ghec or ghes or ghae %} + +{% data reusables.actions.runner-group-enterprise-overview %} + +Quando novos executores são criados, eles são atribuídos automaticamente ao grupo-padrão. Os executores só podem estar em um grupo por vez. Você pode mover os executores do grupo-padrão para outro grupo. Para obter mais informações, consulte "[Transferindo um executor para um grupo](#moving-a-runner-to-a-group)". + +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/actions-billing.md b/translations/pt-BR/data/reusables/actions/actions-billing.md index 0164391e36..f214141eb3 100644 --- a/translations/pt-BR/data/reusables/actions/actions-billing.md +++ b/translations/pt-BR/data/reusables/actions/actions-billing.md @@ -1 +1 @@ -O uso de {% data variables.product.prodname_actions %} é grátis tanto para repositórios públicos quanto para executores auto-hospedados. Para repositórios privados, cada conta {% data variables.product.prodname_dotcom %} recebe uma certa quantidade de minutos e armazenamento gratuitos, dependendo do produto usado com a conta. Qualquer uso para além dos montantes incluídos é controlado por limites de despesa. +O uso de {% data variables.product.prodname_actions %} é grátis para executores padrão hospedados em {% data variables.product.prodname_dotcom %} em repositórios públicos e para executores auto-hospedados. Para repositórios privados, cada conta do {% data variables.product.prodname_dotcom %} recebe uma certa quantidade de minutos grátis e armazenamento para uso com executores hospedados de {% data variables.product.prodname_dotcom %}, dependendo do produto usado com a conta. Qualquer uso para além dos montantes incluídos é controlado por limites de despesa. diff --git a/translations/pt-BR/data/reusables/actions/actions-use-sha-pinning-comment.md b/translations/pt-BR/data/reusables/actions/actions-use-sha-pinning-comment.md index b3a3c95421..097a964acf 100644 --- a/translations/pt-BR/data/reusables/actions/actions-use-sha-pinning-comment.md +++ b/translations/pt-BR/data/reusables/actions/actions-use-sha-pinning-comment.md @@ -1,3 +1,3 @@ -# GitHub recommends pinning actions to a commit SHA. -# To get a newer version, you will need to update the SHA. -# You can also reference a tag or branch, but the action may change without warning. +# O GitHub recomenda a fixação de ações para um commit SHA. +# Para obter uma versão mais recente, você deverá atualizar o SHA. +# Você também pode fazer referência a uma tag ou branch, mas a ação pode mudar sem aviso. diff --git a/translations/pt-BR/data/reusables/actions/add-hosted-runner-overview.md b/translations/pt-BR/data/reusables/actions/add-hosted-runner-overview.md new file mode 100644 index 0000000000..d1b7fdcc50 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/add-hosted-runner-overview.md @@ -0,0 +1,3 @@ +Você pode escolher um sistema operacional e uma configuração de hardware na lista de opções disponíveis. Quando novas instâncias deste executor são implantadas por meio do dimensionamento automático, elas usarão o mesmo sistema operacional e a configuração de hardware que você definiu aqui. + +Você também pode definir as etiquetas que identificam o executor, que é como seus fluxos de trabalho serão capazes de enviar trabalhos para os executores para processamento (usando `runs-on`). Os novos executores são automaticamente atribuídos ao grupo padrão, ou você pode escolher em qual grupo os executores devem entrar durante o processo de criação de executores. Além disso, você pode modificar a associação de grupo do executor depois de ter registrado o executor. Para obter mais informações, consulte "[Controlando acesso a {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)". \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/add-hosted-runner.md b/translations/pt-BR/data/reusables/actions/add-hosted-runner.md new file mode 100644 index 0000000000..d4a11e6164 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/add-hosted-runner.md @@ -0,0 +1,11 @@ +1. Clique **Novo executor**, em seguida, clique **{% octicon "mark-github" aria-label="New hosted runner" %} novo corredor hospedado no Github**. +1. Complete os detalhes necessários para configurar seu novo executor: + + - **Nome**: Insira um nome para o seu novo executor. Para facilitar a identificação, isto deve indicar seu hardware e configuração operacional, como `ubuntu-20.04-16core`. + - **Imagem do executor**: Escolha um sistema operacional entre as opções disponíveis. Uma vez selecionado um sistema operacional, você poderá escolher uma versão específica. + - **Tamanho do executor**: Escolha uma configuração de hardware na lista suspensa com as opções disponíveis. + - **Dimensionamento automático**: Escolha o número máximo de executores que podem estar ativos a qualquer momento. + - **Grupo de executores**: Escolha o grupo do qual seu executor será integrante. Este grupo irá hospedar várias instâncias do seu executor, uma vez que aumentam ou diminuem para atender à demanda. + - **Rede**: Apenas para {% data variables.product.prodname_ghe_cloud %}: Escolha se um intervalo de endereço IP estático será atribuído às instâncias do {% data variables.actions.hosted_runner %}. Você pode usar até 10 endereços de IP estáticos no total. + +1. Clique em **Criar executor**. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/automatically-adding-a-runner-to-a-group.md b/translations/pt-BR/data/reusables/actions/automatically-adding-a-runner-to-a-group.md new file mode 100644 index 0000000000..d221c95ec5 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/automatically-adding-a-runner-to-a-group.md @@ -0,0 +1,11 @@ +Você pode usar o script de configuração para adicionar automaticamente um novo executor a um grupo. Por exemplo, esse comando registra um novo executor e usa o parâmetro `--runnergroup` para adicioná-lo a um grupo denominado `rg-runnergroup`. + +```sh +./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup +``` + +O comando irá falhar se o grupo do executor não existir: + +``` +Não foi possível encontrar nenhum grupo de executor auto-hospedado denominado "rg-runnergroup". +``` \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md b/translations/pt-BR/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md new file mode 100644 index 0000000000..d04eb0809a --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md @@ -0,0 +1,38 @@ +{% comment %} + +Sempre inclua uma advertência de segurança acima deste procedimento. Pode ser uma das definidas a seguir, dependendo se o contexto são executores auto-hospedados ou executores maiores. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +Para grupos de executores em uma empresa, você pode mudar quais organizações na empresa podem acessar um grupo de executores{% ifversion restrict-groups-to-workflows %} ou restringir quais fluxos de trabalho um grupo de executores pode executar{% endif %}. Para grupos de executores em uma organização, você pode alterar quais repositórios na organização podem acessar um grupo de executores{% ifversion restrict-groups-to-workflows %} ou restringir quais fluxos de trabalho um grupo de executores pode executar{% endif %}. + +### Alterando quais organizações ou repositórios podem acessar um grupo de executores + +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Para grupos de executores em uma empresa, em **Acesso da organização**, modifique quais organizações podem acessar o grupo de executores. Para grupos de executores em uma organização, em **Acesso do repositório**, modifique quais repositórios podem acessar o grupo de executores. + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group-access %} +{% endif %} + +{% ifversion restrict-groups-to-workflows %} +### Alterando quais fluxos de trabalho podem acessar um grupo de executores +Você pode configurar um grupo de executores para executar os fluxos de trabalho selecionados ou todos os fluxos de trabalho. Por exemplo, você pode usar essa configuração para proteger segredos armazenados em executores ou para padronizar os fluxos de trabalho de implantação restringindo um grupo de executores para executar apenas um fluxo de trabalho reutilizável. Esta configuração não pode ser substituída se você configurar o grupo de executores da organização que foi compartilhado por uma empresa. +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Em **Acesso ao fluxo de trabalho**, selecione o menu suspenso e clique em **Fluxos de trabalho selecionados**. +1. Clique em {% octicon "gear" aria-label="the gear icon" %}. +1. Insira uma lista separada por vírgulas dos fluxos de trabalho que podem acessar o grupo de executores. Use o caminho completo, incluindo o nome e proprietário do repositório. Fixar o fluxo de trabalho em um ramo, tag ou SHA completo. Por exemplo: `octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`. + + Apenas trabalhos definidos diretamente nos fluxos de trabalho selecionados terão acesso ao grupo de executores. + + Os grupos de executores pertencentes à organização não podem acessar os fluxos de trabalho de uma organização diferente na empresa. Em vez disso, você deve criar um grupo de executores pertencente à empresa. + +1. Clique em **Salvar**. + +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/changing-the-name-of-a-runner-group.md b/translations/pt-BR/data/reusables/actions/changing-the-name-of-a-runner-group.md new file mode 100644 index 0000000000..faacf4d1ba --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/changing-the-name-of-a-runner-group.md @@ -0,0 +1,9 @@ +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. Altere o nome do grupo de executores. + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group %} +1. Altere o nome do grupo de executores. +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md b/translations/pt-BR/data/reusables/actions/configure-runner-group-access.md similarity index 85% rename from translations/pt-BR/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md rename to translations/pt-BR/data/reusables/actions/configure-runner-group-access.md index 5c0b2a2e09..ca5d024c9e 100644 --- a/translations/pt-BR/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md +++ b/translations/pt-BR/data/reusables/actions/configure-runner-group-access.md @@ -1,4 +1,4 @@ -{% data reusables.actions.self-hosted-runner-configure-runner-group %} +{% data reusables.actions.configure-runner-group %} 1. Modifique suas opções de política. {% ifversion not ghae %} diff --git a/translations/pt-BR/data/reusables/actions/configure-runner-group.md b/translations/pt-BR/data/reusables/actions/configure-runner-group.md new file mode 100644 index 0000000000..ed11139dc4 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/configure-runner-group.md @@ -0,0 +1 @@ +1. Na seção "Executores" da página de configurações, ao lado do grupo de runner que você gostaria de configurar, clique em {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %} e, em seguida, clique em **Editar nome e acesso de [organization|repository]**. ![Gerenciar permissões do repositório](/assets/images/help/settings/actions-runner-manage-permissions.png) diff --git a/translations/pt-BR/data/reusables/actions/contacting-support.md b/translations/pt-BR/data/reusables/actions/contacting-support.md index 931198eaba..368b26f948 100644 --- a/translations/pt-BR/data/reusables/actions/contacting-support.md +++ b/translations/pt-BR/data/reusables/actions/contacting-support.md @@ -1,9 +1,9 @@ -If you need help with anything related to workflow configuration, such as syntax, {% data variables.product.prodname_dotcom %}-hosted runners, or building actions, look for an existing topic or start a new one in the [{% data variables.product.prodname_github_community %}'s {% data variables.product.prodname_actions %} and {% data variables.product.prodname_registry %} category](https://github.com/orgs/github-community/discussions/categories/actions-and-packages). +Se você precisar de ajuda com algo relacionado à configuração do fluxo de trabalho como, por exemplo, a sintaxe, os executores hospedados em {% data variables.product.prodname_dotcom %} ou ações de compilação, procure um tópico existente ou comece um novo na categoria de [{% data variables.product.prodname_github_community %} {% data variables.product.prodname_actions %} e{% data variables.product.prodname_registry %}](https://github.com/orgs/github-community/discussions/categories/actions-and-packages). Se você tiver comentários ou solicitações de recursos para {% data variables.product.prodname_actions %}, compartilhe-os na {% data variables.contact.contact_feedback_actions %}. Contatar {% data variables.contact.contact_support %} para qualquer uma das seguintes opções, se o uso ou uso pretendido se enquadra nas categorias limite: * Se você acredita que sua conta foi restrita incorretamente -* If you encounter an unexpected error when executing one of your actions +* Se você encontrar um erro inesperado ao executar uma de suas ações * Se você encontrar uma situação onde o comportamento existente contradiz o esperado, mas nem sempre documentado, comportamento diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-create-group.md b/translations/pt-BR/data/reusables/actions/create-runner-group.md similarity index 100% rename from translations/pt-BR/data/reusables/actions/self-hosted-runner-create-group.md rename to translations/pt-BR/data/reusables/actions/create-runner-group.md diff --git a/translations/pt-BR/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md b/translations/pt-BR/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md new file mode 100644 index 0000000000..cf847125ae --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md @@ -0,0 +1,28 @@ +{% comment %} + +Sempre inclua uma advertência de segurança acima deste procedimento. Pode ser uma das definidas a seguir, dependendo se o contexto são executores auto-hospedados ou executores maiores. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +As empresas podem adicionar seus executores a grupos para gerenciamento de acesso. As empresas podem criar grupos de executores que podem ser acessados por organizações específicas na conta corporativa{% ifversion restrict-groups-to-workflows %} ou por fluxos de trabalho específicos{% endif %}. Os proprietários da organização podem atribuir políticas adicionais de acesso do repositório granular{% ifversion restrict-groups-to-workflows %} ou políticas de acesso do fluxo de trabalho {% endif %} para os grupos de executores corporativos. Para obter informações sobre como criar um grupo de executores com a API REST, consulte os pontos de extremidade corporativos na [API REST de {% data variables.product.prodname_actions %}](/rest/reference/actions#self-hosted-runner-groups). + +Os executores são automaticamente atribuídos ao grupo padrão quando criados e só podem ser integrantes de um grupo por vez. Você pode atribuir o executor a um grupo específico durante o processo de registro, ou você pode mover o executor do grupo-padrão para um grupo personalizado. + +Ao criar um grupo, você deve escolher uma política que defina quais organizações têm acesso ao grupo de executores. + +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} +1. Para escolher uma política para o acesso da organização, selecione a lista suspensa **Organização** e clique em uma política. Você pode configurar um grupo de executor para que possa ser acessado por uma lista específica de organizações ou a todas as organizações da empresa.{% ifversion ghes %} Por padrão, apenas repositórios privados podem acessar executores no grupo de um executor, mas você pode substituir isso.{% endif %} + + {%- ifversion ghec or ghes %} + + ![Adicionar opções de grupo de executores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) + {%- elsif ghae %} + + ![Adicionar opções de grupo de executores](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) + {%- endif %} +{% data reusables.actions.runner-group-assign-policy-workflow %} +1. Clique em **Salvar grupo** para criar o grupo e aplicar a política. + diff --git a/translations/pt-BR/data/reusables/actions/creating-a-runner-group-for-an-organization.md b/translations/pt-BR/data/reusables/actions/creating-a-runner-group-for-an-organization.md new file mode 100644 index 0000000000..30ce7d0e22 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/creating-a-runner-group-for-an-organization.md @@ -0,0 +1,38 @@ +{% comment %} + +Sempre inclua uma advertência de segurança acima deste procedimento. Pode ser uma das definidas a seguir, dependendo se o contexto são executores auto-hospedados ou executores maiores. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +Todas as organizações têm um único grupo padrão de executores. As organizações dentro de uma conta corporativa podem criar grupos adicionais. Os administradores da organização podem permitir o acesso de repositórios individuais a um grupo de executor. Para obter informações sobre como criar um grupo de executores com a API REST, consulte "[grupos de executores auto-hospedados](/rest/reference/actions#self-hosted-runner-groups) + +Os executores são automaticamente atribuídos ao grupo padrão quando criados e só podem ser integrantes de um grupo por vez. Você pode mover um executor do grupo- padrão para qualquer grupo que você criar. + +Ao criar um grupo, você deve escolher uma política que defina quais repositórios{% ifversion restrict-groups-to-workflows %} e fluxos de trabalho{% endif %} têm acesso ao grupo do executor. + +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. Na seção "Grupos de executores", clique em **Novo grupo de executor**. +1. Digite um nome para o grupo do seu executor. + {% data reusables.actions.runner-group-assign-policy-repo %} +Os grupos de executores de {% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} não podem acessar os fluxos de trabalho de uma organização diferente na empresa. Em vez disso, você deve criar um grupo de executores de propriedade corporativa.{% endif %} +{% data reusables.actions.create-runner-group %} +{% elsif ghae or ghes < 3.4 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. Em {% ifversion ghes or ghae %}"Executores"{% endif %}, clique em **Adicionar novo** e, em seguida, em **Novo grupo**. + + ![Adicionar grupo de executor](/assets/images/help/settings/actions-org-add-runner-group.png) +1. Insira um nome para o seu grupo de executor e atribua uma política para acesso ao repositório. + + É possível configurar o grupo de um executor para ser acessível a uma lista específica de repositórios ou a todos os repositórios na organização.{% ifversion ghec or ghes %} Por padrão, apenas repositórios privados podem acessar executores no grupo do executor, mas você pode substituir isso. Esta configuração não pode ser substituída se configurar o grupo de executores da organização que foi compartilhado por uma empresa.{% endif %} + + ![Adicionar opções de grupo de executores](/assets/images/help/settings/actions-org-add-runner-group-options.png) +1. Clique em **Salvar grupo** para criar o grupo e aplicar a política. +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/hosted-runner-security-admonition.md b/translations/pt-BR/data/reusables/actions/hosted-runner-security-admonition.md new file mode 100644 index 0000000000..894b2efe66 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/hosted-runner-security-admonition.md @@ -0,0 +1,5 @@ +{% warning %} + +**Aviso**: {% data reusables.actions.hosted-runner-security %} + +{% endwarning %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/hosted-runner-security.md b/translations/pt-BR/data/reusables/actions/hosted-runner-security.md new file mode 100644 index 0000000000..ed12d189db --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/hosted-runner-security.md @@ -0,0 +1,3 @@ +We recommend that you only use {% data variables.actions.hosted_runner %}s with private repositories: +- Forks of your repository can potentially run dangerous code on your {% data variables.actions.hosted_runner %} by creating a pull request that executes the code in a workflow. +- You could incur unexpected costs if you allow forked repositories to run jobs on your {% data variables.actions.hosted_runner %}s. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/jobs/section-choosing-the-runner-for-a-job.md b/translations/pt-BR/data/reusables/actions/jobs/section-choosing-the-runner-for-a-job.md index 93c539fd78..a301cbbf8f 100644 --- a/translations/pt-BR/data/reusables/actions/jobs/section-choosing-the-runner-for-a-job.md +++ b/translations/pt-BR/data/reusables/actions/jobs/section-choosing-the-runner-for-a-job.md @@ -6,7 +6,7 @@ Use `jobs..runs-on` para definir o tipo de máquina para executar o trab ### Escolhendo executores hospedados em {% data variables.product.prodname_dotcom %} -If you use a {% data variables.product.prodname_dotcom %}-hosted runner, each job runs in a fresh instance of a runner image specified by `runs-on`. +Se você usar um executor hospedado de {% data variables.product.prodname_dotcom %}, cada trabalho será executado em uma nova instância de um executor de imagem especificado por `runs-on`. Os tipos de executor disponíveis para {% data variables.product.prodname_dotcom %} são: diff --git a/translations/pt-BR/data/reusables/actions/jobs/section-running-jobs-in-a-container.md b/translations/pt-BR/data/reusables/actions/jobs/section-running-jobs-in-a-container.md index 805bbeae7a..11f326067d 100644 --- a/translations/pt-BR/data/reusables/actions/jobs/section-running-jobs-in-a-container.md +++ b/translations/pt-BR/data/reusables/actions/jobs/section-running-jobs-in-a-container.md @@ -2,6 +2,12 @@ Use `jobs..container` para criar um contêiner para executar todas as et Se você não definir um `container`, todas as etapas serão executadas diretamente no host especificado por `runs-on`, a menos que uma etapa se refira a uma ação configurada para execução em um contêiner. +{% note %} + +**Observação:** O shell padrão para a etapa `executar` dentro de um contêiner é `sh` em vez de `bash`. Isto pode ser substituído por [`jobs..defaults.execute`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iddefaultsrun) ou [jobs`..steps[*].shell`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell). + +{% endnote %} + ### Exemplo: Executar um trabalho dentro de um contêiner ```yaml{:copy} diff --git a/translations/pt-BR/data/reusables/actions/moving-a-runner-to-a-group.md b/translations/pt-BR/data/reusables/actions/moving-a-runner-to-a-group.md new file mode 100644 index 0000000000..38afcfec2f --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/moving-a-runner-to-a-group.md @@ -0,0 +1,12 @@ +If you don't specify a runner group during the registration process, your new runners are automatically assigned to the default group, and can then be moved to another group. + +{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +1. Na lista de "Executores", clique no executor que você deseja configurar. +2. Selecione o menu suspenso **Grupo do executor**. +3. Em "Transferir executor para o grupo", escolha um grupo de destino para o executor. +{% elsif ghae or ghes < 3.4 %} +1. Na seção "Grupos de executores" de {% ifversion ghes or ghae %}{% endif %} na página de configurações. localize o grupo atual do executor que você deseja transferir e expanda a lista de integrantes do grupo. ![Visualizar integrantes do grupo de executores](/assets/images/help/settings/actions-org-runner-group-members.png) +2. Marque a caixa de seleção ao lado do executor auto-hospedado e, em seguida, clique em **Mover para o grupo** para ver os destinos disponíveis. ![Mover um membro do grupo de executores](/assets/images/help/settings/actions-org-runner-group-member-move.png) +3. Para mover o executor, clique no grupo de destino. ![Mover um membro do grupo de executores](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/removing-a-runner-group.md b/translations/pt-BR/data/reusables/actions/removing-a-runner-group.md new file mode 100644 index 0000000000..405c97bdc4 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/removing-a-runner-group.md @@ -0,0 +1,9 @@ +Runners are automatically returned to the default group when their group is removed. + +{% ifversion ghes or ghae or ghec %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +1. Na lista de grupos, à direita do grupo que você deseja excluir, clique em {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}. +2. Para remover o grupo, clique em **Remover grupo**. +3. Revise os avisos de confirmação e, em seguida, clique em **Remover este grupo de executores**. Any runners still in this group will be automatically moved to the default group, where they will inherit the access permissions assigned to that group. + +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/runner-group-enterprise-overview.md b/translations/pt-BR/data/reusables/actions/runner-group-enterprise-overview.md new file mode 100644 index 0000000000..9f33d5622d --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/runner-group-enterprise-overview.md @@ -0,0 +1,3 @@ +Runner groups are used to control access to runners at the organization and enterprise level. Enterprise owners can configure access policies that control which organizations {% ifversion restrict-groups-to-workflows %}and workflows {% endif %}in an enterprise have access to the runner group. Os proprietários da organização podem configurar as políticas de acesso que controlam quais repositórios{% ifversion restrict-groups-to-workflows %} e fluxos de trabalho{% endif %} em uma organização têm acesso ao grupo de executores. + +When an enterprise owner grants access to a runner group, organization owners can see the runner group listed in the organization's runner settings. Em seguida, os proprietários da organização podem atribuir um repositório granular adicional{% ifversion restrict-groups-to-workflows %} e as políticas de acesso do fluxo de trabalho {% endif %} ao grupo do executor corporativo. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md b/translations/pt-BR/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md similarity index 100% rename from translations/pt-BR/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md rename to translations/pt-BR/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md b/translations/pt-BR/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md similarity index 83% rename from translations/pt-BR/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md rename to translations/pt-BR/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md index 4e93b03fff..d7cecf7634 100644 --- a/translations/pt-BR/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md +++ b/translations/pt-BR/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md @@ -1,9 +1,9 @@ {% ifversion fpt %} -1. Acesse a página principal do repositório ou organização onde os grupos de executores auto-hospedados estão localizados. +1. Navigate to the main page of the repository or organization where your runner groups are located. 2. Clique em {% octicon "gear" aria-label="The Settings gear" %} **Configurações**. {% data reusables.organizations.settings-sidebar-actions-runner-groups %} {% elsif ghec or ghes or ghae %} -1. Acesse o local onde os seus grupos de executores estão localizados: +1. Navigate to where your runner groups are located: * **Em uma organização**: Acesse a página principal e clique em {% octicon "gear" aria-label="The Settings gear" %} **Configurações**. * **Se estiver usando um grupo de nível corporativo**: diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-add-to-enterprise.md b/translations/pt-BR/data/reusables/actions/self-hosted-runner-add-to-enterprise.md index b86edf19a7..73fea1604c 100644 --- a/translations/pt-BR/data/reusables/actions/self-hosted-runner-add-to-enterprise.md +++ b/translations/pt-BR/data/reusables/actions/self-hosted-runner-add-to-enterprise.md @@ -3,7 +3,7 @@ {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.actions-tab %} {% data reusables.enterprise-accounts.actions-runners-tab %} -1. Clique em **Novo executor**. +{% ifversion actions-hosted-runners %}1. Clique em **Novo executor** e, em seguida, clique em **novo executor auto-hospedado**.{% else %}1. Clique em **Novo executor**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {%- elsif ghae or ghes < 3.4 %} Para adicionar um executor auto-hospedado a uma empresa, você deve ser um proprietário corporativo. diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-configure-runner-group.md b/translations/pt-BR/data/reusables/actions/self-hosted-runner-configure-runner-group.md deleted file mode 100644 index 3c8558bd93..0000000000 --- a/translations/pt-BR/data/reusables/actions/self-hosted-runner-configure-runner-group.md +++ /dev/null @@ -1 +0,0 @@ -1. In the "Runners" section of the settings page, next to the runner group you'd like to configure, click {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}, then click **Edit name and [organization|repository] access**. ![Gerenciar permissões do repositório](/assets/images/help/settings/actions-runner-manage-permissions.png) diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md b/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md index 1db7b9945e..1b588b7762 100644 --- a/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md +++ b/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md @@ -3,7 +3,7 @@ 2. Clique em {% octicon "gear" aria-label="The Settings gear" %} **Configurações**. {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. Navegue por onde seu runner auto-hospedado está registrado: +1. Navigate to where your runner is registered: * **Em uma organização**: Acesse a página principal e clique em {% octicon "gear" aria-label="The Settings gear" %} **Configurações**. * **Se estiver usando um executor de nível corporativo**: diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md b/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md index 3a157861be..8fd26dd0a0 100644 --- a/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md +++ b/translations/pt-BR/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md @@ -3,7 +3,7 @@ 2. Clique em {% octicon "gear" aria-label="The Settings gear" %} **Configurações**. {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. Navegue por onde seu runner auto-hospedado está registrado: +1. Navigate to where your runner is registered: * **Em uma organização ou repositório**: navegue até a página principal e clique em {% octicon "gear" aria-label="The Settings gear" %} **Configurações**. * **Se estiver usando um executor de nível corporativo**: diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-security-admonition.md b/translations/pt-BR/data/reusables/actions/self-hosted-runner-security-admonition.md new file mode 100644 index 0000000000..cdbecbdf9e --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/self-hosted-runner-security-admonition.md @@ -0,0 +1,7 @@ +{% warning %} + +**Aviso**: {% data reusables.actions.self-hosted-runner-security %} + +Para obter mais informações, consulte "[Sobre os executores auto-hospedados](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)." + +{% endwarning %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/self-hosted-runner-security.md b/translations/pt-BR/data/reusables/actions/self-hosted-runner-security.md index 28f6464b6c..50bd23fc5d 100644 --- a/translations/pt-BR/data/reusables/actions/self-hosted-runner-security.md +++ b/translations/pt-BR/data/reusables/actions/self-hosted-runner-security.md @@ -1 +1 @@ -Recomendamos que você use apenas executores auto-hospedados com repositórios privados. Isso acontece porque as bifurcações do seu repositório podem potencialmente executar código perigoso na sua máquina de executor auto-hospedada criando um pull request que executa o código em um fluxo de trabalho. +Recomendamos que você use apenas executores auto-hospedados com repositórios privados. This is because forks of your public repository can potentially run dangerous code on your self-hosted runner machine by creating a pull request that executes the code in a workflow. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/actions/use-request-body-api.md b/translations/pt-BR/data/reusables/actions/use-request-body-api.md new file mode 100644 index 0000000000..1d37d0c4f0 --- /dev/null +++ b/translations/pt-BR/data/reusables/actions/use-request-body-api.md @@ -0,0 +1 @@ +To apply this configuration, submit a request to the API endpoint and include the required configuration in the request body. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)". \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/advanced-security/custom-link-beta.md b/translations/pt-BR/data/reusables/advanced-security/custom-link-beta.md new file mode 100644 index 0000000000..a79fc22417 --- /dev/null +++ b/translations/pt-BR/data/reusables/advanced-security/custom-link-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**Note:** The ability to add resource links to blocked push messages is currently in public beta and subject to change. + +{% endnote %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md index 2b3424114a..51da1e8420 100644 --- a/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/translations/pt-BR/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -1,2 +1,6 @@ 1. Em "{% data variables.product.prodname_secret_scanning_caps %}", em "Proteção push", clique em **Habilitar todos**. ![Captura de tela que mostra como habilitar a proteção push para {% data variables.product.prodname_secret_scanning %} para uma organização](/assets/images/help/organizations/secret-scanning-enable-push-protection.png) -1. Opcionalmente, clique em "Habilitar automaticamente em repositórios privados adicionados ao {% data variables.product.prodname_secret_scanning %}." +1. Optionally, click "Automatically enable for private repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion push-protection-custom-link-orgs %} +1. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, select **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**. + {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} + + ![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/billing/billing-hosted-runners.md b/translations/pt-BR/data/reusables/billing/billing-hosted-runners.md new file mode 100644 index 0000000000..2881396884 --- /dev/null +++ b/translations/pt-BR/data/reusables/billing/billing-hosted-runners.md @@ -0,0 +1 @@ +| Linux | 4 | $0.016 | | Linux | 8 | $0.032 | | Linux | 16 | $0.064 | | Linux | 32 | $0.128 | | Linux | 64 | $0.256 | | Windows | 8 | $0.064 | | Windows | 16 | $0.128 | | Windows | 32 | $0.256 | | Windows | 64 | $0.512 | \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/billing/billing-standard-runners.md b/translations/pt-BR/data/reusables/billing/billing-standard-runners.md new file mode 100644 index 0000000000..9c4c25dcac --- /dev/null +++ b/translations/pt-BR/data/reusables/billing/billing-standard-runners.md @@ -0,0 +1,5 @@ +| Sistema operacional | Cores | Taxa por minuto (USD) | +| ------------------- | ----- | --------------------- | +| Linux | 2 | $0,008 | +| macOS | 3 | $0,08 | +| Windows | 2 | $0,016 | diff --git a/translations/pt-BR/data/reusables/code-scanning/codeql-query-suites.md b/translations/pt-BR/data/reusables/code-scanning/codeql-query-suites.md index 12105bdd43..45bc48ba20 100644 --- a/translations/pt-BR/data/reusables/code-scanning/codeql-query-suites.md +++ b/translations/pt-BR/data/reusables/code-scanning/codeql-query-suites.md @@ -1,4 +1,4 @@ | Suite de consulta | Descrição | |:---------------------- |:------------------------------------------------------------------------------- | - | `security-extended` | Consultas de menor gravidade e precisão que as consultas-padrão | + | `security-extended` | Queries from the default suite, plus lower severity and precision queries | | `security-and-quality` | Consultas de `security-extended`, mais consultas de manutenção e confiabilidade | diff --git a/translations/pt-BR/data/reusables/code-scanning/example-configuration-files.md b/translations/pt-BR/data/reusables/code-scanning/example-configuration-files.md index a0f96fcd04..365e2d880d 100644 --- a/translations/pt-BR/data/reusables/code-scanning/example-configuration-files.md +++ b/translations/pt-BR/data/reusables/code-scanning/example-configuration-files.md @@ -30,3 +30,22 @@ paths-ignore: - src/node_modules - '**/*.test.js' ``` + +{% ifversion code-scanning-exclude-queries-from-analysis %} + +The following configuration file only runs queries that generate alerts of severity error. The configuration first selects all the default queries, all queries in `./my-queries`, and the default suite in `codeql/java-queries`, then excludes all the queries that generate warnings or recommendations. + +``` yaml +queries: + - name: Use an in-repository QL pack (run queries in the my-queries directory) + uses: ./my-queries +packs: + - codeql/java-queries +query-filters: +- exclude: + problem.severity: + - warning + - recommendation +``` + +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/code-scanning/licensing-note.md b/translations/pt-BR/data/reusables/code-scanning/licensing-note.md index 475e59a7d4..8c1dc4e2af 100644 --- a/translations/pt-BR/data/reusables/code-scanning/licensing-note.md +++ b/translations/pt-BR/data/reusables/code-scanning/licensing-note.md @@ -1,8 +1,12 @@ {% note %} -**Note:** {% ifversion fpt %} -The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories. The {% data variables.product.prodname_codeql_cli %} is also available in private repositories owned by organizations that use {% data variables.product.prodname_ghe_cloud %} and have a license for {% data variables.product.prodname_GH_advanced_security %}. Para obter informações, consulte "[{% data variables.product.product_name %} Termos e Condições](https://securitylab.github.com/tools/codeql/license) de do CLI de {% data variables.product.prodname_codeql %} " e "[{% data variables.product.prodname_codeql %}](https://codeql.github.com/docs/codeql-cli/)". -{%- elsif 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. Para obter informações, consulte "[{% data variables.product.product_name %} Termos e Condições](https://securitylab.github.com/tools/codeql/license) de do CLI de {% data variables.product.prodname_codeql %} " e "[{% data variables.product.prodname_codeql %}](https://codeql.github.com/docs/codeql-cli/)". -{%- elsif ghes or ghae %}O {% data variables.product.prodname_codeql_cli %} está disponível para clientes com uma licença de {% data variables.product.prodname_advanced_security %}. +**Notes:** {% ifversion fpt %} +- The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories. The {% data variables.product.prodname_codeql_cli %} is also available in private repositories owned by organizations that use {% data variables.product.prodname_ghe_cloud %} and have a license for {% data variables.product.prodname_GH_advanced_security %}. Para obter informações, consulte "[{% data variables.product.product_name %} Termos e Condições](https://securitylab.github.com/tools/codeql/license) de do CLI de {% data variables.product.prodname_codeql %} " e "[{% data variables.product.prodname_codeql %}](https://codeql.github.com/docs/codeql-cli/)". +{%- elsif 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. Para obter informações, consulte "[{% data variables.product.product_name %} Termos e Condições](https://securitylab.github.com/tools/codeql/license) de do CLI de {% data variables.product.prodname_codeql %} " e "[{% data variables.product.prodname_codeql %}](https://codeql.github.com/docs/codeql-cli/)". +{%- elsif ghes or ghae %} +- O {% data variables.product.prodname_codeql_cli %} está disponível para os clientes com uma licença de {% data variables.product.prodname_advanced_security %}. {% endif %} +- {% data reusables.code-scanning.non-glibc-linux-support %} + {% endnote %} diff --git a/translations/pt-BR/data/reusables/code-scanning/non-glibc-linux-support.md b/translations/pt-BR/data/reusables/code-scanning/non-glibc-linux-support.md new file mode 100644 index 0000000000..2a1c2a8e53 --- /dev/null +++ b/translations/pt-BR/data/reusables/code-scanning/non-glibc-linux-support.md @@ -0,0 +1 @@ +The {% data variables.product.prodname_codeql_cli %} is currently not compatible with non-glibc Linux distributions such as (musl-based) Alpine Linux. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/code-scanning/run-additional-queries.md b/translations/pt-BR/data/reusables/code-scanning/run-additional-queries.md index 4c3ce8e6f9..f0feabf4e8 100644 --- a/translations/pt-BR/data/reusables/code-scanning/run-additional-queries.md +++ b/translations/pt-BR/data/reusables/code-scanning/run-additional-queries.md @@ -1,5 +1,13 @@ Ao usar {% data variables.product.prodname_codeql %} para fazer a varredura do código, o mecanismo de análise de {% data variables.product.prodname_codeql %} gera um banco de dados do código e executa consultas no mesmo. A análise de {% data variables.product.prodname_codeql %} usa um conjunto-padrão de consultas, mas você pode especificar outras consultas a serem executadas, além das consultas-padrão. +{% ifversion code-scanning-exclude-queries-from-analysis %} +{% tip %} + +You can also specify the queries you want to exclude from analysis, or include in the analysis. This requires the use of a custom configuration file. For more information, see "[Using a custom configuration file](#using-a-custom-configuration-file)" and "[Excluding specific queries from analysis](#excluding-specific-queries-from-analysis) " below. + +{% endtip %} +{% endif %} + {% ifversion codeql-packs %} You can run extra queries if they are part of a {% data variables.product.prodname_codeql %} pack (beta) published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} or a {% data variables.product.prodname_ql %} pack stored in a repository. For more 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#about-codeql-queries)." diff --git a/translations/pt-BR/data/reusables/codespaces/click-remote-explorer-icon-vscode.md b/translations/pt-BR/data/reusables/codespaces/click-remote-explorer-icon-vscode.md index 2eacc3e212..e286675cee 100644 --- a/translations/pt-BR/data/reusables/codespaces/click-remote-explorer-icon-vscode.md +++ b/translations/pt-BR/data/reusables/codespaces/click-remote-explorer-icon-vscode.md @@ -1 +1,5 @@ -1. Em {% data variables.product.prodname_vscode_shortname %}, na barra lateral esquerda, clique no ícone Remote Explorer. ![O ícone do Remote Explorer em {% data variables.product.prodname_vscode %}](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) +1. Em {% data variables.product.prodname_vscode_shortname %}, na barra lateral esquerda, clique no ícone Remote Explorer. + + ![O ícone do Remote Explorer em {% data variables.product.prodname_vscode %}](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) + +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/codespaces/codespaces-disabling-org-billing.md b/translations/pt-BR/data/reusables/codespaces/codespaces-disabling-org-billing.md new file mode 100644 index 0000000000..a3d7ca0c7a --- /dev/null +++ b/translations/pt-BR/data/reusables/codespaces/codespaces-disabling-org-billing.md @@ -0,0 +1,5 @@ +{% note %} + +**Note**: If you disable billable codespaces use for your organization, anyone who can create codespaces as an individual user, and can clone a repository in your organization, will still be able to create a codespace for that repository. However, this will not incur any charge for your organization. For information about restricting access to a repository, see "[Managing teams and people with access to your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)." + +{% endnote %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/codespaces/codespaces-org-policies-note.md b/translations/pt-BR/data/reusables/codespaces/codespaces-org-policies-note.md new file mode 100644 index 0000000000..9060454948 --- /dev/null +++ b/translations/pt-BR/data/reusables/codespaces/codespaces-org-policies-note.md @@ -0,0 +1,5 @@ +{% note %} + +**Note**: Organization policies you define for {% data variables.product.prodname_codespaces %} only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." + +{% endnote %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/codespaces/codespaces-spending-limit-requirement.md b/translations/pt-BR/data/reusables/codespaces/codespaces-spending-limit-requirement.md index 61e7031435..69820f0878 100644 --- a/translations/pt-BR/data/reusables/codespaces/codespaces-spending-limit-requirement.md +++ b/translations/pt-BR/data/reusables/codespaces/codespaces-spending-limit-requirement.md @@ -1,9 +1,9 @@ {% note %} -**Note:** You must set a spending limit before you can use {% data variables.product.prodname_codespaces %}. +**Note:** You must set a non-zero spending limit before you can use {% data variables.product.prodname_codespaces %}. {% endnote %} -By default, your organization or enterprise will have a {% data variables.product.prodname_github_codespaces %} spending limit of $0, which prevents new codespaces from being created or existing codespaces from being opened. To allow your users to create codespaces in your organization, set the limit to a value higher than $0. +By default, your organization or enterprise will have a {% data variables.product.prodname_github_codespaces %} spending limit of $0. This prevents new codespaces from being created, or existing codespaces from being opened, if this would incur a billable cost to your organization or enterprise. To allow your users to create codespaces in your organization, set the limit to a value higher than $0. {% data reusables.billing.overages-billed-monthly %} diff --git a/translations/pt-BR/data/reusables/codespaces/open-codespace-from-template-repo.md b/translations/pt-BR/data/reusables/codespaces/open-codespace-from-template-repo.md new file mode 100644 index 0000000000..cf7f9b2d15 --- /dev/null +++ b/translations/pt-BR/data/reusables/codespaces/open-codespace-from-template-repo.md @@ -0,0 +1,8 @@ +1. Select an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. +1. On the main page of the newly created repository, click the **{% octicon "code" aria-label="The code icon" %} Code** button and select the **Codespaces** tab. + + ![Botão de codespace novo](/assets/images/help/codespaces/new-codespace-button.png) + + If you don’t see this tab, {% data variables.product.prodname_github_codespaces %} isn't available for you. For more information about access to {% data variables.product.prodname_github_codespaces %}, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)." + +1. On the **Codespaces** tab, click **Create codespace on main**. diff --git a/translations/pt-BR/data/reusables/codespaces/rebuild-command.md b/translations/pt-BR/data/reusables/codespaces/rebuild-command.md index 71c637c6bc..b629306b6e 100644 --- a/translations/pt-BR/data/reusables/codespaces/rebuild-command.md +++ b/translations/pt-BR/data/reusables/codespaces/rebuild-command.md @@ -1,5 +1,3 @@ -1. Access the {% data variables.product.prodname_vscode_command_palette %} (Shift + Command + P / Ctrl + Shift + P), then start typing "rebuild". Selecione **Codespaces: Reconstruir Contêiner**. +1. Access the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "rebuild". Selecione **Codespaces: Reconstruir Contêiner**. ![Opção de reconstruir contêiner](/assets/images/help/codespaces/codespaces-rebuild.png) - - diff --git a/translations/pt-BR/data/reusables/codespaces/remote-explorer.md b/translations/pt-BR/data/reusables/codespaces/remote-explorer.md new file mode 100644 index 0000000000..545bdcf0c9 --- /dev/null +++ b/translations/pt-BR/data/reusables/codespaces/remote-explorer.md @@ -0,0 +1,9 @@ +{% note %} + +**Note**: If the Remote Explorer is not displayed in the Activity Bar: + +1. Access the Command Palette. For example, by pressing Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux). +1. Type: `codespaces`. +1. Click **Codespaces: Details**. + +{% endnote %} diff --git a/translations/pt-BR/data/reusables/dependabot/dependabot-alerts-filters.md b/translations/pt-BR/data/reusables/dependabot/dependabot-alerts-filters.md index 53ee652c54..bb66dd9639 100644 --- a/translations/pt-BR/data/reusables/dependabot/dependabot-alerts-filters.md +++ b/translations/pt-BR/data/reusables/dependabot/dependabot-alerts-filters.md @@ -2,7 +2,7 @@ You can sort and filter {% data variables.product.prodname_dependabot_alerts %} | Opção | Descrição | Exemplo | |:------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ecossistema` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 %} +| `ecossistema` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-7891 %} | `has` | Displays alerts meeting the selected filter criteria | Use `has:patch` to show alerts related to advisories that have a patch{% ifversion dependabot-alerts-vulnerable-calls %}
Use `has:vulnerable-calls` to show alerts relating to calls to vulnerable functions{% endif %} {% endif %} | `is` | Displays alerts based on their state | Use `is:open` to show open alerts | diff --git a/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-beta-note.md b/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-beta-note.md index 01b1e2f260..23aaae3ec2 100644 --- a/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-beta-note.md +++ b/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-beta-note.md @@ -2,4 +2,4 @@ **Note**: The {% data variables.product.prodname_dependency_review_action %} is currently in public beta and subject to change. -{% endnote %} +{% endnote %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-overview.md b/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-overview.md index fdfb2f6f8c..d3b89434d2 100644 --- a/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-overview.md +++ b/translations/pt-BR/data/reusables/dependency-review/dependency-review-action-overview.md @@ -1,3 +1,3 @@ The {% data variables.product.prodname_dependency_review_action %} scans your pull requests for dependency changes and raises an error if any new dependencies have known vulnerabilities. The action is supported by an API endpoint that compares the dependencies between two revisions and reports any differences. -For more information about the action and the API endpoint, see "[About dependency review](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-reinforcement)," and "[Dependency review](/rest/dependency-graph/dependency-review)" in the API documentation, respectively. +For more information about the action and the API endpoint, see the [`dependency-review-action`](https://github.com/actions/dependency-review-action) documentation, and "[Dependency review](/rest/dependency-graph/dependency-review)" in the API documentation. diff --git a/translations/pt-BR/data/reusables/enterprise-accounts/repo-creation-policy.md b/translations/pt-BR/data/reusables/enterprise-accounts/repo-creation-policy.md index 3dc85d7c17..f010f96ca7 100644 --- a/translations/pt-BR/data/reusables/enterprise-accounts/repo-creation-policy.md +++ b/translations/pt-BR/data/reusables/enterprise-accounts/repo-creation-policy.md @@ -1 +1,6 @@ -1. Em "Repository creation" (Criação de repositório), selecione uma política. ![Menu suspenso com opções de políticas de criação de repositórios](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) +1. Em "Repository creation" (Criação de repositório), selecione uma política. + {% ifversion enterprise-namespace-repo-setting %} + ![Menu suspenso com opções de políticas de criação de repositórios](/assets/images/help/business-accounts/restrict-personal-namespace-setting.png) + {% else %} + ![Menu suspenso com opções de políticas de criação de repositórios](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) + {% endif %} diff --git a/translations/pt-BR/data/reusables/enterprise-accounts/repository-visibility-policy.md b/translations/pt-BR/data/reusables/enterprise-accounts/repository-visibility-policy.md deleted file mode 100644 index 525aa116b2..0000000000 --- a/translations/pt-BR/data/reusables/enterprise-accounts/repository-visibility-policy.md +++ /dev/null @@ -1 +0,0 @@ -1. Em "Repository visibility change" (Mudança de visibilidade do repositório), use o menu suspenso e escolha uma política. ![Menu suspenso com opções de política de visibilidade do repositório](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) diff --git a/translations/pt-BR/data/reusables/enterprise-accounts/security-tab.md b/translations/pt-BR/data/reusables/enterprise-accounts/security-tab.md index 5d74f91ca1..b71d9a50b8 100644 --- a/translations/pt-BR/data/reusables/enterprise-accounts/security-tab.md +++ b/translations/pt-BR/data/reusables/enterprise-accounts/security-tab.md @@ -1,2 +1,7 @@ +{%- ifversion ghec or ghes > 3.4 or ghae-issue-7875 %} +1. In the left sidebar, click **Authentication security**. + {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-authentication-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-authentication-security-tab.png){% endif %} +{%- else %} 1. Na barra lateral esquerda, clique em **Security** (Segurança). {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-security-tab.png){% endif %} +{%- endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md b/translations/pt-BR/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md index c5d6100063..d9e308eee9 100644 --- a/translations/pt-BR/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md +++ b/translations/pt-BR/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md @@ -1,4 +1,4 @@ -1. Define the key as a environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. +1. Define the key as an environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. ```bash{:copy} ghe-config "secrets.gpgverify.web-signing-key" "$(gpg --export-secret-keys -a | awk '{printf "%s\\n", $0}')" diff --git a/translations/pt-BR/data/reusables/gated-features/hosted-runners.md b/translations/pt-BR/data/reusables/gated-features/hosted-runners.md new file mode 100644 index 0000000000..4f1e2137bb --- /dev/null +++ b/translations/pt-BR/data/reusables/gated-features/hosted-runners.md @@ -0,0 +1 @@ +The {% data variables.actions.hosted_runner %}s feature is currently in beta for organizations and enterprises using the {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %} plans, and is subject to change. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/getting-started/bearer-vs-token.md b/translations/pt-BR/data/reusables/getting-started/bearer-vs-token.md new file mode 100644 index 0000000000..9dd0b62ada --- /dev/null +++ b/translations/pt-BR/data/reusables/getting-started/bearer-vs-token.md @@ -0,0 +1 @@ +In most cases, you can use `Authorization: Bearer` or `Authorization: token` to pass a token. However, if you are passing a JSON web token (JWT), you must use `Authorization: Bearer`. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/git/cache-on-repository-path.md b/translations/pt-BR/data/reusables/git/cache-on-repository-path.md new file mode 100644 index 0000000000..ced81ebbd9 --- /dev/null +++ b/translations/pt-BR/data/reusables/git/cache-on-repository-path.md @@ -0,0 +1,5 @@ +1. To configure Git to cache credentials for each local directory where you clone a repository, enter the following command. + + ```shell{:copy} + git config --global credential.useHttpPath true + ``` diff --git a/translations/pt-BR/data/reusables/git/clear-stored-gcm-credentials.md b/translations/pt-BR/data/reusables/git/clear-stored-gcm-credentials.md new file mode 100644 index 0000000000..04e3de748e --- /dev/null +++ b/translations/pt-BR/data/reusables/git/clear-stored-gcm-credentials.md @@ -0,0 +1,5 @@ +- If the output is `manager-core`, you're using Git Credential Manager. To clear the credentials, run the following command. + + ```shell{:copy} + git credential-manager reject https://github.com + ``` diff --git a/translations/pt-BR/data/reusables/git/clear-the-stored-credentials.md b/translations/pt-BR/data/reusables/git/clear-the-stored-credentials.md new file mode 100644 index 0000000000..f723d7ab97 --- /dev/null +++ b/translations/pt-BR/data/reusables/git/clear-the-stored-credentials.md @@ -0,0 +1 @@ +1. If the output confirms that you're using a credential manager, clear the stored credentials for the credential manager. diff --git a/translations/pt-BR/data/reusables/git/confirm-credential-manager.md b/translations/pt-BR/data/reusables/git/confirm-credential-manager.md new file mode 100644 index 0000000000..68c6e99397 --- /dev/null +++ b/translations/pt-BR/data/reusables/git/confirm-credential-manager.md @@ -0,0 +1,5 @@ +1. To confirm your use of a credential manager, enter the following command and note the output. + + ```shell{:copy} + git config --get credential.helper + ``` diff --git a/translations/pt-BR/data/reusables/git/no-credential-manager.md b/translations/pt-BR/data/reusables/git/no-credential-manager.md new file mode 100644 index 0000000000..fe79c2ff04 --- /dev/null +++ b/translations/pt-BR/data/reusables/git/no-credential-manager.md @@ -0,0 +1 @@ +- If the output doesn't include the name of a credential manager, there is no credential manager configured, and you can proceed to the next step. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/git/open-terminal.md b/translations/pt-BR/data/reusables/git/open-terminal.md new file mode 100644 index 0000000000..7eeb8de93f --- /dev/null +++ b/translations/pt-BR/data/reusables/git/open-terminal.md @@ -0,0 +1 @@ +1. Abra o terminal. diff --git a/translations/pt-BR/data/reusables/git/provide-credentials.md b/translations/pt-BR/data/reusables/git/provide-credentials.md new file mode 100644 index 0000000000..351a1e87d1 --- /dev/null +++ b/translations/pt-BR/data/reusables/git/provide-credentials.md @@ -0,0 +1,3 @@ +1. The first time that you use Git to clone a repository or access data in a repository that you've already cloned, Git will request credentials. Provide the PAT for the account with access to the repository. + + Git will cache the PAT for the directory you're in, and you'll be able to access and write repository data on {% data variables.product.product_location %} using the correct account. diff --git a/translations/pt-BR/data/reusables/gpg/configure-ssh-signing.md b/translations/pt-BR/data/reusables/gpg/configure-ssh-signing.md new file mode 100644 index 0000000000..f0f489a73a --- /dev/null +++ b/translations/pt-BR/data/reusables/gpg/configure-ssh-signing.md @@ -0,0 +1,4 @@ +1. Configure Git to use SSH to sign commits and tags: + ```bash + $ git config --global gpg.format ssh + ``` \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/gpg/copy-gpg-key-id.md b/translations/pt-BR/data/reusables/gpg/copy-gpg-key-id.md index 7527dd811a..99a4a4c3d9 100644 --- a/translations/pt-BR/data/reusables/gpg/copy-gpg-key-id.md +++ b/translations/pt-BR/data/reusables/gpg/copy-gpg-key-id.md @@ -1,9 +1,9 @@ 1. Da lista de chaves GPG, copie a forma longa do ID da chave GPG que você gostaria de usar. Neste exemplo, o ID da chave GPG é `3AA5C34371567BD2`: - ```shell + ```shell{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/42B317FD4BA89E7A 2016-03-10 - ``` + ``` diff --git a/translations/pt-BR/data/reusables/gpg/copy-ssh-public-key.md b/translations/pt-BR/data/reusables/gpg/copy-ssh-public-key.md new file mode 100644 index 0000000000..ccfe59c1e1 --- /dev/null +++ b/translations/pt-BR/data/reusables/gpg/copy-ssh-public-key.md @@ -0,0 +1,43 @@ +1. Copie a chave pública SSH para a sua área de transferência. + + Se o seu arquivo de chave pública SSH tiver um nome diferente do código de exemplo, modifique o nome do arquivo para corresponder à sua configuração atual. Ao copiar sua chave, não adicione novas linhas nem espaços em branco. +{% mac %} + + ```shell + $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard + ``` + + {% tip %} + + **Dica:** se `pbcopy` não estiver funcionando, você poderá localizar a pasta `.ssh` oculta, abrir o arquivo no seu editor de texto de preferência e copiá-lo na área de transferência. + + {% endtip %} +{% endmac %} +{% windows %} + + ```shell + $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard + ``` + + {% tip %} + + **Dica:** se `clip` não estiver funcionando, você poderá localizar a pasta `.ssh` oculta, abrir o arquivo no seu editor de texto de preferência e copiá-lo na área de transferência. + + {% endtip %} +{% endwindows %} +{% linux %} + + ```shell + $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Then select and copy the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file + # displayed in the terminal to your clipboard + ``` + + {% tip %} + + **Dica:** Como alternativa, você pode localizar a pasta oculta de `.ssh`, abrir o arquivo no seu editor de texto favorito e copiá-lo na sua área de transferência. + + {% endtip %} +{% endlinux %} diff --git a/translations/pt-BR/data/reusables/gpg/list-keys-with-note.md b/translations/pt-BR/data/reusables/gpg/list-keys-with-note.md index de75bf4ce3..a3650500a0 100644 --- a/translations/pt-BR/data/reusables/gpg/list-keys-with-note.md +++ b/translations/pt-BR/data/reusables/gpg/list-keys-with-note.md @@ -1,10 +1,11 @@ - 1. Use o comando `gpg --list-secret-keys --keyid-format=long` para listar a forma longa das chaves GPG para as quais você tem uma chave pública e privada. Uma chave privada é necessária para assinar commits ou tags. - ```shell - $ gpg --list-secret-keys --keyid-format=long -``` - {% note %} - **Nota:** Algumas instalações GPG no Linux podem exigir que você use `gpg2 --list-keys --keyid-format LONG` para visualizar uma lista de suas chaves existentes. Neste caso você também precisará configurar o Git para usar `gpg2` executando `git config --global gpg.program gpg2`. + ```shell{:copy} + $ gpg --list-secret-keys --keyid-format=long + ``` - {% endnote %} + {% note %} + + **Nota:** Algumas instalações GPG no Linux podem exigir que você use `gpg2 --list-keys --keyid-format LONG` para visualizar uma lista de suas chaves existentes. Neste caso você também precisará configurar o Git para usar `gpg2` executando `git config --global gpg.program gpg2`. + + {% endnote %} diff --git a/translations/pt-BR/data/reusables/gpg/paste-ssh-public-key.md b/translations/pt-BR/data/reusables/gpg/paste-ssh-public-key.md new file mode 100644 index 0000000000..1274a0acb5 --- /dev/null +++ b/translations/pt-BR/data/reusables/gpg/paste-ssh-public-key.md @@ -0,0 +1,4 @@ +1. To set your SSH signing key in Git, paste the text below, substituting the contents of your clipboard for the key you'd like to use. Since the key contains spaces, you must wrap it in quotes: + ```bash + $ git config --global user.signingkey 'ssh-ed25519 AAAAC3(...) user@example.com' + ``` \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/gpg/ssh-git-version.md b/translations/pt-BR/data/reusables/gpg/ssh-git-version.md new file mode 100644 index 0000000000..b7b745ca4f --- /dev/null +++ b/translations/pt-BR/data/reusables/gpg/ssh-git-version.md @@ -0,0 +1,6 @@ + +{% note %} + +**Note:** SSH signature verification is available in Git 2.34 or later. Para atualizar sua versão do Git, consulte o site [Git](https://git-scm.com/downloads). + +{% endnote %} diff --git a/translations/pt-BR/data/reusables/gpg/x-509-key.md b/translations/pt-BR/data/reusables/gpg/x-509-key.md index d01c81454b..0d77e87c6f 100644 --- a/translations/pt-BR/data/reusables/gpg/x-509-key.md +++ b/translations/pt-BR/data/reusables/gpg/x-509-key.md @@ -1,7 +1,7 @@ -### Contando ao Git sobre sua chave X.509 +## Contando ao Git sobre sua chave X.509 -Você pode usar [smimesign](https://github.com/github/smimesign) para assinar commits e tags usando S/MIME em vez de GPG. +You can use [smimesign](https://github.com/github/smimesign) to sign commits and tags using S/MIME. {% data reusables.gpg.smime-git-version %} diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md b/translations/pt-BR/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md new file mode 100644 index 0000000000..772581f87a --- /dev/null +++ b/translations/pt-BR/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md @@ -0,0 +1,3 @@ +You can create an IP allow list by adding entries that each contain an IP address or address range.{% ifversion ip-allow-list-address-check %} After you finish adding entries, you can check whether a particular IP address would be allowed by any of the enabled entries in your list.{% endif %} + +Before the list restricts access to {% ifversion ghae %}your enterprise{% else %}private assets owned by organizations in your enterprise{% endif %}, you must also enable allowed IP addresses. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/about-checking-ip-address.md b/translations/pt-BR/data/reusables/identity-and-permissions/about-checking-ip-address.md new file mode 100644 index 0000000000..dfdc758f91 --- /dev/null +++ b/translations/pt-BR/data/reusables/identity-and-permissions/about-checking-ip-address.md @@ -0,0 +1 @@ +You can check whether a particular IP address would be allowed by any of the enabled entries in your IP allow list, even if the list is not currently enabled. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md b/translations/pt-BR/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md new file mode 100644 index 0000000000..d646e02ec5 --- /dev/null +++ b/translations/pt-BR/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md @@ -0,0 +1,5 @@ +You can edit an entry in your IP allow list. If you edit an enabled entry, changes are enforced immediately. + +{% ifversion ip-allow-list-address-check %} +After you finish editing entries, you can check whether a particular IP address would be allowed by any of the enabled entries in your list. +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md b/translations/pt-BR/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md new file mode 100644 index 0000000000..f886df0690 --- /dev/null +++ b/translations/pt-BR/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md @@ -0,0 +1,5 @@ +After you create an IP allow list, you can enable allowed IP addresses. When you enable allowed IP addresses, {% data variables.product.company_short %} immediately enforces any enabled entries in your IP allow list. + +{% ifversion ip-allow-list-address-check %} +Before you enable allowed IP addresses, you can check whether a particular IP address would be allowed by any of the enabled entries in your list. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/check-ip-address-step.md b/translations/pt-BR/data/reusables/identity-and-permissions/check-ip-address-step.md new file mode 100644 index 0000000000..5e73fdddcd --- /dev/null +++ b/translations/pt-BR/data/reusables/identity-and-permissions/check-ip-address-step.md @@ -0,0 +1 @@ +1. Under "Check your IP address", enter an IP address. ![Screenshot of the "Check IP address" text field](/assets/images/help/security/check-ip-address.png) \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/check-ip-address.md b/translations/pt-BR/data/reusables/identity-and-permissions/check-ip-address.md new file mode 100644 index 0000000000..9a187752d6 --- /dev/null +++ b/translations/pt-BR/data/reusables/identity-and-permissions/check-ip-address.md @@ -0,0 +1,3 @@ +{%- ifversion ip-allow-list-address-check %} +1. Optionally, check if a particular IP address would be allowed by any of the enabled entries in your list. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +{%- endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/ip-allow-lists-enable.md b/translations/pt-BR/data/reusables/identity-and-permissions/ip-allow-lists-enable.md index 3bee02a42c..c7be5a3a0d 100644 --- a/translations/pt-BR/data/reusables/identity-and-permissions/ip-allow-lists-enable.md +++ b/translations/pt-BR/data/reusables/identity-and-permissions/ip-allow-lists-enable.md @@ -1 +1,3 @@ -Para fazer cumprir a lista de permissões de IP, você deve primeiro adicionar endereços IP à lista, e então habilitar a lista de permissões de IP. É preciso adicionar o endereço IP atual ou um intervalo correspondente antes de habilitar a lista de permissões de IP. +To enforce the IP allow list, you must first add IP addresses to the list, then enable the IP allow list.{% ifversion ip-allow-list-address-check %} After you complete your list, you can check whether a particular IP address would be allowed by any of the enabled entries in the list.{% endif %} + +É preciso adicionar o endereço IP atual ou um intervalo correspondente antes de habilitar a lista de permissões de IP. diff --git a/translations/pt-BR/data/reusables/identity-and-permissions/ipv6-allow-lists.md b/translations/pt-BR/data/reusables/identity-and-permissions/ipv6-allow-lists.md new file mode 100644 index 0000000000..3c26491fe2 --- /dev/null +++ b/translations/pt-BR/data/reusables/identity-and-permissions/ipv6-allow-lists.md @@ -0,0 +1,7 @@ +{% ifversion fpt or ghec %} +{% note %} + +**Note:** {% data variables.product.company_short %} is gradually rolling out support for IPv6. As {% data variables.product.prodname_dotcom %} services continue to add IPv6 support, we will start recognizing IPv6 addresses of {% data variables.product.prodname_dotcom %} users. To prevent possible access interruptions, please ensure you have added any necessary IPv6 addresses to your IP allow list. + +{% endnote %} +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/organizations/about-following-organizations.md b/translations/pt-BR/data/reusables/organizations/about-following-organizations.md new file mode 100644 index 0000000000..52e52467fb --- /dev/null +++ b/translations/pt-BR/data/reusables/organizations/about-following-organizations.md @@ -0,0 +1 @@ +When you follow organizations on {% data variables.product.product_name %}, you'll see their {% ifversion fpt or ghec %}public{% endif %} activity on your personal dashboard. This activity includes new discussions, sponsorships, and repositories. \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/organizations/follow-organizations-beta.md b/translations/pt-BR/data/reusables/organizations/follow-organizations-beta.md new file mode 100644 index 0000000000..c43d9b7ad9 --- /dev/null +++ b/translations/pt-BR/data/reusables/organizations/follow-organizations-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**Observação:** A capacidade de seguir organizações está atualmente em versão beta pública e sujeita a alterações. + +{% endnote %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/package_registry/authenticate-packages.md b/translations/pt-BR/data/reusables/package_registry/authenticate-packages.md index a766f6e96d..5ca4e91584 100644 --- a/translations/pt-BR/data/reusables/package_registry/authenticate-packages.md +++ b/translations/pt-BR/data/reusables/package_registry/authenticate-packages.md @@ -4,4 +4,4 @@ You can use a personal access token (PAT) to authenticate to {% data variables.p 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. -- a PAT to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). +- a PAT with at least `packages:read` scope to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). diff --git a/translations/pt-BR/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md b/translations/pt-BR/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md deleted file mode 100644 index 7fa54b22c1..0000000000 --- a/translations/pt-BR/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md +++ /dev/null @@ -1,11 +0,0 @@ -{% ifversion fpt or ghec or ghes > 3.4 %} - -Para efetuar a autenticação em {% data variables.product.prodname_container_registry %} dentro de um fluxo de trabalho {% data variables.product.prodname_actions %}, use o `GITHUB_TOKEN` para obter a melhor segurança e experiência. If your workflow is using a personal access token (PAT) to authenticate to `{% data reusables.package_registry.container-registry-hostname %}`, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. - -{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to `{% data reusables.package_registry.container-registry-hostname %}` with a personal access token, see "[Upgrading a workflow that accesses `ghcr.io`](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-ghcrio)."{% endif %} - -Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação em um fluxo de trabalho](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)". - -Se você estiver usando {% data variables.product.prodname_container_registry %} em ações, siga nossas práticas recomendadas em matéria de segurança na[Enrijecimento de segurança para o GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)". - -{% endif %} diff --git a/translations/pt-BR/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md b/translations/pt-BR/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md new file mode 100644 index 0000000000..718710d5ce --- /dev/null +++ b/translations/pt-BR/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md @@ -0,0 +1,7 @@ +If your workflow is using a personal access token (PAT) to authenticate to a registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. + +{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to a registry with a personal access token, see "[Upgrading a workflow that accesses a registry using a PAT](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-a-registry-using-a-pat)."{% endif %} + +Para obter mais informações sobre o `GITHUB_TOKEN`, consulte "[Autenticação em um fluxo de trabalho](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)". + +For more information about the best practises when using a registry in actions, see "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." diff --git a/translations/pt-BR/data/reusables/package_registry/no-graphql-to-delete-packages.md b/translations/pt-BR/data/reusables/package_registry/no-graphql-to-delete-packages.md new file mode 100644 index 0000000000..cbab609f2b --- /dev/null +++ b/translations/pt-BR/data/reusables/package_registry/no-graphql-to-delete-packages.md @@ -0,0 +1 @@ +{% 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`, or npm images that use the package namespace `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`.{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/reusables/pages/navigate-publishing-source.md b/translations/pt-BR/data/reusables/pages/navigate-publishing-source.md index 023fcbd392..f959dcee5e 100644 --- a/translations/pt-BR/data/reusables/pages/navigate-publishing-source.md +++ b/translations/pt-BR/data/reusables/pages/navigate-publishing-source.md @@ -1 +1 @@ -1. Navegue até a fonte de publicação do seu site. For more information, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." +1. Navegue até a fonte de publicação do seu site. Para obter mais informações, consulte "[Configurando uma fonte de publicação para o site do GitHub Pages](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)". diff --git a/translations/pt-BR/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md b/translations/pt-BR/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md index 51048b2b8f..7d67ed3e43 100644 --- a/translations/pt-BR/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md +++ b/translations/pt-BR/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md @@ -1,16 +1,16 @@ -{% ifversion ghes > 3.1 or ghes < 3.5 %} +{% ifversion ghes < 3.5 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix for 3.5 and later will be available in an upcoming patch release. +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix is available in the [3.5.5](/enterprise-server@3.5/admin/release-notes#3.5.5) and [3.6.1](/enterprise-server@3.6/admin/release-notes#3.6.1) patch releases. -To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-08-16] +To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-09-01] -{% elsif ghes > 3.4 or ghes < 3.7 %} +{% elsif ghes = 3.5 or ghes = 3.6 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ currentVersion }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ allVersions[currentVersion].currentRelease }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). - To display the missing alerts for all repositories owned by an organization, organization owners can navigate to the organization's **Code security and analysis** settings, then click **Enable all** for secret scanning. Para obter mais informações, consulte "[Gerenciar configurações de segurança e análise para sua organização](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-existing-repositories)". - To display the missing alerts for an individual repository, people with admin access to the repository can disable then enable secret scanning for the repository. Para obter mais informações, consulte "[Gerenciar configurações de segurança e análise do seu repositório](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)". -A fix will be available in an upcoming patch release. [Updated: 2022-08-16] +A fix is available in the {% ifversion ghes = 3.5 %}[3.5.5](/admin/release-notes#3.5.5){% elsif ghes = 3.6 %}[3.6.1](/admin/release-notes#3.6.1){% endif %} patch release. [Updated: 2022-09-01] {% endif %} diff --git a/translations/pt-BR/data/reusables/secret-scanning/push-protection-web-ui-choice.md b/translations/pt-BR/data/reusables/secret-scanning/push-protection-web-ui-choice.md index bc75f9431c..23e71bf6bf 100644 --- a/translations/pt-BR/data/reusables/secret-scanning/push-protection-web-ui-choice.md +++ b/translations/pt-BR/data/reusables/secret-scanning/push-protection-web-ui-choice.md @@ -2,5 +2,12 @@ Ao usar a interface de usuário web para tentar confirmar um segredo suportado p Você verá um banner no topo da página com informações sobre a localização do segredo, e o segredo também será sublinhado no arquivo para que você possa encontrá-lo facilmente. +{% ifversion push-protection-custom-link-orgs %} + + ![Captura de tela que mostra o commit na interface de usuário da web bloqueado devido à proteção de push da digitalização de segredo](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner-with-link.png) + +{% else %} + ![Captura de tela que mostra o commit na interface de usuário da web bloqueado devido à proteção de push da digitalização de segredo](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner.png) - \ No newline at end of file + +{% endif %} \ No newline at end of file diff --git a/translations/pt-BR/data/variables/actions.yml b/translations/pt-BR/data/variables/actions.yml index 7561884164..0cf3893443 100644 --- a/translations/pt-BR/data/variables/actions.yml +++ b/translations/pt-BR/data/variables/actions.yml @@ -1,2 +1,3 @@ --- azure_portal: 'Azure Portal' +hosted_runner: 'larger runner' diff --git a/translations/pt-BR/data/variables/product.yml b/translations/pt-BR/data/variables/product.yml index ddecd920aa..4168fb80db 100644 --- a/translations/pt-BR/data/variables/product.yml +++ b/translations/pt-BR/data/variables/product.yml @@ -112,6 +112,10 @@ prodname_registry: 'GitHub Package Registry' prodname_container_registry: 'Container registry' prodname_docker_registry_namespace: '{% ifversion fpt or ghec %}`docker.pkg.github.com`{% elsif ghes or ghae %}docker.HOSTNAME{% endif %}' prodname_container_registry_namespace: '{% ifversion fpt or ghec %}`ghcr.io`{% elsif ghes or ghae %}containers.HOSTNAME{% endif %}' +prodname_npm_registry: 'Registro de npm' +prodname_ghcr_and_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_or_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} or {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_and_npm_registry_full: '{% data variables.product.prodname_container_registry %} (`ghcr.io`){% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %} (`npm.pkg.github.com`){% endif %}' #GitHub Insights prodname_insights: 'GitHub Insights' #GitHub Sponsors diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md index 92dd7fdc0a..e06edb7705 100644 --- a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/index.md @@ -1,6 +1,6 @@ --- title: 在 GitHub 上设置和管理您的个人帐户 -intro: '您可以在 {% data variables.product.prodname_dotcom %} 上管理个人帐户的设置,包括电子邮件首选项、个人仓库的协作者访问权限和组织成员身份。' +intro: 'You can manage settings for your personal account on {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}, including email preferences, access to personal repositories, and organization memberships. You can also manage the account itself.' shortTitle: 个人帐户 redirect_from: - /categories/setting-up-and-managing-your-github-user-account @@ -15,6 +15,7 @@ topics: - Accounts children: - /managing-personal-account-settings + - /managing-your-personal-account - /managing-email-preferences - /managing-access-to-your-personal-repositories - /managing-your-membership-in-organizations diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md index 44e94058a5..45fe502fd4 100644 --- a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/index.md @@ -1,6 +1,6 @@ --- title: 管理用户帐户设置 -intro: 您可以更改个人帐户的多项设置,包括更改用户名和删除帐户。 +intro: 'You can manage settings for your personal account, including your theme, username, default branch, accessibility, and security settings.' redirect_from: - /categories/29/articles - /categories/user-accounts @@ -19,17 +19,14 @@ children: - /managing-your-theme-settings - /managing-your-tab-size-rendering-preference - /changing-your-github-username - - /merging-multiple-personal-accounts - - /converting-a-user-into-an-organization - - /deleting-your-personal-account - /permission-levels-for-a-personal-account-repository - /permission-levels-for-a-project-board-owned-by-a-personal-account - /managing-accessibility-settings - /managing-the-default-branch-name-for-your-repositories - /managing-security-and-analysis-settings-for-your-personal-account - /managing-access-to-your-personal-accounts-project-boards + - /managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages - /integrating-jira-with-your-personal-projects - - /best-practices-for-leaving-your-company - /what-does-the-available-for-hire-checkbox-do shortTitle: 个人帐户设置 --- diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md new file mode 100644 index 0000000000..a091ba0f32 --- /dev/null +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-your-cookie-preferences-for-githubs-enterprise-marketing-pages.md @@ -0,0 +1,33 @@ +--- +title: Managing your cookie preferences for GitHub's enterprise marketing pages +intro: 'You can control how {% data variables.product.company_short %} uses information from non-essential tracking cookies for enterprise marketing pages.' +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +shortTitle: Manage cookie preferences +--- + +## About cookie preferences on enterprise marketing pages + +{% data variables.product.company_short %} may use non-essential cookies on some enterprise marketing pages. You can customize how these cookies behave. For more information about how {% data variables.product.company_short %} uses cookies, see "[{% data variables.product.company_short %} Privacy Statement](/free-pro-team@latest/site-policy/privacy-policies/github-privacy-statement)." + +## Changing your cookie preferences + +You can customize how non-essential cookies behave on any {% data variables.product.company_short %} enterprise marketing page. + +1. Navigate to the {% data variables.product.company_short %} enterprise marketing page where you'd like to change your cookie preferences. For example, navigate to [{% data variables.product.company_short %} Resources](https://resources.github.com/). +1. Scroll to the bottom of the page, then click **Manage Cookies**. + + ![Screenshot of button to manage cookie settings.](/assets/images/help/settings/cookie-settings-manage.png) + +1. Under "Manage cookie preferences," to accept or reject each non-essential cookie, click **Accept** or **Reject**. + + ![Screenshot of radio buttons to choose "Accept" or "Reject" for non-essential cookies.](/assets/images/help/settings/cookie-settings-accept-or-reject.png) + +1. 单击 **Save changes(保存更改)**。 + + ![Screenshot of button to save changes.](/assets/images/help/settings/cookie-settings-save.png) diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md similarity index 95% rename from translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md rename to translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md index 0f84794666..155379d05f 100644 --- a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company.md +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/best-practices-for-leaving-your-company.md @@ -6,6 +6,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/best-practices-for-leaving-your-company - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/best-practices-for-leaving-your-company + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/best-practices-for-leaving-your-company versions: fpt: '*' ghec: '*' diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md similarity index 97% rename from translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md rename to translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md index 2a1aa4bcb9..4d510d7ca2 100644 --- a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization.md +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/converting-a-user-into-an-organization.md @@ -7,6 +7,7 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/converting-a-user-into-an-organization + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/converting-a-user-into-an-organization intro: 您可以将个人帐户转换为组织。 这样可以对属于组织的仓库设置更细化的权限。 versions: fpt: '*' diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md similarity index 55% rename from translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md rename to translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md index 19bbcfc8a4..c1de520062 100644 --- a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account.md +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/deleting-your-personal-account.md @@ -1,39 +1,53 @@ --- title: 删除个人帐户 -intro: '您可以随时在 {% data variables.product.product_name %} 上删除您的个人帐户。' +intro: '您可以随时在 {% data variables.product.product_location %} 上删除您的个人帐户。' redirect_from: - /articles/deleting-a-user-account - /articles/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/deleting-your-user-account - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/deleting-your-user-account + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/deleting-your-personal-account versions: fpt: '*' ghes: '*' ghec: '*' topics: - Accounts -shortTitle: 删除个人帐户 +shortTitle: Delete your account --- -删除个人帐户会移除帐户所拥有的所有仓库、私有仓库分支、wiki、议题、拉取请求和页面。 {% ifversion fpt or ghec %} 在其他用户拥有的仓库中创建的议题和拉取请求以及所做的评论将不会被删除,而是与我们的[Ghost 用户](https://github.com/ghost)关联。{% else %}在其他用户拥有的仓库中创建的议题和拉取请求以及所做的评论将不会被删除。{% endif %} +## About deletion of your personal account -{% ifversion fpt or ghec %} 当您删除帐户时,我们会停止对您计费。 与该帐户关联的电子邮件地址可用于 {% data variables.product.product_location %} 上不同的帐户。 90 天后,该帐户名称也可供其他任何人用于新帐户。 {% endif %} +删除个人帐户会移除帐户所拥有的所有仓库、私有仓库分支、wiki、议题、拉取请求和页面。 {% 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. Your resources and comments will become associated with the [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 ghec %} + +{% note %} + +**Note**: If your enterprise manages your account and you sign into {% data variables.product.product_location %} through your company's identity provider (IdP), you cannot delete your account. 更多信息请参阅“[关于 {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users)”。 + +{% endnote %} + +{% endif %} + +{% ifversion fpt or ghec %}When you delete your account we stop billing you. 与该帐户关联的电子邮件地址可用于 {% data variables.product.product_location %} 上不同的帐户。 90 天后,该帐户名称也可供其他任何人用于新帐户。 {% 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 personal account. 如果组织中有其他所有者,则必须先从组织中删除自己,然后才能删除个人帐户。 + +更多信息请参阅以下文章。 -更多信息请参阅: - “[转让组织所有权](/articles/transferring-organization-ownership)” - “[删除组织帐户](/articles/deleting-an-organization-account)” - “[从组织中删除自己](/articles/removing-yourself-from-an-organization/)” ## 备份帐户数据 -在删除个人帐户之前,请复制帐户拥有的所有仓库、私有分支、wiki、议题和拉取请求。 +在删除个人帐户之前,请复制帐户拥有的所有仓库、私有分支、wiki、议题和拉取请求。 For more information, see "[Backing up a repository](/repositories/archiving-a-github-repository/backing-up-a-repository)." {% warning %} -**警告:**删除个人帐户后,GitHub 无法恢复您的内容。 +**Warning:** Once your personal account has been deleted, {% ifversion fpt or ghec %}{% data variables.product.company_short %}{% elsif ghes or ghae %}an enterprise owner{% endif %} cannot restore your content. {% endwarning %} diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md new file mode 100644 index 0000000000..ab1c7a9394 --- /dev/null +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/index.md @@ -0,0 +1,19 @@ +--- +title: Managing your personal account +intro: 'You can manage your personal account on {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %}. For example, you can {% ifversion fpt or ghec %}manage multiple accounts, {% endif %}convert an account to an organization{% ifversion fpt or ghec or ghes %}, or delete an account{% endif %}.' +shortTitle: Manage personal account +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +topics: + - Accounts +children: + - /managing-multiple-accounts + - /merging-multiple-personal-accounts + - /converting-a-user-into-an-organization + - /best-practices-for-leaving-your-company + - /deleting-your-personal-account +--- + diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md new file mode 100644 index 0000000000..1c926dde82 --- /dev/null +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts.md @@ -0,0 +1,105 @@ +--- +title: Managing multiple accounts +intro: 'If you use one workstation to contribute to projects for more than one account on {% data variables.product.product_location %}, you can modify your Git configuration to simplify the contribution process.' +versions: + feature: multiple-accounts-one-workstation +topics: + - Accounts + - Git + - GitHub +shortTitle: Manage multiple accounts +--- + +## About management of multiple accounts + +In some cases, you may need to use multiple accounts on {% data variables.product.product_location %}. For example, you may have a personal account for open source contributions, and your employer may also create and manage a user account for you within an enterprise. + +You cannot use your {% data variables.product.prodname_managed_user %} to contribute to public projects on {% data variables.product.product_location %}, so you must contribute to those resources using your personal account. For more information, see "[About {% data variables.product.prodname_emus %}]({% ifversion fpt %}/enterprise-cloud@latest{% endif %}/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#abilities-and-restrictions-of-managed-user-accounts){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% elsif ghec %}."{% endif %} + +If you want to use one workstation to contribute from both accounts, you can simplify contribution with Git by using a mixture of protocols to access repository data, or by using credentials on a per-repository basis. + +{% warning %} + +**Warning**: Be mindful when you use one workstation to contribute to two separate accounts. Management of two or more accounts can increase the chance of mistakenly leaking internal code to the public. + +{% endwarning %} + +If you aren't required to use a {% data variables.product.prodname_managed_user %}, {% data variables.product.company_short %} recommends that you use one personal account for all your work on {% data variables.product.product_location %}. With a single personal account, you can contribute to a combination of personal, open source, or professional projects using one identity. Other people can invite the account to contribute to both individual repositories and repositories owned by an organization, and the account can be a member of multiple organizations or enterprises. + +## Contributing to two accounts using HTTPS and SSH + +If you contribute with two accounts from one workstation, you can access repositories by using a different protocol and credentials for each account. + +Git can use either the HTTPS or SSH protocol to access and update data in repositories on {% data variables.product.product_location %}. The protocol you use to clone a repository determines which credentials your workstation will use to authenticate when you access the repository. With this approach to account management, you store the credentials for one account to use for HTTPS connections and upload an SSH key to the other account to use for SSH connections. + +You can find both the HTTPS or an SSH URLs for cloning a repository on {% data variables.product.product_name %}. 更多信息请参阅“[克隆仓库](/repositories/creating-and-managing-repositories/cloning-a-repository)”。 + +For more information about the use of SSH to access repositories on {% data variables.product.product_name %}, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/authentication/connecting-to-github-with-ssh)." + +## Contributing to multiple accounts using HTTPS and PATs + +Alternatively, if you want to use the HTTPS protocol for both accounts, you can use different personal access tokens (PAT) for each account by configuring Git to store different credentials for each repository. + +{% mac %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + - If the output is `osxkeychain`, you're using the macOS keychain. To clear the credentials, enter the following command. + + ```shell{:copy} + git credential-osxkeychain erase https://github.com + ``` + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endmac %} + +{% windows %} + +1. 打开 Git Bash。 +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} + - If the output is `wincred`, you're using the Windows Credential Manager. To clear the credentials, enter the following command. + + ```shell{:copy} + cmdkey /delete:LegacyGeneric:target=git:https://github.com + ``` +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endwindows %} + +{% linux %} + +{% data reusables.git.open-terminal %} +{% data reusables.git.confirm-credential-manager %} +{% data reusables.git.clear-the-stored-credentials %} + {% data reusables.git.no-credential-manager %} + {% data reusables.git.clear-stored-gcm-credentials %} +{% data reusables.git.cache-on-repository-path %} +{% data reusables.accounts.create-personal-access-tokens %} +{% data reusables.git.provide-credentials %} + +{% endlinux %} + +## Contributing to multiple accounts using SSH and `GIT_SSH_COMMAND` + +If you want to use the SSH protocol for both accounts, you can use different SSH keys for each account. For more information about using SSH, see "[Connecting to {% data variables.product.prodname_dotcom %} with SSH](/authentication/connecting-to-github-with-ssh)." + +To use a different SSH key for different repositories that you clone to your workstation, you must write a shell wrapper function for Git operations. The function should perform the following steps. +1. Determine the repository's full name with owner, using a command such as `git config --get remote.origin.url`. +2. Choose the correct SSH key for authentication. +3. Modify `GIT_SSH_COMMAND` accordingly. For more information about `GIT_SSH_COMMAND`, see [Environment Variables](https://git-scm.com/docs/git#Documentation/git.txt-codeGITSSHCOMMANDcode) in the Git documentation. + +For example, the following command sets the `GIT_SSH_COMMAND` environment variable to specify an SSH command that uses the private key file at **_PATH/TO/KEY/FILE_** for authentication to clone the repository named **_OWNER_**/**_REPOSITORY_** on {% data variables.product.product_location %}. + +
+GIT_SSH_COMMAND='ssh -i PATH/TO/KEY/FILE -o IdentitiesOnly=yes' git clone git@github.com:OWNER/REPOSITORY
+
diff --git a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md similarity index 93% rename from translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md rename to translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md index 5ff88a3f41..5946b02367 100644 --- a/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts.md +++ b/translations/zh-CN/content/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/merging-multiple-personal-accounts.md @@ -8,12 +8,13 @@ redirect_from: - /github/setting-up-and-managing-your-github-user-account/merging-multiple-user-accounts - /github/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts - /account-and-profile/setting-up-and-managing-your-github-user-account/managing-user-account-settings/merging-multiple-user-accounts + - /account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/merging-multiple-personal-accounts versions: fpt: '*' ghec: '*' topics: - Accounts -shortTitle: 合并多个个人帐户 +shortTitle: Merge multiple accounts --- {% tip %} diff --git a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md index bf592c0b96..4774b64695 100644 --- a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md +++ b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect.md @@ -73,6 +73,7 @@ topics: "repository": "octo-org/octo-repo", "repository_owner": "octo-org", "actor_id": "12", + "repo_visibility": private, "repository_id": "74", "repository_owner_id": "65", "run_id": "example-run-id", @@ -130,6 +131,7 @@ OIDC 令牌还包括其他标准声明: | `job_workflow_ref` | 这是此作业使用的可重用工作流程的引用路径。 更多信息请参阅“[使用 OpenID 连接和可重用工作流程](/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows)”。 | | `ref` | _(引用)_ 触发工作流程运行的 git 引用。 | | `ref_type` | `ref` 的类型,例如:"branch"。 | +| `repo_visibility` | The visibility of the repository where the workflow is running. Accepts the following values: `internal`, `private`, or `public`. | | `仓库` | 运行工作流程的存储库。 | | `repository_id` | 运行工作流程的存储库的 ID。 | | `repository_owner` | 存储 `repository` 的组织的名称。 | @@ -145,11 +147,11 @@ OIDC 令牌还包括其他标准声明: 在云角色/资源上设置条件以限定其对 GitHub 工作流程的访问范围时,受众和主题声明通常结合使用。 - **受众**:默认情况下,此值使用组织或存储库所有者的 URL。 这可用于设置只有特定组织中的工作流程才能访问云角色的条件。 -- **主题**:具有预定义的格式,并且是有关工作流程的某些关键元数据的串联,如 {% data variables.product.prodname_dotcom %} 组织、存储库、分支或关联的[`作业`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment)环境。 请参阅“[示例主题声明](#example-subject-claims)”,了解如何从串联的元数据汇编主题声明。 +- **Subject**: By default, has a predefined format and is a concatenation of some of the key metadata about the workflow, such as the {% data variables.product.prodname_dotcom %} organization, repository, branch, or associated [`job`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idenvironment) environment. 请参阅“[示例主题声明](#example-subject-claims)”,了解如何从串联的元数据汇编主题声明。 -OIDC 令牌中还支持许多其他声明,这些声明也可用于设置这些条件。 +If you need more granular trust conditions, you can customize the issuer (`iss`) and subject (`sub`) claims that are included with the JWT. For more information, see "[Customizing the token claims](#customizing-the-token-claims)". -此外,云提供商可以允许你为访问令牌分配角色,从而允许你指定更精细的权限。 +There are also many additional claims supported in the OIDC token that can be used for setting these conditions. 此外,云提供商可以允许你为访问令牌分配角色,从而允许你指定更精细的权限。 {% note %} @@ -240,6 +242,197 @@ curl -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" "$ACTIONS_ID_TOK {% data reusables.actions.oidc-permissions-token %} +{% ifversion actions-oidc-hardening-config %} +## Customizing the token claims + +You can security harden your OIDC configuration by customizing the claims that are included with the JWT. These customisations allow you to define more granular trust conditions on your cloud roles when allowing your workflows to access resources hosted in the cloud: + +{% ifversion ghec %} - For an additional layer of security, you can append the `issuer` url with your enterprise slug. This lets you set conditions on the issuer (`iss`) claim, configuring it to only accept JWT tokens from a unique `issuer` URL that must include your enterprise slug.{% endif %} +- You can standardize your OIDC configuration by setting conditions on the subject (`sub`) claim that require JWT tokens to originate from a specific repository, reusable workflow, or other source. +- You can define granular OIDC policies by using additional OIDC token claims, such as `repository_id` and `repo_visibility`. For more information, see "[Understanding the OIDC token](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#understanding-the-oidc-token)". + +To customize these claim formats, organization and repository admins can use the REST API endpoints described in the following sections. + +{% ifversion ghec %} + +### Switching to a unique token URL + +By default, the JWT is issued by {% data variables.product.prodname_dotcom %}'s OIDC provider at `https://token.actions.githubusercontent.com`. This path is presented to your cloud provider using the `iss` value in the JWT. + +Enterprise admins can security harden their OIDC configuration by configuring their enterprise to receive tokens from a unique URL at `https://api.github.com/enterprises//actions/oidc/customization/issuer`. Replace `` with the slug value of your enterprise. + +This configuration means that your enterprise will receive the OIDC token from a unique URL, and you can then configure your cloud provider to only accept tokens from that URL. This helps ensure that only the enterprise's repositories can access your cloud resources using OIDC. + +To activate this setting for your enterprise, an enterprise admin must use the `/enterprises/{enterprise}/actions/oidc/customization/issuer` endpoint and specify `"include_enterprise_slug": true` in the request body. For more information, see "[Set the {% data variables.product.prodname_actions %} OIDC custom issuer policy for an enterprise](/rest/actions/oidc#set-the-github-actions-oidc-custom-issuer-policy-for-an-enterprise)." + +After this setting is applied, the JWT will contain the updated `iss` value. In the following example, the `iss` key uses `octocat-inc` as its `enterpriseSlug` value: + +```json +{ + "jti": "6f4762ed-0758-4ccb-808d-ee3af5d723a8" + "sub": "repo:octocat-inc/private-server:ref:refs/heads/main" + "aud": "http://octocat-inc.example/octocat-inc" + "enterprise": "octocat-inc" + "iss": "https://api.github.com/enterprises/octocat-inc/actions/oidc/customization/issuer", + "bf": 1755350653, + "exp": 1755351553, + "iat": 1755351253 +} +``` + +{% endif %} + +### Customizing the subject claims for an organization + +To configure organization-wide security, compliance, and standardization, you can customize the standard claims to suit your required access conditions. If your cloud provider supports conditions on subject claims, you can create a condition that checks whether the `sub` value matches the path of the reusable workflow, such as `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. The exact format will vary depending on your cloud provider's OIDC configuration. To configure the matching condition on {% data variables.product.prodname_dotcom %}, you can can use the REST API to require that the `sub` claim must always include a specific custom claim, such as `job_workflow_ref`. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)." + +Customizing the claims results in a new format for the entire `sub` claim, which replaces the default predefined `sub` format in the token described in "[Example subject claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims)." + +The following example templates demonstrate various ways to customize the subject claim. To configure these settings on {% data variables.product.prodname_dotcom %}, organization admins use the REST API to specify a list of claims that must be included in the subject (`sub`) claim. {% data reusables.actions.use-request-body-api %} + +To customize your subject claims, you should first create a matching condition in your cloud provider's OIDC configuration, before customizing the configuration using the REST API. Once the configuration is completed, each time a new job runs, the OIDC token generated during that job will follow the new customization template. If the matching condition doesn't exist in the cloud provider's OIDC configuration before the job runs, the generated token might not be accepted by the cloud provider, since the cloud conditions may not be synchronized. + +{% note %} + +**Note**: When the organization template is applied, it will not affect any existing repositories that already use OIDC. For existing repositories, as well as any new repositories that are created after the template has been applied, the repository owner will need to opt-in to receive this configuration. For more information, see "[Set the opt-in flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-in-flag-of-an-oidc-subject-claim-customization-for-a-repository)." + +{% endnote %} + +#### Example: Allowing repository based on visibility and owner + +This example template allows the `sub` claim to have a new format, using `repository_owner` and `repository_visibility`: + +```json +{ + "include_claim_keys": [ + "repository_owner", + "repository_visibility" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repository_owner` and `repository_visibility`. For example: `"repository_owner: "monalisa":repository_visibility:private"`. The approach lets you restrict cloud role access to only private repositories within an organization or enterprise. + +#### Example: Allowing access to all repositories with a specific owner + +This example template enables the `sub` claim to have a new format with only the value of `repository_owner`. {% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repository_owner" + ] +} + +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include a specific value for `repository_owner`. For example: `"repository_owner: "monalisa""` + +#### Example: Requiring a reusable workflow + +This example template allows the `sub` claim to have a new format that contains the value of the `job_workflow_ref` claim. This enables an enterprise to use [reusable workflows](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims) to enforce consistent deployments across its organizations and repositories. + +{% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "job_workflow_ref" + ] + } +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include a specific value for `job_workflow_ref`. For example: `"job_workflow_ref: "octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main""`. + +#### Example: Requiring a reusable workflow and other claims + +The following example template combines the requirement of a specific reusable workflow with additional claims. {% data reusables.actions.use-request-body-api %} + +This example also demonstrates how to use `"context"` to define your conditions. This is the part that follows the repository in the [default `sub` format](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#example-subject-claims). For example, when the job references an environment, the context contains: `environment:`. + +```json +{ + "include_claim_keys": [ + "repo", + "context", + "job_workflow_ref" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repo`, `context`, and `job_workflow_ref`. + +This customization template requires that the `sub` uses the following format: `repo::environment::job_workflow_ref:`. For example: `"sub": "repo:octo-org/octo-repo:environment:prod:job_workflow_ref:octo-org/octo-automation/.github/workflows/oidc.yml@refs/heads/main"` + +#### Example: Granting access to a specific repository + +This example template lets you grant cloud access to all the workflows in a specific repository, across all branches/tags and environments. To help improve security, combine this template with the custom issuer URL described in "[Customizing the token URL for an enterprise](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-url-for-an-enterprise)." + +{% data reusables.actions.use-request-body-api %} + +```json +{ + "include_claim_keys": [ + "repo" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repo` claim that matches the required value. + +#### Example: Using system-generated GUIDs + +This example template enables predictable OIDC claims with system-generated GUIDs that do not change between renames of entities (such as renaming a repository). {% data reusables.actions.use-request-body-api %} + +```json + { + "include_claim_keys": [ + "repository_id" + ] + } +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repository_id` claim that matches the required value. + +或: + +```json +{ + "include_claim_keys": [ + "repository_owner_id" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require a `repository_owner_id` claim that matches the required value. + +#### Resetting your customizations + +This example template resets the subject claims to the default format. {% data reusables.actions.use-request-body-api %} This template effectively opts out of any organization-level customization policy. + +```json +{ + "include_claim_keys": [ + "repo", + "context" + ] +} +``` + +In your cloud provider's OIDC configuration, configure the `sub` condition to require that claims must include specific values for `repo` and `context`. + +#### Using the default subject claims + +For repositories that can receive a subject claim policy from their organization, the repository owner can later choose to opt-out and instead use the default `sub` claim format. To configure this, the repository admin must use the REST API endpoint at "[Set the opt-out flag of an OIDC subject claim customization for a repository](/rest/actions/oidc#set-the-opt-out-flag-of-an-oidc-subject-claim-customization-for-a-repository)" with the following request body: + +```json +{ + "use_default": true +} +``` + +{% endif %} + ## 更新 OIDC 的工作流程 现在,您可以更新 YAML 工作流程,以使用 OIDC 访问令牌而不是机密。 常用的云提供商已发布其官方登录操作,使您可以轻松开始使用 OIDC。 有关更新工作流程的详细信息,请参阅下面“[为云提供商启用 OpenID Connect ](#enabling-openid-connect-for-your-cloud-provider)”中列出的云特定指南。 diff --git a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md index a3d8a64281..28fd1ba7e0 100644 --- a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md +++ b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-hashicorp-vault.md @@ -32,10 +32,52 @@ OpenID Connect (OIDC) 允许您的 {% data variables.product.prodname_actions %} 要将 OIDC 与 HashiCorp Vault 配合使用,您需要为 {% data variables.product.prodname_dotcom %} OIDC 提供商添加信任配置。 更多信息请参阅 HashiCorp Vault [文档](https://www.vaultproject.io/docs/auth/jwt)。 -配置 Vault 接受 JSON Web 令牌 (JWT) 进行身份验证: -- 对于 `oidc_discovery_url`,请使用 {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- 对于 `bound_issuer`,请使用 {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %} -- 确保针对您的安全要求正确定义了 `bound_subject`。 更多信息请参阅[“使用云配置 OIDC 信任”](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#configuring-the-oidc-trust-with-the-cloud)和 [`hashicorp/vault-action`](https://github.com/hashicorp/vault-action)。 +To configure your Vault server to accept JSON Web Tokens (JWT) for authentication: + +1. Enable the JWT `auth` method, and use `write` to apply the configuration to your Vault. For `oidc_discovery_url` and `bound_issuer` parameters, use {% ifversion ghes %}`https://HOSTNAME/_services/token`{% else %}`https://token.actions.githubusercontent.com`{% endif %}. These parameters allow the Vault server to verify the received JSON Web Tokens (JWT) during the authentication process. + + ```sh{:copy} + vault auth enable jwt + ``` + + ```sh{:copy} + vault write auth/jwt/config \ + bound_issuer="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" \ + oidc_discovery_url="{% ifversion ghes %}https://HOSTNAME/_services/token{% else %}https://token.actions.githubusercontent.com{% endif %}" + ``` +2. Configure a policy that only grants access to the specific paths your workflows will use to retrieve secrets. For more advanced policies, see the HashiCorp Vault [Policies documentation](https://www.vaultproject.io/docs/concepts/policies). + + ```sh{:copy} + vault policy write myproject-production - <`:将此值替换为您的 HashiCorp Vault 的URL。 +- ``: Replace this with the Namespace you've set in HashiCorp Vault. For example: `admin`. - ``:将此值替换为您在 HashiCorp Vault 信任关系中设置的角色。 -- ``:将此值替换为您在 HashiCorp Vault 信任关系中定义的受众。 -- ``:将此值替换为您从 HashiCorp Vault 检索的机密的路径。 例如:`secret/data/ci npmToken`。 +- ``:将此值替换为您从 HashiCorp Vault 检索的机密的路径。 For example: `secret/data/production/ci npmToken`. ```yaml{:copy} jobs: - retrieve-secret: - steps: - - name: Retrieve secret from Vault - uses: hashicorp/vault-action@v2.4.0 - with: - url: - role: - method: jwt - jwtGithubAudience: - secrets: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + method: jwt + url: + namespace: + role: + secrets: - - name: Use secret from Vault - run: | - # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. +``` + +{% note %} + +**注**: + +- If your Vault server is not accessible from the public network, consider using a self-hosted runner with other available Vault [auth methods](https://www.vaultproject.io/docs/auth). 更多信息请参阅“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners)”。 +- `` must be set for a Vault Enterprise (including HCP Vault) deployment. For more information, see [Vault namespace](https://www.vaultproject.io/docs/enterprise/namespaces). + +{% endnote %} + +### Revoking the access token + +By default, the Vault server will automatically revoke access tokens when their TTL is expired, so you don't have to manually revoke the access tokens. However, if you do want to revoke access tokens immediately after your job has completed or failed, you can manually revoke the issued token using the [Vault API](https://www.vaultproject.io/api/auth/token#revoke-a-token-self). + +1. Set the `exportToken` option to `true` (default: `false`). This exports the issued Vault access token as an environment variable: `VAULT_TOKEN`. +2. Add a step to call the [Revoke a Token (Self)](https://www.vaultproject.io/api/auth/token#revoke-a-token-self) Vault API to revoke the access token. + +```yaml{:copy} +jobs: + retrieve-secret: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: read + steps: + - name: Retrieve secret from Vault + uses: hashicorp/vault-action@v2.4.0 + with: + exportToken: true + method: jwt + url: + role: + secrets: + + - name: Use secret from Vault + run: | + # This step has access to the secret retrieved above; see hashicorp/vault-action for more details. + + - name: Revoke token + # This step always runs at the end regardless of the previous steps result + if: always() + run: | + curl -X POST -sv -H "X-Vault-Token: {% raw %}${{ env.VAULT_TOKEN }}{% endraw %}" \ + /v1/auth/token/revoke-self ``` diff --git a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md index 3d3d21dcfd..af140033c8 100644 --- a/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md +++ b/translations/zh-CN/content/actions/deployment/security-hardening-your-deployments/using-openid-connect-with-reusable-workflows.md @@ -23,11 +23,18 @@ topics: 您可以创建一个可重用的工作流程来执行部署步骤,而不是将部署作业从一个工作流程复制并粘贴到另一个工作流程。 如果可重用工作流程满足“[重用工作流](/actions/learn-github-actions/reusing-workflows#access-to-reusable-workflows)”中所述的访问要求之一,则可以由另一个工作流程使用。 -与 OpenID Connect (OIDC) 结合使用时,可重用工作流程可让您在存储库、组织或企业中实施一致的部署。 为此,可以基于可重用工作流程在云角色上定义信任条件。 +You should be familiar with the concepts described in "\[Reusing workflows\](/actions/learn-github-actions/reusing-workflows" and "[About security hardening with OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect)." -为了创建基于可重用工作流程的信任条件,云提供商必须支持 `job_workflow_ref` 的自定义声明。 这允许您的云提供商确定作业最初来自哪个存储库。 如果您的云提供商仅支持标准声明(_受众_和_主题_),则无法确定作业是否源自可重用工作流程存储库。 支持 `job_workflow_ref` 的云提供商包括 Google Cloud Platform 和 HashiCorp Vault。 +## Defining the trust conditions -在继续之前,您应该熟悉[可重用工作流程](/actions/learn-github-actions/reusing-workflows) 和 [OpenID Connect](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect) 的概念。 +与 OpenID Connect (OIDC) 结合使用时,可重用工作流程可让您在存储库、组织或企业中实施一致的部署。 为此,可以基于可重用工作流程在云角色上定义信任条件。 The available options will vary depending on your cloud provider: + +- **Using `job_workflow_ref`**: + - To create trust conditions based on reusable workflows, your cloud provider must support custom claims for `job_workflow_ref`. 这允许您的云提供商确定作业最初来自哪个存储库。 + - For clouds that only support the standard claims (audience (`aud`) and subject (`sub`)), you can use the API to customize the `sub` claim to include `job_workflow_ref`. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". Support for custom claims is currently available for Google Cloud Platform and HashiCorp Vault. + +- **Customizing the token claims**: + - You can configure more granular trust conditions by customizing the issuer (`iss`) and subject (`sub`) claims included with the JWT. For more information, see "[Customizing the token claims](/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-token-claims)". ## 令牌如何与可重用工作流程配合使用 diff --git a/translations/zh-CN/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md b/translations/zh-CN/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md index 33df75d7fe..6e76788770 100644 --- a/translations/zh-CN/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md +++ b/translations/zh-CN/content/actions/hosting-your-own-runners/adding-self-hosted-runners.md @@ -71,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.organizations.settings-sidebar-actions-runners %} -1. Click **New runner**. +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {% elsif ghae or ghes < 3.4 %} {% data reusables.organizations.navigate-to-org %} diff --git a/translations/zh-CN/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md b/translations/zh-CN/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md index 14e01a6ba9..d95f60b37a 100644 --- a/translations/zh-CN/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md +++ b/translations/zh-CN/content/actions/hosting-your-own-runners/configuring-the-self-hosted-runner-application-as-a-service.md @@ -18,15 +18,23 @@ shortTitle: 启动时运行运行器应用程序 {% capture service_first_step %}1. 如果自托管的运行器应用程序正在运行,请停止它。{% endcapture %} {% capture service_non_windows_intro_shell %}在运行器机器上,在安装了自托管运行器应用程序的目录中打开 shell。 使用以下命令安装和管理自托管的运行器服务。{% endcapture %} -{% capture service_nonwindows_intro %}将自托管的运行器应用程序配置为服务之前,您必须添加运行器到 {% data variables.product.product_name %}。 更多信息请参阅“[添加自托管的运行器](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)”。{% endcapture %} -{% capture service_win_name %}actions.runner.*{% endcapture %} +{% capture service_nonwindows_intro %} + +{% note %} + +**Note:** You must add a runner to {% data variables.product.product_name %} before you can configure the self-hosted runner application as a service. 更多信息请参阅“[添加自托管的运行器](/github/automating-your-workflow-with-github-actions/adding-self-hosted-runners)”。 + +{% endnote %} +{% endcapture %} + +{% capture service_win_name %}actions.runner.*{% endcapture %} {% linux %} {{ service_nonwindows_intro }} -对于使用 `systemd` 的 Linux 系统,您可以使用随自托管运行器应用程序分发的 `svc.h` 脚本来安装和管理应用程序即服务。 +For Linux systems that use `systemd`, you can use the `svc.sh` script that is created after successfully adding the runner to install and manage using the application as a service. {{ service_non_windows_intro_shell }} diff --git a/translations/zh-CN/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md b/translations/zh-CN/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md index 9bcaca1227..3cf8fcf541 100644 --- a/translations/zh-CN/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md +++ b/translations/zh-CN/content/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups.md @@ -9,215 +9,65 @@ versions: ghae: '*' ghec: '*' type: tutorial -shortTitle: 管理对运行器的访问 +shortTitle: Using runner groups --- {% data reusables.actions.enterprise-beta %} {% data reusables.actions.enterprise-github-hosted-runners %} -## 关于自托管运行器组 +## About runner groups -{% ifversion fpt %} -{% note %} - -**注:**所有组织都有一个默认的自托管运行器组。 只有企业帐户和企业帐户拥有的组织才能创建和管理其他自托管的运行器组。 - -{% endnote %} - -自托管运行器组用于控制对自托管运行器的访问。 组织管理员可以配置访问策略,用以控制组织中的哪些组织可以访问运行器组。 -如果您使用 - -{% data variables.product.prodname_ghe_cloud %},您可以创建额外的运行器组;企业管理员可以配置访问策略,控制企业中哪些组织可以访问运行器组;组织管理员可以为企业运行器组分配额外的细致仓库访问策略。 更多信息请参阅 [{% data variables.product.prodname_ghe_cloud %} 文档](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups)。 -{% endif %} +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/hosting-your-own-runners/managing-access-to-self-hosted-runners-using-groups).{% endif %} {% ifversion ghec or ghes or ghae %} -自托管运行器组用于控制对组织和企业级自托管运行器的访问。 企业所有者可以配置访问策略来控制企业中哪些组织 -{% ifversion restrict-groups-to-workflows %}和工作流程{% endif %}可以访问运行器组。 组织所有者可以配置访问策略,以控制组织中哪些存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 可以访问运行器组。 - -当企业所有者授予组织对运行器组的访问权限时,组织所有者可以看到组织的自托管运行器设置中列出的运行器组。 然后,组织所有者可以为企业运行器组分配更细致的存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 访问策略。 - -新运行器在创建时,将自动分配给默认组。 运行器每次只能在一个组中。 您可以将运行器从默认组移到另一组。 更多信息请参阅“[将自托管运行器移动到组](#moving-a-self-hosted-runner-to-a-group)”。 ## 为组织创建自托管的运行器组 -所有组织都有一个默认的自托管运行器组。 企业帐户中的组织可以创建其他自托管组。 组织管理员可以允许单个仓库访问运行器组。 有关如何使用 REST API 创建自托管运行器组的信息,请参阅“[自托管运行器组](/rest/reference/actions#self-hosted-runner-groups)”。 +{%- ifversion ghec or ghes %} -自托管运行器在创建时会自动分配给默认组,并且每次只能成为一个组的成员。 您可以将运行器从默认组移到您创建的任何组。 +{% data reusables.actions.self-hosted-runner-security-admonition %} -创建组时,必须选择一个策略,用于定义哪些存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 有权访问运行器组。 +{%- endif %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. 在“Runner groups(运行器组)”部分,单击 **New runner group(新运行器组)**。 -1. 为运行器组输入名称。 - {% data reusables.actions.runner-group-assign-policy-repo %} - - {% warning %} - - **警告:** {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 更多信息请参阅“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)”。 - - {% endwarning %} -{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} 组织拥有的运行器组无法访问企业中其他组织的工作流程;相反,您必须创建企业拥有的运行器组。{% endif %} -{% data reusables.actions.self-hosted-runner-create-group %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.organizations.navigate-to-org %} -{% data reusables.organizations.org_settings %} -{% data reusables.organizations.settings-sidebar-actions-runner-groups %} -1. 在 {% ifversion ghes or ghae %}“Runners(运行器)”{% endif %} 下,单击 **Add new(新增)**,然后单击 **New group(新建组)**。 - - ![添加运行器组](/assets/images/help/settings/actions-org-add-runner-group.png) -1. 输入运行程序组的名称,并分配仓库访问策略。 - - 您可以将运行器组配置为可供特定的存储库列表或组织中的所有存储库访问。{% ifversion ghec or ghes %} 默认情况下,只有私有存储库可以访问运行器组中的运行器,但您可以覆盖此操作。 如果配置企业共享的组织的运行组,则不能覆盖此设置。{% endif %} - - {%- ifversion ghes %} - {% warning %} - - **警告**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 更多信息请参阅“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)”。 - - {% endwarning %} - {%- endif %} - - ![添加运行器组选项](/assets/images/help/settings/actions-org-add-runner-group-options.png) -1. 单击 **Save group(保存组)**创建组并应用策略。 -{% endif %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} ## 为企业创建自托管运行器组 -企业可以将其自托管的运行器添加到组以进行访问管理。 企业可以创建自托管运行器组,这些组可供企业帐户中的特定组织{% ifversion restrict-groups-to-workflows %} 或特定工作流程{% endif %} 访问。 然后,组织所有者可以为企业运行器组分配更细致的存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 访问策略。 有关如何使用 REST API 创建自托管运行器组的信息,请参阅 [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runner-groups) 中的企业端点。 + {%- ifversion ghec or ghes %} -自托管运行器在创建时会自动分配给默认组,并且每次只能成为一个组的成员。 您可以在注册过程中将运行器分配给特定组,也可以稍后将运行器从默认组移到自定义组。 +{% data reusables.actions.self-hosted-runner-security-admonition %} -创建组时,必须选择用于定义哪些组织有权访问运行器组的策略。 +{%- endif %} -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} -1. 要为组织访问选择策略,请选择 **Organization access(组织访问)**下拉列表,然后单击一个策略。 您可以将运行器组配置为可供特定组织列表或企业中的所有组织访问。{% ifversion ghes %} 默认情况下,只有私有存储库可以访问运行器组中的运行器,但您可以覆盖此操作。{% endif %} - - {%- ifversion ghec or ghes %} - {% warning %} - - **警告**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 更多信息请参阅“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)”。 - - {% endwarning %} - {%- endif %} - {%- ifversion ghec or ghes %} - - ![添加运行器组选项](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) - {%- elsif ghae %} - - ![添加运行器组选项](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) - {%- endif %} -{% data reusables.actions.runner-group-assign-policy-workflow %} -1. 单击 **Save group(保存组)**创建组并应用策略。 +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} {% endif %} ## 更改自托管运行器组的访问策略 -对于企业中的运行器组,您可以更改企业中可以访问运行器组的组织{% ifversion restrict-groups-to-workflows %} 或限制运行器组可以运行的工作流程{% endif %}。 对于组织中的运行器组,您可以更改组织中可以访问运行器组的存储库{% ifversion restrict-groups-to-workflows %} 或限制运行器组可以运行的工作流程{% endif %}。 +{%- ifversion fpt or ghec or ghes %} -### 更改可以访问运行器组的组织或存储库 +{% data reusables.actions.self-hosted-runner-security-admonition %} -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. 对于企业中的运行器组,在 **Organization access(组织访问)**下,修改可以访问运行器组的组织。 对于组织中的运行器组,在 **Repository access(存储库访问)**下,修改可以访问运行器组的存储库。 +{%- endif %} - {%- ifversion fpt or ghec or ghes %} - {% warning %} - - **警告**: - - {% indented_data_reference reusables.actions.self-hosted-runner-security spaces=3 %} - - 更多信息请参阅“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)”。 - - {% endwarning %} - {%- endif %} -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group-access %} -{% endif %} - -{% ifversion restrict-groups-to-workflows %} -### 更改可以访问运行器组的工作流程 -您可以将自托管运行器组配置为运行选定的工作流程或所有工作流程。 例如,可以使用此设置来保护存储在自托管运行器上的机密,或者通过将运行器组限制为仅运行特定的可重用工作流程来标准化部署工作流程。 如果配置企业共享的组织的运行组,则不能覆盖此设置。 -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. 在 **Workflow access(工作流程访问)**下,选择下拉菜单,然后单击 **Selected workflows(选定的工作流程)**。 -1. 单击 {% octicon "gear" aria-label="the gear icon" %}。 -1. 输入以逗号分隔的可访问运行器组的工作流程列表。 使用完整路径,包括存储库名称和所有者。 将工作流程固定到分支、标记或完整 SHA。 例如:`octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`。 - - 只有直接在所选工作流程中定义的作业才能访问运行器组。 - - 组织拥有的运行器组无法访问企业中其他组织的工作流程。相反,您必须创建企业拥有的运行器组。 - -1. 单击 **Save(保存)**。 - -{% endif %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} ## 更改运行器组的名称 -{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} -1. 更改运行器组名称。 - -{% elsif ghae or ghes < 3.4 %} -{% data reusables.actions.self-hosted-runner-configure-runner-group %} -1. 更改运行器组名称。 -{% endif %} +{% data reusables.actions.changing-the-name-of-a-runner-group %} {% ifversion ghec or ghes or ghae %} ## 自动向组添加自托管运行器 -您可以使用配置脚本自动向组添加新的自托管运行器。 例如, 此命令将注册一个新的自托管运行器,并使用 `--runnergroup` 参数将其添加到名为 `rg-runnergroup` 的组。 - -```sh -./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup -``` - -如果运行器组不存在,命令将失败: - -``` -找不到名为 "rg-runnergroup" 的任何自托管运行器组。 -``` +{% data reusables.actions.automatically-adding-a-runner-to-a-group %} ## 将自托管的运行器移动到组 -如果您在注册过程中没有指定运行器组,新的自托管运行器将自动分配到默认组,然后可以移到另一个组。 - -{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} -{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} -1. 在“Runners(运行器)”列表中,单击您要配置的运行器。 -2. 选择 **Runner group(运行器组)**下拉列表。 -3. 在“Move runner to group(将运行器移动到组)”中,选择运行器的目的地组。 -{% elsif ghae or ghes < 3.4 %} -1. 在设置页面的 {% ifversion ghes or ghae %} Runner groups(运行器组){% endif %} 部分,找到要移动的运行器的当前组,并展开组成员列表。 ![查看运行器组成员](/assets/images/help/settings/actions-org-runner-group-members.png) -2. 选中自托管运行器旁边的复选框,然后单击 **Move to group(移动到组)**以查看可用的目的地。 ![运行器组成员移动](/assets/images/help/settings/actions-org-runner-group-member-move.png) -3. 要移动运行器,请单击目标组。 ![运行器组成员移动](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) -{% endif %} +{% data reusables.actions.moving-a-runner-to-a-group %} ## 删除自托管运行器组 -自托管运行器在其组被删除时将自动返回到默认组。 - -{% ifversion ghes or ghae or ghec %} -{% data reusables.actions.self-hosted-runner-groups-navigate-to-repo-org-enterprise %} -1. 在组列表中,在要删除的组右侧,单击 {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}。 -2. 要删除组,请单击 **Remove group(删除组)**。 -3. 查看确认提示,然后单击 **Remove this runner group(删除此运行器组)**。 +{% data reusables.actions.removing-a-runner-group %} {% endif %} -{% endif %} diff --git a/translations/zh-CN/content/actions/learn-github-actions/contexts.md b/translations/zh-CN/content/actions/learn-github-actions/contexts.md index 5e965096b2..b4a1356f70 100644 --- a/translations/zh-CN/content/actions/learn-github-actions/contexts.md +++ b/translations/zh-CN/content/actions/learn-github-actions/contexts.md @@ -33,17 +33,13 @@ miniTocMaxHeadingLevel: 3 {% data reusables.actions.context-injection-warning %} -| 上下文名称 | 类型 | 描述 | -| ---------- | ---- | ----------------------------------------------------------------- | -| `github` | `对象` | 工作流程运行的相关信息。 更多信息请参阅 [`github` 上下文](#github-context)。 | -| `env` | `对象` | 包含工作流程、作业或步骤中设置的环境变量。 更多信息请参阅 [`env` 上下文](#env-context)。 | -| `job` | `对象` | 有关当前运行的作业的信息。 更多信息请参阅 [`job` 上下文](#job-context)。 | -| `steps` | `对象` | 有关当前作业中已运行的步骤的信息。 更多信息请参阅 [`steps` 上下文](#steps-context)。 | -| `runner` | `对象` | 运行当前作业的运行程序相关信息。 更多信息请参阅 [`runner` 上下文](#runner-context)。 | -| `secrets` | `对象` | 包含可用于工作流程运行的机密的名称和值。 更多信息请参阅 [`secrets` 上下文](#secrets-context)。 | -| `strategy` | `对象` | 有关当前作业的矩阵执行策略的信息。 更多信息请参阅 [`strategy` 上下文](#strategy-context)。 | -| `matrix` | `对象` | 包含在工作流程中定义的应用于当前作业的矩阵属性。 更多信息请参阅 [`matrix` 上下文](#matrix-context)。 | -| `needs` | `对象` | 包含定义为当前作业依赖项的所有作业的输出。 更多信息请参阅 [`needs` 上下文](#needs-context)。 | +| 上下文名称 | 类型 | 描述 | +| -------- | ---- | -------------------------------------------------------- | +| `github` | `对象` | 工作流程运行的相关信息。 更多信息请参阅 [`github` 上下文](#github-context)。 | +| `env` | `对象` | 包含工作流程、作业或步骤中设置的环境变量。 更多信息请参阅 [`env` 上下文](#env-context)。 | +| `job` | `对象` | 有关当前运行的作业的信息。 更多信息请参阅 [`job` 上下文](#job-context)。 | +{%- ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} +| `jobs` | `object` | For reusable workflows only, contains outputs of jobs from the reusable workflow. For more information, see [`jobs` context](#jobs-context). |{% endif %} | `steps` | `object` | Information about the steps that have been run in the current job. 更多信息请参阅 [`steps` 上下文](#steps-context)。 | | `runner` | `object` | Information about the runner that is running the current job. 更多信息请参阅 [`runner` 上下文](#runner-context)。 | | `secrets` | `object` | Contains the names and values of secrets that are available to a workflow run. 更多信息请参阅 [`secrets` 上下文](#secrets-context)。 | | `strategy` | `object` | Information about the matrix execution strategy for the current job. 更多信息请参阅 [`strategy` 上下文](#strategy-context)。 | | `matrix` | `object` | Contains the matrix properties defined in the workflow that apply to the current job. 更多信息请参阅 [`matrix` 上下文](#matrix-context)。 | | `needs` | `object` | Contains the outputs of all jobs that are defined as a dependency of the current job. 更多信息请参阅 [`needs` 上下文](#needs-context)。 | {%- ifversion fpt or ghec or ghes > 3.3 or ghae-issue-4757 %} | `inputs` | `object` | 包含可重用 {% ifversion actions-unified-inputs %}或手动触发 {% endif %}工作流程的输入。 更多信息请参阅 [`inputs` 上下文](#inputs-context)。 |{% endif %} @@ -390,6 +386,72 @@ jobs: - run: ./run-tests ``` +{% ifversion fpt or ghes > 3.3 or ghae-issue-4757 or ghec %} + +## `jobs` context + +The `jobs` context is only available in reusable workflows, and can only be used to set outputs for a reusable workflow. 更多信息请参阅“[重用工作流程](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)”。 + +| 属性名称 | 类型 | 描述 | +| ------------------------------------------------- | ----- | -------------------------------------------------------------------------------------------------------------------------- | +| `jobs` | `对象` | This is only available in reusable workflows, and can only be used to set outputs for a reusable workflow. 此对象包含下面列出的所有属性。 | +| `jobs..result` | `字符串` | The result of a job in the reusable workflow. 可能的值包括 `success`、`failure`、`cancelled` 或 `skipped`。 | +| `jobs..outputs` | `对象` | The set of outputs of a job in a reusable workflow. | +| `jobs..outputs.` | `字符串` | The value of a specific output for a job in a reusable workflow. | + +### Example contents of the `jobs` context + +This example `jobs` context contains the result and outputs of a job from a reusable workflow run. + +```json +{ + example_job: { + result: success, + outputs: { + output1: hello, + output2: world + } + } +} +``` + +### Example usage of the `jobs` context + +This example reusable workflow uses the `jobs` context to set outputs for the reusable workflow. Note how the outputs flow up from the steps, to the job, then to the `workflow_call` trigger. 更多信息请参阅“[重用工作流程](/actions/using-workflows/reusing-workflows#using-outputs-from-a-reusable-workflow)”。 + +{% raw %} +```yaml{:copy} +name: Reusable workflow + +on: + workflow_call: + # Map the workflow outputs to job outputs + outputs: + firstword: + description: "The first output string" + value: ${{ jobs.example_job.outputs.output1 }} + secondword: + description: "The second output string" + value: ${{ jobs.example_job.outputs.output2 }} + +jobs: + example_job: + name: Generate output + runs-on: ubuntu-latest + # Map the job outputs to step outputs + outputs: + output1: ${{ steps.step1.outputs.firstword }} + output2: ${{ steps.step2.outputs.secondword }} + steps: + - id: step1 + run: echo "::set-output name=firstword::hello" + - id: step2 + run: echo "::set-output name=secondword::world" +``` +{% endraw %} + +{% endif %} + ## `steps` 上下文 `steps` 上下文包含有关当前作业中指定了 [`id`](/actions/learn-github-actions/workflow-syntax-for-github-actions#jobsjob_idstepsid) 且已运行的步骤的信息。 diff --git a/translations/zh-CN/content/actions/learn-github-actions/understanding-github-actions.md b/translations/zh-CN/content/actions/learn-github-actions/understanding-github-actions.md index adc7f99fe1..cf2a9d3201 100644 --- a/translations/zh-CN/content/actions/learn-github-actions/understanding-github-actions.md +++ b/translations/zh-CN/content/actions/learn-github-actions/understanding-github-actions.md @@ -2,6 +2,7 @@ title: 了解 GitHub Actions shortTitle: 了解 GitHub Actions intro: '学习 {% data variables.product.prodname_actions %} 的基础知识,包括核心概念和基本术语。' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/automating-your-workflow-with-github-actions/core-concepts-for-github-actions - /actions/automating-your-workflow-with-github-actions/core-concepts-for-github-actions @@ -82,7 +83,7 @@ _操作_是 {% data variables.product.prodname_actions %} 平台的自定义应 ### 运行器 -{% data reusables.actions.about-runners %} 每个运行器一次可以运行一个作业。 {% ifversion ghes or ghae %} 您必须为 {% data variables.product.product_name %} 托管自己的运行器。 {% elsif fpt or ghec %}{% data variables.product.company_short %} 提供 Ubuntu Linux、Microsoft Windows 和 macOS 运行器来运行您的工作流程;每个工作流程运行都在新预配的全新虚拟机中执行。 如果您需要不同的操作系统或需要特定的硬件配置,则可以托管自己的运行器。{% endif %} 有关{% ifversion fpt or ghec %} 自托管运行器{% endif %} 的更多信息,请参阅“[托管您自己的运行器](/actions/hosting-your-own-runners)”。 +{% data reusables.actions.about-runners %} 每个运行器一次可以运行一个作业。 {% ifversion ghes or ghae %} 您必须为 {% data variables.product.product_name %} 托管自己的运行器。 {% elsif fpt or ghec %}{% data variables.product.company_short %} 提供 Ubuntu Linux、Microsoft Windows 和 macOS 运行器来运行您的工作流程;每个工作流程运行都在新预配的全新虚拟机中执行。 {% ifversion actions-hosted-runners %} {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." {% endif %}If you need a different operating system or require a specific hardware configuration, you can host your own runners.{% endif %} For more information{% ifversion fpt or ghec %} about self-hosted runners{% endif %}, see "[Hosting your own runners](/actions/hosting-your-own-runners)." {% data reusables.actions.workflow-basic-example-and-explanation %} @@ -93,7 +94,7 @@ _操作_是 {% data variables.product.prodname_actions %} 平台的自定义应 - 要继续了解 {% data variables.product.prodname_actions %},请参阅“[查找和自定义操作](/actions/learn-github-actions/finding-and-customizing-actions)”。 {% ifversion fpt or ghec or ghes %} -- 要了解 {% data variables.product.prodname_actions %} 的计费方式,请参阅“[关于 {% data variables.product.prodname_actions %} 的计费](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)”。 +- To understand how billing works for {% data variables.product.prodname_actions %}, see "[About billing for {% data variables.product.prodname_actions %}](/actions/reference/usage-limits-billing-and-administration#about-billing-for-github-actions)." {% endif %} ## 联系支持 diff --git a/translations/zh-CN/content/actions/publishing-packages/publishing-nodejs-packages.md b/translations/zh-CN/content/actions/publishing-packages/publishing-nodejs-packages.md index b05078b9e3..aa8257e381 100644 --- a/translations/zh-CN/content/actions/publishing-packages/publishing-nodejs-packages.md +++ b/translations/zh-CN/content/actions/publishing-packages/publishing-nodejs-packages.md @@ -98,9 +98,9 @@ always-auth=true ### 配置目标仓库 -如果您没有在 *package.json* 文件中提供 `repository` 键,则 {% data variables.product.prodname_registry %} 将包发布到您在 *package.json* 文件的 `name` 字段中指定的 {% data variables.product.prodname_dotcom %} 仓库。 例如,名为 `@my-org/test` 的包将被发布到 `my-org/test` {% data variables.product.prodname_dotcom %} 仓库。 +Linking your package to {% data variables.product.prodname_registry %} using the `repository` key is optional. If you choose not to provide the `repository` key in your *package.json* file, then {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the `name` field of the *package.json* file. 例如,名为 `@my-org/test` 的包将被发布到 `my-org/test` {% data variables.product.prodname_dotcom %} 仓库。 If the `url` specified in the `repository` key is invalid, your package may still be published however it won't be linked to the repository source as intended. -但是,如果您提供了 `repository` 键,则该键中的仓库将被用作 {% data variables.product.prodname_registry %} 的目标 npm 注册表。 例如,发布以下 *package.json* 将导致名为 `my-amazing-package` 的包被发布到 `octocat/my-other-repo` {% data variables.product.prodname_dotcom %} 仓库。 +If you do provide the `repository` key in your *package.json* file, then the repository in that key is used as the destination npm registry for {% data variables.product.prodname_registry %}. 例如,发布以下 *package.json* 将导致名为 `my-amazing-package` 的包被发布到 `octocat/my-other-repo` {% data variables.product.prodname_dotcom %} 仓库。 Once published, only the repository source is updated, and the package doesn't inherit any permissions from the destination repository. ```json { diff --git a/translations/zh-CN/content/actions/using-github-hosted-runners/about-github-hosted-runners.md b/translations/zh-CN/content/actions/using-github-hosted-runners/about-github-hosted-runners.md index 2d10a26f12..e0085668aa 100644 --- a/translations/zh-CN/content/actions/using-github-hosted-runners/about-github-hosted-runners.md +++ b/translations/zh-CN/content/actions/using-github-hosted-runners/about-github-hosted-runners.md @@ -86,6 +86,15 @@ jobs: ## 支持的运行器和硬件资源 +{% ifversion actions-hosted-runners %} + +{% note %} + +**Note**: {% data variables.product.prodname_dotcom %} also offers {% data variables.actions.hosted_runner %}s, which are available in larger configurations. For more information, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." + +{% endnote %} +{% endif %} + Windows 和 Linux 虚拟机的硬件规格: - 2 核 CPU (x86_64) - 7 GB RAM diff --git a/translations/zh-CN/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md b/translations/zh-CN/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md new file mode 100644 index 0000000000..24f346d312 --- /dev/null +++ b/translations/zh-CN/content/actions/using-github-hosted-runners/controlling-access-to-larger-runners.md @@ -0,0 +1,50 @@ +--- +title: Controlling access to larger runners +intro: '您可以使用策略来限制对已添加到组织或企业的 {% data variables.actions.hosted_runner %} 的访问。' +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: actions-hosted-runners +type: tutorial +shortTitle: 'Controlling access to {% data variables.actions.hosted_runner %}s' +--- + +{% data reusables.actions.enterprise-beta %} +{% data reusables.actions.enterprise-github-hosted-runners %} + +## About runner groups + +{% data reusables.actions.about-runner-groups %} {% ifversion fpt %}For more information, see the [{% data variables.product.prodname_ghe_cloud %} documentation](/enterprise-cloud@latest/actions/using-github-hosted-runners/controlling-access-to-larger-runners).{% endif %} + +{% ifversion ghec or ghes or ghae %} + +## Creating a runner group for an organization + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-organization %} + +## Creating a runner group for an enterprise + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.creating-a-runner-group-for-an-enterprise %} + +{% endif %} + +## Changing the access policy of a runner group + +{% data reusables.actions.hosted-runner-security-admonition %} +{% data reusables.actions.changing-the-access-policy-of-a-runner-group %} + +## 更改运行器组的名称 + +{% data reusables.actions.changing-the-name-of-a-runner-group %} + +{% ifversion ghec or ghes or ghae %} +## Moving a runner to a group + +{% data reusables.actions.moving-a-runner-to-a-group %} + +## Removing a runner group + +{% data reusables.actions.removing-a-runner-group %} + +{% endif %} diff --git a/translations/zh-CN/content/actions/using-github-hosted-runners/index.md b/translations/zh-CN/content/actions/using-github-hosted-runners/index.md index 861149cb18..ed5dcdc1b4 100644 --- a/translations/zh-CN/content/actions/using-github-hosted-runners/index.md +++ b/translations/zh-CN/content/actions/using-github-hosted-runners/index.md @@ -7,6 +7,8 @@ versions: ghes: '*' children: - /about-github-hosted-runners + - /using-larger-runners + - /controlling-access-to-larger-runners - /monitoring-your-current-jobs - /customizing-github-hosted-runners - /connecting-to-a-private-network diff --git a/translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md b/translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md new file mode 100644 index 0000000000..22ea007919 --- /dev/null +++ b/translations/zh-CN/content/actions/using-github-hosted-runners/using-larger-runners.md @@ -0,0 +1,135 @@ +--- +title: Using larger runners +intro: '{% data variables.product.prodname_dotcom %} offers larger runners with more RAM and CPU.' +miniTocMaxHeadingLevel: 3 +product: '{% data reusables.gated-features.hosted-runners %}' +versions: + feature: 'actions-hosted-runners' +shortTitle: Using {% data variables.actions.hosted_runner %}s +--- + +## Overview of {% data variables.actions.hosted_runner %}s + +In addition to the [standard {% data variables.product.prodname_dotcom %}-hosted runners](/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources), {% data variables.product.prodname_dotcom %} also offers customers on {% data variables.product.prodname_team %} and {% data variables.product.prodname_ghe_cloud %} plans a range of {% data variables.actions.hosted_runner %}s with more RAM and CPU. These runners are hosted by {% data variables.product.prodname_dotcom %} and have the runner application and other tools preinstalled. + +When you add a {% data variables.actions.hosted_runner %} to an organization, you are defining a type of machine from a selection of available hardware specifications and operating system images. {% data variables.product.prodname_dotcom %} will then create multiple instances of this runner that scale up and down to match the job demands of your organization, based on the autoscaling limits you define. + +## Architectural overview of {% data variables.actions.hosted_runner %}s + +The {% data variables.actions.hosted_runner %}s are managed at the organization level, where they are arranged into groups that can contain multiple instances of the runner. They can also be created at the enterprise level and shared with organizations in the hierarchy. Once you've created a group, you can then add a runner to the group and update your workflows to target the label assigned to the {% data variables.actions.hosted_runner %}. You can also control which repositories are permitted to send jobs to the group for processing. For more information about groups, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +In the following diagram, a class of hosted runner named `ubuntu-20.04-16core` has been defined with customized hardware and operating system configuration. + +![Diagram explaining {% data variables.actions.hosted_runner %}](/assets/images/hosted-runner.png) + +1. Instances of this runner are automatically created and added to a group called `ubuntu-20.04-16core`. +2. The runners have been assigned the label `ubuntu-20.04-16core`. +3. Workflow jobs use the `ubuntu-20.04-16core` label in their `runs-on` key to indicate the type of runner they need to execute the job. +4. {% data variables.product.prodname_actions %} checks the runner group to see if your repository is authorized to send jobs to the runner. +5. The job runs on the next available instance of the `ubuntu-20.04-16core` runner. + +## Autoscaling {% data variables.actions.hosted_runner %}s + +Your {% data variables.actions.hosted_runner %}s can be configured to automatically scale to suit your needs. When jobs are submitted for processing, more machines can be automatically provisioned to run the jobs, until reaching a pre-defined maximum limit. Each machine only handles one job at a time, so these settings effectively determine the number of jobs that can be run concurrently. + +During the runner deployment process, you can configure the _Max_ option, which allows you to control your costs by setting the maximum parallel number of machines that are created in this set. A higher value here can help avoid workflows being blocked due to parallelism. + +## Networking for {% data variables.actions.hosted_runner %}s + +By default, {% data variables.actions.hosted_runner %}s receive a dynamic IP address that changes for each job run. Optionally, {% data variables.product.prodname_ghe_cloud %} customers can configure their {% data variables.actions.hosted_runner %}s to receive a static IP address from {% data variables.product.prodname_dotcom %}'s IP address pool. When enabled, instances of the {% data variables.actions.hosted_runner %} will receive an address from a range that is unique to the runner, allowing you to use this range to configure a firewall allowlist. You can use up to 10 static IP address ranges in total across all your {% data variables.actions.hosted_runner %}s. + +{% note %} + +**Note**: If runners are unused for more than 30 days, their IP address ranges are automatically removed and cannot be recovered. + +{% endnote %} + +## Planning for {% data variables.actions.hosted_runner %}s + +### Create a runner group + +Runner groups are used to collect sets of virtual machines and create a security boundary around them. You can then decide which organizations or repositories are permitted to run jobs on those sets of machines. During the {% data variables.actions.hosted_runner %} deployment process, the runner can be added to an existing group, or otherwise it will join a default group. You can create a group by following the steps in "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +### Understanding billing + +Compared to standard {% data variables.product.prodname_dotcom %}-hosted runners, {% data variables.actions.hosted_runner %}s are billed differently. For more information, see "[Per-minute rates](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)". + +## Adding a {% data variables.actions.hosted_runner %} to an enterprise + +You can add {% data variables.actions.hosted_runner %}s to an enterprise, where they can be assigned to multiple organizations. The organization admins can then control which repositories can use the runners. To add a {% data variables.actions.hosted_runner %} to an enterprise, you must be an enterprise owner. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.policies-tab %} +{% data reusables.enterprise-accounts.actions-tab %} +{% data reusables.enterprise-accounts.actions-runners-tab %} +{% data reusables.actions.add-hosted-runner %} +1. To allow organizations to access your {% data variables.actions.hosted_runner %}s, you specify the list of organizations that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Adding a {% data variables.actions.hosted_runner %} to an organization + +You can add a {% data variables.actions.hosted_runner %} to an organization, where the organization admins can control which repositories can use it. + +{% data reusables.actions.add-hosted-runner-overview %} + +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runners %} +{% data reusables.actions.add-hosted-runner %} +1. To allow repositories to access your {% data variables.actions.hosted_runner %}s, add them to the list of repositories that can use it. For more information, see "[Managing access to your runners](#managing-access-to-your-runners)." + +## Running jobs on your runner + +Once your runner type has been been defined, you can update your workflows to send jobs to the runner instances for processing. In this example, a runner group is populated with Ubuntu 16-core runners, which have been assigned the label `ubuntu-20.04-16core`. If you have a runner matching this label, the `check-bats-version` job then uses the `runs-on` key to target that runner whenever the job is run: + +```yaml +name: learn-github-actions +on: [push] +jobs: + check-bats-version: + runs-on: ubuntu-20.04-16core + steps: + - uses: {% data reusables.actions.action-checkout %} + - uses:{% data reusables.actions.action-setup-node %} + with: + node-version: '14' + - run: npm install -g bats + - run: bats -v +``` + +## Managing access to your runners + +{% note %} + +**Note**: Before your workflows can send jobs to {% data variables.actions.hosted_runner %}s, you must first configure permissions for the runner group. See the following sections for more information. + +{% endnote %} + +Runner groups are used to control which repositories can run jobs on your {% data variables.actions.hosted_runner %}s. You must grant access to the group from each level of the management hierarchy, depending on where you've defined the {% data variables.actions.hosted_runner %}: + +- **Runners at the enterprise level**: Configure the runner group to grant access to all the required organizations. In addition, for each organization, you must configure the group to specify which repositories are allowed access. +- **Runners at the organization level**: Configure the runner group by specifying which repositories are allowed access. + +For example, the following diagram has a runner group named `grp-ubuntu-20.04-16core` at the enterprise level. Before the repository named `octo-repo` can use the runners in the group, you must first configure the group at the enterprise level to allow access from the `octo-org` organization; you must then configure the group at the organization level to allow access from `octo-repo`: + +![Diagram explaining {% data variables.actions.hosted_runner %} groups](/assets/images/hosted-runner-mgmt.png) + +### Allowing repositories to access a runner group + +This procedure demonstrates how to configure group permissions at the enterprise and organization levels: + +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} + - For runner groups in an enterprise: under **Organization access**, modify which organizations can access the runner group. + - For runner groups in an organization: under **Repository access**, modify which repositories can access the runner group. + +{% warning %} + +**Warning**: + +{% data reusables.actions.hosted-runner-security %} + +For more information, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." + +{% endwarning %} diff --git a/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md b/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md index 16c47f1261..e26a9bb8ce 100644 --- a/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md +++ b/translations/zh-CN/content/actions/using-workflows/caching-dependencies-to-speed-up-workflows.md @@ -51,7 +51,7 @@ miniTocMaxHeadingLevel: 3 工作流程可以访问和还原当前分支、基础分支(包括复刻的仓库的基本分支)或默认分支(通常是 `main`)中创建的缓存 例如,在默认分支上创建的缓存可从任何拉取请求访问。 另外,如果分支 `feature-b` 具有基础分支 `feature-a`,则触发于 `feature-b` 的工作流程可以访问默认分支 (`main`)、`feature-a` 和 `feature-b` 中创建的缓存。 -访问限制通过在不同分支之间创建逻辑边界来提供缓存隔离和安全。 例如, 为分支 `feature-a`(具有基础分支 `main`)创建的缓存将无法访问分支 `feature-c`(具有基础分支 `main`)的拉取请求。 +Access restrictions provide cache isolation and security by creating a logical boundary between different branches or tags. 例如, 为分支 `feature-a`(具有基础分支 `main`)创建的缓存将无法访问分支 `feature-c`(具有基础分支 `main`)的拉取请求。 On similar lines, a cache created for the tag `release-a` (from the base `main`) would not be accessible to a workflow triggered for the tag `release-b` (with the base `main`). 仓库中的多个工作流程共享缓存条目。 可以从同一仓库和分支的另一个工作流程访问和恢复为工作流程中的分支创建的缓存。 diff --git a/translations/zh-CN/content/actions/using-workflows/reusing-workflows.md b/translations/zh-CN/content/actions/using-workflows/reusing-workflows.md index bbdf28e7fe..676a5f6f41 100644 --- a/translations/zh-CN/content/actions/using-workflows/reusing-workflows.md +++ b/translations/zh-CN/content/actions/using-workflows/reusing-workflows.md @@ -23,7 +23,7 @@ topics: Rather than copying and pasting from one workflow to another, you can make workflows reusable. You and anyone with access to the reusable workflow can then call the reusable workflow from another workflow. -Reusing workflows avoids duplication. This makes workflows easier to maintain and allows you to create new workflows more quickly by building on the work of others, just as you do with actions. Workflow reuse also promotes best practice by helping you to use workflows that are well designed, have already been tested, and have been proved to be effective. Your organization can build up a library of reusable workflows that can be centrally maintained. +Reusing workflows avoids duplication. This makes workflows easier to maintain and allows you to create new workflows more quickly by building on the work of others, just as you do with actions. Workflow reuse also promotes best practice by helping you to use workflows that are well designed, have already been tested, and have been proven to be effective. Your organization can build up a library of reusable workflows that can be centrally maintained. The diagram below shows three build jobs on the left of the diagram. After each of these jobs completes successfully a dependent job called "Deploy" runs. This job calls a reusable workflow that contains three jobs: "Staging", "Review", and "Production." The "Production" deployment job only runs after the "Staging" job has completed successfully. Using a reusable workflow to run deployment jobs allows you to run those jobs for each build without duplicating code in workflows. @@ -127,7 +127,7 @@ You can define inputs and secrets, which can be passed from the caller workflow runs-on: ubuntu-latest environment: production steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.envPAT }} @@ -168,12 +168,13 @@ jobs: name: Pass input and secrets to my-action runs-on: ubuntu-latest steps: - - uses: ./.github/workflows/my-action + - uses: octo-org/my-action@v1 with: username: ${{ inputs.username }} token: ${{ secrets.token }} ``` {% endraw %} + {% ifversion actions-reusable-workflow-matrix %} ## Using a matrix strategy with a reusable workflow diff --git a/translations/zh-CN/content/actions/using-workflows/workflow-commands-for-github-actions.md b/translations/zh-CN/content/actions/using-workflows/workflow-commands-for-github-actions.md index 37869a815e..56a9a4652e 100644 --- a/translations/zh-CN/content/actions/using-workflows/workflow-commands-for-github-actions.md +++ b/translations/zh-CN/content/actions/using-workflows/workflow-commands-for-github-actions.md @@ -329,6 +329,12 @@ Write-Output "::add-mask::Mona The Octocat" {% endpowershell %} +{% warning %} + +**Warning:** Make sure you register the secret with 'add-mask' before outputting it in the build logs or using it in any other workflow commands. + +{% endwarning %} + ### 示例:屏蔽环境变量 当您在日志中打印变量 `MY_NAME` 或值 `"Mona The Octocat"` 时,您将看到 `"***"` 而不是 `"Mona The Octocat"`。 diff --git a/translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md b/translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md new file mode 100644 index 0000000000..0403decab7 --- /dev/null +++ b/translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance.md @@ -0,0 +1,52 @@ +--- +title: Configuring dependency review for your appliance +shortTitle: 配置依赖项审查 +intro: 'To helps users understand dependency changes when reviewing pull requests, you can enable, configure, and disable dependency review for {% data variables.product.product_location %}.' +product: '{% data reusables.gated-features.dependency-review %}' +miniTocMaxHeadingLevel: 3 +versions: + feature: dependency-review-action-ghes +type: how_to +topics: + - Advanced Security + - Enterprise + - Dependency review + - Security +--- + +{% data reusables.dependency-review.beta %} + +## 关于依赖项审查 + +{% data reusables.dependency-review.feature-overview %} + +Some additional features, such as license checks, blocking of pull requests, and CI/CD integration, are available with the [dependency review action](https://github.com/actions/dependency-review-action). + +## 检查您的许可是否包含 {% data variables.product.prodname_GH_advanced_security %} + +{% data reusables.advanced-security.check-for-ghas-license %} + +## Prerequisites for dependency review + +- A license for {% data variables.product.prodname_GH_advanced_security %}{% ifversion ghes %} (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 %} + +- The dependency graph enabled for the instance. Site administrators can enable the dependency graph via the management console or the administrative shell (see "[Enabling the dependency graph for your enterprise](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)"). + +- {% data variables.product.prodname_github_connect %} enabled to download and synchronize vulnerabilities from the {% data variables.product.prodname_advisory_database %}. This is usually configured as part of setting up {% data variables.product.prodname_dependabot %} (see "[Enabling Dependabot for your enterprise](/admin/configuration/configuring-github-connect/enabling-dependabot-for-your-enterprise)"). + +## Enabling and disabling dependency review + +To enable or disable dependency review, you need to enable or disable the dependency graph for your instance. + +更多信息请参阅“[为企业启用依赖关系图](/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise)”。 + +## Running dependency review using {% data variables.product.prodname_actions %} + +{% data reusables.dependency-review.dependency-review-action-beta-note %} + +The dependency review action is included in your installation of {% data variables.product.prodname_ghe_server %}. It is available for all repositories that have {% data variables.product.prodname_GH_advanced_security %} and dependency graph enabled. + +{% data reusables.dependency-review.dependency-review-action-overview %} + +Users run the dependency review action using a {% data variables.product.prodname_actions %} workflow. If you have not already set up runners for {% data variables.product.prodname_actions %}, you must do this to enable users to run workflows. 您可以在仓库、组织或企业帐户级别预配自托管运行器。 For 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)." + diff --git a/translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md b/translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md index f3a53bcf69..45243ffe4e 100644 --- a/translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md +++ b/translations/zh-CN/content/admin/code-security/managing-github-advanced-security-for-your-enterprise/index.md @@ -14,6 +14,7 @@ topics: children: - /enabling-github-advanced-security-for-your-enterprise - /configuring-code-scanning-for-your-appliance + - /configuring-dependency-review-for-your-appliance - /configuring-secret-scanning-for-your-appliance --- diff --git a/translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md b/translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md index 594883ae7d..9fd5e92d72 100644 --- a/translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md +++ b/translations/zh-CN/content/admin/code-security/managing-supply-chain-security-for-your-enterprise/enabling-the-dependency-graph-for-your-enterprise.md @@ -23,7 +23,7 @@ topics: ## 通过 {% data variables.enterprise.management_console %} 启用依赖关系图 -如果您的 {% data variables.product.product_location %} 使用群集,则无法使用 {% data variables.enterprise.management_console %} 启用依赖关系图,而必须改用管理 shell。 更多信息请参阅“[通过管理 shell 启用依赖关系图](#enabling-the-dependency-graph-via-the-administrative-shell)”。 +If {% data variables.product.product_location %} uses clustering, you cannot enable the dependency graph with the {% data variables.enterprise.management_console %} and must use the administrative shell instead. 更多信息请参阅“[通过管理 shell 启用依赖关系图](#enabling-the-dependency-graph-via-the-administrative-shell)”。 {% data reusables.enterprise_site_admin_settings.sign-in %} {% data reusables.enterprise_site_admin_settings.access-settings %} diff --git a/translations/zh-CN/content/admin/configuration/configuring-github-connect/about-github-connect.md b/translations/zh-CN/content/admin/configuration/configuring-github-connect/about-github-connect.md index 801d3c5066..4b900f7f44 100644 --- a/translations/zh-CN/content/admin/configuration/configuring-github-connect/about-github-connect.md +++ b/translations/zh-CN/content/admin/configuration/configuring-github-connect/about-github-connect.md @@ -8,6 +8,7 @@ type: overview topics: - Enterprise - GitHub Connect +miniTocMaxHeadingLevel: 3 --- ## About {% data variables.product.prodname_github_connect %} @@ -37,6 +38,16 @@ Unified contributions | Allow users to include anonymized contribution counts fo ## Data transmission for {% data variables.product.prodname_github_connect %} +When {% data variables.product.prodname_github_connect %} is enabled, a record on {% data variables.product.prodname_ghe_cloud %} stores information about the connection. If you enable individual features of {% data variables.product.prodname_github_connect %}, additional data is transmitted. + +{% note %} + +**Note:** No repositories, issues, or pull requests are ever transmitted from {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} by {% data variables.product.prodname_github_connect %}. + +{% endnote %} + +### Data transmitted when {% data variables.product.prodname_github_connect %} is enabled + When you enable {% data variables.product.prodname_github_connect %} or specific {% data variables.product.prodname_github_connect %} features, a record on {% data variables.product.prodname_ghe_cloud %} stores the following information about the connection. {% ifversion ghes %} - The public key portion of your {% data variables.product.prodname_ghe_server %} license @@ -54,11 +65,7 @@ When you enable {% data variables.product.prodname_github_connect %} or specific {% data variables.product.prodname_github_connect %} syncs the above connection data between {% data variables.product.product_location %} and {% data variables.product.prodname_ghe_cloud %} weekly, from the day and approximate time that {% data variables.product.prodname_github_connect %} was enabled. -{% note %} - -**Note:** No repositories, issues, or pull requests are ever transmitted from {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} by {% data variables.product.prodname_github_connect %}. - -{% endnote %} +### Data transmitted by individual features of {% data variables.product.prodname_github_connect %} Additional data is transmitted if you enable individual features of {% data variables.product.prodname_github_connect %}. @@ -68,7 +75,7 @@ Automatic user license sync | Each {% data variables.product.product_name %} use {% data variables.product.prodname_dependabot_alerts %} | Vulnerability alerts | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %} | {% data variables.product.product_name %} |{% endif %}{% ifversion dependabot-updates-github-connect %} {% data variables.product.prodname_dependabot_updates %} | Dependencies and the metadata for each dependency's repository

If a dependency is stored in a private repository on {% data variables.product.prodname_dotcom_the_website %}, data will only be transmitted if {% data variables.product.prodname_dependabot %} is configured and authorized to access that repository. | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %} | {% data variables.product.product_name %} {% endif %} {% data variables.product.prodname_dotcom_the_website %} actions | Name of action, action (YAML file from {% data variables.product.prodname_marketplace %}) | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %}

From {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %}{% ifversion server-statistics %} -{% data variables.product.prodname_server_statistics %} | Aggregate {% data variables.product.prodname_ghe_server %} usage metrics
For the list of aggregate metrics collected, see "[{% data variables.product.prodname_server_statistics %} data collected](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." | From {% data variables.product.product_name %} to {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} +{% data variables.product.prodname_server_statistics %} | Aggregate metrics about your usage of {% data variables.product.prodname_ghe_server %}. For the complete list of metrics, see "[About {% data variables.product.prodname_server_statistics %}](/admin/monitoring-activity-in-your-enterprise/analyzing-how-your-team-works-with-server-statistics/about-server-statistics#server-statistics-data-collected)." | From {% data variables.product.product_name %} to {% data variables.product.prodname_ghe_cloud %} | {% data variables.product.prodname_ghe_cloud %}{% endif %} Unified search | Search terms, search results | From {% data variables.product.prodname_dotcom_the_website %} to {% data variables.product.product_name %}

From {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.product_name %} | Unified contributions | Contribution counts | From {% data variables.product.product_name %} to {% data variables.product.prodname_dotcom_the_website %} | {% data variables.product.prodname_dotcom_the_website %} | diff --git a/translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md b/translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md index f55aca1b8f..868e142b94 100644 --- a/translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md +++ b/translations/zh-CN/content/admin/configuration/configuring-network-settings/configuring-a-hostname.md @@ -19,6 +19,8 @@ topics: {% data variables.enterprise.management_console %} 中的主机名设置应设置为合适的完全限定域名 (FQDN),此域名可在互联网上或您的内部网络内解析。 例如,您的主机名设置可能是 `github.companyname.com。` Web 和 API 请求将自动重定向到 {% data variables.enterprise.management_console %} 中配置的主机名。 请注意,`localhost` 不是有效的主机名设置。 +Hostnames must be less than 63 characters in length per [Section 2.3.4 of the Domain Names Specification RFC](https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4). + 配置主机名后,可以启用子域隔离以进一步提高 {% data variables.product.product_location %} 的安全性。 更多信息请参阅“[启用子域隔离](/enterprise/admin/guides/installation/enabling-subdomain-isolation/)”。 有关支持的主机名类型的详细信息,请参阅 [HTTP RFC 2.1 节](https://tools.ietf.org/html/rfc1123#section-2)。 diff --git a/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md b/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md index 6d65887989..17677f78e7 100644 --- a/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md +++ b/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications.md @@ -78,6 +78,14 @@ shortTitle: 配置电子邮件通知 您可以对所有传入的 SMTP 连接强制实施 TLS 加密,这有助于满足 ISO-27017 认证要求。 +{%- ifversion ghes = 3.6 %} +{% note %} + +**Note**: Enforcement of TLS for SMTP connections is unavailable in {% data variables.product.product_name %} 3.6.0. The feature will be available in an upcoming release. + +{% endnote %} +{%- endif %} + {% data reusables.enterprise_site_admin_settings.email-settings %} 1. 在“Authentication(身份验证)”下,选择 **Enforce TLS auth (recommended)(强制实施 TLS 身份验证[推荐])**。 diff --git a/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md b/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md index 09da7fa90d..b6ffe64d1e 100644 --- a/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md +++ b/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/restricting-network-traffic-to-your-enterprise.md @@ -31,12 +31,15 @@ redirect_from: ## 添加允许的 IP 地址 +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## 允许 {% data variables.product.prodname_github_apps %} 访问 @@ -44,6 +47,8 @@ redirect_from: ## 启用允许的 IP 地址 +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -52,6 +57,8 @@ redirect_from: ## 编辑允许的 IP 地址 +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -59,6 +66,18 @@ redirect_from: {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. 单击 **Update(更新)**。 +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Checking if an IP address is permitted + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## 删除允许的 IP 地址 diff --git a/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md b/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md index e074b64fd8..5bd322dcae 100644 --- a/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md +++ b/translations/zh-CN/content/admin/configuration/configuring-your-enterprise/site-admin-dashboard.md @@ -131,46 +131,49 @@ Key | Description {% ifversion ghes %} ## Indexing -GitHub's [code search][] features are powered by [ElasticSearch][]. This section of the site admin dashboard shows you the current status of your ElasticSearch cluster and provides you with several tools to control the behavior of searching and indexing. These tools are split into the following three categories. +GitHub's search features are powered by Elasticsearch. This section of the site admin dashboard shows you the current status of your Elasticsearch cluster and provides you with several tools to control search and index behavior. - [Code Search]: https://github.com/blog/1381-a-whole-new-code-search - [ElasticSearch]: http://www.elasticsearch.org/ +For more information about code search, see "[Searching for information on {% data variables.product.prodname_dotcom %}](/search-github)." For more information about Elasticsearch, see the [Elasticsearch website](https://elastic.co). + +{% note %} + +**Note**: In normal use, site administrators do not need to create new indices or schedule repair jobs. For troubleshooting or other support purposes, {% data variables.contact.github_support %} may instruct you to run a repair job. + +{% endnote %} + +### Index management + +{% data variables.product.product_name %} reconciles the state of the search index with data on the instance automatically and regularly. + +- Issues, pull requests, repositories, and users in the database +- Git repositories (source code) on disk + +Your instance uses repair jobs to reconcile the data, and schedules a repair job in the background when the following events occur. + +- A new search index is created. +- Missing data needs to be backfilled. +- Old search data needs to be updated. + +You can create a new index, or you can click on an existing index in the list to manage the index. You can perform the following operations on an index. + +- Make the index searchable. +- Make the index writable. +- Update the index. +- Delete the index +- Reset the index repair state. +- Start a new index repair job. +- Enable or disable index repair jobs. + +A progress bar shows the current status of a repair job across background workers. The bar is the percentage difference of the repair offset with the highest record ID in the database. You can ignore the value shown in the progress bar after a repair job has completed. The progress bar shows the difference between the repair offset and the highest record ID in the database, and will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. + +To minimize the effects on I/O performance and reduce the chances of operations timing out, run the repair job during off-peak hours. As the job reconciles the search index with database and Git repository data, one CPU will be used. Monitor your system's load averages and CPU usage with a utility like `top`. If you don't notice any significant increase in resource consumption, it should also be safe to run an index repair job during peak hours. + +Repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. ### Code search This allows you to enable or disable both search and index operations on source code. -### Code search index repair - -This controls how the code search index is repaired. You can - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state - -{% data variables.product.prodname_enterprise %} uses repair jobs to reconcile the state of the search index with data stored in a database (issues, pull requests, repositories, and users) and data stored in Git repositories (source code). This happens when - -- a new search index is created; -- missing data needs to be backfilled; or -- old search data needs to be updated. - -In other words, repair jobs are started as needed and run in the background—they are not scheduled by site admins in any way. - -Furthermore, repair jobs use a "repair offset" for parallelization. This is an offset into the database table for the record being reconciled. Multiple background jobs can synchronize work based on this offset. - -A progress bar shows the current status of a repair job across all of its background workers. It is the percentage difference of the repair offset with the highest record ID in the database. Don't worry about the value shown in the progress bar after a repair job has completed: because it shows the difference between the repair offset and the highest record ID in the database, it will decrease as more repositories are added to {% data variables.product.product_location %} even though those repositories are actually indexed. - -You can start a new code-search index repair job at any time. It will use a single CPU as it reconciles the search index with database and Git repository data. To minimize the effects this will have on I/O performance and reduce the chances of operations timing out, try to run a repair job during off-peak hours first. Monitor your system's load averages and CPU usage with a utility like `top`; if you don't notice any significant changes, it should be safe to run an index repair job during peak hours, as well. - -### Issues index repair - -This controls how the [Issues][] index is repaired. You can - - [Issues]: https://github.com/blog/831-issues-2-0-the-next-generation - -- enable or disable index repair jobs -- start a new index repair job -- reset all index repair state {% endif %} ## Reserved logins diff --git a/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md b/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md index 57013e8ab6..16983abf1f 100644 --- a/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md +++ b/translations/zh-CN/content/admin/enterprise-management/configuring-high-availability/initiating-a-failover-to-your-replica-appliance.md @@ -15,7 +15,7 @@ topics: shortTitle: 启动故障转移到设备 --- -故障转移所需的时间取决于手动升级副本和重定向流量所需的时长。 平均时间范围为 2-10 分钟。 +故障转移所需的时间取决于手动升级副本和重定向流量所需的时长。 平均时间范围为 20-30 分钟。 {% data reusables.enterprise_installation.promoting-a-replica %} diff --git a/translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md b/translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md index dbc7885a81..eaf7abed76 100644 --- a/translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md +++ b/translations/zh-CN/content/admin/github-actions/getting-started-with-github-actions-for-your-enterprise/getting-started-with-self-hosted-runners-for-your-enterprise.md @@ -83,7 +83,7 @@ You can create a runner group to manage access to the runner that you added to y {% data variables.product.product_name %} adds all new runners to a group. Runners can be in one group at a time. By default, {% data variables.product.product_name %} adds new runners to the "Default" group. -{% data reusables.actions.self-hosted-runner-groups-add-to-enterprise-first-steps %} +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} 1. To choose a policy for organization access, under "Organization access", select the **Organization access** drop-down, and click **Selected organizations**. 1. To the right of the drop-down with the organization access policy, click {% octicon "gear" aria-label="The Gear icon" %}. 1. Select the organizations you'd like to grant access to the runner group. @@ -100,7 +100,7 @@ You can create a runner group to manage access to the runner that you added to y {% endwarning %} {%- endif %} -{% data reusables.actions.self-hosted-runner-create-group %} +{% data reusables.actions.create-runner-group %} {%- ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} 1. Click the "Runners" tab. 1. In the list of runners, click the runner that you deployed in the previous section. diff --git a/translations/zh-CN/content/admin/guides.md b/translations/zh-CN/content/admin/guides.md index ad37b307aa..9f0235631e 100644 --- a/translations/zh-CN/content/admin/guides.md +++ b/translations/zh-CN/content/admin/guides.md @@ -45,6 +45,7 @@ includeGuides: - /admin/configuration/configuring-built-in-firewall-rules - /admin/configuration/configuring-code-scanning-for-your-appliance - /admin/configuration/configuring-data-encryption-for-your-enterprise + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance - /admin/configuration/configuring-dns-nameservers - /admin/configuration/configuring-rate-limits - /admin/configuration/configuring-secret-scanning-for-your-appliance diff --git a/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md b/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md index a7b4759223..0ad52e007b 100644 --- a/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md +++ b/translations/zh-CN/content/admin/identity-and-access-management/managing-iam-for-your-enterprise/about-authentication-for-your-enterprise.md @@ -82,7 +82,11 @@ These restrictions are unacceptable for some enterprises. To determine whether { ### Do your developers rely on collaboration outside of your enterprise? -{% data variables.product.prodname_managed_users_caps %} can only contribute to repositories within your enterprise. If your developers need to collaborate in repositories outside your enterprise, even private repositories, to complete their work, {% data variables.product.prodname_emus %} may not be right for your enterprise, and SAML SSO may be a better solution. +{% data variables.product.prodname_managed_users_caps %} can only contribute to repositories within your enterprise. If your developers must contribute to both repositories within and outside of your enterprise, including private repositories, {% data variables.product.prodname_emus %} may not be right for your enterprise. SAML SSO may be a better solution. + +Some companies maintain repositories within an existing enterprise using SAML SSO on {% data variables.product.product_location %}, and also create an {% data variables.product.prodname_emu_enterprise %}. Developers who contribute to repositories owned by both enterprises from a single workstation must switch between the accounts on {% data variables.product.product_location %} within a single browser, or use a different browser for each account. The developer may also need to customize the workstation's Git configuration to accommodate the two accounts. The complexity of this workflow can increase the risk of mistakenly leaking internal code to the public. + +If you decide to create an {% data variables.product.prodname_emu_enterprise %} but require that developers contribute to resources outside of the enterprise from a single workstation, you can provide support for switching between the accounts in a developer's local Git configuration. For more information, see "[About {% data variables.product.prodname_emus %}](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users#supporting-developers-with-multiple-user-accounts-on-githubcom)." ### Does your enterprise rely on outside collaborators? diff --git a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md index 86fa66eae0..b6a8459792 100644 --- a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md +++ b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-enterprise-managed-users.md @@ -36,8 +36,6 @@ You can grant {% data variables.product.prodname_managed_users %} access to and The usernames of your enterprise's {% data variables.product.prodname_managed_users %} and their profile information, such as display names and email addresses, are set by through your IdP and cannot be changed by the users themselves. For more information, see "[Usernames and profile information](#usernames-and-profile-information)." -{% data reusables.enterprise-accounts.emu-forks %} - Enterprise owners can audit all of the {% data variables.product.prodname_managed_users %}' actions on {% data variables.product.prodname_dotcom %}. For more information, see "[Audit log events for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise#about-audit-log-events-for-your-enterprise)." To use {% data variables.product.prodname_emus %}, you need a separate type of enterprise account with {% data variables.product.prodname_emus %} enabled. For more information about creating this account, see "[About enterprises with managed users](#about-enterprises-with-managed-users)." @@ -75,7 +73,8 @@ To use {% data variables.product.prodname_emus %}, you need a separate type of e * {% data variables.product.prodname_managed_users_caps %} cannot create gists or comment on gists. * {% data variables.product.prodname_managed_users_caps %} cannot install {% data variables.product.prodname_github_apps %} on their user accounts. * Other {% data variables.product.prodname_dotcom %} users cannot see, mention, or invite a {% data variables.product.prodname_managed_user %} to collaborate. -* {% data variables.product.prodname_managed_users_caps %} can only own private repositories and {% data variables.product.prodname_managed_users %} can only invite other enterprise members to collaborate on their owned repositories. +* You can choose whether {% data variables.product.prodname_managed_users %} are able to create repositories owned by their user accounts. For more information, see "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-repository-creation)." +* If you allow {% data variables.product.prodname_managed_users %} to create repositories owned by their user accounts, they can only own private repositories and can only invite other enterprise members to collaborate on their user-owned repositories. * {% data reusables.enterprise-accounts.emu-forks %} * Only private and internal repositories can be created in organizations owned by an {% data variables.product.prodname_emu_enterprise %}, depending on organization and enterprise repository visibility settings. * {% data variables.product.prodname_managed_users_caps %} are limited in their use of {% data variables.product.prodname_pages %}. For more information, see "[About {% data variables.product.prodname_pages %}](/pages/getting-started-with-github-pages/about-github-pages#limitations-for-enterprise-managed-users)." @@ -113,6 +112,8 @@ Before your developers can use {% data variables.product.prodname_ghe_cloud %} w 5. Once authentication and provisioning are configured, you can start provisioning members and managing teams. For more information, see "[Managing team memberships with identity provider groups](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/managing-team-memberships-with-identity-provider-groups)." +If members of your enterprise must use one workstation to contribute to repositories on {% data variables.product.product_location %} from both a {% data variables.product.prodname_managed_user %} and a personal account, you can provide support. For more information, see "[Supporting developers with multiple user accounts on {% data variables.product.prodname_dotcom_the_website %}](#supporting-developers-with-multiple-user-accounts-on-githubcom)." + ## Authenticating as a {% data variables.product.prodname_managed_user %} {% data variables.product.prodname_managed_users_caps %} must authenticate through their identity provider. To authenticate, a {% data variables.product.prodname_managed_user %} can visit their IdP application portal or use the login page on {% data variables.product.prodname_dotcom_the_website %}. @@ -135,3 +136,9 @@ Before your developers can use {% data variables.product.prodname_ghe_cloud %} w A conflict may occur when provisioning users if the unique parts of the identifier provided by your IdP are removed during normalization. If you're unable to provision a user due to a username conflict, you should modify the username provided by your IdP. For more information, see "[Resolving username conflicts](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication#resolving-username-conflicts)." The profile name and email address of a {% data variables.product.prodname_managed_user %} is also provided by the IdP. {% data variables.product.prodname_managed_users_caps %} cannot change their profile name or email address on {% data variables.product.prodname_dotcom %}, and the IdP can only provide a single email address. + +## Supporting developers with multiple user accounts on {% data variables.product.product_location %} + +People on your team may need to contribute to resources on {% data variables.product.product_location %} that are outside of your {% data variables.product.prodname_emu_enterprise %}. For example, you may wish to maintain a separate enterprise for your company's open source projects. Because a {% data variables.product.prodname_managed_user %} cannot contribute to public resources, users will need to maintain a separate, personal account for this work. + +People who must contribute from two user accounts on {% data variables.product.product_location %} using one workstation can configure Git to simplify the process. For more information, see "[Managing multiple accounts](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/managing-multiple-accounts)." diff --git a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md index ef85ae0631..b1f16a8b7b 100644 --- a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md +++ b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/about-support-for-your-idps-conditional-access-policy.md @@ -22,9 +22,11 @@ topics: 有关将 OIDC 与 {% data variables.product.prodname_emus %} 配合使用的更多信息,请参阅“[为企业托管用户配置 OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/configuring-oidc-for-enterprise-managed-users)”和“[从 SAML 迁移到 OIDC](/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc)”。 -## 关于将 CAP 与 IP 允许列表一起使用 +{% note %} -我们建议您禁用企业帐户的 IP 允许列表,并依靠 IdP 的 CAP。 如果您为企业启用 IP 允许列表,并且还利用 IdP 的 CAP,则将强制执行 IP 允许列表和 CAP。 如果限制或拒绝用户的 IP 地址,则请求将失败。 有关 IP 允许列表的更多信息,请参阅“[在企业中实施安全设置策略](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise#managing-allowed-ip-addresses-for-organizations-in-your-enterprise)”。 +**Note:** If you use Conditional Access (CA) network location policies in your Azure AD tenant, do not use the IP allow list feature on {% data variables.product.prodname_dotcom_the_website %}, with your enterprise account or with any of the organizations owned by the enterprise. Using both is unsupported and can result in the wrong policy applying. For more information about IP allow lists, see "[Enforcing 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)" and "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)." + +{% endnote %} ## 集成和自动化的注意事项 diff --git a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md index f31513ef68..f6e7cb1071 100644 --- a/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md +++ b/translations/zh-CN/content/admin/identity-and-access-management/using-enterprise-managed-users-for-iam/migrating-from-saml-to-oidc.md @@ -31,6 +31,7 @@ If you're new to {% data variables.product.prodname_emus %} and haven't yet conf {% endnote %} 1. Before you begin the migration, sign in to Azure and disable provisioning in the existing {% data variables.product.prodname_emu_idp_application %} application. +1. If you use [Conditional Access (CA) network location policies](https://docs.microsoft.com/en-us/azure/active-directory/conditional-access/location-condition) in Azure AD, and you're currently using an IP allow list with your enterprise account or any of the organizations owned by the enterprise account on {% data variables.product.prodname_dotcom_the_website %}, disable the IP allow lists. For more information, see "[Enforcing 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)" and "[Managing allowed IP addresses for your organization](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)." 1. Sign into {% data variables.product.prodname_dotcom_the_website %} as the setup user for your enterprise with the username **@SHORT-CODE_admin**. 1. When prompted to continue to your identity provider, click **Use a recovery code** and sign in using one of your enterprise's recovery codes. {% data reusables.enterprise-accounts.access-enterprise %} diff --git a/translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md b/translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md index 50f779b7b8..6a414eaa11 100644 --- a/translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md +++ b/translations/zh-CN/content/admin/identity-and-access-management/using-saml-for-enterprise-iam/saml-configuration-reference.md @@ -75,10 +75,12 @@ topics: 以下 SAML 属性可用于 {% data variables.product.product_name %}。{% ifversion ghes %} 您可以在管理控制台中更改属性名称,但 `administrator` 属性除外。 更多信息请参阅“[访问管理控制台](/admin/configuration/configuring-your-enterprise/accessing-the-management-console)”。{% endif %} -| 名称 | 必填? | 描述 | -|:--------------------- |:--- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `NameID` | 是 | 持久用户标识符。 可以使用任意持久名称标识符格式。 {% ifversion ghec %}如果将企业与 {% data variables.product.prodname_emus %} 一起使用, {% endif %}{% data variables.product.product_name %} 将规范化 `NameID` 元素以用作用户名,除非提供了替代断言之一。 更多信息请参阅“[外部身份验证的用户名注意事项](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)”。 | -| `SessionNotOnOrAfter` | 否 | {% data variables.product.product_name %} 使关联的会话失效的日期。 失效后,此人必须再次进行身份验证才能访问 {% ifversion ghec or ghae %}企业的资源{% elsif ghes %}{% data variables.product.product_location %}{% endif %}。 更多信息请参阅“[会话持续时间和超时](#session-duration-and-timeout)”。 | +| 名称 | 必填? | 描述 | +|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:--- |:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `NameID` | 是 | 持久用户标识符。 可以使用任意持久名称标识符格式。 | +| {% ifversion ghec %}如果将企业与 {% data variables.product.prodname_emus %} 一起使用, {% endif %}{% data variables.product.product_name %} 将规范化 `NameID` 元素以用作用户名,除非提供了替代断言之一。 For more information, see "[Username considerations for external authentication](/admin/identity-and-access-management/managing-iam-for-your-enterprise/username-considerations-for-external-authentication)."

{% note %}**Note:** It's important to use a human-readable, persistent identifier. Using a transient identifier format like `urn:oasis:names:tc:SAML:2.0:nameid-format:transient` will result in re-linking of accounts on every sign-in, which can be detrimental to authorization management.{% endnote %} | | | +| | | | +| `SessionNotOnOrAfter` | 否 | {% data variables.product.product_name %} 使关联的会话失效的日期。 失效后,此人必须再次进行身份验证才能访问 {% ifversion ghec or ghae %}企业的资源{% elsif ghes %}{% data variables.product.product_location %}{% endif %}。 更多信息请参阅“[会话持续时间和超时](#session-duration-and-timeout)”。 | {%- ifversion ghes or ghae %} | `administrator` | 无|当值为 `true` 时,{% data variables.product.product_name %} 会自动将用户提升为 {% ifversion ghes %}站点管理员{% elsif ghae %}企业所有者{% endif %}。 将此属性设置为除 `true` 以外的任何值都将导致降级,只要该值不为空。 省略此属性或将值留空不会更改用户的角色。 | | `username` | 无 | {% data variables.product.product_location %} 的用户名。 | {%- endif %} diff --git a/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md b/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md index 33fed05966..9b5984af19 100644 --- a/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md +++ b/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/audit-log-events-for-your-enterprise.md @@ -146,6 +146,9 @@ The scope of the events that appear in your enterprise's audit log depend on whe {%- ifversion ghec or ghes %} | `business.set_fork_pr_workflows_policy` | The policy for workflows on private repository forks was changed. For more information, see "{% ifversion ghec %}[Enforcing policies for {% data variables.product.prodname_actions %} in an enterprise](/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 audit-log-sso-response-events %} +|`business.sso_response` | A SAML single sign-on (SSO) response was generated when a member attempted to authenticate with your enterprise. This event is only available via audit log streaming and the REST API. +{%- endif %} {%- ifversion ghes %} | `business.update_actions_settings` | An enterprise owner or site administrator updated {% data variables.product.prodname_actions %} policy settings for an enterprise. For more information, see "[Enforcing policies for GitHub Actions in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-github-actions-in-your-enterprise)." {%- endif %} @@ -730,8 +733,8 @@ Before you'll see `git` category actions, you must enable Git events in the audi {%- ifversion fpt or ghec or ghes %} | `org.set_fork_pr_workflows_policy` | The policy for workflows on private repository forks was 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 ghes %} -| `org.sso_response` | A SAML single sign-on response was generated when a member attempted to authenticate with an organization. +{%- ifversion ghes or audit-log-sso-response-events %} +| `org.sso_response` | A SAML single sign-on (SSO) response was generated when a member attempted to authenticate with your organization. This event is only available via audit log streaming and the REST API. {%- endif %} {%- ifversion not ghae %} | `org.transform` | A user account was converted into an organization. For more information, see "[Converting a user into an organization](/github/setting-up-and-managing-your-github-user-account/converting-a-user-into-an-organization)." diff --git a/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md b/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md index 851db4fda6..e9ee55ce39 100644 --- a/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md +++ b/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/streaming-the-audit-log-for-your-enterprise.md @@ -44,7 +44,8 @@ Enterprise owners can set up{% ifversion pause-audit-log-stream %}, pause,{% end - [Amazon S3](#setting-up-streaming-to-amazon-s3) - [Azure Blob Storage](#setting-up-streaming-to-azure-blob-storage) -- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs) +- [Azure Event Hubs](#setting-up-streaming-to-azure-event-hubs){% ifversion streaming-datadog %} +- [Datadog](#setting-up-streaming-to-datadog){% endif %} - [Google Cloud Storage](#setting-up-streaming-to-google-cloud-storage) - [Splunk](#setting-up-streaming-to-splunk) @@ -231,6 +232,32 @@ Then, set up streaming with access keys until the vulnerability is resolved. For {% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +{% ifversion streaming-datadog %} +### Setting up streaming to Datadog + +To set up streaming to Datadog, you must create a client token or an API key in Datadog, then configure audit log streaming in {% data variables.product.product_name %} using the token for authentication. You do not need to create a bucket or other storage container in Datadog. + +After you set up streaming to Datadog, you can see your audit log data by filtering by "github.audit.streaming." For more information, see [Log Management](https://docs.datadoghq.com/logs/). + +1. If you don't already have a Datadog account, create one. +1. In Datadog, generate a client token or an API key, then click **Copy key**. For more information, see [API and Application Keys](https://docs.datadoghq.com/account_management/api-app-keys/) in Datadog Docs. +{% data reusables.enterprise.navigate-to-log-streaming-tab %} +1. Select the **Configure stream** dropdown menu and click **Datadog**. + + ![Screenshot of the "Configure stream" dropdown menu with "Datadog" highlighted](/assets/images/help/enterprises/audit-stream-choice-datadog.png) +1. Under "Token", paste the token you copied earlier. + + ![Screenshot of the "Token" field](/assets/images/help/enterprises/audit-stream-datadog-token.png) +1. Select the "Site" dropdown menu and click your Datadog site. To determine your Datadog site, compare your Datadog URL to the table in [Datadog sites](https://docs.datadoghq.com/getting_started/site/) in Datadog Docs. + + ![Screenshot of the "Site" dropdown menu](/assets/images/help/enterprises/audit-stream-datadog-site.png) +1. To verify that {% data variables.product.prodname_dotcom %} can connect and write to the Datadog endpoint, click **Check endpoint**. + + ![检查端点](/assets/images/help/enterprises/audit-stream-check.png) +{% data reusables.enterprise.verify-audit-log-streaming-endpoint %} +1. After a few minutes, confirm that audit log data is appearing on the **Logs** tab in Datadog. If audit log data is not appearing, confirm that your token and site are correct in {% data variables.product.prodname_dotcom %}. +{% endif %} + ### 设置流式传输到 Google Cloud Storage 要设置流式传输到 Google Cloud Storage,您必须在 Google Cloud 中使用适当的凭据和权限创建一个服务帐户,然后使用服务帐户的凭据在 {% data variables.product.product_name %} 中配置审核日志流以进行身份验证。 @@ -291,6 +318,10 @@ Then, set up streaming with access keys until the vulnerability is resolved. For 暂停流允许您对接收应用程序执行维护,而不会丢失审核数据。 审核日志在 {% data variables.product.product_location %} 上最多存储七天,然后在取消暂停流时导出。 +{% ifversion streaming-datadog %} +Datadog only accepts logs from up to 18 hours in the past. If you pause a stream to a Datadog endpoint for more than 18 hours, you risk losing logs that Datadog won't accept after you resume streaming. +{% endif %} + {% data reusables.enterprise.navigate-to-log-streaming-tab %} 1. 单击 **Pause stream(暂停流)**。 diff --git a/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md b/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md index 0b948fde59..aa1b84b5b1 100644 --- a/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md +++ b/translations/zh-CN/content/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise.md @@ -121,7 +121,7 @@ GraphQL API 对每个查询最多返回 100 个节点。 要检索其他结果 下面的查询搜索在 `avocado-corp` 企业中搜索 2022 年 1 月 1 日创建的审核日志事件,并使用 [REST API 分页](/rest/overview/resources-in-the-rest-api#pagination)返回第一页,每页最多包含 100 个项: ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&page=1&per_page=100" ``` @@ -133,7 +133,7 @@ curl -H "Authorization: token TOKEN" \ 下面的查询搜索拉取请求的审核日志事件,其中事件发生在 `avocado-corp` 企业中的 2022 年 1 月 1 日或之后,并且该操作由 `octocat` 用户执行: ```shell -curl -H "Authorization: token TOKEN" \ +curl -H "Authorization: Bearer TOKEN" \ --request GET \ "https://api.github.com/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat" ``` diff --git a/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md b/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md index e7c5637f97..49a87dbefd 100644 --- a/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md +++ b/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-security-settings-in-your-enterprise.md @@ -77,12 +77,17 @@ shortTitle: 安全设置策略 ### 添加允许的 IP 地址 +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ### 允许 {% data variables.product.prodname_github_apps %} 访问 @@ -90,6 +95,8 @@ shortTitle: 安全设置策略 ### 启用允许的 IP 地址 +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -98,6 +105,8 @@ shortTitle: 安全设置策略 ### 编辑允许的 IP 地址 +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.settings-tab %} {% data reusables.enterprise-accounts.security-tab %} @@ -105,6 +114,18 @@ shortTitle: 安全设置策略 {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 8. 单击 **Update(更新)**。 +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +### Checking if an IP address is permitted + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.enterprise-accounts.access-enterprise %} +{% data reusables.enterprise-accounts.settings-tab %} +{% data reusables.enterprise-accounts.security-tab %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ### 删除允许的 IP 地址 diff --git a/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md b/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md index 21ad8a9642..6b1166f4a3 100644 --- a/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md +++ b/translations/zh-CN/content/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise.md @@ -71,24 +71,28 @@ shortTitle: 仓库管理策略 {% endif %} -## 执行 {% ifversion ghec or ghes or ghae %}基础{% else %}默认{% endif %} 仓库权限的策略 +## Enforcing a policy for base repository permissions -在企业帐户拥有的所有组织中,您可以为组织成员设置{% ifversion ghec or ghes or ghae %}基础{% else %}默认{% endif %}仓库权限级别(无、读取、写入或管理),或允许所有者在组织级别管理设置。 +Across all organizations owned by your enterprise, 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 %} {% data reusables.enterprise-accounts.repositories-tab %} -4. 在“{% ifversion ghec or ghes or ghae %}基础{% else %}默认{% endif %} 权限”下,查看有关更改设置的信息。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -5. 在“{% ifversion ghec or ghes or ghae %}基础{% else %}默认{% endif %} 权限”下,使用下拉菜单并选择策略。 - {% ifversion ghec or ghes or ghae %} - ![带有仓库权限策略选项的下拉菜单](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) - {% else %} - ![带有仓库权限策略选项的下拉菜单](/assets/images/enterprise/business-accounts/repository-permissions-policy-drop-down.png) - {% endif %} +4. Under "Base permissions", review the information about changing the setting. {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +5. 在“Base permissions(基本权限)”下,使用下拉菜单并选择策略。 ![带有仓库权限策略选项的下拉菜单](/assets/images/help/business-accounts/repository-permissions-policy-drop-down.png) + ## 执行仓库创建策略 -在企业拥有的所有组织中,您可以允许成员创建仓库、将仓库创建限于组织所有者或允许所有者在组织级别管理设置。 如果允许成员创建仓库,您可以选择成员能否创建公共、私有和内部仓库的任意组合。 {% data reusables.repositories.internal-repo-default %} 有关内部仓库的更多信息,请参阅“[创建内部仓库](/articles/creating-an-internal-repository)”。 +在企业拥有的所有组织中,您可以允许成员创建仓库、将仓库创建限于组织所有者或允许所有者在组织级别管理设置。 + +If you allow members to create repositories in your organizations, you can choose which types of repositories (public, private, and internal) that members can create. + +{% ifversion enterprise-namespace-repo-setting %} +{% ifversion ghec %}If your enterprise uses {% data variables.product.prodname_emus %}, you{% else %}You{% endif %} can also prevent users from creating repositories owned by their user accounts. +{% endif %} + +{% data reusables.repositories.internal-repo-default %} 有关内部仓库的更多信息,请参阅“[创建内部仓库](/articles/creating-an-internal-repository)”。 {% data reusables.organizations.repo-creation-constants %} @@ -96,33 +100,32 @@ shortTitle: 仓库管理策略 {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} 5. 在“Repository creation”下,检查有关更改设置的信息。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} -{% ifversion ghes or ghae or ghec %} {% data reusables.enterprise-accounts.repo-creation-policy %} -{% data reusables.enterprise-accounts.repo-creation-types %} -{% else %} -6. 在“Repository creation(仓库创建)”下,使用下拉菜单并选择策略。 - - ![包含仓库创建策略的下拉菜单](/assets/images/enterprise/site-admin-settings/repository-creation-drop-down.png) -{% endif %} +{% data reusables.enterprise-accounts.repo-creation-types %}{% ifversion enterprise-namespace-repo-setting %} +1. Optionally, {% ifversion ghec %}if your enterprise uses {% data variables.product.prodname_emus %} and you want {% endif %}to prevent enterprise members from creating repositories owned by their user accounts, select **Block the creation of user namespace repositories**. ![Screenshot showing the list of disabled options from forking policy](/assets/images/help/business-accounts/restrict-personal-namespace-enabled-setting.png){% endif %} ## 实施有关复刻私有或内部仓库的策略 在企业拥有的所有组织中,您可以允许有权访问私有或内部仓库的人员复刻仓库、永远不允许分支私有或内部仓库,或者允许所有者在组织级别管理设置。 +{% ifversion enterprise-namespace-repo-setting %} +{% note %} + +**Note:** If {% ifversion ghec %}your enterprise uses {% data variables.product.prodname_emus %} and {% endif %}your "Repository creation" policy prevents enterprise members from creating repositories owned by their user accounts, members will not be allowed to fork a repository in their user accounts, regardless of your "Repository forking" policy. + +{% endnote %} +{% endif %} + {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} 3. 在“Repository forking”(仓库复刻)下,审查有关更改设置的信息。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} 4. 在“Repository forking(仓库复刻)”下,使用下拉菜单并选择策略。 - ![带有仓库复刻策略选项的下拉菜单](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png) - -{% ifversion innersource-fork-policies %} + ![带有仓库复刻策略选项的下拉菜单](/assets/images/help/business-accounts/repository-forking-policy-drop-down.png){% ifversion innersource-fork-policies %} 5. 如果启用了复刻,则可以指定允许用户复刻存储库的位置。 查看有关更改设置的信息并选择策略。 - ![显示存储库复刻策略选项列表的屏幕截图](/assets/images/help/business-accounts/repository-forking-policy-settings.png) -{% endif %} - + ![显示存储库复刻策略选项列表的屏幕截图](/assets/images/help/business-accounts/repository-forking-policy-settings.png){% endif %} ## 执行邀请{% ifversion ghec %} 外部{% endif %} 协作者参与仓库的策略 @@ -140,8 +143,6 @@ shortTitle: 仓库管理策略 ![带邀请策略选项的下拉菜单](/assets/images/enterprise/business-accounts/repository-invitation-policy-drop-down.png) {% endif %} -{% ifversion ghec or ghes or ghae %} - ## 对默认分支名称实施策略 在企业拥有的所有组织中,您可以为成员创建的任何新仓库设置默认分支名称。 您可以选择在所有组织中强制实施默认分支名称,或允许个别组织设置不同的名称。 @@ -152,8 +153,6 @@ shortTitle: 仓库管理策略 4. (可选)要对企业中的所有组织强制实施默认分支名称,请选择 **Enforce across this enterprise(在整个企业中实施)**。 ![强制实施复选框](/assets/images/help/business-accounts/default-branch-name-enforce.png) 5. 单击 **Update(更新)**。 ![更新按钮](/assets/images/help/business-accounts/default-branch-name-update.png) -{% endif %} - ## 执行更改仓库可见性的策略 在您的企业拥有的所有组织中,您可以允许具有管理员权限的成员更改仓库的可见性、将仓库可见性更改限制为组织所有者或允许所有者在组织级别管理设置。 当您阻止成员更改仓库可见性时,只有企业所有者可以更改仓库的可见性。 @@ -163,9 +162,8 @@ shortTitle: 仓库管理策略 {% data reusables.enterprise-accounts.access-enterprise %} {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.repositories-tab %} -5. 在“Repository visibility change”下,检查有关更改设置的信息。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} - -{% data reusables.enterprise-accounts.repository-visibility-policy %} +1. 在“Repository visibility change”下,检查有关更改设置的信息。 {% data reusables.enterprise-accounts.view-current-policy-config-orgs %} +1. 在“Repository visibility change(仓库可见性更改)”下,使用下拉菜单选择策略。 ![带有仓库可见性策略选项的下拉菜单](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) ## 执行仓库删除和转移的策略 diff --git a/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md b/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md index 77c7fffea0..d3757186db 100644 --- a/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md +++ b/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/exporting-migration-data-from-githubcom.md @@ -44,7 +44,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * A [list of the repositories](/free-pro-team@latest/rest/repos#list-organization-repositories) you want to migrate: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X POST \ -H "Accept: application/vnd.github+json" \ -d'{"lock_repositories":true,"repositories":["orgname/reponame", "orgname/reponame"]}' \ @@ -59,7 +59,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id ``` @@ -74,7 +74,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ -L -o migration_archive.tar.gz \ https://api.github.com/orgs/orgname/migrations/id/archive @@ -84,7 +84,7 @@ The Migrations API is currently in a preview period, which means that the endpoi * Your access token for authentication. * The unique `id` of the migration: ```shell - curl -H "Authorization: token GITHUB_ACCESS_TOKEN" \ + curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" \ -X DELETE \ -H "Accept: application/vnd.github+json" \ https://api.github.com/orgs/orgname/migrations/id/archive diff --git a/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md b/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md index baeb7225df..a3c8983c0d 100644 --- a/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md +++ b/translations/zh-CN/content/admin/user-management/migrating-data-to-and-from-your-enterprise/migrating-data-to-your-enterprise.md @@ -134,7 +134,7 @@ $ ghe-migrator audit -s failed_import,failed_map,failed_rename,failed_merge -g < * 迁移的唯一 `id` * 要解锁的仓库的名称 ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ -H "Accept: application/vnd.github.wyandotte-preview+json" \ https://api.github.com/orgs/orgname/migrations/id/repos/repo_name/lock ``` @@ -143,7 +143,7 @@ curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ 在解锁 {% data variables.product.prodname_dotcom_the_website %} 组织的仓库后,您应当使用[仓库删除端点](/rest/repos/#delete-a-repository)删除之前迁移的每一个仓库。 您需要身份验证的访问令牌: ```shell -curl -H "Authorization: token GITHUB_ACCESS_TOKEN" -X DELETE \ +curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \ https://api.github.com/repos/orgname/repo_name ``` diff --git a/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md b/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md index a411922d2f..53b7c7225e 100644 --- a/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md +++ b/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/about-ssh.md @@ -1,6 +1,6 @@ --- title: About SSH -intro: 'Using the SSH protocol, you can connect and authenticate to remote servers and services. With SSH keys, you can connect to {% data variables.product.product_name %} without supplying your username and personal access token at each visit.' +intro: 'Using the SSH protocol, you can connect and authenticate to remote servers and services. With SSH keys, you can connect to {% data variables.product.product_name %} without supplying your username and personal access token at each visit.{% ifversion ssh-commit-verification %} You can also use an SSH key to sign commits.{% endif %}' redirect_from: - /articles/about-ssh - /github/authenticating-to-github/about-ssh @@ -16,7 +16,7 @@ topics: {% data reusables.ssh.about-ssh %} For more information about SSH, see [Secure Shell](https://en.wikipedia.org/wiki/Secure_Shell) on Wikipedia. -When you set up SSH, you will need to generate a new private SSH key and add it to the SSH agent. You must also add the public SSH key to your account on {% data variables.product.product_name %} before you use the key to authenticate. 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)" and "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)." +When you set up SSH, you will need to generate a new private SSH key and add it to the SSH agent. You must also add the public SSH key to your account on {% data variables.product.product_name %} before you use the key to authenticate{% ifversion ssh-commit-verification %} or sign commits{% 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)"{% ifversion ssh-commit-verification %}, {% else %} and{% endif %} "[Adding a new SSH key to your {% data variables.product.prodname_dotcom %} account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account){% ifversion ssh-commit-verification %}" and "[About commit signature verification](/articles/about-commit-signature-verification){% endif %}." 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)." @@ -33,7 +33,6 @@ Organizations that use {% data variables.product.prodname_ghe_cloud %} can provi {% else ghec or ghes or ghae %} 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_name %}. You cannot use your certificate to access forks of the organization's repositories, if the forks is owned by your personal account. For more information, see "[About SSH certificate authorities](/organizations/managing-git-access-to-your-organizations-repositories/about-ssh-certificate-authorities)." {% endif %} - ## Further reading - "[Troubleshooting SSH](/articles/troubleshooting-ssh)" diff --git a/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md b/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md index a8d2c7aea6..0db0198132 100644 --- a/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md +++ b/translations/zh-CN/content/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account.md @@ -19,6 +19,8 @@ shortTitle: 添加新的 SSH 密钥 {% data reusables.ssh.about-ssh %} 更多信息请参阅“[关于 SSH](/authentication/connecting-to-github-with-ssh/about-ssh)”。 +{% ifversion ssh-commit-verification %}You can also use SSH to sign commits and tags. For more information about commit signing, see "[About commit signature verification](/articles/about-commit-signature-verification)."{% endif %} + After you generate an SSH key pair, you must add the public key to {% ifversion fpt or ghec or ghes %}{% data variables.product.product_location %}{% elsif ghae %}{% data variables.product.product_name %}{% endif %} to enable SSH access for your account. ## 基本要求 @@ -30,111 +32,45 @@ Before adding a new SSH key to your account on {% ifversion ghae %}{% data varia ## Adding a new SSH key to your account -在向您在 {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} 上的帐户添加新 SSH 密钥后,您可以重新配置任何本地存储库以使用 SSH。 更多信息请参阅“[将远程 URL 从 HTTPS 转换为 SSH](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)”。 +After adding a new SSH authentication 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. 更多信息请参阅“[将远程 URL 从 HTTPS 转换为 SSH](/github/getting-started-with-github/managing-remote-repositories/#switching-remote-urls-from-https-to-ssh)”。 {% data reusables.ssh.key-type-support %} -{% mac %} - {% webui %} -1. 将 SSH 公钥复制到剪贴板。 - - 如果您的 SSH 公钥文件与示例代码不同,请修改文件名以匹配您当前的设置。 在复制密钥时,请勿添加任何新行或空格。 - - ```shell - $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **提示:**如果 `pbcopy` 不可用,可找到隐藏的 `.ssh` 文件夹,在常用的文本编辑器中打开该文件,并将其复制到剪贴板。 - - {% endtip %} - +{% data reusables.gpg.copy-ssh-public-key %} {% data reusables.user-settings.access_settings %} {% data reusables.user-settings.ssh %} -4. 单击 **New SSH key(新 SSH 密钥)**或 **Add SSH key(添加 SSH 密钥)**。 ![SSH 密钥按钮](/assets/images/help/settings/ssh-add-ssh-key.png) -5. 在 "Title"(标题)字段中,为新密钥添加描述性标签。 例如,如果您使用的是个人 Mac,此密钥名称可能是 "Personal MacBook Air"。 -6. 将密钥粘贴到 "Key"(密钥)字段。 ![密钥字段](/assets/images/help/settings/ssh-key-paste.png) -7. 单击 **Add SSH key(添加 SSH 密钥)**。 ![添加密钥按钮](/assets/images/help/settings/ssh-add-key.png) +4. 单击 **New SSH key(新 SSH 密钥)**或 **Add SSH key(添加 SSH 密钥)**。 +{% ifversion ssh-commit-verification %} + ![SSH 密钥按钮](/assets/images/help/settings/ssh-add-ssh-key-with-auth.png) +{% else %} + ![SSH 密钥按钮](/assets/images/help/settings/ssh-add-ssh-key.png) +{% endif %} +5. 在 "Title"(标题)字段中,为新密钥添加描述性标签。 For example, if you're using a personal laptop, you might call this key "Personal laptop". +{% ifversion ssh-commit-verification %} +6. Select the type of key, either authentication or signing. For more information about commit signing, see "[About commit signature verification](/articles/about-commit-signature-verification)." +{% endif %} +7. 将密钥粘贴到 "Key"(密钥)字段。 +{% ifversion ssh-commit-verification %} + ![密钥字段](/assets/images/help/settings/ssh-key-paste-with-type.png) +{% else %} + ![密钥字段](/assets/images/help/settings/ssh-key-paste.png) +{% endif %} +8. 单击 **Add SSH key(添加 SSH 密钥)**。 ![添加密钥按钮](/assets/images/help/settings/ssh-add-key.png) {% data reusables.user-settings.sudo-mode-popup %} {% endwebui %} -{% endmac %} - -{% windows %} - -{% webui %} - -1. 将 SSH 公钥复制到剪贴板。 - - 如果您的 SSH 公钥文件与示例代码不同,请修改文件名以匹配您当前的设置。 在复制密钥时,请勿添加任何新行或空格。 - - ```shell - $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard - ``` - - {% tip %} - - **提示:**如果 `clip` 不可用,可找到隐藏的 `.ssh` 文件夹,在常用的文本编辑器中打开该文件,并将其复制到剪贴板。 - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. 单击 **New SSH key(新 SSH 密钥)**或 **Add SSH key(添加 SSH 密钥)**。 ![SSH 密钥按钮](/assets/images/help/settings/ssh-add-ssh-key.png) -5. 在 "Title"(标题)字段中,为新密钥添加描述性标签。 例如,如果您使用的是个人 Mac,此密钥名称可能是 "Personal MacBook Air"。 -6. 将密钥粘贴到 "Key"(密钥)字段。 ![密钥字段](/assets/images/help/settings/ssh-key-paste.png) -7. 单击 **Add SSH key(添加 SSH 密钥)**。 ![添加密钥按钮](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endwindows %} - -{% linux %} - -{% webui %} - -1. 将 SSH 公钥复制到剪贴板。 - - 如果您的 SSH 公钥文件与示例代码不同,请修改文件名以匹配您当前的设置。 在复制密钥时,请勿添加任何新行或空格。 - - ```shell - $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub - # Then select and copy the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file - # displayed in the terminal to your clipboard - ``` - - {% tip %} - - **提示:**或者,您也可以找到隐藏的 `.ssh` 文件夹,在常用的文本编辑器中打开该文件,并将其复制到剪贴板。 - - {% endtip %} - -{% data reusables.user-settings.access_settings %} -{% data reusables.user-settings.ssh %} -4. 单击 **New SSH key(新 SSH 密钥)**或 **Add SSH key(添加 SSH 密钥)**。 ![SSH 密钥按钮](/assets/images/help/settings/ssh-add-ssh-key.png) -5. 在 "Title"(标题)字段中,为新密钥添加描述性标签。 例如,如果您使用的是个人 Mac,此密钥名称可能是 "Personal MacBook Air"。 -6. 将密钥粘贴到 "Key"(密钥)字段。 ![密钥字段](/assets/images/help/settings/ssh-key-paste.png) -7. 单击 **Add SSH key(添加 SSH 密钥)**。 ![添加密钥按钮](/assets/images/help/settings/ssh-add-key.png) -{% data reusables.user-settings.sudo-mode-popup %} - -{% endwebui %} - -{% endlinux %} - {% cli %} {% data reusables.cli.cli-learn-more %} 在使用 {% data variables.product.prodname_cli %} 将 SSH 密钥添加到帐户之前,必须向 {% data variables.product.prodname_cli %} 进行身份验证。 更多信息请参阅 {% data variables.product.prodname_cli %} 文档中的 [`gh auth login`](https://cli.github.com/manual/gh_auth_login)。 -要将 SSH 密钥添加到您的 GitHub 帐户,请使用 `ssh-key add` 子命令,指定您公钥。 +{% ifversion ssh-commit-verification %}At present, you can only use {% data variables.product.prodname_cli %} to add SSH authentication keys, you cannot add SSH signing keys.{% endif %} + +To add an SSH authentication key to your GitHub account, use the `ssh-key add` subcommand, specifying your public key. ```shell gh ssh-key add key-file diff --git a/translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md b/translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md index adb05a61f9..6c3a9ec7b0 100644 --- a/translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md +++ b/translations/zh-CN/content/authentication/managing-commit-signature-verification/about-commit-signature-verification.md @@ -1,6 +1,6 @@ --- -title: About commit signature verification -intro: 'Using GPG or S/MIME, you can sign tags and commits locally. These tags or commits are marked as verified on {% data variables.product.product_name %} so other people can be confident that the changes come from a trusted source.' +title: 关于提交签名验证 +intro: 'Using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME, you can sign tags and commits locally. 这些标记或提交在 {% data variables.product.product_name %} 上标示为已验证,便于其他人信任更改来自可信的来源。' redirect_from: - /articles/about-gpg-commit-and-tag-signatures - /articles/about-gpg @@ -15,13 +15,22 @@ versions: topics: - Identity - Access management -shortTitle: Commit signature verification +shortTitle: 提交签名验证 --- -## 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 or ghec %}"Verified" or "Partially verified."{% else %}"Verified."{% endif %} +## 关于提交签名验证 -![Verified commit](/assets/images/help/commits/verified-commit.png) +您可以在本地签署提交和标签,让其他人对您所做更改的源充满信心。 If a commit or tag has a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME signature that is cryptographically verifiable, {% data variables.product.product_name %} marks the commit or tag {% ifversion fpt or ghec %}"Verified" or "Partially verified."{% else %}"Verified."{% endif %} + +![验证的提交](/assets/images/help/commits/verified-commit.png) + +{% ifversion ghes or ghae %} +If a commit or tag has a signature that can't be verified, {% data variables.product.product_name %} marks the commit or tag "Unverified." +{% endif %} + +{% ifversion ssh-commit-verification %} +For most individual users, GPG or SSH will be the best choice for signing commits. S/MIME signatures are usually required in the context of a larger organization. SSH signatures are the simplest to generate. You can even upload your existing authentication key to {% data variables.product.product_name %} to also use as a signing key. Generating a GPG signing key is more involved than generating an SSH key, but GPG has features that SSH does not. A GPG key can expire or be revoked when no longer used. {% data variables.product.product_name %} shows commits that were signed with such a key as "Verified" unless the key was marked as compromised. SSH keys don't have this capability. +{% endif %} {% 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)." @@ -30,39 +39,38 @@ Commits and tags have the following verification statuses, depending on whether Signing commits differs from signing off on a commit. For more information about signing off on commits, see "[Managing the commit signoff policy for your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-the-commit-signoff-policy-for-your-repository)." -### Default statuses +### 默认状态 -| Status | Description | -| -------------- | ----------- | -| **Verified** | The commit is signed and the signature was successfully verified. -| **Unverified** | The commit is signed but the signature could not be verified. -| No verification status | The commit is not signed. +| 状态 | 描述 | +| ------- | -------------- | +| **已验证** | 提交已签名且签名已成功验证。 | +| **未验证** | 提交已签名,但签名无法验证。 | +| 无验证状态 | 提交未签名。 | -### Signature verification for rebase and merge +### 用于变基和合并的签名验证 {% data reusables.pull_requests.rebase_and_merge_verification %} For more information, see "[Rebasing and merging your commits](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/about-merge-methods-on-github#rebasing-and-merging-your-commits)." -### Statuses with vigilant mode enabled +### 启用了警戒模式的状态 {% data reusables.identity-and-permissions.vigilant-mode-verification-statuses %} -{% else %} -If a commit or tag has a signature that can't be verified, {% data variables.product.product_name %} marks the commit or tag "Unverified." {% endif %} + Repository administrators can enforce required commit signing on a branch to block all commits that are not signed and verified. For more information, see "[About protected branches](/github/administering-a-repository/about-protected-branches#require-signed-commits)." {% data reusables.identity-and-permissions.verification-status-check %} {% ifversion fpt or ghec or ghes > 3.4 %} -{% ifversion ghes %}If a site administrator has enabled web commit signing, {% data variables.product.product_name %} will automatically use GPG to sign commits you make using the web interface. Commits signed by {% data variables.product.product_name %} will have a verified status. You can verify the signature locally using the public key available at `https://HOSTNAME/web-flow.gpg`. For more information, see "[Configuring web commit signing](/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing)." +{% ifversion ghes %}If a site administrator has enabled web commit signing, {% data variables.product.product_name %} will automatically use GPG to sign commits you make using the web interface. 由 {% data variables.product.product_name %} 签名的提交将具有已验证状态。 You can verify the signature locally using the public key available at `https://HOSTNAME/web-flow.gpg`. For more information, see "[Configuring web commit signing](/admin/configuration/configuring-your-enterprise/configuring-web-commit-signing)." {% else %}{% data variables.product.prodname_dotcom %} will automatically use GPG to sign commits you make using the web interface. Commits signed by {% data variables.product.prodname_dotcom %} will have a verified status. 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.prodname_dotcom %} sign commits you make in {% data variables.product.prodname_github_codespaces %}. For more information about enabling GPG verification for your codespaces, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} +You can optionally choose to have {% data variables.product.prodname_dotcom %} GPG sign commits you make in {% data variables.product.prodname_github_codespaces %}. For more information about enabling GPG verification for your codespaces, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)."{% endif %} {% endif %} -## GPG commit signature verification +## GPG 提交签名验证 You can use GPG to sign commits with a GPG key that you generate yourself. @@ -70,13 +78,32 @@ You can use GPG to sign commits with a GPG key that you generate yourself. To sign commits using GPG and have those commits verified on {% data variables.product.product_name %}, follow these steps: -1. [Check for existing GPG keys](/articles/checking-for-existing-gpg-keys) -2. [Generate a new GPG key](/articles/generating-a-new-gpg-key) -3. [Add a GPG key to your GitHub account](/articles/adding-a-gpg-key-to-your-github-account) -4. [Tell Git about your signing key](/articles/telling-git-about-your-signing-key) -5. [Sign commits](/articles/signing-commits) -6. [Sign tags](/articles/signing-tags) +1. [检查现有 GPG 密钥](/articles/checking-for-existing-gpg-keys) +2. [生成新 GPG 密钥](/articles/generating-a-new-gpg-key) +3. [添加 GPG 密钥到 GitHub 帐户](/articles/adding-a-gpg-key-to-your-github-account) +4. [将您的签名密钥告诉 Git](/articles/telling-git-about-your-signing-key) +5. [对提交签名](/articles/signing-commits) +6. [对标记签名](/articles/signing-tags) +{% ifversion ssh-commit-verification %} +## SSH commit signature verification + +You can use SSH to sign commits with an SSH public key that you generate yourself. If you already use an SSH key to authenticate with {% data variables.product.product_name %}, you can also upload that same key again for use as a signing key. There's no limit on the number of signing keys you can add to your account. + +{% data variables.product.product_name %} uses [ssh_data](https://github.com/github/ssh_data), an open source Ruby library, 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 %}. + +{% data reusables.gpg.ssh-git-version %} + +To sign commits using SSH and have those commits verified on {% data variables.product.product_name %}, follow these steps: + +1. [Check for existing SSH keys](/articles/checking-for-existing-ssh-keys) +2. [Generate a new SSH key](/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) +3. [Add a SSH signing key to your GitHub account](/articles/adding-a-new-ssh-key-to-your-github-account) +4. [将您的签名密钥告诉 Git](/articles/telling-git-about-your-signing-key) +5. [对提交签名](/articles/signing-commits) +6. [对标记签名](/articles/signing-tags) + +{% endif %} ## S/MIME commit signature verification You can use S/MIME to sign commits with an X.509 key issued by your organization. @@ -87,9 +114,9 @@ You can use S/MIME to sign commits with an X.509 key issued by your organization To sign commits using S/MIME and have those commits verified on {% data variables.product.product_name %}, follow these steps: -1. [Tell Git about your signing key](/articles/telling-git-about-your-signing-key) -2. [Sign commits](/articles/signing-commits) -3. [Sign tags](/articles/signing-tags) +1. [将您的签名密钥告诉 Git](/articles/telling-git-about-your-signing-key) +2. [对提交签名](/articles/signing-commits) +3. [对标记签名](/articles/signing-tags) You don't need to upload your public key to {% data variables.product.product_name %}. @@ -101,8 +128,8 @@ Organizations and {% data variables.product.prodname_github_apps %} that require Signature verification for bots will only work if the request is verified and authenticated as the {% data variables.product.prodname_github_app %} or bot and contains no custom author information, custom committer information, and no custom signature information, such as Commits API. {% endif %} -## Further reading +## 延伸阅读 -- "[Signing commits](/articles/signing-commits)" -- "[Signing tags](/articles/signing-tags)" -- "[Troubleshooting commit signature verification](/articles/troubleshooting-commit-signature-verification)" +- "[对提交签名](/articles/signing-commits)" +- "[对标记签名](/articles/signing-tags)" +- "[提交签名验证故障排除](/articles/troubleshooting-commit-signature-verification)" diff --git a/translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md b/translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md index 056ffdc6fa..5a6d0ce316 100644 --- a/translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md +++ b/translations/zh-CN/content/authentication/managing-commit-signature-verification/displaying-verification-statuses-for-all-of-your-commits.md @@ -19,7 +19,7 @@ redirect_from: 当您在计算机上本地工作时,Git 允许您设置更改的作者和提交者的身份。 这可能会使其他人难以确信您创建的提交和标记实际上是由您创建的。 为了帮助解决这个问题,您可以签署您的提交和标签。 更多信息请参阅“[签名提交](/github/authenticating-to-github/signing-commits)”和“[签名标记](/github/authenticating-to-github/signing-tags)”。 {% data variables.product.prodname_dotcom %} 使用验证状态标记已签名的提交和标记。 -默认情况下,如果提交和标记使用已成功验证的 GPG 或 S/MIME 密钥签名,则标记为“已验证”。 如果提交或标记具有 {% data variables.product.prodname_dotcom %} 无法验证的签名,则我们会将提交或标记标示为“未验证”。 在所有其他情况下,都不会显示验证状态。 +By default commits and tags are marked "Verified" if they are signed with a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME key that was successfully verified. 如果提交或标记具有 {% data variables.product.prodname_dotcom %} 无法验证的签名,则我们会将提交或标记标示为“未验证”。 在所有其他情况下,都不会显示验证状态。 但是,您可以通过在 {% data variables.product.prodname_dotcom %} 设置中启用警戒模式,让其他用户对您的提交和标签所赋予的身份更加有信心。 启用警戒模式后,您的所有提交和标记都将被标记为三个验证状态之一。 diff --git a/translations/zh-CN/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md b/translations/zh-CN/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md index 7caea0a09c..b7cf6f3f03 100644 --- a/translations/zh-CN/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md +++ b/translations/zh-CN/content/authentication/managing-commit-signature-verification/generating-a-new-gpg-key.md @@ -29,11 +29,11 @@ topics: {% data reusables.command_line.open_the_multi_os_terminal %} 3. 生成 GPG 密钥对。 由于 GPG 有多个版本,因此您可能需要查询相关的[_手册页_](https://en.wikipedia.org/wiki/Man_page)以找到适当的密钥生成命令。 密钥必须使用 RSA。 - 如果您使用的是 2.1.17 或更高版本,请粘贴以下文本以生成 GPG 密钥对。 - ```shell + ```shell{:copy} $ gpg --full-generate-key ``` - 如果使用的不是 2.1.17 或更高版本,则 `gpg --full-generate-key` 命令无效。 请粘贴以下文本并跳到第 6 步。 - ```shell + ```shell{:copy} $ gpg --default-new-key-algo rsa4096 --gen-key ``` 4. 在提示时,指定要生成的密钥类型,或按 `Enter` 键接受默认值。 @@ -52,10 +52,10 @@ topics: {% data reusables.gpg.list-keys-with-note %} {% data reusables.gpg.copy-gpg-key-id %} 10. 粘贴下面的文本(替换为您要使用的 GPG 密钥 ID)。 在此例中,GPG 密钥 ID 是 `3AA5C34371567BD2`: - ```shell - $ gpg --armor --export 3AA5C34371567BD2 - # Prints the GPG key ID, in ASCII armor format - ``` + ```shell{:copy} + $ gpg --armor --export 3AA5C34371567BD2 + # Prints the GPG key ID, in ASCII armor format + ``` 11. 复制 GPG 密钥,从 `-----BEGIN PGP PUBLIC KEY BLOCK-----` 开始,到 `-----END PGP PUBLIC KEY BLOCK-----` 结束。 12. [将 GPG 密钥添加到 GitHub 帐户](/articles/adding-a-gpg-key-to-your-github-account)。 diff --git a/translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md b/translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md index 034ec9b921..770a7485dc 100644 --- a/translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md +++ b/translations/zh-CN/content/authentication/managing-commit-signature-verification/index.md @@ -1,6 +1,6 @@ --- title: 管理提交签名验证 -intro: '您可以使用 GPG 或 S/MIME 在本地对工作进行签名。 {% data variables.product.product_name %} 将会验证这些签名,以便其他人知道提交来自可信的来源。{% ifversion fpt %} {% data variables.product.product_name %} 将自动使用 {% data variables.product.product_name %} web 界面{% endif %}对您的提交签名。' +intro: '{% data variables.product.product_name %} will verify GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME signatures so other people will know that your commits come from a trusted source.{% ifversion fpt %} {% data variables.product.product_name %} will automatically sign commits you make using the {% data variables.product.product_name %} web interface.{% endif %}' redirect_from: - /articles/generating-a-gpg-key - /articles/signing-commits-with-gpg diff --git a/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-commits.md b/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-commits.md index 2df3b1df59..653f346d7f 100644 --- a/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-commits.md +++ b/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-commits.md @@ -1,6 +1,6 @@ --- title: 对提交签名 -intro: 您可以使用 GPG 或 S/MIME 在本地对提交进行签名。 +intro: 'You can sign commits locally using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME.' redirect_from: - /articles/signing-commits-and-tags-using-gpg - /articles/signing-commits-using-gpg @@ -52,9 +52,5 @@ topics: ## 延伸阅读 -* "[检查现有 GPG 密钥](/articles/checking-for-existing-gpg-keys)" -* "[生成新 GPG 密钥](/articles/generating-a-new-gpg-key)" -* "[添加 GPG 密钥到 GitHub 帐户](/articles/adding-a-gpg-key-to-your-github-account)" * "[向 Git 告知您的签名密钥](/articles/telling-git-about-your-signing-key)" -* "[将电子邮件与 GPG 密钥关联](/articles/associating-an-email-with-your-gpg-key)" * "[对标记签名](/articles/signing-tags)" diff --git a/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-tags.md b/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-tags.md index dbec2ce8fb..9caca61dbc 100644 --- a/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-tags.md +++ b/translations/zh-CN/content/authentication/managing-commit-signature-verification/signing-tags.md @@ -1,6 +1,6 @@ --- title: 对标记签名 -intro: 您可以使用 GPG 或 S/MIME 在本地对标记进行签名。 +intro: 'You can sign tags locally using GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or S/MIME.' redirect_from: - /articles/signing-tags-using-gpg - /articles/signing-tags @@ -32,9 +32,6 @@ topics: ## 延伸阅读 - "[查看仓库的标记](/articles/viewing-your-repositorys-tags)" -- "[检查现有 GPG 密钥](/articles/checking-for-existing-gpg-keys)" -- "[生成新 GPG 密钥](/articles/generating-a-new-gpg-key)" -- "[添加 GPG 密钥到 GitHub 帐户](/articles/adding-a-gpg-key-to-your-github-account)" - "[向 Git 告知您的签名密钥](/articles/telling-git-about-your-signing-key)" - "[将电子邮件与 GPG 密钥关联](/articles/associating-an-email-with-your-gpg-key)" - "[对提交签名](/articles/signing-commits)" diff --git a/translations/zh-CN/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md b/translations/zh-CN/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md index 9a644896d8..14345ee266 100644 --- a/translations/zh-CN/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md +++ b/translations/zh-CN/content/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key.md @@ -1,6 +1,6 @@ --- title: 将您的签名密钥告知 Git -intro: 要在本地对提交签名,您需要通知 Git 您想要使用的 GPG 或 X.509 密钥。 +intro: 'To sign commits locally, you need to inform Git that there''s a GPG{% ifversion ssh-commit-verification %}, SSH,{% endif %} or X.509 key you''d like to use.' redirect_from: - /articles/telling-git-about-your-gpg-key - /articles/telling-git-about-your-signing-key @@ -52,8 +52,6 @@ shortTitle: 将您的签名密钥告诉 Git $ killall gpg-agent ``` -{% data reusables.gpg.x-509-key %} - {% endmac %} {% windows %} @@ -75,8 +73,6 @@ shortTitle: 将您的签名密钥告诉 Git {% data reusables.gpg.copy-gpg-key-id %} {% data reusables.gpg.paste-gpg-key-id %} -{% data reusables.gpg.x-509-key %} - {% endwindows %} {% linux %} @@ -101,15 +97,25 @@ shortTitle: 将您的签名密钥告诉 Git ```bash $ [ -f ~/.bashrc ] && echo 'export GPG_TTY=$(tty)' >> ~/.bashrc ``` - {% endlinux %} +{% ifversion ssh-commit-verification %} +## Telling Git about your SSH key + +You can use an existing SSH key to sign commits and tags, or generate a new one specifically for signing. 更多信息请参阅“[生成新的 SSH 密钥并添加到 ssh-agent](/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent)”。 + +{% data reusables.gpg.ssh-git-version %} + +{% data reusables.command_line.open_the_multi_os_terminal %} +{% data reusables.gpg.configure-ssh-signing %} +{% data reusables.gpg.copy-ssh-public-key %} +{% data reusables.gpg.paste-ssh-public-key %} + +{% endif %} + +{% data reusables.gpg.x-509-key %} ## 延伸阅读 -- "[检查现有 GPG 密钥](/articles/checking-for-existing-gpg-keys)" -- "[生成新 GPG 密钥](/articles/generating-a-new-gpg-key)" -- "[在 GPG 密钥中使用经验证的电子邮件地址](/articles/using-a-verified-email-address-in-your-gpg-key)" -- "[添加 GPG 密钥到 GitHub 帐户](/articles/adding-a-gpg-key-to-your-github-account)" -- "[将电子邮件与 GPG 密钥关联](/articles/associating-an-email-with-your-gpg-key)" +- "[Adding a new SSH key to your GitHub account](/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)." - "[对提交签名](/articles/signing-commits)" - "[对标记签名](/articles/signing-tags)" diff --git a/translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md b/translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md index 8a1141c9fe..7a608784d7 100644 --- a/translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md +++ b/translations/zh-CN/content/authentication/troubleshooting-commit-signature-verification/checking-your-commit-and-tag-signature-verification-status.md @@ -22,7 +22,10 @@ shortTitle: 检查验证状态 1. 在 {% data variables.product.product_name %} 上,导航到您的拉取请求。 {% data reusables.repositories.review-pr-commits %} 3. 在提交的缩写提交哈希旁边,有一个框,显示您的提交签名已验证{% ifversion fpt or ghec %}、部分验证{% endif %}或未验证。 ![已签名提交](/assets/images/help/commits/gpg-signed-commit-verified-without-details.png) -4. 要查看有关提交签名的更详细信息,请单击 **Verified(已验证)**{% ifversion fpt or ghec %}、**Partially verified(部分验证)**{% endif %}或 **Unverified(未验证)**。 ![经验证签名提交](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +4. 要查看有关提交签名的更详细信息,请单击 **Verified(已验证)**{% ifversion fpt or ghec %}、**Partially verified(部分验证)**{% endif %}或 **Unverified(未验证)**。 GPG signed commits will show the ID of the key that was used. ![Verified GPG signed commit](/assets/images/help/commits/gpg-signed-commit_verified_details.png) +{% ifversion ssh-commit-verification %} + SSH signed commits will show the signature of the public key that was used. ![Verified SSH signed commit](/assets/images/help/commits/ssh-signed-commit-verified-details.png) +{% endif %} ## 检查标记签名验证状态 diff --git a/translations/zh-CN/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md b/translations/zh-CN/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md index 41f9cebff2..f951f23419 100644 --- a/translations/zh-CN/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md +++ b/translations/zh-CN/content/billing/managing-billing-for-github-actions/about-billing-for-github-actions.md @@ -1,6 +1,7 @@ --- title: 关于 GitHub Actions 的计费 intro: '如果要对 {% data variables.product.prodname_actions %} 的使用超出帐户所含存储容量或分钟数,您需要支付额外的使用费。' +miniTocMaxHeadingLevel: 3 redirect_from: - /github/setting-up-and-managing-billing-and-payments-on-github/about-billing-for-github-actions - /github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions/about-billing-for-github-actions @@ -28,6 +29,13 @@ shortTitle: GitHub Actions 的计费 ### 包括存储和分钟数 +{% ifversion actions-hosted-runners %} +{% note %} + +**Note**: Entitlement minutes cannot be used for Windows and Ubuntu runners over 2-cores. These runners will always be charged for, including in public repos. For more information, see "[Per-minute rates for runners](/billing/managing-billing-for-github-actions/about-billing-for-github-actions#per-minute-rates)." + +{% endnote %} +{% endif %} | 产品 | 存储器 | 分钟数(每月) | | ----------------------------------------------------- | ------ | ------- | | {% data variables.product.prodname_free_user %} | 500 MB | 2,000 | @@ -58,15 +66,15 @@ shortTitle: GitHub Actions 的计费 ### 每分钟费率 -| 操作系统 | 每分钟费率(美元) | -| ------- | --------- | -| Linux | $0.008 | -| macOS | $0.08 | -| Windows | $0.016 | +{% data reusables.billing.billing-standard-runners %} +{% ifversion actions-hosted-runners %}{% data reusables.billing.billing-hosted-runners %}{% endif %} -可在用户或组织帐户的所有仓库中同时运行的作业数量取决于您的 GitHub 计划。 更多信息请参阅“[使用限制和计费](/actions/reference/usage-limits-billing-and-administration)”(对于 {% data variables.product.prodname_dotcom %} 托管的运行器)和“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)”(对于自托管运行器使用限制)。 - -{% data reusables.user-settings.context_switcher %} +- 可在用户或组织帐户的所有仓库中同时运行的作业数量取决于您的 GitHub 计划。 更多信息请参阅“[使用限制和计费](/actions/reference/usage-limits-billing-and-administration)”(对于 {% data variables.product.prodname_dotcom %} 托管的运行器)和“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners/#usage-limits)”(对于自托管运行器使用限制)。 +- {% data reusables.user-settings.context_switcher %} +{% ifversion actions-hosted-runners %} +- For {% data variables.actions.hosted_runner %}s, there is no additional cost for configurations that assign public static IP addresses to a {% data variables.actions.hosted_runner %}. For more information on {% data variables.actions.hosted_runner %}s, see "[Using {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/using-larger-runners)." +- Entitlement minutes cannot be used for {% data variables.actions.hosted_runner %}s. +{% endif %} ## 计算分钟和存储支出 diff --git a/translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md b/translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md index e7fb70174a..81683b18f8 100644 --- a/translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md +++ b/translations/zh-CN/content/billing/managing-billing-for-github-packages/about-billing-for-github-packages.md @@ -49,9 +49,9 @@ All data transferred out, when triggered by {% data variables.product.prodname_a Storage usage is shared with build artifacts produced by {% data variables.product.prodname_actions %} for repositories owned by your account. For more information, see "[About billing for {% data variables.product.prodname_actions %}](/billing/managing-billing-for-github-actions/about-billing-for-github-actions)." -{% data variables.product.prodname_dotcom %} charges usage to the account that owns the repository where the package is published. If your account's usage surpasses these limits and you have set a spending limit above $0 USD, you will pay $0.25 USD per GB of storage per day and $0.50 USD per GB of data transfer. +{% data variables.product.prodname_dotcom %} charges usage to the account that owns the repository where the package is published. If your account's usage surpasses these limits and you have set a spending limit above $0 USD, you will pay $0.008 USD per GB of storage per day and $0.50 USD per GB of data transfer. -For example, if your organization uses {% data variables.product.prodname_team %}, allows unlimited spending, uses 150GB of storage, and has 50GB of data transfer out during a month, the organization would have overages of 148GB for storage and 40GB for data transfer for that month. The storage overage would cost $0.25 USD per GB per day or $37 USD. The overage for data transfer would cost $0.50 USD per GB or $20 USD. +For example, if your organization uses {% data variables.product.prodname_team %}, allows unlimited spending, uses 150GB of storage, and has 50GB of data transfer out during a month, the organization would have overages of 148GB for storage and 40GB for data transfer for that month. The storage overage would cost $0.008 USD per GB per day or approximately $37 USD for a 31-day month. The overage for data transfer would cost $0.50 USD per GB or $20 USD. {% data reusables.dotcom_billing.pricing_calculator.pricing_cal_packages %} diff --git a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md index 89a7a591d4..693aff8c64 100644 --- a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md +++ b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning.md @@ -359,7 +359,7 @@ In the following example, the `+` symbol ensures that the specified additional { ## Using a custom configuration file -A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries and to specify which directories to scan during analysis. +A custom configuration file is an alternative way to specify additional {% ifversion codeql-packs %}packs and {% endif %}queries to run. You can also use the file to disable the default queries{% ifversion code-scanning-exclude-queries-from-analysis %}, exclude or include specific queries,{% endif %} and to specify which directories to scan during analysis. In the workflow file, use the `config-file` parameter of the `init` action to specify the path to the configuration file you want to use. This example loads the configuration file _./.github/codeql/codeql-config.yml_. @@ -442,6 +442,41 @@ Optionally, you can give each array element a name, as shown in the example conf If you only want to run custom queries, you can disable the default security queries by using `disable-default-queries: true`. +{% ifversion code-scanning-exclude-queries-from-analysis %} +### Excluding specific queries from analysis + +You can add `exclude` and `include` filters to your custom configuration file, to specify the queries you want to exclude or include in the analysis. + +This is useful if you want to exclude, for example: +- Specific queries from the default suites (`security`, `security-extended` and `security-and-quality`). +- Specific queries whose results do not interest you. +- All the queries that generate warnings and recommendations. + +You can use `exclude` filters similar to those in the configuration file below to exclude queries that you want to remove from the default analysis. In the example of configuration file below, both the `js/redundant-assignment` and the `js/useless-assignment-to-local` queries are excluded from analysis. + +```yaml +query-filters: + - exclude: + id: js/redundant-assignment + - exclude: + id: js/useless-assignment-to-local +``` +To find the id of a query, you can click the alert in the list of alerts in the Security tab. This opens the alert details page. The `Rule ID` field contains the query id. For more information about the alert details page, see "[About {% data variables.product.prodname_code_scanning %} alerts](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-alerts#about-alert-details)." + +{% tip %} + +**Tips:** +- The order of the filters is important. The first filter instruction that appears after the instructions about the queries and query packs determines whether the queries are included or excluded by default. +- Subsequent instructions are executed in order and the instructions that appear later in the file take precedence over the earlier instructions. + +{% endtip %} + +You can find another example illustrating the use of these filters in the "[Example configuration files](#example-configuration-files)" section. + +For more information about using `exclude` and `include` filters in your custom configuration file, see "[Creating {% data variables.product.prodname_codeql %} query suites](https://codeql.github.com/docs/codeql-cli/creating-codeql-query-suites/#filtering-the-queries-in-a-query-suite)." For information on the query metadata you can filter on, see "[Metadata for CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/metadata-for-codeql-queries/)." + +{% endif %} + ### Specifying directories to scan For the interpreted languages that {% data variables.product.prodname_codeql %} supports (Python{% ifversion fpt or ghes > 3.3 or ghae-issue-5017 %}, Ruby{% endif %} and JavaScript/TypeScript), you can restrict {% data variables.product.prodname_code_scanning %} to files in specific directories by adding a `paths` array to the configuration file. You can exclude the files in specific directories from analysis by adding a `paths-ignore` array. diff --git a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md index a5948aba46..23e20a25a3 100644 --- a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md +++ b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/managing-code-scanning-alerts-for-your-repository.md @@ -43,8 +43,8 @@ By default, the code scanning alerts page is filtered to show alerts for the def ![Summary of alerts](/assets/images/help/repository/code-scanning-click-alert.png) {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} - {% data reusables.code-scanning.alert-default-branch %} - ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} + {% data reusables.code-scanning.alert-default-branch %} + ![The "Affected branches" section in an alert](/assets/images/help/repository/code-scanning-affected-branches.png){% endif %} 1. Optionally, if the alert highlights a problem with data flow, click **Show paths** to display the path from the data source to the sink where it's used. {% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-6249 %} ![The "Show paths" link on an alert](/assets/images/help/repository/code-scanning-show-paths.png) diff --git a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md index 3df17ec3a9..3b895243e4 100644 --- a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md +++ b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/running-codeql-code-scanning-in-a-container.md @@ -32,6 +32,12 @@ topics: 您必须在构建代码的容器中运行 {% data variables.product.prodname_codeql %}。 无论您使用的是 {% data variables.product.prodname_codeql_cli %}{% ifversion codeql-runner-supported %}、 {% data variables.product.prodname_codeql_runner %}、{% endif %} 还是 {% data variables.product.prodname_actions %},这都适用。 对于 {% data variables.product.prodname_codeql_cli %} {% ifversion codeql-runner-supported %}或 {% data variables.product.prodname_codeql_runner %}{% endif %},请参阅“[在 CI 系统中安装 {% data variables.product.prodname_codeql_cli %}](/code-security/secure-coding/using-codeql-code-scanning-with-your-existing-ci-system/installing-codeql-cli-in-your-ci-system)”{% ifversion codeql-runner-supported %} 或“[在 CI 系统](/code-security/secure-coding/running-codeql-runner-in-your-ci-system)中运行 {% data variables.product.prodname_codeql_runner %}”{% endif %}以了解更多信息。 如果您使用 {% data variables.product.prodname_actions %},请配置工作流程以在同一容器中运行所有操作。 更多信息请参阅“[示例工作流程](#example-workflow)”。 +{% note %} + +**Note:** {% data reusables.code-scanning.non-glibc-linux-support %} + +{% endnote %} + ## 依赖项 如果您使用的容器缺少某些依赖项(例如,Git 必须安装并添加到 PATH 变量),您可能难以运行 {% data variables.product.prodname_code_scanning %}。 If you encounter dependency issues, review the list of software typically included on {% data variables.product.prodname_dotcom %}'s runner images. 有关更多信息,请在以下位置查看特定于版本的 `readme` 文件: diff --git a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md index 52e0b98fd3..32cea9db26 100644 --- a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md +++ b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/setting-up-code-scanning-for-a-repository.md @@ -151,25 +151,29 @@ 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 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. +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. -{% ifversion fpt or ghes > 3.2 or ghae or ghec %} - ![Analysis not found for commit message](/assets/images/help/repository/code-scanning-analysis-not-found.png) +{% ifversion fpt or ghec or ghes > 3.4 or ghae-issue-7095 %} + +{% elsif ghes < 3.5 or ghae %} +If you used a pull request to add {% data variables.product.prodname_code_scanning %} to the repository, you will initially see {% ifversion ghes > 3.2 or ghae %}an "Analysis not found"{% elsif ghes = 3.2 %}a "Missing analysis"{% endif %} message when you click **Details** on the "{% data variables.product.prodname_code_scanning_capc %} results / TOOL NAME" check. + +{% ifversion ghes > 3.2 or ghae %} + ![Analysis not found for commit message](/assets/images/enterprise/3.4/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. For example, in the screenshot above, {% data variables.product.prodname_code_scanning %} found an analysis for the merge commit of the pull request, but no analysis for the head of the main branch. -{% else %} - ![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 or ghec %} ### Reasons for the "Analysis not found" message -{% else %} + +{% elsif ghes = 3.2 %} + ![Missing analysis for commit message](/assets/images/enterprise/3.2/repository/code-scanning-missing-analysis.png) + ### 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 or ghec %}"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 ghes > 3.2 or ghae %}"Analysis not found"{% elsif ghes = 3.2 %}"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: @@ -177,7 +181,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. -![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) + ![Choose a branch from the Branch drop-down menu](/assets/images/help/repository/code-scanning-branch-dropdown.png) The solution in this situation is to add the name of the base branch to the `on:push` and `on:pull_request` specification in the {% data variables.product.prodname_code_scanning %} workflow on that branch and then make a change that updates the open pull request that you want to scan. @@ -189,6 +193,8 @@ There are other situations where there may be no analysis for the latest commit Merge a trivial change into the base branch to trigger {% data variables.product.prodname_code_scanning %} on this latest commit, then push a change to the pull request to retrigger {% data variables.product.prodname_code_scanning %}. +{% endif %} + ## Next steps After setting up {% data variables.product.prodname_code_scanning %}, and allowing its actions to complete, you can: diff --git a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md index ffde7428bc..8c803f3cc9 100644 --- a/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md +++ b/translations/zh-CN/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/triaging-code-scanning-alerts-in-pull-requests.md @@ -33,8 +33,6 @@ topics: - 拉取请求的 **Conversation(对话)** 选项卡,作为拉取请求审查的一部分{% endif %} - 拉取请求的 **Files changed(文件已更改)**选项卡 -{% ifversion code-scanning-pr-conversations-tab %} {% endif %} - 如果您拥有仓库的写入权限,您可以在 **Security(安全)**选项卡中查看任何现有的 {% data variables.product.prodname_code_scanning %} 警报。 有关仓库警报的更多信息,请参阅“[管理仓库的 {% data variables.product.prodname_code_scanning %} 警报](/code-security/secure-coding/managing-code-scanning-alerts-for-your-repository)”。 {% ifversion fpt or ghes > 3.2 or ghae or ghec %} diff --git a/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md b/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md index daeb17e483..74df7049d2 100644 --- a/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md +++ b/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning.md @@ -45,9 +45,15 @@ If you upload a second SARIF file for a commit with the same category and from t If you're new to SARIF and want to learn more, see Microsoft's [`SARIF tutorials`](https://github.com/microsoft/sarif-tutorials) repository. -## Preventing duplicate alerts using fingerprints +## Providing data to track {% data variables.product.prodname_code_scanning %} alerts across runs -Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the right line of code when files are edited. +Each time the results of a new code scan are uploaded, the results are processed and alerts are added to the repository. To prevent duplicate alerts for the same problem, {% data variables.product.prodname_code_scanning %} uses fingerprints to match results across various runs so they only appear once in the latest run for the selected branch. This makes it possible to match alerts to the correct line of code when files are edited. The `ruleID` for a result has to be the same across analysis. + +### Reporting consistent filepaths + +The filepath has to be consistent across the runs to enable a computation of a stable fingerprint. If the filepaths differ for the same result, each time there is a new analysis a new alert will be created, and the old one will be closed. This will cause having multiple alerts for the same result. + +### Including data for fingerprint generation {% data variables.product.prodname_dotcom %} uses the `partialFingerprints` property in the OASIS standard to detect when two results are logically identical. For more information, see the "[partialFingerprints property](https://docs.oasis-open.org/sarif/sarif/v2.1.0/cs01/sarif-v2.1.0-cs01.html#_Toc16012611)" entry in the OASIS documentation. @@ -77,6 +83,12 @@ You can check a SARIF file is compatible with {% data variables.product.prodname If you use a code analysis engine other than {% data variables.product.prodname_codeql %}, you can review the supported SARIF properties to optimize how your analysis results will appear on {% data variables.product.prodname_dotcom %}. +{% note %} + +**Note:** You must supply an explicit value for any property marked as "required". The empty string is not supported for required properties. + +{% endnote %} + Any valid SARIF 2.1.0 output file can be uploaded, however, {% data variables.product.prodname_code_scanning %} will only use the following supported properties. ### `sarifLog` object @@ -138,7 +150,7 @@ Each `result` object contains details for one alert in the codebase. Within the | `level`| **Optional.** The severity of the result. This level overrides the default severity defined by the rule. {% data variables.product.prodname_code_scanning_capc %} uses the level to filter results by severity on {% data variables.product.prodname_dotcom %}. | `message.text`| **Required.** A message that describes the result. {% data variables.product.prodname_code_scanning_capc %} displays the message text as the title of the result. Only the first sentence of the message will be displayed when visible space is limited. | `locations[]`| **Required.** The set of locations where the result was detected up to a maximum of 10. Only one location should be included unless the problem can only be corrected by making a change at every specified location. **Note:** At least one location is required for {% data variables.product.prodname_code_scanning %} to display a result. {% data variables.product.prodname_code_scanning_capc %} will use this property to decide which file to annotate with the result. Only the first value of this array is used. All other values are ignored. -| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Preventing duplicate alerts using fingerprints](#preventing-duplicate-alerts-using-fingerprints)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. +| `partialFingerprints`| **Required.** A set of strings used to track the unique identity of the result. {% data variables.product.prodname_code_scanning_capc %} uses `partialFingerprints` to accurately identify which results are the same across commits and branches. {% data variables.product.prodname_code_scanning_capc %} will attempt to use `partialFingerprints` if they exist. If you are uploading third-party SARIF files with the `upload-action`, the action will create `partialFingerprints` for you when they are not included in the SARIF file. For more information, see "[Providing data to track code scanning alerts across runs](#providing-data-to-track-code-scanning-alerts-across-runs)." **Note:** {% data variables.product.prodname_code_scanning_capc %} only uses the `primaryLocationLineHash`. | `codeFlows[].threadFlows[].locations[]`| **Optional.** An array of `location` objects for a `threadFlow` object, which describes the progress of a program through a thread of execution. A `codeFlow` object describes a pattern of code execution used to detect a result. If code flows are provided, {% data variables.product.prodname_code_scanning %} will expand code flows on {% data variables.product.prodname_dotcom %} for the relevant result. For more information, see the [`location` object](#location-object). | `relatedLocations[]`| A set of locations relevant to this result. {% data variables.product.prodname_code_scanning_capc %} will link to related locations when they are embedded in the result message. For more information, see the [`location` object](#location-object). @@ -204,7 +216,7 @@ These example SARIF output files show supported properties and example values. ### Example with minimum required properties -This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties or don't include values, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. +This SARIF output file has example values to show the minimum required properties for {% data variables.product.prodname_code_scanning %} results to work as expected. If you remove any properties, omit values, or use an empty string, this data will not be displayed correctly or sync on {% data variables.product.prodname_dotcom %}. ```json { diff --git a/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md b/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md index 1e03a239f3..193ee54f5a 100644 --- a/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md +++ b/translations/zh-CN/content/code-security/code-scanning/integrating-with-code-scanning/uploading-a-sarif-file-to-github.md @@ -58,7 +58,7 @@ For more information see the [`upload-sarif` action](https://github.com/github/c The `upload-sarif` action can be configured to run when the `push` and `scheduled` event occur. For more information about {% data variables.product.prodname_actions %} events, see "[Events that trigger workflows](/actions/reference/events-that-trigger-workflows)." -If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#preventing-duplicate-alerts-using-fingerprints)." +If your SARIF file doesn't include `partialFingerprints`, the `upload-sarif` action will calculate the `partialFingerprints` field for you and attempt to prevent duplicate alerts. {% data variables.product.prodname_dotcom %} can only create `partialFingerprints` when the repository contains both the SARIF file and the source code used in the static analysis. For more information about preventing duplicate alerts, see "[About SARIF support for code scanning](/code-security/secure-coding/sarif-support-for-code-scanning#providing-data-to-track-code-scanning-alerts-across-runs)." {% data reusables.code-scanning.upload-sarif-alert-limit %} diff --git a/translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md b/translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md index 54ca86d3af..a9c8d47e23 100644 --- a/translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md +++ b/translations/zh-CN/content/code-security/code-scanning/using-codeql-code-scanning-with-your-existing-ci-system/configuring-codeql-cli-in-your-ci-system.md @@ -78,7 +78,8 @@ You can display the command-line help for any command using the `--help``--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. | | `--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). -| `--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. | +| `--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. |{% ifversion fpt or ghec or ghes > 3.2 or ghae %} +| `--codescanning-config` | | Optional (Advanced). Use if you have a configuration file that specifies how to create the {% data variables.product.prodname_codeql %} databases and what queries to run in later steps. For more information, see "[Using a custom configuration file](/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-a-custom-configuration-file)" and "[database create](https://codeql.github.com/docs/codeql-cli/manual/database-create/#cmdoption-codeql-database-create-codescanning-config)." |{% endif %} 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 %}. diff --git a/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md b/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md index 25ac6542b6..b99c74265b 100644 --- a/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md +++ b/translations/zh-CN/content/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file.md @@ -416,7 +416,7 @@ updates: ### `open-pull-requests-limit` -默认情况下, {% data variables.product.prodname_dependabot %} 最多打开五个版本更新的拉取请求。 一旦有五个打开的拉取请求,新的请求将被阻止,直到您合并或关闭一些打开的请求,之后可以在后续更新中打开新的拉取请求。 使用 `open-pull-requests-limit` 可更改此限制。 这也提供了一个简单的方法来暂时禁用包管理器的版本更新。 +默认情况下, {% data variables.product.prodname_dependabot %} 最多打开五个版本更新的拉取请求。 Once there are five open pull requests from {% data variables.product.prodname_dependabot %}, {% data variables.product.prodname_dependabot %} will not open any new requests until some of those open requests are merged or closed. 使用 `open-pull-requests-limit` 可更改此限制。 这也提供了一个简单的方法来暂时禁用包管理器的版本更新。 此选项对安全更新没有影响,因为安全更新具有单独的内部限制:10 个打开的拉取请求。 diff --git a/translations/zh-CN/content/code-security/secret-scanning/about-secret-scanning.md b/translations/zh-CN/content/code-security/secret-scanning/about-secret-scanning.md index 481ec138e4..0110c45c23 100644 --- a/translations/zh-CN/content/code-security/secret-scanning/about-secret-scanning.md +++ b/translations/zh-CN/content/code-security/secret-scanning/about-secret-scanning.md @@ -39,7 +39,7 @@ Service providers can partner with {% data variables.product.company_short %} to {% ifversion secret-scanning-push-protection %} -You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." +You can also enable {% data variables.product.prodname_secret_scanning %} as a push protection for a repository or an organization. When you enable this feature, {% data variables.product.prodname_secret_scanning %} prevents contributors from pushing code with a detected secret. To proceed, contributors must either remove the secret(s) from the push or, if needed, bypass the protection. {% ifversion push-protection-custom-link-orgs %}Admins can also specify a custom link that is displayed to the contributor when a push is blocked; the link can contain resources specific to the organization to aid contributors. {% endif %}For more information, see "[Protecting pushes with {% data variables.product.prodname_secret_scanning %}](/code-security/secret-scanning/protecting-pushes-with-secret-scanning)." {% endif %} diff --git a/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md b/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md index 39b0c164bf..295f0e2982 100644 --- a/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md +++ b/translations/zh-CN/content/code-security/secret-scanning/protecting-pushes-with-secret-scanning.md @@ -60,17 +60,29 @@ For information on the secrets and service providers supported for push protecti 在命令行上一次最多会显示五个检测到的机密。 如果已在存储库中检测到特定机密,并且警报已存在,{% data variables.product.prodname_dotcom %} 不会阻止该机密。 -![显示当用户尝试将密钥推送到存储库时推送被阻止的屏幕截图](/assets/images/help/repository/secret-scanning-push-protection-with-link.png) +{% ifversion push-protection-custom-link-orgs %} + +Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain organization-specific resources and advice, such as directions on using a recommended secrets vault or who to contact for questions relating to the blocked secret. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +![Screenshot showing that a push is blocked when a user attempts to push a secret to a repository](/assets/images/help/repository/secret-scanning-push-protection-with-custom-link.png) + +{% else %} + +![Screenshot showing that a push is blocked when a user attempts to push a secret to a repository](/assets/images/help/repository/secret-scanning-push-protection-with-link.png) + +{% endif %} {% data reusables.secret-scanning.push-protection-remove-secret %} For more information about remediating blocked secrets, see "[Pushing a branch blocked by push protection](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-on-the-command-line)." -如果确认某个机密是真实的,并且打算稍后修复它,则应尽快修复。 例如,您可以撤销密钥,并从存储库的提交历史记录中删除密钥。 Real secrets that have been exposed must be revoked to avoid unauthorized access. You might consider first rotating the secret before revoking it. 更多信息请参阅“[从仓库中删除敏感数据](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)”。 +If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. For example, you might revoke the secret and remove the secret from the repository's commit history. Real secrets that have been exposed must be revoked to avoid unauthorized access. You might consider first rotating the secret before revoking it. For more information, see "[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)." {% data reusables.secret-scanning.push-protection-multiple-branch-note %} ### 允许推送被阻止的机密 -如果 {% data variables.product.prodname_dotcom %} 阻止了您认为可以安全推送的机密,则可以允许该机密并说明应允许该机密的原因。 +If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. {% data reusables.secret-scanning.push-protection-allow-secrets-alerts %} @@ -86,25 +98,33 @@ For information on the secrets and service providers supported for push protecti {% data reusables.secret-scanning.push-protection-web-ui-choice %} -{% data variables.product.prodname_dotcom %} 将在 Web UI 中一次仅显示一个检测到的机密。 如果已在存储库中检测到特定机密,并且警报已存在,{% data variables.product.prodname_dotcom %} 不会阻止该机密。 +{% data variables.product.prodname_dotcom %} will only display one detected secret at a time in the web UI. 如果已在存储库中检测到特定机密,并且警报已存在,{% data variables.product.prodname_dotcom %} 不会阻止该机密。 -可以使用 Web UI 从文件中删除机密。 删除机密后,页面顶部的横幅将更改,并告诉您现在可以提交更改。 +{% ifversion push-protection-custom-link-orgs %} - ![显示密钥修复后允许在 Web UI 中提交的屏幕截图](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png) +Organization admins can provide a custom link that will be displayed when a push is blocked. This custom link can contain resources and advice specific to your organization. For example, the custom link can point to a README file with information about the organization's secret vault, which teams and individuals to escalate questions to, or the organization's approved policy for working with secrets and rewriting commit history. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + +You can remove the secret from the file using the web UI. 删除机密后,页面顶部的横幅将更改,并告诉您现在可以提交更改。 + + ![Screenshot showing commit in web ui allowed after secret fixed](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-allowed.png) ### 绕过密钥的推送保护 {% data reusables.secret-scanning.push-protection-remove-secret %} For more information about remediating blocked secrets, see "[Pushing a branch blocked by push protection](/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection#resolving-a-blocked-push-in-the-web-ui)." -如果确认某个机密是真实的,并且打算稍后修复它,则应尽快修复。 更多信息请参阅“[从仓库中删除敏感数据](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)”。 +If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. For more information, see "[Removing sensitive data from a repository](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)." -如果 {% data variables.product.prodname_dotcom %} 阻止了您认为可以安全推送的机密,则可以允许该机密并说明应允许该机密的原因。 +If {% data variables.product.prodname_dotcom %} blocks a secret that you believe is safe to push, you can allow the secret and specify the reason why it should be allowed. {% data reusables.secret-scanning.push-protection-allow-secrets-alerts %} {% data reusables.secret-scanning.push-protection-allow-email %} -如果确认某个机密是真实的,并且打算稍后修复它,则应尽快修复。 +If you confirm a secret is real and that you intend to fix it later, you should aim to remediate the secret as soon as possible. 1. 在 {% data variables.product.prodname_dotcom %} 阻止提交时显示在页面顶部的横幅中,单击 **Bypass protection(绕过保护)**。 {% data reusables.secret-scanning.push-protection-choose-allow-secret-options %} diff --git a/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md b/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md index 58a18f2a13..6cbded5445 100644 --- a/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md +++ b/translations/zh-CN/content/code-security/secret-scanning/pushing-a-branch-blocked-by-push-protection.md @@ -26,6 +26,14 @@ The push protection feature of {% data variables.product.prodname_secret_scannin {% endtip %} +{% ifversion push-protection-custom-link-orgs %} + +Organization admins can provide a custom link that will be included in the message from {% data variables.product.product_name %} when your push is blocked. This custom link can contain resources and advice specific to your organization and its policies. + +{% ifversion push-protection-custom-link-orgs-beta %}{% data reusables.advanced-security.custom-link-beta %}{% endif %} + +{% endif %} + ## Resolving a blocked push on the command line {% data reusables.secret-scanning.push-protection-command-line-choice %} diff --git a/translations/zh-CN/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md b/translations/zh-CN/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md index 0fb2c150c6..10c794f294 100644 --- a/translations/zh-CN/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md +++ b/translations/zh-CN/content/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-dependency-review.md @@ -72,7 +72,7 @@ topics: {% endtip %} {% endif %} -此 {% data variables.product.prodname_dependency_review_action %} 示例文件说明了如何使用这些配置选项。 +此 {% data variables.product.prodname_dependency_review_action %} 示例文件说明了如何使用这些配置选项。 Notice that the example uses short version number for the action (`v2`) instead of a semver release number (for example, `v2.0.8`). This ensures that you use the most recent minor version of the action. ```yaml{:copy} name: 'Dependency Review' diff --git a/translations/zh-CN/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md b/translations/zh-CN/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md index a5ab209231..c9a6991945 100644 --- a/translations/zh-CN/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md +++ b/translations/zh-CN/content/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry.md @@ -12,25 +12,25 @@ shortTitle: 私有映像注册表 ## 关于私人映像注册表和 {% data variables.product.prodname_github_codespaces %} -注册表是用于存储、管理和提取专用容器映像的安全空间。 您可以使用一个来存储一个或多个映像。 注册表的示例很多,例如 {% data variables.product.prodname_dotcom %} 容器注册表、Azure 容器注册表或 DockerHub。 +注册表是用于存储、管理和提取专用容器映像的安全空间。 您可以使用一个来存储一个或多个映像。 There are many examples of registries, such as {% data variables.product.prodname_container_registry %}, {% data variables.product.prodname_npm_registry %}, Azure Container Registry, or DockerHub. -{% data variables.product.prodname_dotcom %} 容器注册表可以配置为无缝拉取容器映像,而无需向 {% data variables.product.prodname_github_codespaces %} 提供任何身份验证凭据。 对于其他映像注册表,必须在 {% data variables.product.prodname_dotcom %} 中创建机密以存储访问详细信息,这将允许 {% data variables.product.prodname_codespaces %} 访问存储在该注册表中的映像。 +{% data variables.product.prodname_ghcr_and_npm_registry %} can be configured to allow container images to be pulled seamlessly into {% data variables.product.prodname_github_codespaces %} during codespace creation, without having to provide any authentication credentials. 对于其他映像注册表,必须在 {% data variables.product.prodname_dotcom %} 中创建机密以存储访问详细信息,这将允许 {% data variables.product.prodname_codespaces %} 访问存储在该注册表中的映像。 -## 访问存储在 {% data variables.product.prodname_dotcom %} 容器注册表中的映像 +## Accessing images stored in {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data variables.product.prodname_dotcom %} 容器注册表是 {% data variables.product.prodname_codespaces %} 使用 devcontainer 容器映像的最简单方法。 +{% data variables.product.prodname_ghcr_and_npm_registry %} provide the easiest way for {% data variables.product.prodname_codespaces %} to consume dev container images. -更多信息请参阅“[使用容器注册表](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)”。 +For more information, see "[Working with the Container registry](/packages/working-with-a-github-packages-registry/working-with-the-container-registry)" and "[Working with the npm registry](/packages/working-with-a-github-packages-registry/working-with-the-npm-registry)". ### 访问发布到与代码空间相同的仓库的映像 -如果将容器映像发布到启动代码空间的同一仓库中的 {% data variables.product.prodname_dotcom %} 容器注册表,则在创建代码空间时将自动能够获取该映像。 无需提供任何其他凭据,除非在发布容器映像时未选中 **Inherit access from repo(从仓库继承访问权限)**选项。 +If you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %} in the same repository that the codespace is being launched in, you will automatically be able to fetch that image on codespace creation. 无需提供任何其他凭据,除非在发布容器映像时未选中 **Inherit access from repo(从仓库继承访问权限)**选项。 #### 从发布映像的仓库继承访问权限 -默认情况下,将容器映像发布到 {% data variables.product.prodname_dotcom %} 容器注册表时,该映像将继承从中发布映像的仓库的访问设置。 例如,如果仓库是公共的,则映像也是公共的。 如果仓库是私有的,则映像也是私有的,但可以从仓库访问。 +By default, when you publish a container image to {% data variables.product.prodname_ghcr_or_npm_registry %}, the image inherits the access setting of the repository from which the image was published. 例如,如果仓库是公共的,则映像也是公共的。 如果仓库是私有的,则映像也是私有的,但可以从仓库访问。 -此行为由 **Inherit access from repo(从仓库继承访问权限)**选项控制。 **通过** {% data variables.product.prodname_actions %} 发布时,默认情况下会选择从仓库继承访问权限,但在使用个人访问令牌 (PAT) 直接发布到 {% data variables.product.prodname_dotcom %} 容器注册表时,不会选择从仓库继承访问权限。 +此行为由 **Inherit access from repo(从仓库继承访问权限)**选项控制。 **Inherit access from repo** is selected by default when publishing via {% data variables.product.prodname_actions %}, but not when publishing directly to {% data variables.product.prodname_ghcr_or_npm_registry %} using a Personal Access Token (PAT). 如果在发布映像时未选择 **Inherit access from repo(从仓库继承访问权限)**选项,则可以手动将仓库添加到已发布容器映像的访问控制中。 更多信息请参阅“[配置包的访问控制和可见性](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#inheriting-access-for-a-container-image-from-a-repository)”。 @@ -46,13 +46,13 @@ shortTitle: 私有映像注册表 ### 从代码空间发布容器映像 -从代码空间到容器注册表 {% data variables.product.prodname_dotcom %} 的无缝访问仅限于拉取容器映像。 如果要从代码空间内部发布容器映像,则必须结合使用个人访问令牌 (PAT) 与 `write:packages` 作用域。 +Seamless access from a codespace to {% data variables.product.prodname_ghcr_or_npm_registry %} is limited to pulling container images. 如果要从代码空间内部发布容器映像,则必须结合使用个人访问令牌 (PAT) 与 `write:packages` 作用域。 -我们建议通过 {% data variables.product.prodname_actions %} 发布映像。 更多信息请参阅“[发布 Docker 映像](/actions/publishing-packages/publishing-docker-images)”。 +我们建议通过 {% data variables.product.prodname_actions %} 发布映像。 For more information, see "[Publishing Docker images](/actions/publishing-packages/publishing-docker-images)" and "[Publishing Node.js packages](/actions/publishing-packages/publishing-nodejs-packages)." ## 访问存储在其他容器注册表中的映像 -如果要从不是 {% data variables.product.prodname_dotcom %} 容器注册表的注册表访问容器映像,{% data variables.product.prodname_codespaces %} 将检查是否存在三个机密,这些机密定义了容器注册表的服务器名称、用户名和个人访问令牌 (PAT)。 如果找到这些密钥,{% data variables.product.prodname_github_codespaces %} 将在代码空间中提供注册表。 +If you are accessing a container image from a registry that isn't {% data variables.product.prodname_ghcr_or_npm_registry %}, {% data variables.product.prodname_codespaces %} checks for the presence of three secrets, which define the server name, username, and personal access token (PAT) for a container registry. 如果找到这些密钥,{% data variables.product.prodname_github_codespaces %} 将在代码空间中提供注册表。 - `<*>_CONTAINER_REGISTRY_SERVER` - `<*>_CONTAINER_REGISTRY_USER` diff --git a/translations/zh-CN/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md b/translations/zh-CN/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md index a824b77600..a9ad5628ef 100644 --- a/translations/zh-CN/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md +++ b/translations/zh-CN/content/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces.md @@ -17,7 +17,7 @@ redirect_from: ## 关于 {% data variables.product.prodname_vscode_command_palette %} -命令面板是 {% data variables.product.prodname_vscode %} 的焦点功能之一,可用于 {% data variables.product.prodname_github_codespaces %}。 {% data variables.product.prodname_vscode_command_palette %} 允许您访问 {% data variables.product.prodname_codespaces %} 和 {% data variables.product.prodname_vscode_shortname %} 的许多命令。 有关使用 {% data variables.product.prodname_vscode_command_palette_shortname %} 的更多信息,请参阅 {% data variables.product.prodname_vscode_shortname %} 文档中的[用户界面](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)。 +命令面板是 {% data variables.product.prodname_vscode %} 的焦点功能之一,可用于 {% data variables.product.prodname_github_codespaces %}。 命令调色板允许您访问 {% data variables.product.prodname_codespaces %} 和 {% data variables.product.prodname_vscode_shortname %} 的许多命令。 有关使用 {% data variables.product.prodname_vscode_command_palette_shortname %} 的更多信息,请参阅 {% data variables.product.prodname_vscode_shortname %} 文档中的[用户界面](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette)。 ## 访问 {% data variables.product.prodname_vscode_command_palette_shortname %} diff --git a/translations/zh-CN/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md b/translations/zh-CN/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md index f175675047..9781ece278 100644 --- a/translations/zh-CN/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md +++ b/translations/zh-CN/content/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account.md @@ -90,8 +90,6 @@ You can add further script, preferences, configuration files to your dotfiles re If your codespace fails to pick up configuration settings from dotfiles, see "[Troubleshooting dotfiles for {% data variables.product.prodname_codespaces %}](/codespaces/troubleshooting/troubleshooting-dotfiles-for-codespaces)." -## Other available settings - You can also personalize {% data variables.product.prodname_codespaces %} using additional [{% data variables.product.prodname_codespaces %} settings](https://github.com/settings/codespaces): - To enable GPG verification, see "[Managing GPG verification for {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-your-codespaces/managing-gpg-verification-for-github-codespaces)." diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/creating-a-codespace.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/creating-a-codespace.md index 0679d8294a..1f4dee6dd1 100644 --- a/translations/zh-CN/content/codespaces/developing-in-codespaces/creating-a-codespace.md +++ b/translations/zh-CN/content/codespaces/developing-in-codespaces/creating-a-codespace.md @@ -46,23 +46,20 @@ shortTitle: 创建代码空间 当您访问 {% data variables.product.prodname_github_codespaces %} 时,在查看仓库时会看到 **{% octicon "code" aria-label="The code icon" %} Code(代码)**下拉菜单中的“Codespaces(代码空间)”选项卡。 -在以下条件下,您可以访问代码空间: +You'll have access to {% data variables.product.prodname_github_codespaces %} under the following conditions: -* 您是已启用 {% data variables.product.prodname_codespaces %} 并设定支出限额的组织的成员。 -* 组织所有者已授予您访问 {% data variables.product.prodname_codespaces %}。 -* 仓库归启用 {% data variables.product.prodname_codespaces %} 的组织所有。 +Either all of these are true: +* You are a member, or outside collaborator, of an organization that has enabled {% data variables.product.prodname_codespaces %} and set a spending limit. +* The organization owner has allowed you to create codespaces at the organization's expense. +* The repository for which you want to create a codespace is owned by this organization. -{% note %} +Or both of these are true: +* You are participating in the beta of {% data variables.product.prodname_codespaces %} for individual users. +* Either you own the repository for which you want to create a codespace, or it is owned by an organization of which you are either a member or an outside collaborator. -**注意:** 已使用个人 {% data variables.product.prodname_dotcom %} 帐户加入测试版的个人不会失去 {% data variables.product.prodname_codespaces %} 访问权限,但个人的 {% data variables.product.prodname_codespaces %} 将继续保留在测试版中。 +Before {% data variables.product.prodname_codespaces %} can be used in an organization, an owner or billing manager must have set a spending limit. For more information, see "[About spending limits for Codespaces](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces#about-spending-limits-for-codespaces)." -{% endnote %} - -组织所有者可以允许组织的所有成员创建代码空间,将代码空间创建限制为选定的组织成员,或者禁用代码空间的创建。 有关管理对组织内代码空间的访问的更多信息,请参阅“[为组织中的用户启用代码空间](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#enable-codespaces-for-users-in-your-organization)”。 - -在组织中使用 {% data variables.product.prodname_codespaces %} 之前,所有者或帐单管理员必须设定支出限额。 更多信息请参阅“[关于代码空间的支出限额](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces#about-spending-limits-for-codespaces)”。 - -如果想为您的个人帐户或其他用户拥有的仓库创建代码空间, 并且您有权在已启用 {% data variables.product.prodname_github_codespaces %} 的组织中创建仓库, 您可以将用户拥有的仓库复刻到该组织,然后为该复刻创建一个代码空间。 +Organization owners can specify who can create and use codespaces at the organization's expense. Organization owners can also prevent any codespace usage being charged to the organization. For more information, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." ## 创建代码空间 @@ -79,43 +76,43 @@ shortTitle: 创建代码空间 1. 使用默认选项或在配置高级选项后创建代码空间: - * **使用默认选项** + * **Use the default options** - 要使用默认选项创建代码空间,请单击 **Create codespace on BRANCH(在 [分支] 上创建代码空间)**。 + To create a codespace using the default options, click **Create codespace on BRANCH**. - (可选)在单击 **Create codespace on BRANCH(在 [分支] 上创建代码空间)**之前,可以单击按钮侧面的向下箭头以查看将用于代码空间的计算机类型。 + Optionally, before clicking **Create codespace on BRANCH**, you can click the down arrow at the side of the button to see what machine type will be used for your codespace. - ![查看默认计算机类型](/assets/images/help/codespaces/default-machine-type.png) + ![View the default machine type](/assets/images/help/codespaces/default-machine-type.png) {% note %} - **注意**:默认情况下,将选择对存储库有效的资源最少的计算机类型。 + **Note**: The machine type with the lowest resources that are valid for the repository is selected by default. {% endnote %} - * **配置选项** + * **Configure options** - 要为代码空间配置高级选项,例如不同的计算机类型或特定 `devcontainer.json` 文件: + To configure advanced options for your codespace, such as a different machine type or a particular `devcontainer.json` file: - 1. 单击 **Create codespace on BRANCH(在 [分支] 上创建代码空间)**按钮侧面的向下箭头,然后单击 **Configure and create codespace(配置并创建代码空间)**。 - 1. 单击 **Configure and create codespace(配置并创建代码空间)**按钮。 - 1. 在代码空间的选项页面上,从下拉菜单中选择首选选项。 + 1. Click the down arrow at the side of the **Create codespace on BRANCH** button, then click **Configure and create codespace**. + 1. Click the **Configure and create codespace** button. + 1. On the options page for your codespace, choose your preferred options from the drop-down menus. - ![代码空间选项页](/assets/images/help/codespaces/advanced-options.png) + ![The codespace options page](/assets/images/help/codespaces/advanced-options.png) {% note %} **注:** - * 您可以为选项页面添加书签,以便快速为此存储库和分支创建代码空间。 - * [https://github.com/codespaces/new](https://github.com/codespaces/new) 页面提供了一种为任何存储库和分支创建代码空间的快速方法。 You can get to this page quickly by typing `codespace.new` into your browser's address bar. - * 有关 `devcontainer.json` 文件的详细信息,请参阅“[开发容器简介](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#devcontainerjson)”。 - * 有关计算机类型的详细信息,请参阅“[更改代码空间的计算机类型](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace#about-machine-types)”。 + * You can bookmark the options page to give you a quick way to create a codespace for this repository and branch. + * The [https://github.com/codespaces/new](https://github.com/codespaces/new) page provides a quick way to create a codespace for any repository and branch. You can get to this page quickly by typing `codespace.new` into your browser's address bar. + * For more information about the `devcontainer.json` file, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#devcontainerjson)." + * For more information about machine types, see "[Changing the machine type for your codespace](/codespaces/customizing-your-codespace/changing-the-machine-type-for-your-codespace#about-machine-types)." * {% data reusables.codespaces.codespaces-machine-type-availability %} {% endnote %} - 1. 单击 **Start session(开始会话)**。 + 1. Click **Start session**. {% endwebui %} @@ -129,7 +126,7 @@ shortTitle: 创建代码空间 {% data reusables.cli.cli-learn-more %} -要创建新的代码空间,请使用 `gh codespace create` 子命令。 +To create a new codespace, use the `gh codespace create` subcommand. ```shell gh codespace create @@ -137,17 +134,17 @@ gh codespace create You are prompted to choose a repository, a branch, a dev container configuration file (if more than one is available), and a machine type (if more than one is available). -或者,您可以使用标志来指定部分或全部选项: +Alternatively, you can use flags to specify some or all of the options: ```shell gh codespace create -r owner/repo -b branch --devcontainer-path path -m machine-type ``` -In this example, replace `owner/repo` with the repository identifier. 将 `branch` 替换为您希望在代码空间中最初检出的分支的名称或提交的完整 SHA 哈希。 如果使用 `-r` 标志而不使用 `b` 标志,则将从默认分支创建代码空间。 +In this example, replace `owner/repo` with the repository identifier. Replace `branch` with the name of the branch, or the full SHA hash of the commit, that you want to be initially checked out in the codespace. If you use the `-r` flag without the `b` flag, the codespace is created from the default branch. Replace `path` with the path to the dev container configuration file you want to use for the new codespace. If you omit this flag and more than one dev container file is available you will be prompted to choose one from a list. For more information about the dev container configuration file, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers)." -将 `machine-type` 替换为可用计算机类型的有效标识符。 标识符是字符串,例如:`basicLinux32gb` 和 `standardLinux32gb`。 可用的计算机类型取决于仓库、您的个人帐户和您的位置。 如果输入无效或不可用的计算机类型,则错误消息中将显示可用类型。 如果省略此标志,并且有多个计算机类型可用,系统将提示您从列表中选择一个计算机类型。 +Replace `machine-type` with a valid identifier for an available machine type. Identifiers are strings such as: `basicLinux32gb` and `standardLinux32gb`. The type of machines that are available depends on the repository, your personal account, and your location. If you enter an invalid or unavailable machine type, the available types are shown in the error message. If you omit this flag and more than one machine type is available you will be prompted to choose one from a list. For full details of the options for this command, see [the {% data variables.product.prodname_cli %} manual](https://cli.github.com/manual/gh_codespace_create). diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md new file mode 100644 index 0000000000..cb601c4d9d --- /dev/null +++ b/translations/zh-CN/content/codespaces/developing-in-codespaces/getting-started-with-github-codespaces-for-machine-learning.md @@ -0,0 +1,120 @@ +--- +title: Getting started with GitHub Codespaces for machine learning +shortTitle: Machine learning +intro: 'Learn about working on machine learning projects with {% data variables.product.prodname_github_codespaces %} and its out-of-the-box tools.' +product: '{% data reusables.gated-features.codespaces %}' +versions: + fpt: '*' + ghec: '*' +type: tutorial +topics: + - Codespaces + - Developer +--- + +## 简介 + +This guide introduces you to machine learning with {% data variables.product.prodname_github_codespaces %}. You’ll build a simple image classifier, learn about some of the tools that come preinstalled in {% data variables.product.prodname_github_codespaces %}, configure your development environment for NVIDIA CUDA, and use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab. + +## Prerequisite + +You have access to {% data variables.product.prodname_github_codespaces %}. 更多信息请参阅“[创建代码空间](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)”。 + +## Build a simple image classifier + +We'll use a Jupyter notebook to build a simple image classifier. + +Jupyter notebooks are sets of cells that you can execute one after another. The notebook we'll use includes a number of cells that build an image classifier using [PyTorch](https://pytorch.org/). Each cell is a different phase of that process: download a dataset, set up a neural network, train a model, and then test that model. + +We'll run all of the cells, in sequence, to perform all phases of building the image classifier. When we do this Jupyter saves the output back into the notebook so that you can examine the results. + +### Creating a repository and a codespace + +1. Go to the [github/codespaces-getting-started-ml](https://github.com/github/codespaces-getting-started-ml) template repository and click **Use this template**. +{% data reusables.codespaces.open-codespace-from-template-repo %} + + By default, a codespace for this repository opens in a web-based version of {% data variables.product.prodname_vscode %}. + +### Open the image classifier notebook + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes a set of machine learning libraries that are preinstalled in your codespace. For example, Numpy, pandas, SciPy, Matplotlib, seaborn, scikit-learn, TensorFlow, Keras, PyTorch, Requests, and Plotly. For more information about the default image, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#using-the-default-dev-container-configuration)" and [the `devcontainers/images` repository](https://github.com/devcontainers/images/tree/main/src/codespaces#github-codespaces-default-linux-universal). + +1. In the {% data variables.product.prodname_vscode_shortname %} editor, close any "Get Started" tabs that are displayed. +1. Open the `image-classifier.ipynb` notebook file. +1. Click the Python kernel link at the top right of the editor. + + ![Screenshot of the Python kernal link](/assets/images/help/codespaces/jupyter-python-kernel-link.png) + +1. In the drop-down menu, choose the kernel in the directory `/opt/python/latest/bin/python`. + + ![Screenshot of the Python kernal drop-down menu](/assets/images/help/codespaces/jupyter-python-kernel-dropdown.png) + +### Build the image classifier + +The image classifier notebook contains all the code you need to download a dataset, train a neural network, and evaluate its performance. + +1. Click **Run All** to execute all of the notebook’s cells. + + ![Screenshot of the Run All button](/assets/images/help/codespaces/jupyter-run-all.png) + +1. Scroll down to view the output of each cell. + + ![Screenshot of Step 3 in the editor](/assets/images/help/codespaces/jupyter-notebook-step3.png) + +## Configure NVIDIA CUDA for your codespace + +Some software, such as TensorFlow, requires you to install NVIDIA CUDA to use your codespace’s GPU. Where this is the case, you can create your own custom configuration, by using a `devcontainer.json` file, and specify that CUDA should be installed. For more information on creating a custom configuration, see "[Introduction to dev containers](/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers#creating-a-custom-dev-container-configuration)." + +{% note %} + +**Note**: For full details of the script that's run when you add the `nvidia-cuda` feature, see [the devcontainers/features repository](https://github.com/devcontainers/features/tree/main/src/nvidia-cuda). + +{% endnote %} + +1. Within a codespace, open the `.devcontainer/devcontainer.json` file in the editor. +1. Add a top-level `features` object with the following contents: + + ```json{:copy} + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + ``` + + For more information about the `features` object, see the [development containers specification](https://containers.dev/implementors/features/#devcontainer-json-properties). + + If you are using the `devcontainer.json` file from the image classifier repository you created for this tutorial, your `devcontainer.json` file will now look like this: + + ``` + { + "customizations": { + "vscode": { + "extensions": [ + "ms-python.python", + "ms-toolsai.jupyter" + ] + } + }, + “features”: { + "ghcr.io/devcontainers/features/nvidia-cuda:1": { + "installCudnn": true + } + } + } + ``` + +1. Save the change. +{% data reusables.codespaces.rebuild-command %} + The codespace container will be rebuilt. This will take several minutes. When the rebuild is complete the codespace is automatically reopened. +1. Commit the change to the repository so that CUDA will be installed in any new codespaces you create from this repository in future. + +## Open your codespace in JupyterLab + +The default container image that's used by {% data variables.product.prodname_github_codespaces %} includes JupyterLab, the web-based Jupyter IDE. You can use {% data variables.product.prodname_cli %} to open your codespace in JupyterLab without having to install anything else on your codespace. + +1. In the terminal, enter the {% data variables.product.prodname_cli %} command `gh cs jupyter`. +1. Choose the codespace you want to open. + + ![Screenshot of opening a codespace from the terminal](/assets/images/help/codespaces/open-codespace-in-jupyter.png) + diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md index d6a331fdbd..07c43accbf 100644 --- a/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md +++ b/translations/zh-CN/content/codespaces/developing-in-codespaces/index.md @@ -18,6 +18,7 @@ children: - /forwarding-ports-in-your-codespace - /default-environment-variables-for-your-codespace - /connecting-to-a-private-network + - /getting-started-with-github-codespaces-for-machine-learning - /using-github-codespaces-in-visual-studio-code - /using-github-codespaces-with-github-cli --- diff --git a/translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md b/translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md index c60f982d9a..99fe098d58 100644 --- a/translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md +++ b/translations/zh-CN/content/codespaces/developing-in-codespaces/renaming-a-codespace.md @@ -27,7 +27,9 @@ To find the display name of a codespace: ![Screenshot of the Remote Explorer in VS Code](/assets/images/help/codespaces/codespaces-remote-explorer.png) +{% indented_data_reference reusables.codespaces.remote-explorer spaces=2 %} - In a terminal window on your local machine, use this {% data variables.product.prodname_cli %} command: `gh codespace list`. + ### Permanent codespace names In addition to the display name, when you create a codespace, a permanent name is also assigned to the codespace. The name is a combination of your {% data variables.product.company_short %} handle, the repository name, and some random characters. 例如: `octocat-myrepo-gmc7`。 You can't change this name. diff --git a/translations/zh-CN/content/codespaces/getting-started/deep-dive.md b/translations/zh-CN/content/codespaces/getting-started/deep-dive.md index e6c2ba9006..685ff9360a 100644 --- a/translations/zh-CN/content/codespaces/getting-started/deep-dive.md +++ b/translations/zh-CN/content/codespaces/getting-started/deep-dive.md @@ -73,7 +73,7 @@ topics: ### 关闭或停止代码空间 -要停止代码空间,您可以 [使用 {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows))。 如果在未运行停止命令的情况下退出代码空间(例如,关闭浏览器选项卡),或者让代码空间在没有交互的情况下运行,则代码空间及其正在运行的进程将继续运行,直到出现不活动窗口,之后代码空间将停止。 默认情况下,不活动窗口为 30 分钟。 +To stop your codespace you can [use the {% data variables.product.prodname_vscode_command_palette %}](/codespaces/codespaces-reference/using-the-vs-code-command-palette-in-codespaces#suspending-or-stopping-a-codespace) (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)). 如果在未运行停止命令的情况下退出代码空间(例如,关闭浏览器选项卡),或者让代码空间在没有交互的情况下运行,则代码空间及其正在运行的进程将继续运行,直到出现不活动窗口,之后代码空间将停止。 默认情况下,不活动窗口为 30 分钟。 关闭或停止代码空间时,将保留所有未提交的更改,直到您再次连接到代码空间。 diff --git a/translations/zh-CN/content/codespaces/getting-started/quickstart.md b/translations/zh-CN/content/codespaces/getting-started/quickstart.md index 40de312ef3..adc7543b50 100644 --- a/translations/zh-CN/content/codespaces/getting-started/quickstart.md +++ b/translations/zh-CN/content/codespaces/getting-started/quickstart.md @@ -25,12 +25,7 @@ From this quickstart, you'll learn how to create a codespace, connect to a forwa ## 创建代码空间 1. 导航到 [template repository(模板存储库)](https://github.com/github/haikus-for-codespaces) 并选择 **Use this template(使用此模板)**。 - -1. Choose an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. - -1. 导航到新创建的存储库的主页。 在存储库名称下,使用 **{% octicon "code" aria-label="The code icon" %} 代码**下拉菜单,然后在**Codespaces(代码空间)**选项卡中,单击 **Create codespace on main(在主分支上创建代码空间)**。 - - ![新建代码空间按钮](/assets/images/help/codespaces/new-codespace-button.png) +{% data reusables.codespaces.open-codespace-from-template-repo %} ## 运行应用程序 diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md index 8d8d58ac5a..ff040d9a82 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization.md @@ -1,9 +1,9 @@ --- title: Enabling GitHub Codespaces for your organization -shortTitle: Enable Codespaces -intro: 'You can control which users in your organization can use {% data variables.product.prodname_github_codespaces %}.' +shortTitle: 'Enable {% data variables.product.prodname_codespaces %}' +intro: "You can control which users in your organization can use {% data variables.product.prodname_github_codespaces %} at the organization's expense." product: '{% data reusables.gated-features.codespaces %}' -permissions: 'To manage user permissions for {% data variables.product.prodname_github_codespaces %} for an organization, you must be an organization owner.' +permissions: "To alter an organization's billing settings, you must be an organization owner." redirect_from: - /codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization - /codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization @@ -13,25 +13,23 @@ versions: type: how_to topics: - Codespaces - - Permissions + - Billing - Administrator --- - ## About enabling {% data variables.product.prodname_github_codespaces %} for your organization -Organization owners can control which users in your organization can create and use codespaces. +Organization owners can control which users in your organization can create and use codespaces at the organization's expense. -To use codespaces in your organization, you must do the following: +Only people who can clone a repository can create a codespace for that repository. To allow people to create codespaces for repositories owned by your organization, you must: + +- Ensure that users have at least write access to the repositories where they want to use a codespace. For more information, see "[Managing teams and people with access to your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)." +- Ensure that your organization does not have an IP address allow list enabled. For more information, see "[Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} + +To allow people to create codespaces for which your organization will be billed, you must: -- Ensure that users have [at least write access](/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization) to the repositories where they want to use a codespace. -- [Enable {% data variables.product.prodname_github_codespaces %} for users in your organization](#enable-codespaces-for-users-in-your-organization). You can choose to allow {% data variables.product.prodname_codespaces %} for selected users or only for specific users. - [Set a spending limit](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces) -- Ensure that your organization does not have an IP address allow list enabled. For more information, see "[Managing allowed IP addresses for your organization](/{% ifversion fpt %}enterprise-cloud@latest/{% endif %}organizations/keeping-your-organization-secure/managing-allowed-ip-addresses-for-your-organization#using-github-actions-with-an-ip-allow-list){% ifversion fpt %}" in the {% data variables.product.prodname_ghe_cloud %} documentation.{% else %}."{% endif %} - -By default, a codespace can only access the repository from which it was created. If you want codespaces in your organization to be able to access other organization repositories that the codespace creator can access, see "[Managing access and security for {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)." - -## Enable {% data variables.product.prodname_codespaces %} for users in your organization +- [Choose who can create codespaces that are billed to your organization](#choose-who-can-create-codespaces-that-are-billed-to-your-organization) {% ifversion fpt %} {% note %} @@ -40,31 +38,44 @@ By default, a codespace can only access the repository from which it was created {% endnote %} {% endif %} + +By default, a codespace can only access the repository from which it was created. If you want codespaces in your organization to be able to access other organization repositories that the codespace creator can access, see "[Managing repository access for your organization's codespaces](/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces)." + +## Choose who can create codespaces that are billed to your organization + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. Under "User permissions", select one of the following options: +1. Under "Billing," select one of the following options: - * **Selected users** to select specific organization members to use {% data variables.product.prodname_codespaces %}. - * **Allow for all members** to allow all your organization members to use {% data variables.product.prodname_codespaces %}. - * **Allow for all members and outside collaborators** to allow all your organization members as well as outside collaborators to use {% data variables.product.prodname_codespaces %}. + * **Disabled** - Your organization will not be charged for codespace usage. {% data variables.product.prodname_codespaces %} created for your organization's repositories will be billed to the individual users who create them. + * **Selected members** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by selected members will be billed to the organization. + * **All members** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by members of your organization will be billed to the organization. + * **All members and outside collaborators** - {% data variables.product.prodname_codespaces %} created for your organization's repositories by organization members and outside collaborators will be billed to the organization. - ![Radio buttons for "User permissions"](/assets/images/help/codespaces/org-user-permission-settings-outside-collaborators.png) + ![Radio buttons for "Billing"](/assets/images/help/codespaces/codespaces-org-billing-settings.png) {% note %} - **Note:** When you select **Allow for all members and outside collaborators**, all outside collaborators who have been added to specific repositories can create and use {% data variables.product.prodname_codespaces %}. Your organization will be billed for all usage incurred by outside collaborators. For more information on managing outside collaborators, see "[About outside collaborators](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)." + **Note:** When you select **All members and outside collaborators**, all outside collaborators who have been added to specific repositories can create and use {% data variables.product.prodname_codespaces %} for those repositories, and your organization will be billed for this usage. For more information on managing outside collaborators, see "[About outside collaborators](/organizations/managing-access-to-your-organizations-repositories/adding-outside-collaborators-to-repositories-in-your-organization#about-outside-collaborators)." {% endnote %} 1. Click **Save**. +1. If you chose **Selected members**, an input box is displayed for you to enter the names of users you want to select. + + ![Input box for selecting users](/assets/images/help/codespaces/codespaces-org-billing-add-users.png) ## Disabling {% data variables.product.prodname_codespaces %} for your organization +You can prevent the creation and use of codespaces billable to your organization. + +{% data reusables.codespaces.codespaces-disabling-org-billing %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.click-codespaces %} -1. Under "User permissions", select **Disabled**. +1. Under "Billing," select **Disabled**. ## Setting a spending limit diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md index 013b8ed73a..c137d5d4cb 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-billing-for-github-codespaces-in-your-organization.md @@ -35,11 +35,15 @@ redirect_from: ## 禁用或限制 {% data variables.product.prodname_codespaces %} -您可以在组织或存储库中禁用 {% data variables.product.prodname_codespaces %}。 更多信息请参阅“[管理组织的代码空间的存储库访问](/codespaces/managing-codespaces-for-your-organization/managing-access-and-security-for-your-organizations-codespaces)”。 +You can disable all use of {% data variables.product.prodname_github_codespaces %} that would be billed to your organization. Alternatively, you can specify which organization members or collaborators can use {% data variables.product.prodname_codespaces %} at your organization's expense. 更多信息请参阅“[为组织启用 {% data variables.product.prodname_github_codespaces %}](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization)”。 -您还可以限制可以使用 {% data variables.product.prodname_codespaces %} 的单个用户。 更多信息请参阅“[管理组织的用户权限](/codespaces/managing-codespaces-for-your-organization/managing-user-permissions-for-your-organization)”。 +{% data reusables.codespaces.codespaces-disabling-org-billing %} -您可以限制可用于组织拥有的存储库的计算机类型选择。 这使您可以防止人们使用资源过多的计算机作为其代码空间。 更多信息请参阅“[限制对机器类型的访问](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)”。 +You can configure which repositories can be accessed from codespaces created for a particular repository. 更多信息请参阅“[管理代码空间中对其他存储库的访问](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)”。 + +You can limit the choice of types of machine that are available for codespaces created from repositories owned by your organization. This allows you to prevent people using overly resourced machines for their codespaces, and incurring unnecessary charges. 更多信息请参阅“[限制对机器类型的访问](/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types)”。 + +You can also restrict how long a codespace can remain unused before it is automatically deleted. This can help to reduce storage costs for {% data variables.product.prodname_codespaces %}. 更多信息请参阅“[限制代码空间的保留期](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)”。 ## 删除未使用的代码空间 @@ -47,6 +51,6 @@ redirect_from: {% note %} -**注意:**只有创建代码空间的人才能将其删除。 目前,组织所有者无法删除其组织内创建的代码空间。 +**Note:** Codespaces are automatically deleted after they have been stopped and have remained inactive for a defined number of days. 更多信息请参阅“[限制代码空间的保留期](/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces)”。 A codespace can only be manually deleted by the person who created the codespace. {% endnote %} diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md index 4a1d730e30..6ed526bda6 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/managing-repository-access-for-your-organizations-codespaces.md @@ -20,7 +20,7 @@ redirect_from: {% warning %} -**Deprecation note**: The access and security setting described below is now deprecated and is documented here for reference only. 要启用对其他存储库的扩展访问权限,请将请求的权限添加到开发容器定义中。 更多信息请参阅“[管理代码空间中对其他存储库的访问](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)”。 +**Deprecation note**: The access and security setting described below is now deprecated and is documented here for reference only. To enable expanded access to other repositories, add the requested permissions to your `devcontainer.json` configuration file. 更多信息请参阅“[管理代码空间中对其他存储库的访问](/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces)”。 {% endwarning %} diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md index 8f5b7859ab..7aeeca7a28 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-access-to-machine-types.md @@ -43,6 +43,8 @@ topics: 如果添加组织范围的策略,则应将其设置为可用于组织中任何存储库的最大计算机类型选择范围。 然后,您可以添加特定于存储库的策略以进一步限制选择。 +{% data reusables.codespaces.codespaces-org-policies-note %} + ## 添加策略以限制可用的计算机类型 {% data reusables.profile.access_org %} diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md index 378aadb5c4..9c949fd36f 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-idle-timeout-period.md @@ -40,6 +40,8 @@ topics: 如果添加具有超时约束的组织范围策略,则应将超时设置为可接受的最长期限。 然后,您可以添加单独的策略,将组织中特定存储库的最大超时时间设置为较短的时间段。 +{% data reusables.codespaces.codespaces-org-policies-note %} + ## 添加策略以设置最大空闲超时期限 {% data reusables.profile.access_org %} diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md index eb1e426089..fa311c168f 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-retention-period-for-codespaces.md @@ -26,6 +26,8 @@ topics: 如果添加具有保留约束的组织范围策略,则应将保留期设置为可接受的最长期限。 然后,您可以添加单独的策略,将组织中特定存储库的最大保留期设置为较短的时间段。 +{% data reusables.codespaces.codespaces-org-policies-note %} + ## 添加策略以设置最大代码空间保留期 {% data reusables.profile.access_org %} diff --git a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md index 53eae0a4cb..dd31d3f907 100644 --- a/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md +++ b/translations/zh-CN/content/codespaces/managing-codespaces-for-your-organization/restricting-the-visibility-of-forwarded-ports.md @@ -36,6 +36,8 @@ topics: 如果添加组织范围的策略,则应将其设置为适用于组织中的任何存储库的最宽松的可见性选项。 然后,您可以添加特定于存储库的策略以进一步限制选择。 +{% data reusables.codespaces.codespaces-org-policies-note %} + ## 添加策略以限制端口可见性选项 {% data reusables.profile.access_org %} diff --git a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md index 485b1341ab..c68bb1876d 100644 --- a/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md +++ b/translations/zh-CN/content/codespaces/setting-up-your-project-for-codespaces/introduction-to-dev-containers.md @@ -155,9 +155,9 @@ RUN apt-get update && bash /tmp/library-scripts/github-debian.sh 您可以通过在配置预定义容器时选择一些最常用的功能来添加这些功能。 有关可用功能的详细信息,请参阅 `vscode-dev-containers` 存储库中的[脚本库](https://github.com/microsoft/vscode-dev-containers/tree/main/script-library#scripts) 。 -1. 访问命令面板 (`Shift + Command + P` / `Ctrl + Shift + P`),然后开始键入 "configure"。 选择 **Codespaces: Configure Devcontainer Features(代码空间:配置开发容器功能)**。 +1. Access the Command Palette (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "configure". 选择 **Codespaces: Configure Devcontainer Features(代码空间:配置开发容器功能)**。 - ![命令面板中的 Configure Devcontainer Features 命令](/assets/images/help/codespaces/codespaces-configure-features.png) + ![The Configure Devcontainer Features command in the Command Palette](/assets/images/help/codespaces/codespaces-configure-features.png) 1. 更新您的功能选择,然后单击**确定**。 @@ -165,7 +165,7 @@ RUN apt-get update && bash /tmp/library-scripts/github-debian.sh 1. 要应用更改,请在屏幕右下角单击 **Rebuild now(立即重建)**。 有关重建容器的更多信息,请参阅“[应用对配置的更改](#applying-configuration-changes-to-a-codespace)”。 - ![命令面板中的"Codespaces:重建容器"](/assets/images/help/codespaces/rebuild-prompt.png) + !["Codespaces: Rebuild Container" in the Command Palette](/assets/images/help/codespaces/rebuild-prompt.png) ## 创建自定义开发容器配置 diff --git a/translations/zh-CN/content/codespaces/troubleshooting/github-codespaces-logs.md b/translations/zh-CN/content/codespaces/troubleshooting/github-codespaces-logs.md index 788b32e4ca..abe4aee2e9 100644 --- a/translations/zh-CN/content/codespaces/troubleshooting/github-codespaces-logs.md +++ b/translations/zh-CN/content/codespaces/troubleshooting/github-codespaces-logs.md @@ -28,7 +28,7 @@ redirect_from: {% webui %} 1. 如果在浏览器中使用 {% data variables.product.prodname_codespaces %} ,请确保已连接到要调试的代码空间。 -1. 打开 {% data variables.product.prodname_vscode %} 命令面板 (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) ,然后键入 **Export logs**。 从列表中选择 **odespaces: Export Logs(代码空间:导出日志)**以下载日志。 +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. 从列表中选择 **odespaces: Export Logs(代码空间:导出日志)**以下载日志。 1. 定义保存日志 zip 存档的位置,然后单击 **Save(保存)**(桌面),或单击 **OK(确定)** (web)。 1. 如果在浏览器中使用 {% data variables.product.prodname_codespaces %} ,请右键单击资源管理器视图中日志的 zip 存档,然后选择 **Download…(下载…)**将其下载到本地计算机。 @@ -36,7 +36,7 @@ redirect_from: {% vscode %} -1. 打开 {% data variables.product.prodname_vscode %} 命令面板 (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) ,然后键入 **Export logs**。 从列表中选择 **odespaces: Export Logs(代码空间:导出日志)**以下载日志。 +1. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Export logs**. 从列表中选择 **odespaces: Export Logs(代码空间:导出日志)**以下载日志。 1. 定义保存日志 zip 存档的位置,然后单击 **Save(保存)**(桌面),或单击 **OK(确定)** (web)。 {% endvscode %} @@ -55,7 +55,7 @@ redirect_from: {% webui %} 1. 连接到要调试的代码空间。 -2. 打开 {% data variables.product.prodname_vscode_command_palette %} (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)) ,然后键入 **Creation logs**。 从列表中选择 **Codespaces: View Creation Log(代码空间:查看创建日志)**以打开 `creation.log` 文件。 +2. Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. 从列表中选择 **Codespaces: View Creation Log(代码空间:查看创建日志)**以打开 `creation.log` 文件。 如果要与支持人员共享日志,可以将创建日志中的文本复制到文本编辑器中,并将文件保存在本地。 @@ -63,7 +63,7 @@ redirect_from: {% vscode %} -打开命令面板 (`Shift + Command + P` (Mac) / `Ctrl + Shift + P` (Windows)),然后键入 **Creation logs**。 从列表中选择 **Codespaces: View Creation Log(代码空间:查看创建日志)**以打开 `creation.log` 文件。 +Open the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)) and type **Creation logs**. 从列表中选择 **Codespaces: View Creation Log(代码空间:查看创建日志)**以打开 `creation.log` 文件。 如果要与支持人员共享日志,可以将创建日志中的文本复制到文本编辑器中,并将文件保存在本地。 diff --git a/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md b/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md index bacc92219c..722c8cf4cb 100644 --- a/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md +++ b/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-creation-and-deletion-of-codespaces.md @@ -1,5 +1,5 @@ --- -title: 代码空间的创建和删除疑难解答 +title: Troubleshooting creation and deletion of codespaces intro: 本文提供了在创建或删除代码空间时可能遇到的常见问题(包括存储和配置问题)的疑难解答步骤。 product: '{% data reusables.gated-features.codespaces %}' versions: @@ -16,6 +16,8 @@ shortTitle: 创建和删除 ### 没有创建代码空间的权限 {% data variables.product.prodname_codespaces %} 并非对所有存储库都可用。 如果缺少“Open with Codespaces(使用 Codespaces 打开)”按钮,则 {% data variables.product.prodname_github_codespaces %} 可能不适用于该存储库。 更多信息请参阅“[创建代码空间](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-codespaces)”。 +You can't create a codespace for a private repository that is owned by an organization, unless you have write access to the repository or the organization has enabled forking for it. + 如果您认为您的组织已启用 [ {% data variables.product.prodname_codespaces %}](/codespaces/managing-codespaces-for-your-organization/enabling-codespaces-for-your-organization#about-enabling-codespaces-for-your-organization),请确保组织所有者或帐单管理员已设置 {% data variables.product.prodname_codespaces %} 的支出限制。 更多信息请参阅“[管理 {% data variables.product.prodname_codespaces %} 的支出限制](/billing/managing-billing-for-github-codespaces/managing-spending-limits-for-codespaces)”。 ### 代码空间在创建时未打开 diff --git a/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md b/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md index d5a3127bb4..94ee61efa0 100644 --- a/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md +++ b/translations/zh-CN/content/codespaces/troubleshooting/troubleshooting-your-connection-to-github-codespaces.md @@ -18,7 +18,7 @@ redirect_from: Codespaces are set to stop after 30 minutes without any activity. If you try to interact with a codespace after it has stopped, you may see a `503 service unavailable` error. - If a **Start** button is shown in {% data variables.product.prodname_vscode %} or in your browser window, click **Start** to reconnect to the codespace. -- Reset your codespace by reloading the window. From the [command palette](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) in {% data variables.product.prodname_vscode %}, click **Developer: Reload Window**. +- Reset your codespace by reloading the window. From the [Command Palette](/codespaces/codespaces-reference/using-the-command-palette-in-codespaces#accessing-the-command-palette) in {% data variables.product.prodname_vscode %}, click **Developer: Reload Window**. ## Browser cannot connect diff --git a/translations/zh-CN/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md b/translations/zh-CN/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md index c245c0e369..fab8cd9dd6 100644 --- a/translations/zh-CN/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md +++ b/translations/zh-CN/content/codespaces/troubleshooting/working-with-support-for-github-codespaces.md @@ -31,6 +31,7 @@ redirect_from: 每个代码空间还有一个 ID(标识符)。 默认情况下,这在 {% data variables.product.prodname_vscode %} 中不显示,因此您可能需要先更新 {% data variables.product.prodname_github_codespaces %} 扩展的设置,然后才能访问该 ID。 1. 在 {% data variables.product.prodname_vscode %}、浏览器或桌面中的左侧活动栏中,单击 **Remote Explorer(远程资源管理器)**以显示代码空间的详细信息。 -2. 如果侧边栏包含“Codespace Performance(代码空间性能)”部分,请将鼠标悬停在“Codespace ID(代码空间 ID)”上,然后单击剪贴板图标以复制 ID。 -3. 如果未显示信息,请单击活动栏左下角的 {% octicon "gear" aria-label="The gear icon" %} 以显示“Settings(设置)”选项卡。 -4. 展开 **Extensions(扩展)**,然后单击 **{% data variables.product.prodname_github_codespaces %}** 以显示扩展的设置。 然后启用 **Show Performance Explorer(显示性能资源管理器)**在边栏中显示“Codespace Performance(代码空间性能)”部分。 ![显示性能信息所需的代码空间 ID 和设置](/assets/images/help/codespaces/find-codespace-id.png) +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} +1. 如果侧边栏包含“Codespace Performance(代码空间性能)”部分,请将鼠标悬停在“Codespace ID(代码空间 ID)”上,然后单击剪贴板图标以复制 ID。 +1. 如果未显示信息,请单击活动栏左下角的 {% octicon "gear" aria-label="The gear icon" %} 以显示“Settings(设置)”选项卡。 +1. 展开 **Extensions(扩展)**,然后单击 **{% data variables.product.prodname_github_codespaces %}** 以显示扩展的设置。 然后启用 **Show Performance Explorer(显示性能资源管理器)**在边栏中显示“Codespace Performance(代码空间性能)”部分。 ![显示性能信息所需的代码空间 ID 和设置](/assets/images/help/codespaces/find-codespace-id.png) diff --git a/translations/zh-CN/content/developers/apps/building-github-apps/authenticating-with-github-apps.md b/translations/zh-CN/content/developers/apps/building-github-apps/authenticating-with-github-apps.md index 1990deb499..48bfe36d8f 100644 --- a/translations/zh-CN/content/developers/apps/building-github-apps/authenticating-with-github-apps.md +++ b/translations/zh-CN/content/developers/apps/building-github-apps/authenticating-with-github-apps.md @@ -147,18 +147,24 @@ $ curl -i -X POST \ ```shell $ curl -i \ --H "Authorization: token YOUR_INSTALLATION_ACCESS_TOKEN" \ +-H "Authorization: Bearer YOUR_INSTALLATION_ACCESS_TOKEN" \ -H "Accept: application/vnd.github+json" \ {% data variables.product.api_url_pre %}/installation/repositories ``` `YOUR_INSTALLATION_ACCESS_TOKEN` 是必须替换的值。 +{% note %} + +**注意:**{% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + ## 作为安装访问 API 端点 有关适用于使用安装访问令牌的 {% data variables.product.prodname_github_apps %} 的 REST API 端点列表,请参阅“[可用端点](/rest/overview/endpoints-available-for-github-apps)。” -有关与安装相关的端点的列表,请参阅“[安装](/rest/reference/apps#installations)。” +For a list of endpoints related to installations, see "[Installations](/rest/reference/apps#installations)." ## 由安装验证基于 HTTP 的 Git 访问权限 diff --git a/translations/zh-CN/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md b/translations/zh-CN/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md index d2e6929c10..1b0d289fb5 100644 --- a/translations/zh-CN/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md +++ b/translations/zh-CN/content/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps.md @@ -108,13 +108,13 @@ shortTitle: 识别和授权用户 用户的访问令牌允许 GitHub 应用程序代表用户向 API 发出请求。 - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user 例如,您可以像以下这样在 curl 中设置“授权”标头: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## 设备流程 @@ -133,12 +133,12 @@ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre 获得用户的 OAuth 令牌后,您可以检查该用户可以访问哪些安装。 - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations 您还可以检查用户可以访问哪些仓库进行安装。 - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET /user/installations/:installation_id/repositories 更多信息请参阅:[列出用户访问令牌可访问的应用程序安装](/rest/apps#list-app-installations-accessible-to-the-user-access-token)和[列出用户访问令牌可访问的仓库](/rest/apps#list-repositories-accessible-to-the-user-access-token)。 diff --git a/translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md b/translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md index d0e1dd4592..52e1519479 100644 --- a/translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md +++ b/translations/zh-CN/content/developers/apps/building-github-apps/managing-allowed-ip-addresses-for-a-github-app.md @@ -23,6 +23,8 @@ When an organization has an allow list, third-party applications that connect vi ## Adding an IP address allow list to a {% data variables.product.prodname_github_app %} +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.apps.settings-step %} {% data reusables.user-settings.developer_settings %} {% data reusables.user-settings.github_apps %} diff --git a/translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md b/translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md index ca89fbc56b..f864c2ad9a 100644 --- a/translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md +++ b/translations/zh-CN/content/developers/apps/building-github-apps/rate-limits-for-github-apps.md @@ -1,5 +1,5 @@ --- -title: Rate limits for GitHub Apps +title: GitHub 应用程序的速率限制 intro: '{% data reusables.shortdesc.rate_limits_github_apps %}' redirect_from: - /early-access/integrations/rate-limits @@ -14,7 +14,7 @@ versions: ghec: '*' topics: - GitHub Apps -shortTitle: Rate limits +shortTitle: 速率限制 --- {% data reusables.enterprise.rate_limit %} @@ -23,49 +23,49 @@ shortTitle: Rate limits {% ifversion ghec or fpt %} -## About rate limits for apps +## 关于应用程序的速率限制 -Rate limits for {% data variables.product.prodname_github_apps %} and {% data variables.product.prodname_oauth_apps %} depend on the plan for the organization where you install the application. For more information, see "[{% data variables.product.company_short %}'s products](/get-started/learning-about-github/githubs-products)" and "[Types of {% data variables.product.company_short %} accounts](/get-started/learning-about-github/types-of-github-accounts#organization-accounts)." +{% data variables.product.prodname_github_apps %} 和 {% data variables.product.prodname_oauth_apps %} 的速率限制取决于安装应用程序的组织的计划。 更多信息请参阅“[{% data variables.product.company_short %} 的产品](/get-started/learning-about-github/githubs-products)”和“[{% data variables.product.company_short %} 帐户类型](/get-started/learning-about-github/types-of-github-accounts#organization-accounts)”。 {% endif %} -## Server-to-server requests +## 服务器到服务器请求 {% ifversion ghec or fpt %} -### Default server-to-server rate limits for {% data variables.product.prodname_dotcom_the_website %} +### {% data variables.product.prodname_dotcom_the_website %} 的默认服务器到服务器速率限制 {% endif %} -{% data variables.product.prodname_github_apps %} making server-to-server requests use the installation's minimum rate limit of 5,000 requests per hour. If an application is installed on an organization with more than 20 users, the application receives another 50 requests per hour for each user. Installations that have more than 20 repositories receive another 50 requests per hour for each repository. The maximum rate limit for an installation is 12,500 requests per hour. +发出服务器-服务器请求的 {% data variables.product.prodname_github_apps %} 使用安装的最低速率限制为每小时 5,000 个请求。 如果应用程序安装在具有 20 个以上用户的组织中,则该应用程序每小时为每个用户再接收 50 个请求。 具有 20 个以上仓库的安装每小时会为每个仓库再接收 50 个请求。 安装的最大速率限制为每小时 12,500 个请求。 {% ifversion fpt or ghec %} -### Server-to-server rate limits for {% data variables.product.prodname_ghe_cloud %} +### {% data variables.product.prodname_ghe_cloud %} 的服务器到服务器速率限制 {% endif %} {% ifversion fpt or ghec %} -{% data variables.product.prodname_github_apps %} that are installed on an organization or a repository within an enterprise on {% data variables.product.product_location %} are subject to a limit of 15,000 requests per hour. +{% data variables.product.prodname_github_apps %} that are installed on an organization within an enterprise on {% data variables.product.product_location %} are subject to a limit of 15,000 requests per hour per organization that has installed the app. {% endif %} -## User-to-server requests +## 用户到服务器请求 -{% data variables.product.prodname_github_apps %} and {% data variables.product.prodname_oauth_apps %} can also act on behalf of a user, making user-to-server requests after the user authorizes the app. For more information, see "[Authorizing {% data variables.product.prodname_github_apps %}](/authentication/keeping-your-account-and-data-secure/authorizing-github-apps)" and "[Authorizing {% data variables.product.prodname_oauth_apps %}](/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps)." +{% data variables.product.prodname_github_apps %} 和 {% data variables.product.prodname_oauth_apps %} 还可以代表用户执行操作,在用户授权应用后发出用户到服务器的请求。 更多信息请参阅“[授权 {% data variables.product.prodname_github_apps %}](/authentication/keeping-your-account-and-data-secure/authorizing-github-apps)”和“[授权 {% data variables.product.prodname_oauth_apps %}](/authentication/keeping-your-account-and-data-secure/authorizing-oauth-apps)”。 -User-to-server requests from {% data variables.product.prodname_oauth_apps %} are authenticated with an OAuth token. User-to-server requests from {% data variables.product.prodname_github_apps %} are authenticated with either an OAuth token or an expiring user access token. For more information, see "[Identifying and authorizing users for {% data variables.product.prodname_github_apps %}](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps#identifying-and-authorizing-users-for-github-apps)" and "[Authorizing {% data variables.product.prodname_oauth_apps %}](/developers/apps/building-oauth-apps/authorizing-oauth-apps)." +来自 {% data variables.product.prodname_oauth_apps %} 的用户到服务器请求使用 OAuth 令牌进行身份验证。 来自 {% data variables.product.prodname_github_apps %} 的用户到服务器请求使用 OAuth 令牌或即将过期的用户访问令牌进行身份验证。 更多信息请参阅“[识别和授权 {% data variables.product.prodname_github_apps %} 的用户](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps#identifying-and-authorizing-users-for-github-apps)”和“[授权 {% data variables.product.prodname_oauth_apps %}](/developers/apps/building-oauth-apps/authorizing-oauth-apps)”。 {% ifversion fpt or ghec %} -### Default user-to-server rate limits for {% data variables.product.prodname_dotcom_the_website %} +### {% data variables.product.prodname_dotcom_the_website %} 的默认用户到服务器速率限制 {% endif %} {% ifversion ghec %} -The rate limits for user-to-server requests made by {% data variables.product.prodname_github_apps %} depend on where the app is installed. If the app is installed on organizations or repositories owned by an enterprise on {% data variables.product.product_location %}, then the rate is higher than for installations outside an enterprise. +{% data variables.product.prodname_github_apps %} 发出的用户到服务器请求的速率限制取决于应用程序的安装位置。 如果应用程序安装在 {% data variables.product.product_location %} 上由企业拥有的组织或存储库上,则速率高于企业外部的安装。 {% endif %} @@ -73,13 +73,13 @@ The rate limits for user-to-server requests made by {% data variables.product.pr {% ifversion fpt or ghec %} -### User-to-server rate limits for {% data variables.product.prodname_ghe_cloud %} +### {% data variables.product.prodname_ghe_cloud %} 的用户到服务器速率限制 {% data reusables.apps.user-to-server-rate-limits-ghec %} {% endif %} -## Further reading +## 延伸阅读 -- "[Rate limiting](/rest/overview/resources-in-the-rest-api#rate-limiting)" in the REST API documentation -- "[Resource limitations](/graphql/overview/resource-limitations)" in the GraphQL API documentation +- REST API 文档中的“[速率限制](/rest/overview/resources-in-the-rest-api#rate-limiting)” +- GraphQL API 文档中的“[资源限制](/graphql/overview/resource-limitations)” diff --git a/translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md b/translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md index 7c9a710505..9b6ca40f26 100644 --- a/translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md +++ b/translations/zh-CN/content/developers/apps/building-oauth-apps/authorizing-oauth-apps.md @@ -107,13 +107,13 @@ Accept: application/xml 访问令牌可用于代表用户向 API 提出请求。 - Authorization: token OAUTH-TOKEN + Authorization: Bearer OAUTH-TOKEN GET {% data variables.product.api_url_code %}/user 例如,您可以像以下这样在 curl 中设置“授权”标头: ```shell -curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user +curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/user ``` ## 设备流程 diff --git a/translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md b/translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md index c3f1afcd31..e4a02df754 100644 --- a/translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md +++ b/translations/zh-CN/content/developers/apps/building-oauth-apps/scopes-for-oauth-apps.md @@ -28,7 +28,7 @@ topics: 检查标头以查看您拥有哪些 OAuth 作用域,以及 API 操作接受什么: ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %}/users/codertocat -I HTTP/2 200 X-OAuth-Scopes: repo, user X-Accepted-OAuth-Scopes: user diff --git a/translations/zh-CN/content/developers/overview/about-githubs-apis.md b/translations/zh-CN/content/developers/overview/about-githubs-apis.md index 1283836233..41ecd4fb28 100644 --- a/translations/zh-CN/content/developers/overview/about-githubs-apis.md +++ b/translations/zh-CN/content/developers/overview/about-githubs-apis.md @@ -15,17 +15,3 @@ topics: --- GitHub API 有两个稳定版本:[REST API](/rest) 和 [GraphQL API](/graphql)。 - -## 已弃用版本 - -### 测试版 - -我们在 2014 年 4 月 22 日弃用了测试版 API。 - -### v2 - -我们在 2012 年 6 月 12 日取消了对 API v2 的支持。 - -### v1 - -我们在 2012 年 6 月 12 日取消了对 API v1 的支持。 diff --git a/translations/zh-CN/content/developers/overview/github-developer-program.md b/translations/zh-CN/content/developers/overview/github-developer-program.md index 9bbfe66e3d..07317a3f40 100644 --- a/translations/zh-CN/content/developers/overview/github-developer-program.md +++ b/translations/zh-CN/content/developers/overview/github-developer-program.md @@ -23,9 +23,9 @@ topics: ## 有适用于 GitHub 的集成? 太棒了! 我们希望您加入计划。 以下是您可以使用的推广方式:

-* [让我们知道您的集成](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration) -* 使用 [Octocat 或 GitHub 徽标](https://github.com/logos)来标识您的产品适用于 GitHub -* 在您的网站上发布有关您的集成的视频或博客 +* [Let us know about your integration](https://support.github.com/contact?tags=rr-general-technical&form[subject]=New+GitHub+Integration). +* 使用 [Octocat 或 GitHub 徽标](https://github.com/logos)来标识您的产品适用于 GitHub. +* 在您的网站上发布有关您的集成的视频或博客. ## 准备加入 GitHub 开发者计划吗? diff --git a/translations/zh-CN/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md b/translations/zh-CN/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md index bc200e0243..863cf93064 100644 --- a/translations/zh-CN/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md +++ b/translations/zh-CN/content/developers/webhooks-and-events/webhooks/securing-your-webhooks.md @@ -37,12 +37,12 @@ $ export SECRET_TOKEN=your_token ## 验证来自 GitHub 的有效负载 -设置密钥令牌后,{% data variables.product.product_name %} 使用它为每个有效负载创建一个哈希签名。 此哈希签名包含在每个请求的标头中,作为 `X-Hub-Signature-256`。 +设置密钥令牌后,{% data variables.product.product_name %} 使用它为每个有效负载创建一个哈希签名。 This hash signature is included with the headers of each request as `x-hub-signature-256`. {% ifversion fpt or ghes or ghec %} {% note %} -**注:** 为了向后兼容,我们还包括使用 SHA-1 哈希函数生成的 `X-Hub-Signature` 标头。 如果可能,我们建议您使用 `X-Hub-Signature-256` 标头以提高安全性。 下面的示例演示使用 `X-Hub-Signature-256` 标头。 +**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. {% endnote %} {% endif %} diff --git a/translations/zh-CN/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md b/translations/zh-CN/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md index 4f13ba2d73..8dde88fa15 100644 --- a/translations/zh-CN/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md +++ b/translations/zh-CN/content/education/explore-the-benefits-of-teaching-and-learning-with-github-education/index.md @@ -9,8 +9,8 @@ redirect_from: versions: fpt: '*' children: - - /use-github-at-your-educational-institution - /github-global-campus-for-students - /github-global-campus-for-teachers + - /use-github-at-your-educational-institution --- diff --git a/translations/zh-CN/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md b/translations/zh-CN/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md index 5d789c03d4..11233a214b 100644 --- a/translations/zh-CN/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md +++ b/translations/zh-CN/content/education/manage-coursework-with-github-classroom/teach-with-github-classroom/connect-a-learning-management-system-to-github-classroom.md @@ -25,23 +25,22 @@ shortTitle: 连接 LMS ## 支持的 LMSes -{% data variables.product.prodname_classroom %} 支持从实施学习工具互操作性 (LTI) 标准的 LMS 导入名册数据。 +{% note %} -- LTI 版本 1.0 和/或 1.1 -- 配置 1.X 的 LTI 名称和角色 +**Note:** {% data variables.product.prodname_classroom %} previously supported import of roster data from LMSes that implement Learning Tools Interoperability (LTI) versions 1.0 and 1.1. On June 30, 2022, the Instructional Management System (IMS) Global Learning Consortium [ended support for LTI versions 1.0 and 1.1](https://www.imsglobal.org/lti-security-announcement-and-deprecation-schedule). In the interest of keeping sensitive student information safe and secure, {% data variables.product.company_short %} has temporarily disabled importing roster data from LTI-compliant LMSes.

-使用 LTI 有助于确保您的信息安全。 LTI 是一个行业标准协议,GitHub Classroom 对 LTI 的使用得到了教学管理系统 (IMS) 全球学习联盟的认证。 更多信息请参阅[学习工具互操作性](https://www.imsglobal.org/activity/learning-tools-interoperability)和 IMS 全球学习联盟网站上的[关于 IMS 全球学习联盟](http://www.imsglobal.org/aboutims.html)。 +Support for the latest version of Learning Tools Interoperability, [LTI 1.3](https://www.imsglobal.org/activity/learning-tools-interoperability), is currently being worked on and will be made available in {% data variables.product.prodname_classroom %} very soon. + +{% endnote %} + +LTI 是一个行业标准协议,GitHub Classroom 对 LTI 的使用得到了教学管理系统 (IMS) 全球学习联盟的认证。 更多信息请参阅[学习工具互操作性](https://www.imsglobal.org/activity/learning-tools-interoperability)和 IMS 全球学习联盟网站上的[关于 IMS 全球学习联盟](http://www.imsglobal.org/aboutims.html)。 {% data variables.product.company_short %} 测试了名册数据从以下 LMS 到 {% data variables.product.prodname_classroom %} 的导入。 -- Canvas - Google Classroom -- Moodle -- Sakai -目前, {% data variables.product.prodname_classroom %} 不支持从 Blackboard 或 Brightspace 导入名册数据. -## 为教室生成配置凭据 +## Connecting to Google Classroom {% data reusables.classroom.sign-into-github-classroom %} {% data reusables.classroom.click-classroom-in-list %} @@ -49,88 +48,15 @@ shortTitle: 连接 LMS 1. 如果您的教室已有名册,您可以更新名册或删除名册并创建新的名册。 - 有关删除和创建名册的更多信息,请参阅“[删除教室名册](/education/manage-coursework-with-github-classroom/manage-classrooms#deleting-a-roster-for-a-classroom)”和“[创建教室名册](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)”。 - 有关更新名册的更多信息,请参阅“[将学生添加到教室的名册](/education/manage-coursework-with-github-classroom/manage-classrooms#adding-students-to-the-roster-for-your-classroom)”。 -1. 在 LMS 列表中,单击您的 LMS。 如果您的 LMS 不受支持,请单击**其他 LMS**。 ![LMS 列表](/assets/images/help/classroom/classroom-settings-click-lms.png) -1. 阅读有关连接 LMS 的操作,然后单击 **连接到 _LMS_**。 -1. 复制用于连接到教室的“消费者密钥”、“共享密钥”和“启动 URL”。 ![复制凭据](/assets/images/help/classroom/classroom-copy-credentials.png) +1. In the list of LMSes, click Google Classroom. ![Google Classroom](/assets/images/help/classroom/classroom-settings-click-google-classroom.png) +1. Sign in to Google, then select the Classroom to link to. -## 配置通用 LMS -您必须为 LMS 配置隐私设置,以允许外部工具接收名册信息。 +## Connecting to Canvas, Moodle, Sakai, and other LMSes -1. 导航到 LMS。 -1. 配置外部工具。 -1. 提供您在 {% data variables.product.prodname_classroom %} 中生成的配置凭据。 - - 消费者密钥 - - 共享机密 - - 启动 URL(有时称为“工具 URL”或类似名称) +Connecting to other LMSes is temporarily unavailable as {% data variables.product.company_short %} updates to Learning Tools Interoperability (LTI) version 1.3. For more information, see "[Supported LMSes](#supported-lmses)." -## 配置 Canvas - -您可以将 {% data variables.product.prodname_classroom %} 配置为 Canvas 的外部应用以将名册数据导入到您的教室。 有关 Canvas 的更多信息,请参阅 [Canvas 网站](https://www.instructure.com/canvas/)。 - -1. 登录到 [Canvas](https://www.instructure.com/canvas/#login)。 -1. 选择要与 {% data variables.product.prodname_classroom %} 集成的 Canvas 课程。 -1. 在左边栏中,单击 **Settings(设置)**。 -1. 单击 **Apps(应用程序)**选项卡。 -1. 单击 **View app configurations(查看应用程序配置)**。 -1. 单击 **+App**。 -1. 选择 **Configuration Type(配置类型)**下拉菜单,然后单击 **By URL(通过 URL)**。 -1. 从 {% data variables.product.prodname_classroom %} 粘贴配置凭据。 更多信息请参阅“[为教室生成配置凭据](#generating-configuration-credentials-for-your-classroom)”。 - - | Canvas 应用程序配置中的字段 | 值或设置 | - |:------------------------- |:-------------------------------------------------------- | - | **消费者密钥** | {% data variables.product.prodname_classroom %} 中的消费者密钥 | - | **共享秘密** | {% data variables.product.prodname_classroom %} 中的共享密钥 | - | **允许此工具访问 IMS 名称和角色预配服务** | 已启用 | - | **配置 URL** | {% data variables.product.prodname_classroom %} 中的启动 URL | - - {% note %} - - **注意**: 如果您在 Canvas 中看不到名为“Allow this tool to access the IMS Names and Role Provisioning Service(允许此工具访问 IMS 名称和角色预配服务)”的复选框,则您的 Canvas 管理员必须联系 Canvas 支持,以为您的 Canvas 帐户启用会员服务配置。 如果不启用此功能,您将无法从 Canvas 同步名册。 更多信息请参阅 Canvas 网站上的[如何联系 Canvas 支持?](https://community.canvaslms.com/t5/Canvas-Basics-Guide/How-do-I-contact-Canvas-Support/ta-p/389767)。 - - {% endnote %} - -1. 单击 **Submit(提交)**。 -1. 在左侧边栏中,单击 **Home(主页)**。 -1. 要提示 Canvas 发送确认电子邮件,请在左侧栏中单击 **GitHub Classroom**。 按照电子邮件中的说明完成链接 {% data variables.product.prodname_classroom %}。 - -## 配置 Moodle - -您可以将 {% data variables.product.prodname_classroom %} 配置为 Moodle 的活动以将名册数据导入到您的教室。 有关 Moodle 的更多信息,请参阅 [Moodle 网站](https://moodle.org)。 - -您必须使用 Moodle 版本 3.0 或更高版本。 - -1. 登录 [Moodle](https://moodle.org/login/)。 -1. 选择要与 {% data variables.product.prodname_classroom %} 集成的 Moodle 课程。 -1. 单击 **Turn editing on(打开编辑)**。 -1. 当希望 {% data variables.product.prodname_classroom %} 在 Moodle 中可用时,单击 **Add an activity or resource(添加活动或资源)**。 -1. 选择 **External tool(外部工具)**并单击 **Add(添加)**。 -1. 在“Activity name(活动名称)”字段中,键入 "GitHub Classroom"。 -1. 在 **Preconfigured tool(预配置的工具)**字段的下拉菜单右侧,单击 **+**。 -1. 在“External tool configuration(外部工具配置)”下,从 {% data variables.product.prodname_classroom %} 粘贴配置凭据。 更多信息请参阅“[为教室生成配置凭据](#generating-configuration-credentials-for-your-classroom)”。 - - | Moodle 应用程序配置中的字段 | 值或设置 | - |:----------------- |:--------------------------------------------------------------------------------------------------------------------------------- | - | **工具名称** | {% data variables.product.prodname_classroom %} - _YOUR CLASSROOM NAME_

**注意**:您可以使用任何名称,但为明确起见,我们建议使用这个值。 | - | **工具 URL** | {% data variables.product.prodname_classroom %} 中的启动 URL | - | **LTI 版本** | LTI 1.0/1.1 | - | **默认启动容器** | 新窗口 | - | **消费者密钥** | {% data variables.product.prodname_classroom %} 中的消费者密钥 | - | **共享机密** | {% data variables.product.prodname_classroom %} 中的共享密钥 | - -1. 滚动到 **Services(服务)**并单击。 -1. 在“IMS LTI Names and Role Provisioning(IMS LTI 名称和角色预配)”的右侧,选择下拉菜单并单击 **Use this service to retrieve members' information as per privacy settings(根据隐私设置使用此服务检索成员的信息)**。 -1. 滚动到 **Privacy(隐私)**并单击。 -1. 在 **Share launcher's name with tool(使用工具共享启动者的名称)**和 **Share launcher's email with tool(使用工具共享启动者的电子邮件)**右侧,选择下拉菜单以单击 **Always(始终)**。 -1. 在页面底部,单击 **Save changes(保存更改)**。 -1. 在 **Preconfigure tool(预配置工具)**菜单中,单击 **GitHub Classroom - _YOUR CLASSROOM NAME_**。 -1. 在“Common module settings(通用模块设置)”下“Availability(可用性)”的右侧,选择下拉菜单并单击 **Hide from students(对学生隐藏)**。 -1. 在页面底部,单击 **Save and return to course(保存并返回课程)**。 -1. 导航到您选择显示 {% data variables.product.prodname_classroom %} 的任何位置,然后单击 {% data variables.product.prodname_classroom %} 活动。 - -## 从 LMS 导入名册 - -有关从将名册从 LMS 导入到 {% data variables.product.prodname_classroom %} 的更多信息,请参阅“[管理教室](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)”。 +In the meantime, you may manually input your roster for your class. For more information about manually importing the roster from your LMS into {% data variables.product.prodname_classroom %}, see "[Manage classrooms](/education/manage-coursework-with-github-classroom/manage-classrooms#creating-a-roster-for-your-classroom)." ## 断开 LMS 连接 diff --git a/translations/zh-CN/content/get-started/exploring-projects-on-github/following-organizations.md b/translations/zh-CN/content/get-started/exploring-projects-on-github/following-organizations.md index 64d7144396..b3e02489ca 100644 --- a/translations/zh-CN/content/get-started/exploring-projects-on-github/following-organizations.md +++ b/translations/zh-CN/content/get-started/exploring-projects-on-github/following-organizations.md @@ -7,15 +7,11 @@ topics: - Profile --- -{% note %} - -**Note:** The ability to follow organizations is currently in public beta and subject to change. - -{% endnote %} +{% data reusables.organizations.follow-organizations-beta %} ## About followers on {% data variables.product.product_name %} -When you follow organizations, you'll see their public activity on your personal dashboard. For more information, see "[About your personal dashboard](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)." +{% data reusables.organizations.about-following-organizations %} For more information, see "[About your personal dashboard](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/about-your-personal-dashboard#staying-updated-with-activity-from-the-community)." You can unfollow an organization if you do not wish to see their {% ifversion fpt or ghec %}public{% endif %} activity on {% data variables.product.product_name %}. diff --git a/translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md b/translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md index 97b049d2de..30a25ec8ae 100644 --- a/translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md +++ b/translations/zh-CN/content/get-started/importing-your-projects-to-github/importing-source-code-to-github/adding-locally-hosted-code-to-github.md @@ -58,11 +58,21 @@ If you have existing source code or repositories stored locally on your computer ![Create New Repository drop-down](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Change the current working directory to your local project. -4. Initialize the local directory as a Git repository. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Add the files in your new local repository. This stages them for the first commit. + ```shell $ git add . # Adds the files in the local repository and stages them for commit. {% data reusables.git.unstage-codeblock %} @@ -95,10 +105,19 @@ If you have existing source code or repositories stored locally on your computer ![Create New Repository drop-down](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Change the current working directory to your local project. -4. Initialize the local directory as a Git repository. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Add the files in your new local repository. This stages them for the first commit. ```shell $ git add . @@ -132,10 +151,19 @@ If you have existing source code or repositories stored locally on your computer ![Create New Repository drop-down](/assets/images/help/repository/repo-create.png) {% data reusables.command_line.open_the_multi_os_terminal %} 3. Change the current working directory to your local project. -4. Initialize the local directory as a Git repository. - ```shell - $ git init -b main - ``` +4. Use the `init` command to initialize the local directory as a Git repository. By default, the initial branch is called `master`. + + If you’re using Git 2.28.0 or a later version, you can set the name of the default branch using `-b`. + + ``` shell + $ git init -b main + ``` + + If you’re using Git 2.27.1 or an earlier version, you can set the name of the default branch using `&& git branch -m`. + + ``` shell + $ git init && git branch -m main + ``` 5. Add the files in your new local repository. This stages them for the first commit. ```shell $ git add . diff --git a/translations/zh-CN/content/get-started/quickstart/be-social.md b/translations/zh-CN/content/get-started/quickstart/be-social.md index 496c283694..fe037d3c37 100644 --- a/translations/zh-CN/content/get-started/quickstart/be-social.md +++ b/translations/zh-CN/content/get-started/quickstart/be-social.md @@ -58,7 +58,23 @@ topics: ![切换帐户上下文下拉列表](/assets/images/help/overview/dashboard-contextswitcher.png) -### 在 {% data variables.product.prodname_dotcom %} 上探索其他项目 +{% ifversion for-you-feed %} + +## 关注组织 + +{% data reusables.organizations.follow-organizations-beta %} + +{% data reusables.organizations.about-following-organizations %} + +To follow an organization, in the header of the organization's page, click **Follow**. + +![组织标题的屏幕截图,突出显示了“关注”按钮](/assets/images/help/profile/organization-profile-following.png) + +For more information, see "[Following organizations](/get-started/exploring-projects-on-github/following-organizations)." + +{% endif %} + +## 在 {% data variables.product.prodname_dotcom %} 上探索其他项目 您可以在 {% data variables.product.prodname_dotcom %} 的 Explore(探索)页面上发现新的和有趣的项目。 您可以为有趣的项目加注星标,以便以后再次轻松找到它们。 访问您的星标页面,查看所有已加星标的项目。 有关星标的更多信息,请参阅“[使用星标保存仓库](/get-started/exploring-projects-on-github/saving-repositories-with-stars)”。 diff --git a/translations/zh-CN/content/get-started/quickstart/fork-a-repo.md b/translations/zh-CN/content/get-started/quickstart/fork-a-repo.md index 9702c1024d..e6dc54b566 100644 --- a/translations/zh-CN/content/get-started/quickstart/fork-a-repo.md +++ b/translations/zh-CN/content/get-started/quickstart/fork-a-repo.md @@ -113,7 +113,7 @@ gh repo fork repository --org "octo-org" > Cloning into `Spoon-Knife`... > remote: Counting objects: 10, done. > remote: Compressing objects: 100% (8/8), done. - > remove: Total 10 (delta 1), reused 10 (delta 1) + > remote: Total 10 (delta 1), reused 10 (delta 1) > Unpacking objects: 100% (10/10), done. ``` diff --git a/translations/zh-CN/content/graphql/guides/migrating-graphql-global-node-ids.md b/translations/zh-CN/content/graphql/guides/migrating-graphql-global-node-ids.md index 2964dcb1b9..fbb8b688b8 100644 --- a/translations/zh-CN/content/graphql/guides/migrating-graphql-global-node-ids.md +++ b/translations/zh-CN/content/graphql/guides/migrating-graphql-global-node-ids.md @@ -32,7 +32,7 @@ shortTitle: 迁移全局节点 ID ``` $ curl \ - -H "Authorization: token $GITHUB_TOKEN" \ + -H "Authorization: Bearer $GITHUB_TOKEN" \ -H "X-Github-Next-Global-ID: 1" \ https://api.github.com/graphql \ -d '{ "query": "{ node(id: \"MDQ6VXNlcjM0MDczMDM=\") { id } }" }' diff --git a/translations/zh-CN/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md b/translations/zh-CN/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md index cbe09228de..c80ed69f85 100644 --- a/translations/zh-CN/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md +++ b/translations/zh-CN/content/issues/planning-and-tracking-with-projects/automating-your-project/using-the-api-to-manage-projects.md @@ -70,7 +70,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{organization(login: \"ORGANIZATION\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -94,7 +94,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{organization(login: \"ORGANIZATION\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -125,7 +125,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{user(login: \"USER\") {projectV2(number: NUMBER){id}}}"}' ``` {% endcurl %} @@ -149,7 +149,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"{user(login: \"USER\") {projectsV2(first: 20) {nodes {id title}}}}"}' ``` {% endcurl %} @@ -180,7 +180,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2Field { id name } ... on ProjectV2IterationField { id name configuration { iterations { startDate id }}} ... on ProjectV2SingleSelectField { id name options { id name }}}}}}}"}' ``` {% endcurl %} @@ -284,7 +284,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { fields(first: 20) { nodes { ... on ProjectV2FieldCommon { id name }}}}}}"}' ``` {% endcurl %} @@ -354,7 +354,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"query{ node(id: \"PROJECT_ID\") { ... on ProjectV2 { items(first: 20) { nodes{ id fieldValues(first: 8) { nodes{ ... on ProjectV2ItemFieldTextValue { text field { ... on ProjectV2FieldCommon { name }}} ... on ProjectV2ItemFieldDateValue { date field { ... on ProjectV2FieldCommon { name } } } ... on ProjectV2ItemFieldSingleSelectValue { name field { ... on ProjectV2FieldCommon { name }}}}} content{ ... on DraftIssue { title body } ...on Issue { title assignees(first: 10) { nodes{ login }}} ...on PullRequest { title assignees(first: 10) { nodes{ login }}}}}}}}}"}' ``` {% endcurl %} @@ -446,7 +446,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {addProjectV2ItemById(input: {projectId: \"PROJECT_ID\" contentId: \"CONTENT_ID\"}) {item {id}}}"}' ``` {% endcurl %} @@ -488,8 +488,8 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ - --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {item {id}}}"}' + --header 'Authorization: Bearer TOKEN' \ + --data '{"query":"mutation {addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) {projectItem {id}}}"}' ``` {% endcurl %} @@ -498,7 +498,7 @@ curl --request POST \ gh api graphql -f query=' mutation { addProjectV2DraftIssue(input: {projectId: "PROJECT_ID" title: "TITLE" body: "BODY"}) { - item { + projectItem { id } } @@ -512,7 +512,7 @@ gh api graphql -f query=' { "data": { "addProjectV2ItemById": { - "item": { + "projectItem": { "id": "PVTI_lADOANN5s84ACbL0zgBbxFc" } } @@ -528,7 +528,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ ---header 'Authorization: token TOKEN' \ +--header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation { updateProjectV2(input: { projectId: \"PROJECT_ID\", title: \"Project title\", public: false, readme: \"# Project README\n\nA long description\", shortDescription: \"A short description\"}) { projectV2 { id, title, readme, shortDescription }}}"}' ``` {% endcurl %} @@ -565,7 +565,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { text: "Updated text" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -619,7 +619,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -659,7 +659,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {updateProjectV2ItemFieldValue( input: { projectId: "PROJECT_ID" itemId: "ITEM_ID" fieldId: "FIELD_ID" value: { singleSelectOptionId: "OPTION_ID" }}) { projectV2Item { id }}}"}' ``` {% endcurl %} @@ -694,7 +694,7 @@ gh api graphql -f query=' ```shell curl --request POST \ --url https://api.github.com/graphql \ - --header 'Authorization: token TOKEN' \ + --header 'Authorization: Bearer TOKEN' \ --data '{"query":"mutation {deleteProjectV2Item(input: {projectId: \"PROJECT_ID\" itemId: \"ITEM_ID\"}) {deletedItemId}}"}' ``` {% endcurl %} diff --git a/translations/zh-CN/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md b/translations/zh-CN/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md index 113f7e274f..011d82a7f3 100644 --- a/translations/zh-CN/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md +++ b/translations/zh-CN/content/issues/tracking-your-work-with-issues/transferring-an-issue-to-another-repository.md @@ -24,7 +24,7 @@ shortTitle: 转移议题 {% endnote %} -转让议题时,评论、标签和受理人将保留。 不会保留议题的里程碑。 此议题将留在任何用户拥有或组织范围的项目板上,并从任何仓库项目板中删除。 更多信息请参阅“[关于项目板](/articles/about-project-boards)”。 +转让议题时,评论和受理人将保留。 Labels and milestones are also retained if they're present in the target repository, with labels matching by name and milestones matching by both name and due date. 此议题将留在任何用户拥有或组织范围的项目板上,并从任何仓库项目板中删除。 更多信息请参阅“[关于项目板](/articles/about-project-boards)”。 议题中提及的人员或团队将收到通知,告知他们该议题已转让给新仓库。 原来的 URL 会重定向到新议题的 URL。 在新仓库中没有读取权限的人员将看到一个横幅,告知他们该议题已转让给他们无法访问的新仓库。 diff --git a/translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md b/translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md index 9f5fa57f5d..b6e248b0a4 100644 --- a/translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md +++ b/translations/zh-CN/content/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization.md @@ -36,15 +36,22 @@ permissions: Organization owners can manage allowed IP addresses for an organiza ## 添加允许的 IP 地址 +{% data reusables.identity-and-permissions.about-adding-ip-allow-list-entries %} + +{% data reusables.identity-and-permissions.ipv6-allow-lists %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} {% data reusables.identity-and-permissions.ip-allow-lists-add-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-add-description %} {% data reusables.identity-and-permissions.ip-allow-lists-add-entry %} +{% data reusables.identity-and-permissions.check-ip-address %} ## 启用允许的 IP 地址 +{% data reusables.identity-and-permissions.about-enabling-allowed-ip-addresses %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -69,6 +76,8 @@ permissions: Organization owners can manage allowed IP addresses for an organiza ## 编辑允许的 IP 地址 +{% data reusables.identity-and-permissions.about-editing-ip-allow-list-entries %} + {% data reusables.profile.access_org %} {% data reusables.profile.org_settings %} {% data reusables.organizations.security %} @@ -76,6 +85,18 @@ permissions: Organization owners can manage allowed IP addresses for an organiza {% data reusables.identity-and-permissions.ip-allow-lists-edit-ip %} {% data reusables.identity-and-permissions.ip-allow-lists-edit-description %} 1. 单击 **Update(更新)**。 +{% data reusables.identity-and-permissions.check-ip-address %} + +{% ifversion ip-allow-list-address-check %} +## Checking if an IP address is permitted + +{% data reusables.identity-and-permissions.about-checking-ip-address %} + +{% data reusables.profile.access_org %} +{% data reusables.profile.org_settings %} +{% data reusables.organizations.security %} +{% data reusables.identity-and-permissions.check-ip-address-step %} +{% endif %} ## 删除允许的 IP 地址 diff --git a/translations/zh-CN/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md b/translations/zh-CN/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md index a9eba76639..723c3c29cb 100644 --- a/translations/zh-CN/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md +++ b/translations/zh-CN/content/organizations/managing-organization-settings/enabling-or-disabling-github-discussions-for-an-organization.md @@ -1,6 +1,6 @@ --- title: 为组织启用或禁用 GitHub 讨论 -intro: '您可以使用组织中的 {% data variables.product.prodname_discussions %} 作为组织进行对话的位置,这些对话不特定于组织中的单个存储库。' +intro: 'You can use {% data variables.product.prodname_discussions %} in an organization as a place for your organization to have conversations that aren''t specific to a single repository within your organization.' permissions: 'Organization owners can enable {% data variables.product.prodname_discussions %} for their organization.' versions: feature: discussions diff --git a/translations/zh-CN/content/packages/index.md b/translations/zh-CN/content/packages/index.md index 4773b4809f..785f176d68 100644 --- a/translations/zh-CN/content/packages/index.md +++ b/translations/zh-CN/content/packages/index.md @@ -18,6 +18,7 @@ featuredLinks: guideCards: - '{% ifversion docker-ghcr-enterprise-migration %}/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry{% endif %}' - '{% ifversion fpt or ghec or ghes > 3.4 %}/packages/working-with-a-github-packages-registry/working-with-the-container-registry{% else %}/packages/working-with-a-github-packages-registry/working-with-the-docker-registry{% endif %}' + - '{% ifversion packages-npm-v2 %}/packages/working-with-a-github-packages-registry/working-with-the-npm-registry{% endif %}' - /packages/working-with-a-github-packages-registry/working-with-the-rubygems-registry changelog: label: packages diff --git a/translations/zh-CN/content/packages/learn-github-packages/about-permissions-for-github-packages.md b/translations/zh-CN/content/packages/learn-github-packages/about-permissions-for-github-packages.md index c05ba2a02f..de17d09ee4 100644 --- a/translations/zh-CN/content/packages/learn-github-packages/about-permissions-for-github-packages.md +++ b/translations/zh-CN/content/packages/learn-github-packages/about-permissions-for-github-packages.md @@ -18,20 +18,22 @@ shortTitle: 关于权限 仓库作用域的包从拥有该包的仓库继承权限和可见性。 通过转到仓库的主页并单击页面右侧的 **Packages(包)**链接,您可以找到作用域为仓库的包。 {% ifversion fpt or ghec %}更多信息请参阅“[将仓库连接到包](/packages/learn-github-packages/connecting-a-repository-to-a-package)”。{% endif %} -下面的 {% data variables.product.prodname_registry %} 注册表使用仓库作用域的权限: +The {% data variables.product.prodname_registry %} registries below **only** use repository-scoped permissions: {% ifversion not fpt or ghec %}- Docker 注册表 (`docker.pkg.github.com`){% endif %} - - npm 注册表 + {% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - RubyGems 注册表 - Apache Maven 注册表 - NuGet 注册表 +{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %} + {% ifversion fpt or ghec %} ## 用户/组织作用域包的精细权限 具有精细权限的包仅限于个人用户或组织帐户。 您可以从与包相连(或链接)的仓库分别更改包的访问控制和可见性。 -目前,只有 {% data variables.product.prodname_container_registry %} 为容器映像包提供精细权限。 +Currently, the {% data variables.product.prodname_ghcr_and_npm_registry %} offer granular permissions for your container image packages. ## 容器映像的可见性和访问权限 diff --git a/translations/zh-CN/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md b/translations/zh-CN/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md index 4b2ca5591c..c0ebb3641a 100644 --- a/translations/zh-CN/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md +++ b/translations/zh-CN/content/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility.md @@ -16,7 +16,7 @@ shortTitle: 访问控制和可见性 具有精细权限的包仅限于个人用户或组织帐户。 您可以从与包相连(或链接)的仓库分别更改包的访问控制和可见性。 -目前,您只能对 {% data variables.product.prodname_container_registry %} 使用粒度权限。 我们的其他包注册表(如 npm 注册表)不支持粒度权限。{% ifversion docker-ghcr-enterprise-migration %} 有关迁移到 {% data variables.product.prodname_container_registry %} 的详细信息,请参阅“[从 Docker 注册表迁移到 {% data variables.product.prodname_container_registry %}](/packages/working-with-a-github-packages-registry/migrating-to-the-container-registry-from-the-docker-registry)”。{% endif %} +目前,您只能对 {% data variables.product.prodname_ghcr_and_npm_registry %} 使用粒度权限。 Granular permissions are not supported in our other package registries, such as the RubyGems registry.{% ifversion docker-ghcr-enterprise-migration %} For more information about migration to the {% data variables.product.prodname_container_registry %}, 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 %} 有关仓库作用域的包、与包相关的 PAT 作用域或管理操作工作流程的权限的更多信息,请参阅“[关于 GitHub Packages 的权限](/packages/learn-github-packages/about-permissions-for-github-packages)”。 @@ -95,7 +95,7 @@ shortTitle: 访问控制和可见性 {% ifversion fpt or ghec %} ## 确保 {% data variables.product.prodname_codespaces %} 访问您的软件包 -默认情况下,代码空间可以无缝访问 {% data variables.product.prodname_dotcom %} 容器注册表中的某些包,例如在选中了 **Inherit access(继承访问)**选项的同一仓库中发布的包。 有关自动配置哪些访问权限的详细信息,请参阅“[访问存储在容器注册表 {% data variables.product.prodname_dotcom %} 中的映像](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-github-container-registry)”。 +By default, a codespace can seamlessly access certain packages in the {% data variables.product.prodname_ghcr_and_npm_registry %}, such as those published in the same repository with the **Inherit access** option selected. For more information on which access is automatically configured, see "[Allowing your codespace to access a private image registry](/codespaces/codespaces-reference/allowing-your-codespace-to-access-a-private-image-registry#accessing-images-stored-in-container-registry-and-npm-registry)." 否则,为了确保代码空间能够访问您的软件包,必须授予对启动代码空间的仓库的访问权限。 diff --git a/translations/zh-CN/content/packages/learn-github-packages/deleting-and-restoring-a-package.md b/translations/zh-CN/content/packages/learn-github-packages/deleting-and-restoring-a-package.md index f7e9663049..8e50d7fe16 100644 --- a/translations/zh-CN/content/packages/learn-github-packages/deleting-and-restoring-a-package.md +++ b/translations/zh-CN/content/packages/learn-github-packages/deleting-and-restoring-a-package.md @@ -23,12 +23,12 @@ shortTitle: 删除和恢复包 - 整个私有包 - 整个公共包(如果任何包版本不超过 5000 次下载) - 私有包的特定版本 -- 公共包的特定版本(如果包版本不超过 5000 次下载) +- 公共包的特定版本(如果包版本不超过 5,000 次下载) {% note %} **注:** -- 如果任何版本的包下载量超过 5000 次,则无法删除公共包。 在这种情况下,请联系 [GitHub 支持](https://support.github.com/contact?tags=docs-packages) 获取更多帮助。 +- 如果任何版本的包下载量超过 5,000 次,则无法删除公共包。 在这种情况下,请联系 [GitHub 支持](https://support.github.com/contact?tags=docs-packages) 获取更多帮助。 - 删除公共包时,请注意,您可能会破坏依赖于包的项目。 {% endnote %} @@ -46,7 +46,7 @@ shortTitle: 删除和恢复包 {% endif %} -对于从仓库继承其权限和访问权限的包,您可以使用 GraphQL 删除特定的包版本。{% ifversion fpt or ghec %} {% data variables.product.prodname_registry %} GraphQL API 不支持使用包命名空间的容器或 Docker 映像 `https://ghcr.io/OWNER/PACKAGE-NAME`。{% endif %} 有关 GraphQL 支持的更多信息,请参阅“[使用 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.{% data reusables.package_registry.no-graphql-to-delete-packages %} 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 %} @@ -54,17 +54,19 @@ shortTitle: 删除和恢复包 对于从仓库继承其访问权限的包,如果您拥有仓库管理权限,则可以删除包。 -{% data variables.product.prodname_registry %} 上仓库范围的包中包括以下包: -- npm -- RubyGems -- maven -- Gradle -- NuGet -{% ifversion not fpt or ghec %}- Docker 映像位于 `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} +The {% data variables.product.prodname_registry %} registries below **only** use repository-scoped permissions: + + {% ifversion not fpt or ghec %}- Docker 映像位于 `docker.pkg.github.com/OWNER/REPOSITORY/IMAGE-NAME`{% endif %} + {% ifversion packages-npm-v2 %}{% else %}- npm{% endif %} + - RubyGems 注册表 + - Apache Maven 注册表 + - NuGet 注册表 + +{% ifversion packages-npm-v2 %}For {% data variables.product.prodname_ghcr_and_npm_registry %}, you can choose to allow packages to be scoped to a user, an organization, or linked to a repository.{% endif %} {% ifversion fpt or ghec %} -要删除与仓库分开的具有粒度权限的软件包,例如存储在 `https://ghcr.io/OWNER/PACKAGE-NAME` 上的容器映像,您必须对该包具有管理员访问权限。 更多信息请参阅“[关于 {% data variables.product.prodname_registry %} 的权限](/packages/learn-github-packages/about-permissions-for-github-packages)”。 +To delete a package that has granular permissions separate from a repository, such as container images stored at `https://ghcr.io/OWNER/PACKAGE-NAME` or `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`, you must have admin access to the package. 更多信息请参阅“[关于 {% data variables.product.prodname_registry %} 的权限](/packages/learn-github-packages/about-permissions-for-github-packages)”。 {% endif %} @@ -86,9 +88,7 @@ shortTitle: 删除和恢复包 对于从仓库继承其许可和访问权限的包,您可以使用 GraphQL 删除特定的包版本。 -{% ifversion fpt or ghec %} -对于在 `ghcr.io` 上的容器或 Docker 映像,GraphQL 不受支持,但您可以使用 REST API。 更多信息请参阅“[{% data variables.product.prodname_registry %} API](/rest/reference/packages)”。 -{% endif %} +{% data reusables.package_registry.no-graphql-to-delete-packages %}{% ifversion fpt or ghec %} You can however use the REST API. For more information, see the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)."{% endif %} 在 GraphQL API 中使用 `deletePackageVersion` 突变。 必须使用具有 `read:packages`、`delete:packages` 和 `repo` 作用域的令牌。 有关令牌的更多信息,请参阅“[关于 {% data variables.product.prodname_registry %}](/packages/publishing-and-managing-packages/about-github-packages#authenticating-to-github-packages)”。 diff --git a/translations/zh-CN/content/packages/learn-github-packages/introduction-to-github-packages.md b/translations/zh-CN/content/packages/learn-github-packages/introduction-to-github-packages.md index fc5090006e..5450ffcff9 100644 --- a/translations/zh-CN/content/packages/learn-github-packages/introduction-to-github-packages.md +++ b/translations/zh-CN/content/packages/learn-github-packages/introduction-to-github-packages.md @@ -51,7 +51,7 @@ For more information about the configuration of {% data variables.product.prodna | | | |--------------------|--------------------| -| 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 %} | +| 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_ghcr_and_npm_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)." @@ -101,7 +101,9 @@ For more information about Docker and the {% data variables.product.prodname_con ## Managing 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)." +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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and the "[{% data variables.product.prodname_registry %} API](/rest/reference/packages)." + +{% data reusables.package_registry.no-graphql-to-delete-packages %} {% endif %} {% ifversion ghes %} @@ -112,7 +114,9 @@ You can delete a private or public package in the {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" 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 ghes or ghae %}"[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" and {% endif %}"[Forming calls with GraphQL](/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)." diff --git a/translations/zh-CN/content/packages/learn-github-packages/viewing-packages.md b/translations/zh-CN/content/packages/learn-github-packages/viewing-packages.md index 5b7d3a04e9..40686593f0 100644 --- a/translations/zh-CN/content/packages/learn-github-packages/viewing-packages.md +++ b/translations/zh-CN/content/packages/learn-github-packages/viewing-packages.md @@ -23,15 +23,15 @@ versions: 查看包的权限取决于几个因素。 默认情况下,您可以查看您发布的所有包。 -仓库作用域的包从拥有该包的仓库继承权限和可见性。 下面的注册表使用此类权限:{% ifversion not fpt or ghec %} +仓库作用域的包从拥有该包的仓库继承权限和可见性。 The registries below **only** use this type of permissions:{% ifversion not fpt or ghec %} - Docker 注册表 (`docker.pkg.github.com`){% endif %} -- npm 注册表 +{% ifversion packages-npm-v2 %}{% else %}- npm registry{% endif %} - RubyGems 注册表 - Apache Maven 注册表 - NuGet 注册表 {% ifversion fpt or ghec %} -容器注册表提供粒度权限和可见性设置,可针对个人用户或组织帐户拥有的每个包进行自定义。 您可以选择使用粒度权限或连接包到仓库并继承它的权限。 更多信息请参阅“[将仓库连接到包](/packages/learn-github-packages/connecting-a-repository-to-a-package)”。 +The {% data variables.product.prodname_ghcr_and_npm_registry %} offer you the option of granular permissions and visibility settings that can be customized for each package owned by a personal user or organization account. 您可以选择使用粒度权限或连接包到仓库并继承它的权限。 更多信息请参阅“[将仓库连接到包](/packages/learn-github-packages/connecting-a-repository-to-a-package)”。 {% endif %} 更多信息请参阅“[关于 GitHub Packages 的权限](/packages/learn-github-packages/about-permissions-for-github-packages)”{% ifversion fpt or ghec %} 或“[配置包的访问控制和可见性](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)”。{% endif %} diff --git a/translations/zh-CN/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md b/translations/zh-CN/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md index abf40d8435..6b3f8fc7cd 100644 --- a/translations/zh-CN/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md +++ b/translations/zh-CN/content/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions.md @@ -24,9 +24,9 @@ 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 or ghec %} -### Authenticating to the {% data variables.product.prodname_container_registry %} +### Authenticating to the {% data variables.product.prodname_ghcr_and_npm_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} {% endif %} @@ -40,7 +40,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 or ghec %}and Gradle. {% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`.{% endif %} +**Note:** Some registries, such as RubyGems, {% ifversion packages-npm-v2 %}{% else %}npm, {% endif %}Apache Maven, NuGet, {% ifversion fpt or ghec %}and Gradle{% else %}Gradle, and Docker packages that use the package namespace `docker.pkg.github.com`{% endif %}, only allow repository-owned packages. With {% data variables.product.prodname_ghcr_and_npm_registry_full %} you can choose to allow packages to be owned by a user, an organization, or linked to a repository. {% endnote %} @@ -49,11 +49,11 @@ 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 or ghec %} -## About permissions and package access for {% data variables.product.prodname_container_registry %} +## About permissions and package access for {% data variables.product.prodname_ghcr_and_npm_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 account and you can customize access to each of your containers separately from repository permissions. +The {% data variables.product.prodname_ghcr_and_npm_registry_full %} allows users to create and administer packages as free-standing resources at the organization level. Packages can be owned by an organization or personal account and you can customize access to each of your packages separately from repository permissions. -All workflows accessing the {% data variables.product.prodname_container_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)." +All workflows accessing the {% data variables.product.prodname_ghcr_and_npm_registry %} should use the `GITHUB_TOKEN` instead of a personal access token. For more information about security best practices, see "[Security hardening for GitHub Actions](/actions/learn-github-actions/security-hardening-for-github-actions#using-secrets)." ## Default permissions and access settings for containers modified through workflows @@ -484,9 +484,9 @@ Installing packages hosted by {% data variables.product.prodname_registry %} thr {% data reusables.package_registry.actions-configuration %} {% ifversion fpt or ghec %} -## Upgrading a workflow that accesses `ghcr.io` +## Upgrading a workflow that accesses a registry using a PAT -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`. +The {% data variables.product.prodname_ghcr_and_npm_registry %} support the `GITHUB_TOKEN` for easy and secure authentication in your workflows. If your workflow is using a personal access token (PAT) to authenticate to the registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." @@ -504,9 +504,9 @@ Using the `GITHUB_TOKEN` instead of a PAT, which includes the `repo` scope, incr {% endnote %} 1. Optionally, using the "role" drop-down menu, select the default access level that you'd like the repository to have to your container image. ![Permission access levels to give to repositories](/assets/images/help/package-registry/repository-permission-options-for-package-access-through-actions.png) -1. Open your workflow file. On the line where you log in to `ghcr.io`, replace your PAT with {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. +1. Open your workflow file. On the line where you log in to the registry, replace your PAT with {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %}. -For example, this workflow publishes a Docker image using {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. +For example, this workflow publishes a Docker image to the {% data variables.product.prodname_container_registry %} and uses {% raw %}`${{ secrets.GITHUB_TOKEN }}`{% endraw %} to authenticate. ```yaml{:copy} name: Demo Push diff --git a/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md b/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md index 02708a404d..98ac905c0a 100644 --- a/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md +++ b/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-container-registry.md @@ -42,7 +42,9 @@ When installing or publishing a Docker image, the {% data variables.product.prod ## Authenticating to the {% data variables.product.prodname_container_registry %} -{% data reusables.package_registry.authenticate_with_pat_for_container_registry %} +{% ifversion fpt or ghec or ghes > 3.4 %} +To authenticate to the {% data variables.product.prodname_container_registry %} (`ghcr.io`) within a {% data variables.product.prodname_actions %} workflow, use the `GITHUB_TOKEN` for the best security and experience. {% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} +{% endif %} {% ifversion ghes %}Ensure that you replace `HOSTNAME` with {% data variables.product.product_location_enterprise %} hostname or IP address in the examples below.{% endif %} diff --git a/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md b/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md index 6714384e4d..8007cd2b6f 100644 --- a/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md +++ b/translations/zh-CN/content/packages/working-with-a-github-packages-registry/working-with-the-npm-registry.md @@ -21,6 +21,8 @@ shortTitle: npm registry {% data reusables.package_registry.admins-can-configure-package-types %} +{% ifversion packages-npm-v2 %} +{% else %} ## 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. @@ -28,12 +30,17 @@ If you publish over 1,000 npm package versions to {% data variables.product.prod 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 "[Deleting and restoring a package](/packages/learn-github-packages/deleting-and-restoring-a-package)" or "[Contacting Support](/packages/learn-github-packages/about-github-packages#contacting-support)." +{% endif %} ## Authenticating to {% data variables.product.prodname_registry %} {% data reusables.package_registry.authenticate-packages %} -{% data reusables.package_registry.authenticate-packages-github-token %} +{% ifversion packages-npm-v2 %} +{% data reusables.package_registry.authenticate_with_pat_for_v2_registry %} + +You can also choose to give access permissions to packages independently for {% data variables.product.prodname_codespaces %} and {% data variables.product.prodname_actions %}. For more information, see "[Ensuring Codespaces access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-codespaces-access-to-your-package) and [Ensuring workflow access to your package](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#ensuring-workflow-access-to-your-package)." +{% endif %} ### Authenticating with a personal access token @@ -94,12 +101,24 @@ $ npm login --scope=@OWNER --registry=https://HOSTNAME/_regist {% endnote %} -By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. You can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. +{% ifversion packages-npm-v2 %} +The {% data variables.product.prodname_registry %} registry stores npm packages within your organization or personal account, and allows you to associate a package with a repository. You can choose whether to inherit permissions from a repository, or set granular permissions independently of a repository. +{% endif %} + +By default, {% data variables.product.prodname_registry %} publishes a package in the {% data variables.product.prodname_dotcom %} repository you specify in the name field of the *package.json* file. For example, you would publish a package named `@my-org/test` to the `my-org/test` {% data variables.product.prodname_dotcom %} repository. If you're running [npm v8.5.3](https://github.com/npm/cli/releases/tag/v8.5.3) or later, you can add a summary for the package listing page by including a *README.md* file in your package directory. For more information, see "[Working with package.json](https://docs.npmjs.com/getting-started/using-a-package.json)" and "[How to create Node.js Modules](https://docs.npmjs.com/getting-started/creating-node-modules)" in the npm documentation. You can publish multiple packages to the same {% data variables.product.prodname_dotcom %} repository by including a `URL` field in the *package.json* file. For more information, see "[Publishing multiple packages to the same repository](#publishing-multiple-packages-to-the-same-repository)." +{% ifversion fpt or ghec %} +When a package is published, it isn't automatically linked to a repository. You can however choose to link your published package to a repository using the user interface or command line. For more information, see "[Connecting a repository to a package](/packages/learn-github-packages/connecting-a-repository-to-a-package)." +{% endif %} + You can set up the scope mapping for your project using either a local *.npmrc* file in the project or using the `publishConfig` option in the *package.json*. {% data variables.product.prodname_registry %} only supports scoped npm packages. Scoped packages have names with the format of `@owner/name`. Scoped packages always begin with an `@` symbol. You may need to update the name in your *package.json* to use the scoped name. For example, `"name": "@codertocat/hello-world-npm"`. +{% ifversion packages-npm-v2 %} +When you first publish a package, the default visibility is private. When a package is linked to repository, the package visibility is dependent on the repository's visibility. To change the visibility or set access permissions, see "[Configuring a package's access control and visibility](/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility)." +{% endif %} + {% data reusables.package_registry.viewing-packages %} ### Publishing a package using a local *.npmrc* file diff --git a/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md b/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md index f059be99c2..011aa305ca 100644 --- a/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md +++ b/translations/zh-CN/content/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site.md @@ -46,7 +46,7 @@ To set up a `www` or custom subdomain, such as `www.example.com` or `blog.exampl {% data reusables.repositories.sidebar-settings %} {% data reusables.pages.sidebar-pages %} 4. 在 "Custom domain(自定义域)"下,输入自定义域,然后单击 **Save(保存)**。 If you are publishing your site from a branch, this will create a commit that adds a `CNAME` file to the root of your source branch. If you are publishing your site with a custom {% data variables.product.prodname_actions %} workflow , no `CNAME` file is created. For more information about your publishing source, see "[Configuring a publishing source for your GitHub Pages site](/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site)." ![保存自定义域按钮](/assets/images/help/pages/save-custom-subdomain.png) -5. 导航到您的 DNS 提供程序并创建 `CNAME` 记录,使子域指向您站点的默认域。 例如,如果要对您的用户站点使用子域 `www.example.com`,您可以创建 `CNAME` 记录,使 `www.example.com` 指向 `.github.io`。 如果要对您的组织站点使用子域 `www.anotherexample.com`,您可以创建 `CNAME` 记录,使 `www.anotherexample.com` 指向 `.github.io`。 `CNAME` 记录应该始终指向 `.github.io` 或 `.github.io`,不包括仓库名称。 {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} +5. 导航到您的 DNS 提供程序并创建 `CNAME` 记录,使子域指向您站点的默认域。 例如,如果要对您的用户站点使用子域 `www.example.com`,您可以创建 `CNAME` 记录,使 `www.example.com` 指向 `.github.io`。 如果要对您的组织站点使用子域 `another.example.com`,您可以创建 `CNAME` 记录,使 `another.example.com` 指向 `.github.io`。 `CNAME` 记录应该始终指向 `.github.io` 或 `.github.io`,不包括仓库名称。 {% data reusables.pages.contact-dns-provider %} {% data reusables.pages.default-domain-information %} {% indented_data_reference reusables.pages.wildcard-dns-warning spaces=3 %} {% data reusables.command_line.open_the_multi_os_terminal %} diff --git a/translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md b/translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md index 7d249705e4..ac14de0bdf 100644 --- a/translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md +++ b/translations/zh-CN/content/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request.md @@ -18,7 +18,7 @@ shortTitle: 自动合并 PR ## 关于自动合并 -如果启用拉取请求自动合并,则拉取请求在满足所有必需审查并且状态检查通过时将自动合并。 自动合并使您无需等待满足要求,可以继续执行其他任务。 +If you enable auto-merge for a pull request, the pull request will merge automatically when all required reviews are met and all required status checks have passed. 自动合并使您无需等待满足要求,可以继续执行其他任务。 在使用拉取请求自动合并之前,必需对仓库启用自动合并。 更多信息请参阅“[管理仓库中的拉取请求自动合并](/github/administering-a-repository/managing-auto-merge-for-pull-requests-in-your-repository)”。 diff --git a/translations/zh-CN/content/rest/apps/installations.md b/translations/zh-CN/content/rest/apps/installations.md index a95d0eb5dd..3a46f4ce60 100644 --- a/translations/zh-CN/content/rest/apps/installations.md +++ b/translations/zh-CN/content/rest/apps/installations.md @@ -17,4 +17,4 @@ versions: _安装设施_是指已安装该应用程序的任何用户或组织帐户。 有关如何验证为安装设施和限制访问特定仓库的信息,请参阅“[验证为安装设施](/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation)”。 -要列出组织的所有 GitHub 应用程序安装设施,请参阅“[列出组织的应用程序安装设施](/rest/reference/orgs#list-app-installations-for-an-organization)”。 +要列出组织的所有 GitHub 应用程序安装设施,请参阅“[列出组织的应用程序安装设施](/rest/orgs/orgs#list-app-installations-for-an-organization)”。 diff --git a/translations/zh-CN/content/rest/deployments/deployments.md b/translations/zh-CN/content/rest/deployments/deployments.md index d129c2157d..2672ba8287 100644 --- a/translations/zh-CN/content/rest/deployments/deployments.md +++ b/translations/zh-CN/content/rest/deployments/deployments.md @@ -19,7 +19,7 @@ miniTocMaxHeadingLevel: 3 部署状态还可以包含可选的 `description` 和 `log_url`,强烈建议使用它们,因为它们使部署状态更有用。 `log_url` 是部署输出的完整 URL,`description` 是关于部署过程中所发生情况的高级摘要。 -在创建新的部署和部署状态时,GitHub 将分发 `deployment` 和 `deployment_status` 事件。 这些事件允许第三方集成接收对部署请求的响应,并在取得进展时更新部署的状态。 +在创建新的部署和部署状态时,GitHub 将分发 `deployment` 和 `deployment_status` 事件。 These events allow third-party integrations to receive and respond to deployment requests, and update the status of a deployment as progress is made. 下面是一个说明这些交互的工作方式的简单序列图。 diff --git a/translations/zh-CN/content/rest/guides/getting-started-with-the-checks-api.md b/translations/zh-CN/content/rest/guides/getting-started-with-the-checks-api.md index 2c60bf90f8..fa8cc66f45 100644 --- a/translations/zh-CN/content/rest/guides/getting-started-with-the-checks-api.md +++ b/translations/zh-CN/content/rest/guides/getting-started-with-the-checks-api.md @@ -1,6 +1,6 @@ --- -title: Getting started with the Checks API -intro: 'The Check Runs API enables you to build GitHub Apps that run powerful checks against code changes in a repository. You can create apps that perform continuous integration, code linting, or code scanning services and provide detailed feedback on commits.' +title: 检查 API 入门指南 +intro: 检查运行 API 使您能够构建 GitHub 应用程序,以针对仓库中的代码更改运行强大的检查。 您可以创建应用程序以执行持续集成 、代码分析或代码扫描服务,并提供有关提交的详细反馈。 versions: fpt: '*' ghes: '*' @@ -8,58 +8,58 @@ versions: ghec: '*' topics: - API -shortTitle: Get started - Checks API +shortTitle: 开始 - 检查 API --- -## Overview +## 概览 -Rather than binary pass/fail build statuses, GitHub Apps can report rich statuses, annotate lines of code with detailed information, and re-run tests. The Checks API functionality is available exclusively to your GitHub Apps. +GitHub 应用程序可以报告丰富的状态信息、提供详细的代码行注释以及重新运行测试,而不是提供二进制的通过/失败构建状态。 Checks API 功能专用于您的 GitHub 应用程序。 -For an example of how to use the Checks API with a {% data variables.product.prodname_github_app %}, see "[Creating CI tests with the Checks API](/apps/quickstart-guides/creating-ci-tests-with-the-checks-api/)." +关于如何将检查 API 用于 {% data variables.product.prodname_github_app %} 的示例,请参阅“[使用检查 API 创建 CI 测试](/apps/quickstart-guides/creating-ci-tests-with-the-checks-api/)”。 -## About check suites +## 关于检查套件 -When someone pushes code to a repository, GitHub creates a check suite for the last commit. A check suite is a collection of the [check runs](/rest/reference/checks#check-runs) created by a single GitHub App for a specific commit. Check suites summarize the status and conclusion of the check runs that a suite includes. +当有人向仓库推送代码时,GitHub 会为最新的提交创建一个检查套件。 检查套件是单个 GitHub 应用程序为特定提交而创建的[检查运行](/rest/reference/checks#check-runs)的集合。 检查套件汇总了套件所含检查运行的状态和结论。 -![Check suites workflow](/assets/images/check_suites.png) +![检查套件工作流程](/assets/images/check_suites.png) -The check suite reports the highest priority check run `conclusion` in the check suite's `conclusion`. For example, if three check runs have conclusions of `timed_out`, `success`, and `neutral` the check suite conclusion will be `timed_out`. +检查套件在其 `conclusion` 中报告优先级最高的检查运行 `conclusion` 。 例如,如果三个检查运行的结论分别为 `timed_out`、`success` 和 `neutral`,则检查套件的结论将为 `timed_out`。 -By default, GitHub creates a check suite automatically when code is pushed to the repository. This default flow sends the `check_suite` event (with `requested` action) to all GitHub App's that have the `checks:write` permission. When your GitHub App receives the `check_suite` event, it can create new check runs for the latest commit. GitHub automatically adds new check runs to the correct [check suite](/rest/reference/checks#check-suites) based on the check run's repository and SHA. +默认情况下,当代码被推送到仓库时,GitHub 会自动创建一个检查套件。 此默认流程会将 `check_suite` 事件(使用 `requested` 操作)发送到具有 `checks:write` 权限的所有 GitHub 应用程序。 当您的 GitHub 应用程序收到 `check_suite` 事件时,它可以为最新的提交创建新的检查运行。 GitHub 根据检查运行的仓库和 SHA,自动将新的检查运行添加到适当的[检查套件](/rest/reference/checks#check-suites)中。 -If you don't want to use the default automatic flow, you can control when you create check suites. To change the default settings for the creation of check suites, use the [Update repository preferences for check suites](/rest/reference/checks#update-repository-preferences-for-check-suites) endpoint. All changes to the automatic flow settings are recorded in the audit log for the repository. If you have disabled the automatic flow, you can create a check suite using the [Create a check suite](/rest/reference/checks#create-a-check-suite) endpoint. You should continue to use the [Create a check run](/rest/reference/checks#create-a-check-run) endpoint to provide feedback on a commit. +如果您不想使用默认的自动流程,您可以控制何时创建检查套件。 要更改用于创建检查套件的默认设置,请使用[更新检查套件的仓库首选项](/rest/reference/checks#update-repository-preferences-for-check-suites)端点。 对自动流程设置的所有更改都被记录在仓库的审核日志中。 如果您禁用了自动流程,您可以使用[创建检查套件](/rest/reference/checks#create-a-check-suite)端点来创建一个检查套件。 您应该继续使用[创建检查运行](/rest/reference/checks#create-a-check-run)端点来提供对提交的反馈。 {% data reusables.apps.checks-availability %} -To use the check suites API, the GitHub App must have the `checks:write` permission and can also subscribe to the [check_suite](/webhooks/event-payloads/#check_suite) webhook. +要使用检查套件 API,GitHub 应用程序必须具有 `checks:write` 权限并且可以订阅 [check_suite](/webhooks/event-payloads/#check_suite) web 挂钩。 {% data reusables.shortdesc.authenticating_github_app %} -## About check runs +## 关于检查运行 -A check run is an individual test that is part of a check suite. Each run includes a status and conclusion. +检查运行是检查套件中的单个测试。 每个运行都包含状态和结论。 -![Check runs workflow](/assets/images/check_runs.png) +![检查运行工作流程](/assets/images/check_runs.png) -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). +If a check run is in an 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" %}. 只有 {% data variables.product.prodname_dotcom %} 可以将检查运行标记为 `stale`。 有关检查运行之可能结论的更多信息,请参阅 [`conclusion` 参数](/rest/reference/checks#create-a-check-run--parameters)。 -As soon as you receive the [`check_suite`](/webhooks/event-payloads/#check_suite) webhook, you can create the check run, even if the check is not complete. You can update the `status` of the check run as it completes with the values `queued`, `in_progress`, or `completed`, and you can update the `output` as more details become available. A check run can contain timestamps, a link to more details on your external site, detailed annotations for specific lines of code, and information about the analysis performed. +一旦收到 [`check_suite`](/webhooks/event-payloads/#check_suite) web 挂钩,您即可创建检查运行,即使检查尚未完成。 您可以在检查运行完成时使用值 `queued`、`in_progress` 或 `completed` 来更新其 `status`, 并且可以在更多详细信息可用时更新 `output`。 检查运行可以包含时间戳、指向外部站点上更多详细信息的链接、特定代码行的详细注释以及有关所执行分析的信息。 -![Check run annotation](/assets/images/check_run_annotations.png) +![检查运行注释](/assets/images/check_run_annotations.png) -A check can also be manually re-run in the GitHub UI. See "[About status checks](/articles/about-status-checks#checks)" for more details. When this occurs, the GitHub App that created the check run will receive the [`check_run`](/webhooks/event-payloads/#check_run) webhook requesting a new check run. If you create a check run without creating a check suite, GitHub creates the check suite for you automatically. +还可以在 GitHub UI 中手动重新运行检查。 更多信息请参阅“[关于状态检查](/articles/about-status-checks#checks)”。 发生这种情况时,创建检查运行的 GitHub 应用程序将收到请求新检查运行的 [`check_run`](/webhooks/event-payloads/#check_run) web 挂钩。 如果您创建检查运行时没有创建检查套件,GitHub 将自动为您创建检查套件。 {% data reusables.apps.checks-availability %} -To use the Check Runs API, the GitHub App must have the `checks:write` permission and can also subscribe to the [check_run](/webhooks/event-payloads#check_run) webhook. +要使用检查运行 API,GitHub 应用程序必须具有 `checks:write` 权限并且可以订阅 [ccheck_run](/webhooks/event-payloads#check_run) web 挂钩。 -## Check runs and requested actions +## 检查运行和请求的操作 -When you set up a check run with requested actions (not to be confused with {% data variables.product.prodname_actions %}), you can display a button in the pull request view on {% data variables.product.prodname_dotcom %} that allows people to request your {% data variables.product.prodname_github_app %} to perform additional tasks. +在设置带有请求操作(不要与 {% data variables.product.prodname_actions %} 混淆)的检查运行时,您可以在 {% data variables.product.prodname_dotcom %} 上的拉取请求视图中显示一个按钮,以允许用户请求您的 {% data variables.product.prodname_github_app %} 执行额外任务。 -For example, a code linting app could use requested actions to display a button in a pull request to automatically fix detected syntax errors. +例如,代码分析应用程序可以使用请求的操作在拉取请求中显示一个按钮,以自动修复检测到的语法错误。 -To create a button that can request additional actions from your app, use the [`actions` object](/rest/reference/checks#create-a-check-run--parameters) when you [Create a check run](/rest/reference/checks/#create-a-check-run). For example, the `actions` object below displays a button in a pull request with the label "Fix this." The button appears after the check run completes. +要创建可从您的程序请求额外操作的按钮,请在[创建检查运行](/rest/reference/checks/#create-a-check-run)时使用 [`actions` 对象](/rest/reference/checks#create-a-check-run--parameters)。 例如,下面的 `actions` 对象在拉取请求中显示一个按钮,标签为“Fix this(修复此问题)”。 该按钮在检查运行完成后显示。 ```json "actions": [{ @@ -69,14 +69,14 @@ To create a button that can request additional actions from your app, use the [` }] ``` - ![Check run requested action button](/assets/images/github-apps/github_apps_checks_fix_this_button.png) + ![检查运行请求操作按钮](/assets/images/github-apps/github_apps_checks_fix_this_button.png) -When a user clicks the button, {% data variables.product.prodname_dotcom %} sends the [`check_run.requested_action` webhook](/webhooks/event-payloads/#check_run) to your app. When your app receives a `check_run.requested_action` webhook event, it can look for the `requested_action.identifier` key in the webhook payload to determine which button was clicked and perform the requested task. +当用户单击该按钮时,{% data variables.product.prodname_dotcom %} 会将 [`check_run.requested_action` web 挂钩](/webhooks/event-payloads/#check_run)发送到您的应用程序。 当您的应用程序收到 `check_run.requested_action` web 挂钩事件时,它可以在 web 挂钩有效负载中查找 `requested_action.identifier` 键,以确定单击了哪个按钮,并执行请求的任务。 -For a detailed example of how to set up requested actions with the Checks API, see "[Creating CI tests with the Checks API](/apps/quickstart-guides/creating-ci-tests-with-the-checks-api/#part-2-creating-the-octo-rubocop-ci-test)." +关于如何使用检查 API 设置请求操作的详细示例,请参阅“[使用检查 API 创建 CI 测试](/apps/quickstart-guides/creating-ci-tests-with-the-checks-api/#part-2-creating-the-octo-rubocop-ci-test)”。 {% ifversion fpt or ghec %} -## Retention of checks data +## 检查数据的保留 {% data reusables.pull_requests.retention-checks-data %} {% endif %} diff --git a/translations/zh-CN/content/rest/guides/getting-started-with-the-rest-api.md b/translations/zh-CN/content/rest/guides/getting-started-with-the-rest-api.md index 43842732b4..76e75dfedd 100644 --- a/translations/zh-CN/content/rest/guides/getting-started-with-the-rest-api.md +++ b/translations/zh-CN/content/rest/guides/getting-started-with-the-rest-api.md @@ -1,9 +1,6 @@ --- title: REST API 入门指南 -intro: 从身份验证和一些端点示例开始,了解使用 REST API 的基础。 -redirect_from: - - /guides/getting-started - - /v3/guides/getting-started +intro: 'Learn how to use the {% data variables.product.prodname_dotcom %} REST API.' versions: fpt: '*' ghes: '*' @@ -11,418 +8,754 @@ versions: ghec: '*' topics: - API -shortTitle: 开始 - REST API +shortTitle: Using the API +miniTocMaxHeadingLevel: 3 --- +## About the {% data variables.product.prodname_dotcom %} REST API -让我们逐步了解在处理一些日常用例时涉及的核心 API 概念。 +This article describes how to use the {% data variables.product.prodname_dotcom %} REST API using {% data variables.product.prodname_cli %}, JavaScript, or cURL. For a quickstart guide, see "[Quickstart for GitHub REST API](/rest/quickstart)." -{% data reusables.rest-api.dotcom-only-guide-note %} +When you make a request to the REST API, you will specify an HTTP method and a path. Additionally, you might also specify request headers and path, query, or body parameters. The API will return the response status code, response headers, and potentially a response body. -## 概览 +The REST API reference documentation describes the HTTP method, path, and parameters for every operation. It also displays example requests and responses for each operation. For more information, see the [REST reference documentation](/rest). -大多数应用程序将使用您选择的语言 中现有的 [wrapper 库][wrappers],但您必须先熟悉基础 API HTTP 方法。 +## Making a request -没有比使用 [cURL][curl] 更容易的入手方式了。{% ifversion fpt or ghec %} 如果您使用其他客户的,请注意,您需要在请求中发送有效的 [用户代理标头](/rest/overview/resources-in-the-rest-api#user-agent-required)。{% endif %} +To make a request, first find the HTTP method and the path for the operation that you want to use. For example, the "Get Octocat" operation uses the `GET` method and the `/octocat` path. For the full reference documentation for this operation, see "[Get Octocat](/rest/meta#get-octocat)." -### Hello World +{% cli %} -让我们先测试设置。 打开命令提示符并输入以下命令: +{% note %} + +**Note**: You must install {% data variables.product.prodname_cli %} in order to use the commands in the {% data variables.product.prodname_cli %} examples. For installation instructions, see the [{% data variables.product.prodname_cli %} repository](https://github.com/cli/cli#installation). + +{% endnote %} + +If you are not already authenticated to {% data variables.product.prodname_cli %}, you must use the `gh auth login` subcommand to authenticate before making any requests. For more information, see "[Authenticating](#authenticating)." + +To make a request using {% data variables.product.prodname_cli %}, use the `api` subcommand along with the path. Use the `--method` or `-X` flag to specify the method. ```shell -$ curl https://api.github.com/zen - -> Keep it logically awesome. +gh api /octocat --method GET ``` -响应将是我们设计理念中的随机选择。 +{% endcli %} -Next, let's `GET` [Chris Wanstrath's][defunkt github] [GitHub profile][users api]: +{% javascript %} + +{% note %} + +**Note**: You must install and import `octokit` in order to use the Octokit.js library used in the JavaScript examples. For more information, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). + +{% endnote %} + +To make a request using JavaScript, you can use Octokit.js. For more information, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). + +First, create an instance of `Octokit`.{% ifversion ghes or ghae %} Set the base URL to `{% data variables.product.api_url_code %}`. Replace `[hostname]` with the name of {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}", +{% endif %}}); +``` + +Then, use the `request` method to make requests. Pass the HTTP method and path as the first argument. + +```javascript +await octokit.request("GET /octocat", {}); +``` + +{% endjavascript %} + +{% curl %} + +Prepend the base URL for the {% data variables.product.prodname_dotcom %} REST API, `{% data variables.product.api_url_code %}`, to the path to get the full URL: `{% data variables.product.api_url_code %}/octocat`.{% ifversion ghes or ghae %} Replace `[hostname]` with the name of {% data variables.product.product_location %}.{% endif %} + +Use the `curl` command in your command line. Use the `--request` or `-X` flag followed by the HTTP method. Use the `--url` flag followed by the full URL. ```shell -# GET /users/defunkt -$ curl https://api.github.com/users/defunkt - -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> ... -> } +curl --request GET \ +--url "https://api.github.com/octocat" ``` -Mmmmm, tastes like [JSON][json]. 我们来添加 `-i` 标志以包含标头: +{% note %} + +**Note**: If you get a message similar to "command not found: curl", you may need to download and install cURL. For more information, see [the cURL project download page](https://curl.se/download.html). + +{% endnote %} + +{% endcurl %} + +Continue reading to learn how to authenticate, send parameters, and use the response. + +## Authenticating + +Many operations require authentication or return additional information if you are authenticated. Additionally, you can make more requests per hour when you are authenticated.{% cli %} Although some REST API operations are accessible without authentication, you must authenticate to {% data variables.product.prodname_cli %} in order to use the `api` subcommand.{% endcli %} + +### 关于令牌 + +You can authenticate your request by adding a token. + +If you want to use the {% data variables.product.company_short %} REST API for personal use, you can create a personal access token (PAT). The REST API operations used in this article require `repo` scope for personal access tokens. Other operations may require different scopes. 有关创建个人访问令牌的更多信息,请参阅“[创建个人访问令牌](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)”。 + +If you want to use the API on behalf of an organization or another user, {% data variables.product.company_short %} recommends that you use a {% data variables.product.prodname_github_app %}. If an operation is available to {% data variables.product.prodname_github_apps %}, the REST reference documentation for that operation will say "Works with GitHub Apps." The REST API operations used in this article require `issues` read and write permissions for {% data variables.product.prodname_github_apps %}. Other operations may require different permissions. For more information, see "[Creating a GitHub App](/developers/apps/building-github-apps/creating-a-github-app)", "[Authenticating with GitHub Apps](/developers/apps/building-github-apps/authenticating-with-github-apps), and "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + +If you want to use the API in a {% data variables.product.prodname_actions %} workflow, {% data variables.product.company_short %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. You can grant permissions to the `GITHUB_TOKEN` with the `permissions` key. 更多信息请参阅“[自动令牌身份验证](/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)”。 + +### Authentication example + +{% cli %} + +With {% data variables.product.prodname_cli %}, you don't need to create an access token in advance. Use the `auth login` subcommand to authenticate to {% data variables.product.prodname_cli %}: ```shell -$ curl -i https://api.github.com/users/defunkt - -> HTTP/2 200 -> server: GitHub.com -> date: Thu, 08 Jul 2021 07:04:08 GMT -> content-type: application/json; charset=utf-8 -> cache-control: public, max-age=60, s-maxage=60 -> vary: Accept, Accept-Encoding, Accept, X-Requested-With -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" -> last-modified: Fri, 01 Nov 2019 21:56:00 GMT -> x-github-media-type: github.v3; format=json -> access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, Deprecation, Sunset -> access-control-allow-origin: * -> strict-transport-security: max-age=31536000; includeSubdomains; preload -> x-frame-options: deny -> x-content-type-options: nosniff -> x-xss-protection: 0 -> referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin -> content-security-policy: default-src 'none' -> x-ratelimit-limit: 60 -> x-ratelimit-remaining: 53 -> x-ratelimit-reset: 1625731053 -> x-ratelimit-resource: core -> x-ratelimit-used: 7 -> accept-ranges: bytes -> content-length: 1305 -> x-github-request-id: 9F60:7019:ACC5CD5:B03C931:60E6A368 -> -> { -> "login": "defunkt", -> "id": 2, -> "node_id": "MDQ6VXNlcjI=", -> "avatar_url": "https://avatars.githubusercontent.com/u/2?v=4", -> "gravatar_id": "", -> "url": "https://api.github.com/users/defunkt", -> "html_url": "https://github.com/defunkt", -> -> ... -> } +gh auth login ``` -响应标头中有一些有趣的地方。 果然,`Content-Type` 为 `application/json`。 +You can use the `--scopes` flag to specify what scopes you want. If you want to authenticate with a token that you created, you can use the `--with-token` flag. For more information, see the [{% data variables.product.prodname_cli %} `auth login` documentation](https://cli.github.com/manual/gh_auth_login). -任何以 `X-` 开头的标头都是自定义标头,不包含在 HTTP 规范中。 例如,请注意 `X-RateLimit-Limit` 和 `X-RateLimit-Remaining` 标头。 This pair of headers indicate [how many requests a client can make][rate-limiting] in a rolling time period (typically an hour) and how many of those requests the client has already spent. +{% endcli %} -## 身份验证 - -未经身份验证的客户端每小时可以发出 60 个请求。 要每小时发出更多请求,我们需要进行_身份验证_。 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]. - -### 使用个人访问令牌 - -使用 {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API 进行身份验证的最简单和最佳的方式是[通过 OAuth 令牌](/rest/overview/other-authentication-methods#via-oauth-and-personal-access-tokens)使用基本身份验证。 OAuth tokens include [personal access tokens][personal token]. - -使用 `-u` 标志设置您的用户名: - -```shell -$ curl -i -u your_username {% data variables.product.api_url_pre %}/users/octocat - -``` - -出现提示时,您可以输入 OAuth 令牌,但我们建议您为它设置一个变量: - -您可以使用 `-u "your_username:$token"` 并为 `token` 设置一个变量,以避免您的令牌留在 shell 历史记录中,这种情况应尽量避免。 - -```shell -$ curl -i -u your_username:$token {% data variables.product.api_url_pre %}/users/octocat - -``` - -进行身份验证时,您应该会看到您的速率限制达到每小时 5,000 个请求,如 `X-RateLimit-Limit` 标头中所示。 除了每小时提供更多调用次数之外,身份验证还使您能够使用 API 读取和写入私有信息。 - -You can easily [create a **personal access token**][personal token] using your [Personal access tokens settings page][tokens settings]: +{% javascript %} {% warning %} -为了帮助保护您的信息安全,我们强烈建议为您的个人访问令牌设置一个到期日。 +**Warning**: Treat your access token like a password. + +To keep your token secure, you can store your token as a secret and run your script through {% data variables.product.prodname_actions %}. 更多信息请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 + +{% ifversion ghec or fpt %}You can also store your token as a {% data variables.product.prodname_codespaces %} secret and run your script in {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + +If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. {% endwarning %} -{% ifversion fpt or ghes or ghec %} -![个人令牌选择](/assets/images/personal_token.png) +To authenticate with the Octokit.js library, you can pass your token when you create an instance of `Octokit`. Replace `YOUR-TOKEN` with your token.{% ifversion ghes or ghae %} Replace `[hostname]` with the name of {% data variables.product.product_location %}.{% endif %} + +```javascript +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: 'YOUR-TOKEN', +}); +``` + +{% endjavascript %} + +{% curl %} + +{% warning %} + +**Warning**: Treat your access token like a password. + +To help keep your account secure, you can use {% data variables.product.prodname_cli %} instead of cURL. {% data variables.product.prodname_cli %} will take care of authentication for you. For more information, see the {% data variables.product.prodname_cli %} version of this page. + +{% ifversion ghec or fpt %}You can also store your token as a {% data variables.product.prodname_codespaces %} secret and use the command line through {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + +If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. + +{% endwarning %} + +With cURL, you will send an `Authorization` header with your token. Replace `YOUR-TOKEN` with your token: + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% note %} + +**注意:**{% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + +{% endcurl %} + +### Authentication example for {% data variables.product.prodname_actions %} + +{% cli %} + +You can also use the `run` keyword to execute {% data variables.product.prodname_cli %} commands in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +Instead of using the `gh auth login` command, pass your token as an environment variable called `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api /octocat +``` + +{% endcli %} + +{% javascript %} + +You can also use the `run` keyword to execute your JavaScript scripts in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 + +The following example workflow: + +1. Checks out the repository content +1. Sets up Node.js +1. Installs `octokit` +1. Stores the value of `GITHUB_TOKEN` as an environment variable called `TOKEN` and runs `.github/actions-scripts/use-the-api.mjs`, which can access that environment variable as `process.env.TOKEN` + +Example workflow: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + node .github/actions-scripts/use-the-api.mjs +``` + +Example JavaScript script, with the file path `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit"; + +const octokit = new Octokit({ {% ifversion ghes or ghae %} + baseUrl: "{% data variables.product.api_url_code %}",{% endif %} + auth: process.env.TOKEN, +}); + +await octokit.request("GET /octocat", {}); +``` + +Instead of storing your script in a separate file and executing the script from your workflow, you can use the `actions/github-script` action to run a script. For more information, see the [actions/github-script README](https://github.com/actions/github-script). + +```yaml +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: {} + steps: + - uses: {% data reusables.actions.action-github-script %} + with: + github-token: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + script: | + await github.request('GET /octocat', {}) +``` + +{% endjavascript %} + +{% curl %} + +You can also use the `run` keyword to execute cURL commands in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recommends that you authenticate with the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 + +```yaml +jobs: + use_api: + runs-on: ubuntu-latest + permissions: {} + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/octocat" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## Using headers + +Most operations specify that you should pass an `Accept` header with a value of `application/vnd.github.v3+json`. Other operations may specify that you should send a different `Accept` header or additional headers. + +{% cli %} + +To send a header with {% data variables.product.prodname_cli %}, use the `--header` or `-H` flag followed by the header in `key: value` format. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /octocat +``` + +{% endcli %} + +{% javascript %} + +The Octokit.js library automatically passes the `Accept: application/vnd.github.v3+json` header. To pass additional headers or a different `Accept` header, add a `headers` property to the object that is passed as a second argument to the `request` method. The value of the `headers` property is an object with the header names as keys and header values as values. For example, to send a `content-type` header with a value of `text/plain`: + +```javascript +await octokit.request("GET /octocat", { + headers: { + "content-type": "text/plain", + }, +}); +``` + +{% endjavascript %} + +{% curl %} + +To send a header with cURL, use the `--header` or `-H` flag followed by the header in `key: value` format. + +```shell +curl --request GET \ +--url "https://api.github.com/octocat" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" +``` + +{% endcurl %} + +## Using path parameters + +Path parameters modify the operation path. For example, the "List repository issues" path is `/repos/{owner}/{repo}/issues`. The curly brackets `{}` denote path parameters that you need to specify. In this case, you must specify the repository owner and name. For the reference documentation for this operation, see "[List repository issues](/rest/issues/issues#list-repository-issues)." + +{% cli %} + +{% ifversion ghes or ghae %} +{% note %} + +**Note:** In order for this command to work for {% data variables.product.product_location %}, replace `octocat/Spoon-Knife` with a repository owned by {% data variables.product.product_location %}. Otherwise, rerun the `gh auth login` command to authenticate to {% data variables.product.prodname_dotcom_the_website %} instead of {% data variables.product.product_location %}. + +{% endnote %} {% endif %} -{% ifversion ghae %} -![个人令牌选择](/assets/images/help/personal_token_ghae.png) +To get issues from the `octocat/Spoon-Knife` repository, replace `{owner}` with `octocat` and `{repo}` with `Spoon-Knife`. + +```shell +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +{% ifversion ghes or ghae %} +{% note %} + +**Note:** In order for this example to work for {% data variables.product.product_location %}, replace `octocat/Spoon-Knife` with a repository owned by {% data variables.product.product_location %}. Otherwise, create a new `Octokit` instance and do not specify `baseURL`. + +{% endnote %} {% endif %} -使用到期的个人访问令牌的 API 请求将通过 `GitHub-Authentication-Token-Expiration` 标头返回该令牌的到期日期。 当令牌接近其过期日期时,您可以使用脚本中的标头来提供警告信息。 +When you make a request with Octokit.js, all parameters, including path parameters, are passed in an object as the second argument to the `request` method. To get issues from the `octocat/Spoon-Knife` repository, specify `owner` as `octocat` and `repo` as `Spoon-Knife`. -### 获取自己的用户个人资料 - -在正确验证身份后,您可以利用与 {% ifversion ghae %}{% data variables.product.product_name %}{% else %}{% data variables.product.product_location %}{% endif %} 上的帐户相关的权限。 。 例如,尝试获取 - -```shell -$ curl -i -u your_username:your_token {% data variables.product.api_url_pre %}/user - -> { -> ... -> "plan": { -> "space": 2516582, -> "collaborators": 10, -> "private_repos": 20, -> "name": "medium" -> } -> ... -> } +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife" +}); ``` -This time, in addition to the same set of public information we retrieved for [@defunkt][defunkt github] earlier, you should also see the non-public information for your user profile. 例如,您将在响应中看到 `plan` 对象,它提供有关帐户的 {% data variables.product.product_name %} 计划的详细信息。 +{% endjavascript %} -### 对应用程序使用 OAuth 令牌 +{% curl %} -需要代表其他用户使用 API 读取或写入私有信息的应用程序应使用 [OAuth][oauth]。 +To get issues from the `octocat/Spoon-Knife` repository, replace `{owner}` with `octocat` and `{repo}` with `Spoon-Knife`. To build the full path, prepend the base URL for the {% data variables.product.prodname_dotcom %} REST API, `https://api.github.com`: `https://api.github.com/repos/octocat/Spoon-Knife/issues`. -OAuth 使用_令牌_。 令牌具有两大特点: +{% ifversion ghes or ghae %} +{% note %} -* **可撤销访问权限**:用户可以随时撤销对第三方应用程序的授权 -* **有限访问权限**:用户可以在授权第三方应用程序前审查令牌将提供的具体访问权限。 +**Note:** If you want to use {% data variables.product.product_location %} instead of {% data variables.product.prodname_dotcom_the_website %}, use `{% data variables.product.api_url_code %}` instead of `https://api.github.com` and replace `[hostname]` with the name of {% data variables.product.product_location %}. Replace `octocat/Spoon-Knife` with a repository owned by {% data variables.product.product_location %}. -令牌应通过 [web 工作流程][webflow]进行创建。 应用程序将用户发送到 {% data variables.product.product_name %} 进行登录。 {% data variables.product.product_name %} 随后显示一个对话框,指示应用程序的名称以及应用程序经用户授权后具有的权限级别。 经用户授权访问后,{% data variables.product.product_name %} 将用户重定向到应用程序: - -![GitHub 的 OAuth 提示](/assets/images/oauth_prompt.png) - -**像对待密码一样对待 OAuth 令牌!**不要与其他用户共享它们,也不要将其存储在不安全的地方。 这些示例中的令牌是假的,并且更改了名称以免波及无辜。 - -Now that we've got the hang of making authenticated calls, let's move along to the [Repositories API][repos-api]. - -## 仓库 - -几乎任何有意义的 {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API 使用都会涉及某种级别的仓库信息。 信息。 We can [`GET` repository details][get repo] in the same way we fetched user details earlier: +{% endnote %} +{% endif %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/twbs/bootstrap +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -In the same way, we can [view repositories for the authenticated user][user repos api]: +{% endcurl %} + +The operation returns a list of issues and data about each issue. For more information about using the response, see the "[Using the response](#using-the-response)" section. + +## Using query parameters + +Query parameters allow you to control what data is returned for a request. For example, a query parameter may let you specify how many items are returned when the response is paginated. + +By default, the "List repository issues" operation returns thirty issues, sorted in descending order by the date they were created. You can use the `per_page` parameter to return two issues instead of 30. You can use the `sort` parameter to sort the issues by the date they were last updated instead of by the date they were created. You can use the `direction` parameter to sort the results in ascending order instead of descending order. + +{% cli %} + +For {% data variables.product.prodname_cli %}, use the `-F` flag to pass a parameter that is a number, Boolean, or null. Use `-f` to pass string parameters. + +{% note %} + +**Note**: {% data variables.product.prodname_cli %} does not currently accept parameters that are arrays. For more information, see [this issue](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 -f sort=updated -f direction=asc ``` -Or, we can [list repositories for another user][other user repos api]: +{% endcli %} + +{% javascript %} + +When you make a request with Octokit.js, all parameters, including query parameters, are passed in an object as the second argument to the `request` method. + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + sort: "updated", + direction: "asc", +}); +``` + +{% endjavascript %} + +{% curl %} + +For cURL, add a `?` to the end of the path, then append your query parameter name and value in the form `parameter_name=value`. Separate multiple query parameters with `&`. ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/octocat/repos +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2&sort=updated&direction=asc" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -Or, we can [list repositories for an organization][org repos api]: +{% endcurl %} + +The operation returns a list of issues and data about each issue. For more information about using the response, see the "[Using the response](#using-the-response)" section. + +## Using body parameters + +Body parameters allow you to pass additional data to the API. For example, the "Create an issue" operation requires you to specify a title for the new issue. It also lets you specify other information, such as text to put in the issue body. For the full reference documentation for this operation, see "[Create an issue](/rest/issues/issues#create-an-issue)." + +The "Create an issue" operation uses the same path as the "List repository issues" operation in the examples above, but it uses a `POST` method instead of a `GET` method. + +{% cli %} + +For {% data variables.product.prodname_cli %}, use the `-F` flag to pass a parameter that is a number, Boolean, or null. Use `-f` to pass string parameters. + +{% note %} + +**Note**: {% data variables.product.prodname_cli %} does not currently accept parameters that are arrays. For more information, see [this issue](https://github.com/cli/cli/issues/1484). + +{% endnote %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/orgs/octo-org/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method POST /repos/octocat/Spoon-Knife/issues -f title="Created with the REST API" -f body="This is a test issue created by the REST API" ``` -从这些调用返回的信息将取决于我们进行身份验证时令牌所具有的作用域: +{% endcli %} -{%- ifversion fpt or ghec or ghes %} -* A token with `public_repo` [scope][scopes] returns a response that includes all public repositories we have access to see on {% data variables.product.product_location %}. -{%- endif %} -* A token with `repo` [scope][scopes] returns a response that includes all {% ifversion fpt %}public or private{% elsif ghec or ghes %}public, private, or internal{% elsif ghae %}private or internal{% endif %} repositories we have access to see on {% data variables.product.product_location %}. +{% javascript %} -As the [docs][repos-api] indicate, these methods take a `type` parameter that can filter the repositories returned based on what type of access the user has for the repository. 这样,我们可以只获取直接拥有的仓库、组织仓库或用户通过团队进行协作的仓库。 +When you make a request with Octokit.js, all parameters, including body parameters, are passed in an object as the second argument to the `request` method. + +```javascript +await octokit.request("POST /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + title: "Created with the REST API", + body: "This is a test issue created by the REST API", +}); +``` + +{% endjavascript %} + +{% curl %} + +For cURL, use the `--data` flag to pass the body parameters in a JSON object. ```shell -$ curl -i "{% data variables.product.api_url_pre %}/users/octocat/repos?type=owner" +curl --request POST \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--data '{ + "title": "Created with the REST API", + "body": "This is a test issue created by the REST API" +}' ``` -在此示例中,我们只获取 octocat 拥有的仓库,而没有获取她协作的仓库。 请注意上面的引用 URL。 根据您的 shell 设置,cURL 有时需要一个引用 URL,否则它会忽略查询字符串。 +{% endcurl %} -### 创建仓库 +The operation creates an issue and returns data about the new issue. In the response, find the `html_url` of your issue and navigate to your issue in the browser. For more information about using the response, see the "[Using the response](#using-the-response)" section. -获取现有仓库的信息是一种常见的用例,但 -{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API 也支持创建新的仓库。 To [create a repository][create repo], -我们需要 `POST` 一些包含详细信息和配置选项的JSON。 +## Using the response + +### About the response code and headers + +Every request will return an HTTP status code that indicates the success of the response. For more information about response codes, see [the MDN HTTP response status code documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status). + +Additionally, the response will include headers that give more details about the response. Headers that start with `X-` or `x-` are custom to {% data variables.product.company_short %}. For example, the `x-ratelimit-remaining` and `x-ratelimit-reset` headers tell you how many requests you can make in a time period. + +{% cli %} + +To view the status code and headers, use the `--include` or `--i` flag when you send your request. + +For example, this request: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - -d '{ - "name": "blog", - "auto_init": true, - "private": true, - "gitignore_template": "nanoc" - }' \ - {% data variables.product.api_url_pre %}/user/repos +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 --include ``` -In this minimal example, we create a new private repository for our blog (to be served on [GitHub Pages][pages], perhaps). 虽然博客 {% ifversion not ghae %}将是公开的{% else %}可供所有企业成员访问{% endif %},但我们已经将仓库设置为私有。 In this single step, we'll also initialize it with a README and a [nanoc][nanoc]-flavored [.gitignore template][gitignore templates]. - -生成的仓库可在 `https://github.com//blog` 上找到。 要在您拥有的组织下创建仓库,只需将 API 方法从 `/user/repos` 更改为 `/orgs//repos`。 - -接下来,我们将获取新创建的仓库: +returns the response code and headers like: ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/pengwynn/blog - -> HTTP/2 404 - -> { -> "message": "Not Found" -> } +HTTP/2.0 200 OK +Access-Control-Allow-Origin: * +Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +Cache-Control: private, max-age=60, s-maxage=60 +Content-Security-Policy: default-src 'none' +Content-Type: application/json; charset=utf-8 +Date: Thu, 04 Aug 2022 19:56:41 GMT +Etag: W/"a63dfbcfdb73621e9d2e89551edcf9856731ced534bd7f1e114a5da1f5f73418" +Link: ; rel="next", ; rel="last" +Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin +Server: GitHub.com +Strict-Transport-Security: max-age=31536000; includeSubdomains; preload +Vary: Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding, Accept, X-Requested-With +X-Accepted-Oauth-Scopes: repo +X-Content-Type-Options: nosniff +X-Frame-Options: deny +X-Github-Api-Version-Selected: 2022-08-09 +X-Github-Media-Type: github.v3; format=json +X-Github-Request-Id: 1C73:26D4:E2E500:1EF78F4:62EC2479 +X-Oauth-Client-Id: 178c6fc778ccc68e1d6a +X-Oauth-Scopes: gist, read:org, repo, workflow +X-Ratelimit-Limit: 15000 +X-Ratelimit-Remaining: 14996 +X-Ratelimit-Reset: 1659645499 +X-Ratelimit-Resource: core +X-Ratelimit-Used: 4 +X-Xss-Protection: 0 ``` -哦,不! 它去哪儿了? 因为我们创建仓库为 _私有_,所以需要经过身份验证才能看到它。 如果您是一位资深的 HTTP 用户,您可能会预期返回 `403`。 由于我们不想泄露有关私有仓库的信息,因此在本例中,{% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API 返回 `404`,就好像说“我们既不能确认也不能否认这个仓库的存在”。 +In this example, the response code is `200`, which indicates a successful request. -## 议题 +{% endcli %} -{% data variables.product.product_name %} 上的议题 UI 旨在提供“恰到好处”的工作流程,不会妨碍您的其他工作。 With the {% data variables.product.product_name %} [Issues API][issues-api], you can pull data out or create issues from other tools to create a workflow that works for your team. +{% javascript %} -与 github.com 一样,API 为经过身份验证的用户提供了一些查看议题的方法。 To [see all your issues][get issues api], call `GET /issues`: +When you make a request with Octokit.js, the `request` method returns a promise. If the request was successful, the promise resolves to an object that includes the HTTP status code of the response (`status`) and the response headers (`headers`). If an error occurs, the promise resolves to an object that includes the HTTP status code of the response (`status`) and the response headers (`response.headers`). + +You can use a `try/catch` block to catch an error if it occurs. For example, if the request in the following script is successful, the script will log the status code and the value of the `x-ratelimit-remaining` header. If the request was not successful, the script will log the status code, the value of the `x-ratelimit-remaining` header, and the error message. + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + console.log(`Success! Status: ${result.status}. Rate limit remaining: ${result.headers["x-ratelimit-remaining"]}`) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Rate limit remaining: ${error.headers["x-ratelimit-remaining"]}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +To view the status code and headers, use the `--include` or `--i` flag when you send your request. + +For example, this request: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/issues +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" \ +--include ``` -To get only the [issues under one of your {% data variables.product.product_name %} organizations][get issues api], call `GET -/orgs//issues`: +returns the response code and headers like: ```shell -$ curl -i -H "Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a" \ - {% data variables.product.api_url_pre %}/orgs/rails/issues +HTTP/2 200 +server: GitHub.com +date: Thu, 04 Aug 2022 20:07:51 GMT +content-type: application/json; charset=utf-8 +cache-control: public, max-age=60, s-maxage=60 +vary: Accept, Accept-Encoding, Accept, X-Requested-With +etag: W/"7fceb7e8c958d3ec4d02524b042578dcc7b282192e6c939070f4a70390962e18" +x-github-media-type: github.v3; format=json +link: ; rel="next", ; rel="last" +access-control-expose-headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset +access-control-allow-origin: * +strict-transport-security: max-age=31536000; includeSubdomains; preload +x-frame-options: deny +x-content-type-options: nosniff +x-xss-protection: 0 +referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin +content-security-policy: default-src 'none' +x-ratelimit-limit: 15000 +x-ratelimit-remaining: 14996 +x-ratelimit-reset: 1659645535 +x-ratelimit-resource: core +x-ratelimit-used: 4 +accept-ranges: bytes +content-length: 4936 +x-github-request-id: 14E0:4BC6:F1B8BA:208E317:62EC2715 ``` -We can also get [all the issues under a single repository][repo issues api]: +In this example, the response code is `200`, which indicates a successful request. + +{% endcurl %} + +### About the response body + +Many operations will return a response body. Unless otherwise specified, the response body is in JSON format. For example, this request returns a list of issues with data about each issue: + +{% cli %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 ``` -### 分页 +{% endcli %} -一个 Rails 规模的项目有数千个议题。 We'll need to [paginate][pagination], making multiple API calls to get the data. 我们来重复上次调用,这次请注意响应标头: +{% javascript %} + +```javascript +await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, +}); +``` + +{% endjavascript %} + +{% curl %} ```shell -$ curl -i {% data variables.product.api_url_pre %}/repos/rails/rails/issues - -> HTTP/2 200 - -> ... -> Link: <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=2>; rel="next", <{% data variables.product.api_url_pre %}/repositories/8514/issues?page=30>; rel="last" -> ... +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" ``` -The [`Link` header][link-header] provides a way for a response to link to external resources, in this case additional pages of data. 由于我们的调用发现的议题超过 30 个(默认页面大小),因此 API 将告诉我们在哪里可以找到结果的下一页和最后一页。 +{% endcurl %} -### 创建议题 +Unlike the GraphQL API where you specify what information you want, the REST API typically returns more information than you need. If desired, you can parse the response to pull out specific pieces of information. -Now that we've seen how to paginate lists of issues, let's [create an issue][create issue] from the API. +{% cli %} -要创建议题,我们需要进行身份验证,因此我们将在标头中传递 OAuth 令牌。 此外,我们还将 JSON 正文中的标题、正文和标签传递到要在其中创建议题的仓库下的 `/issues` 路径: +For example, you can use `>` to redirect the response to a file: ```shell -$ curl -i -H 'Authorization: token ghp_16C7e42F292c6912E7710c838347Ae178B4a' \ -$ -d '{ \ -$ "title": "New logo", \ -$ "body": "We should have one", \ -$ "labels": ["design"] \ -$ }' \ -$ {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues - -> HTTP/2 201 -> Location: {% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17 -> X-RateLimit-Limit: 5000 - -> { -> "pull_request": { -> "patch_url": null, -> "html_url": null, -> "diff_url": null -> }, -> "created_at": "2012-11-14T15:25:33Z", -> "comments": 0, -> "milestone": null, -> "title": "New logo", -> "body": "We should have one", -> "user": { -> "login": "pengwynn", -> "gravatar_id": "7e19cd5486b5d6dc1ef90e671ba52ae0", -> "avatar_url": "https://secure.gravatar.com/avatar/7e19cd5486b5d6dc1ef90e671ba52ae0?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-user-420.png", -> "id": 865, -> "url": "{% data variables.product.api_url_pre %}/users/pengwynn" -> }, -> "closed_at": null, -> "updated_at": "2012-11-14T15:25:33Z", -> "number": 17, -> "closed_by": null, -> "html_url": "https://github.com/pengwynn/api-sandbox/issues/17", -> "labels": [ -> { -> "color": "ededed", -> "name": "design", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/labels/design" -> } -> ], -> "id": 8356941, -> "assignee": null, -> "state": "open", -> "url": "{% data variables.product.api_url_pre %}/repos/pengwynn/api-sandbox/issues/17" -> } +gh api --header 'Accept: application/vnd.github.v3+json' --method GET /repos/octocat/Spoon-Knife/issues -F per_page=2 > data.json ``` -JSON 响应的 `Location` 响应标头和 `url` 字段为我们提供了一些新建议题的指示。 - -## 条件请求 - -通过缓存未更改的信息来遵守速率限制,是成为一个良好 API 公民的重要特质。 The API supports [conditional requests][conditional-requests] and helps you do the right thing. 请注意我们为获取 defunkt 的个人资料而进行的第一个调用: +Then you can use jq to get the title and author ID of each issue: ```shell -$ curl -i {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 200 -> etag: W/"61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0" +jq '.[] | {title: .title, authorID: .user.id}' data.json ``` -除了 JSON 正文之外,还要注意 HTTP 状态代码 `200` 和 `Etag` 标头。 The [ETag][etag] is a fingerprint of the response. 如果我们在后续调用中传递它,则可以告诉 API 仅在资源发生改变的情况才将其再次提供给我们。 +The previous two commands return something like: + +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` + +For more information about jq, see [the jq documentation](https://stedolan.github.io/jq/) and [jq play](https://jqplay.org/). + +{% endcli %} + +{% javascript %} + +For example, you can get the title and author ID of each issue: + +```javascript +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + per_page: 2, + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +{% endjavascript %} + +{% curl %} + +For example, you can use `>` to redirect the response to a file: ```shell -$ curl -i -H 'If-None-Match: "61e964bf6efa3bc3f9e8549e56d4db6e0911d8fa20fcd8ab9d88f13d513f26f0"' \ -$ {% data variables.product.api_url_pre %}/users/defunkt - -> HTTP/2 304 +curl --request GET \ +--url "https://api.github.com/repos/octocat/Spoon-Knife/issues?per_page=2" \ +--header "Accept: application/vnd.github.v3+json" \ +--header "Authorization: Bearer YOUR-TOKEN" > data.json ``` -`304` 状态表示该资源自上次请求以来没有发生改变,该响应将不包含任何正文。 As a bonus, `304` responses don't count against your [rate limit][rate-limiting]. +Then you can use jq to get the title and author ID of each issue: -现在您了解 {% ifversion fpt or ghec %}{% data variables.product.prodname_dotcom %}{% else %}{% data variables.product.product_name %}{% endif %} API 的基础知识了! +```shell +jq '.[] | {title: .title, authorID: .user.id}' data.json +``` -* 基本 & OAuth 身份验证 -* 获取和创建仓库及议题 -* 条件请求 +The previous two commands return something like: -Keep learning with the next API guide [Basics of Authentication][auth guide]! +``` +{ + "title": "Update index.html", + "authorID": 10701255 +} +{ + "title": "Edit index file", + "authorID": 53709285 +} +``` -[wrappers]: /libraries/ -[curl]: http://curl.haxx.se/ -[oauth]: /apps/building-integrations/setting-up-and-registering-oauth-apps/ -[webflow]: /apps/building-oauth-apps/authorizing-oauth-apps/ -[scopes]: /apps/building-oauth-apps/understanding-scopes-for-oauth-apps/ -[repos-api]: /rest/reference/repos -[repos-api]: /rest/reference/repos -[pages]: http://pages.github.com -[nanoc]: http://nanoc.ws/ -[gitignore templates]: https://github.com/github/gitignore -[issues-api]: /rest/reference/issues -[link-header]: https://www.w3.org/wiki/LinkHeader -[conditional-requests]: /rest#conditional-requests -[rate-limiting]: /rest/overview/resources-in-the-rest-api#rate-limit-http-headers -[rate-limiting]: /rest/overview/resources-in-the-rest-api#rate-limit-http-headers -[users api]: /rest/reference/users#get-a-user -[defunkt github]: https://github.com/defunkt -[defunkt github]: https://github.com/defunkt -[json]: http://en.wikipedia.org/wiki/JSON -[authentication]: /rest#authentication -[personal token]: /articles/creating-an-access-token-for-command-line-use -[personal token]: /articles/creating-an-access-token-for-command-line-use -[tokens settings]: https://github.com/settings/tokens -[pagination]: /rest#pagination -[get repo]: /rest/reference/repos#get-a-repository -[create repo]: /rest/reference/repos#create-a-repository-for-the-authenticated-user -[create issue]: /rest/reference/issues#create-an-issue -[auth guide]: /guides/basics-of-authentication -[user repos api]: /rest/reference/repos#list-repositories-for-the-authenticated-user -[other user repos api]: /rest/reference/repos#list-repositories-for-a-user -[org repos api]: /rest/reference/repos#list-organization-repositories -[get issues api]: /rest/reference/issues#list-issues-assigned-to-the-authenticated-user -[get issues api]: /rest/reference/issues#list-issues-assigned-to-the-authenticated-user -[repo issues api]: /rest/reference/issues#list-repository-issues -[etag]: http://en.wikipedia.org/wiki/HTTP_ETag +For more information about jq, see [the jq documentation](https://stedolan.github.io/jq/) and [jq play](https://jqplay.org/). + +{% endcurl %} + +## 后续步骤 + +This article demonstrated how to list and create issues in a repository. For more practice, try to comment on an issue, edit the title of an issue, or close an issue. For more information about these operations, see "[Create an issue comment](/rest/issues#create-an-issue-comment)" and "[Update an issue](/rest/issues/issues#update-an-issue)." + +For more information about the operations that you can use, see the [REST reference documentation](/rest). diff --git a/translations/zh-CN/content/rest/index.md b/translations/zh-CN/content/rest/index.md index 4a6122dd8e..85a18075e9 100644 --- a/translations/zh-CN/content/rest/index.md +++ b/translations/zh-CN/content/rest/index.md @@ -3,7 +3,8 @@ title: GitHub REST API shortTitle: REST API intro: '要创建集成、检索数据和自动化工作流程,请使用 {% data variables.product.prodname_dotcom %} REST API 构建。' introLinks: - quickstart: /rest/guides/getting-started-with-the-rest-api + quickstart: /rest/quickstart + overview: /rest/guides/getting-started-with-the-rest-api featuredLinks: guides: - /rest/guides/getting-started-with-the-rest-api @@ -31,6 +32,7 @@ versions: ghae: '*' ghec: '*' children: + - /quickstart - /overview - /guides - /actions diff --git a/translations/zh-CN/content/rest/overview/other-authentication-methods.md b/translations/zh-CN/content/rest/overview/other-authentication-methods.md index b75ab98525..d8147fdb5d 100644 --- a/translations/zh-CN/content/rest/overview/other-authentication-methods.md +++ b/translations/zh-CN/content/rest/overview/other-authentication-methods.md @@ -86,10 +86,16 @@ If you have two-factor authentication enabled, make sure you understand how to [ {% endnote %} +{% note %} + +**Note:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + If you're using the API to access an organization that enforces [SAML SSO][saml-sso] for authentication, you'll need to create a personal access token (PAT) and [authorize the token][allowlist] for that organization. Visit the URL specified in `X-GitHub-SSO` to authorize the token for the organization. ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/repos/octodocs-test/test > X-GitHub-SSO: required; url=https://github.com/orgs/octodocs-test/sso?authorization_request=AZSCKtL4U8yX1H3sCQIVnVgmjmon5fWxks5YrqhJgah0b2tlbl9pZM4EuMz4 { @@ -101,7 +107,7 @@ $ curl -v -H "Authorization: token TOKEN" {% data variables.product.api When requesting data that could come from multiple organizations (for example, [requesting a list of issues created by the user][user-issues]), the `X-GitHub-SSO` header indicates which organizations require you to authorize your personal access token: ```shell -$ curl -v -H "Authorization: token TOKEN" {% data variables.product.api_url_pre %}/user/issues +$ curl -v -H "Authorization: Bearer TOKEN" {% data variables.product.api_url_pre %}/user/issues > X-GitHub-SSO: partial-results; organizations=21955855,20582480 ``` diff --git a/translations/zh-CN/content/rest/overview/resources-in-the-rest-api.md b/translations/zh-CN/content/rest/overview/resources-in-the-rest-api.md index 19c7f3d34e..033f0ccd78 100644 --- a/translations/zh-CN/content/rest/overview/resources-in-the-rest-api.md +++ b/translations/zh-CN/content/rest/overview/resources-in-the-rest-api.md @@ -91,7 +91,7 @@ $ curl -u "username" {% data variables.product.api_url_pre %} ### OAuth2 token (sent in a header) ```shell -$ curl -H "Authorization: token OAUTH-TOKEN" {% data variables.product.api_url_pre %} +$ curl -H "Authorization: Bearer OAUTH-TOKEN" {% data variables.product.api_url_pre %} ``` {% note %} @@ -100,6 +100,12 @@ Note: GitHub recommends sending OAuth tokens using the Authorization header. {% endnote %} +{% note %} + +**Note:** {% data reusables.getting-started.bearer-vs-token %} + +{% endnote %} + 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 or ghec %} diff --git a/translations/zh-CN/content/rest/overview/troubleshooting.md b/translations/zh-CN/content/rest/overview/troubleshooting.md index 7d4d75cf9f..ef3ee5f34f 100644 --- a/translations/zh-CN/content/rest/overview/troubleshooting.md +++ b/translations/zh-CN/content/rest/overview/troubleshooting.md @@ -44,13 +44,13 @@ curl -u my_user:my_password https://api.github.com/user/repos 相反,在测试端点或进行本地开发时使用[个人访问令牌](/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line): ```bash -curl -H 'Authorization: token my_access_token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my_access_token' https://api.github.com/user/repos ``` 对于 OAuth 应用程序,您应该使用 [web 应用程序流程](/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow)生成 OAuth 令牌以用于 API 调用的标头: ```bash -curl -H 'Authorization: token my-oauth-token' https://api.github.com/user/repos +curl -H 'Authorization: Bearer my-oauth-token' https://api.github.com/user/repos ``` ## 超时 diff --git a/translations/zh-CN/content/rest/quickstart.md b/translations/zh-CN/content/rest/quickstart.md new file mode 100644 index 0000000000..8fc2ac3c40 --- /dev/null +++ b/translations/zh-CN/content/rest/quickstart.md @@ -0,0 +1,351 @@ +--- +title: Quickstart for GitHub REST API +intro: 'Learn how to get started with the {% data variables.product.prodname_dotcom %} REST API.' +allowTitleToDifferFromFilename: true +versions: + fpt: '*' + ghes: '*' + ghae: '*' + ghec: '*' +shortTitle: 快速入门 +topics: + - API +redirect_from: + - /guides/getting-started + - /v3/guides/getting-started +miniTocMaxHeadingLevel: 3 +--- + +This article describes how to quickly get started with the {% data variables.product.prodname_dotcom %} REST API using {% data variables.product.prodname_cli %}, JavaScript, or cURL. For a more detailed guide, see "[Getting started with the REST API](/rest/guides/getting-started-with-the-rest-api)." + +{% cli %} + +## Getting started using {% data variables.product.prodname_cli %} + +### Using {% data variables.product.prodname_cli %} in the command line + +{% data variables.product.prodname_cli %} is the easiest way to use the {% data variables.product.prodname_dotcom %} REST API from the command line. + +1. Install {% data variables.product.prodname_cli %} if you haven't installed it yet. For installation instructions, see the [{% data variables.product.prodname_cli %} repository](https://github.com/cli/cli#installation). +1. Use the `auth login` subcommand to authenticate to {% data variables.product.prodname_cli %}. For more information, see the [{% data variables.product.prodname_cli %} `auth login` documentation](https://cli.github.com/manual/gh_auth_login). + + ```shell + gh auth login + ``` + +1. Use the `api` subcommand to make your API request. For more information, see the [{% data variables.product.prodname_cli %} `api` documentation](https://cli.github.com/manual/gh_api). + + ```shell + gh api repos/octocat/Spoon-Knife/issues + ``` + +### Using {% data variables.product.prodname_cli %} in {% data variables.product.prodname_actions %} + +You can also use {% data variables.product.prodname_cli %} in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Using GitHub CLI in workflows](/actions/using-workflows/using-github-cli-in-workflows)." + +Instead of using the `gh auth login` command, pass an access token as an environment variable called `GH_TOKEN`. {% data variables.product.prodname_dotcom %} recommends that you use the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +If you are authenticating with a {% data variables.product.prodname_github_app %}, you can create an installation access token within your workflow: + +1. Store your {% data variables.product.prodname_github_app %}'s ID as a secret. In the following example, replace `APP_ID` with the name of the secret. 您可以在应用的设置页面上或通过应用 API 找到应用 ID。 更多信息请参阅“[应用程序](/rest/apps/apps#get-an-app)”。 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 +1. 为应用生成私钥。 Store the contents of the resulting file as a secret. (存储文件的全部内容,包括 `-----BEGIN RSA PRIVATE KEY-----` 和 `-----END RSA PRIVATE KEY-----`)。 In the following example, replace `APP_PEM` with the name of the secret. 更多信息请参阅“[向 {% data variables.product.prodname_github_apps %} 验证](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)”。 +1. Add a step to generate a token, and use that token instead of `GITHUB_TOKEN`. Note that this token will expire after 60 minutes. 例如: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + track_pr: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + gh api repos/octocat/Spoon-Knife/issues +``` + +{% endcli %} + +{% javascript %} + +## Getting started using JavaScript + +You can use Octokit.js to interact with the {% data variables.product.prodname_dotcom %} REST API in your JavaScript scripts. For more information, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). + +### Using Octokit.js + +1. Create an access token. For example, create a personal access token (PAT) or a {% data variables.product.prodname_github_app %} user-to-server access token. For more information, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" or "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + + {% warning %} + + **Warning**: Treat your access token like a password. + + To keep your token secure, you can store your token as a secret and run your script through {% data variables.product.prodname_actions %}. For more information, see the "[Using Octokit.js in {% data variables.product.prodname_actions %}](#using-octokitjs-in-github-actions)" section. + + {%- ifversion fpt or ghec %} + + You can also store your token as a {% data variables.product.prodname_codespaces %} secret and run your script in {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + + If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. + + {% endwarning %} + +1. Install `octokit`. For example, `npm install octokit`. For other ways to install or load `octokit`, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). +1. Import `octokit` in your script. For example, `import { Octokit } from "octokit";`. For other ways to import `octokit`, see [the Octokit.js README](https://github.com/octokit/octokit.js/#readme). +1. Create an instance of `Octokit` with your token. Replace `YOUR-TOKEN` with your token. + + ```javascript + const octokit = new Octokit({ + auth: 'YOUR-TOKEN' + }); + ``` + +1. Use `octokit.request` to execute your request. Send the HTTP method and path as the first argument. Specify any path, query, and body parameters in an object as the second argument. For example, in the following request the HTTP method is `GET`, the path is `/repos/{owner}/{repo}/issues`, and the parameters are `owner: "octocat"` and `repo: "Spoon-Knife"`. + + ```javascript + await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + ``` + +### Using Octokit.js in {% data variables.product.prodname_actions %} + +You can also execute your JavaScript scripts in your {% data variables.product.prodname_actions %} workflows. For more information, see "[Workflow syntax for GitHub Actions](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun)." + +{% data variables.product.prodname_dotcom %} recommends that you use the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 + +The following example workflow: + +1. Checks out the repository content +1. Sets up Node.js +1. Installs `octokit` +1. Stores the value of `GITHUB_TOKEN` as an environment variable called `TOKEN` and runs `.github/actions-scripts/use-the-api.mjs`, which can access that environment variable as `process.env.TOKEN` + +Example workflow: + +```yaml +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} +``` + +Example JavaScript script, with the file path `.github/actions-scripts/use-the-api.mjs`: + +```javascript +import { Octokit } from "octokit" + +const octokit = new Octokit({ + auth: process.env.TOKEN +}); + +try { + const result = await octokit.request("GET /repos/{owner}/{repo}/issues", { + owner: "octocat", + repo: "Spoon-Knife", + }); + + const titleAndAuthor = result.data.map(issue => {title: issue.title, authorID: issue.user.id}) + + console.log(titleAndAuthor) + +} catch (error) { + console.log(`Error! Status: ${error.status}. Message: ${error.response.data.message}`) +} +``` + +If you are authenticating with a {% data variables.product.prodname_github_app %}, you can create an installation access token within your workflow: + +1. Store your {% data variables.product.prodname_github_app %}'s ID as a secret. In the following example, replace `APP_ID` with the name of the secret. 您可以在应用的设置页面上或通过应用 API 找到应用 ID。 更多信息请参阅“[应用程序](/rest/apps/apps#get-an-app)”。 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 +1. 为应用生成私钥。 Store the contents of the resulting file as a secret. (存储文件的全部内容,包括 `-----BEGIN RSA PRIVATE KEY-----` 和 `-----END RSA PRIVATE KEY-----`)。 In the following example, replace `APP_PEM` with the name of the secret. 更多信息请参阅“[向 {% data variables.product.prodname_github_apps %} 验证](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)”。 +1. Add a step to generate a token, and use that token instead of `GITHUB_TOKEN`. Note that this token will expire after 60 minutes. 例如: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api_via_script: + runs-on: ubuntu-latest + steps: + - name: Check out repo content + uses: {% data reusables.actions.action-checkout %} + + - name: Setup Node + uses: {% data reusables.actions.action-setup-node %} + with: + node-version: '16.15.0' + cache: npm + + - name: Install dependencies + run: npm install octokit + + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Run script + run: | + node .github/actions-scripts/use-the-api.mjs + env: + TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} +``` + +{% endjavascript %} + +{% curl %} + +## Getting started using cURL + +### Using cURL in the command line + +{% note %} + +**Note:** If you want to make API requests from the command line, {% data variables.product.prodname_dotcom %} recommends that you use {% data variables.product.prodname_cli %}, which simplifies authentication and requests. For more information about getting started with the REST API using {% data variables.product.prodname_cli %}, see the {% data variables.product.prodname_cli %} version of this article. + +{% endnote %} + +1. Install cURL if cURL isn't already installed on your machine. To check if cURL is installed, execute `curl --version` in the command line. If the output is information about the cURL version, cURL is installed. If you get a message similar to `command not found: curl`, you need to download and install cURL. For more information, see [the cURL project download page](https://curl.se/download.html). +1. Create an access token. For example, create a personal access token (PAT) or a {% data variables.product.prodname_github_app %} user-to-server access token. For more information, see "[Creating a personal access token](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)" or "[Identifying and authorizing users for GitHub Apps](/developers/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps)." + + {% warning %} + + **Warning**: Treat your access token like a password. + + {%- ifversion fpt or ghec %} + + To keep your token secure, you can store your token as a {% data variables.product.prodname_codespaces %} secret and use the command line through {% data variables.product.prodname_codespaces %}. For more information, see "[Managing encrypted secrets for your codespaces](/codespaces/managing-your-codespaces/managing-encrypted-secrets-for-your-codespaces)."{% endif %} + + You can also use {% data variables.product.prodname_cli %} instead of cURL. {% data variables.product.prodname_cli %} will take care of authentication for you. For more information, see the {% data variables.product.prodname_cli %} version of this page. + + If these options are not possible, consider using another service such as [the 1Password CLI](https://developer.1password.com/docs/cli/secret-references/) to store your token securely. + + {% endwarning %} + +1. Use the `cURL` command to make your request. Pass your token in an `Authorization` header. Replace `YOUR-TOKEN` with your token. + + ```shell + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer YOUR-TOKEN" + ``` + + {% note %} + + **注意:**{% data reusables.getting-started.bearer-vs-token %} + + {% endnote %} + +### Using cURL in {% data variables.product.prodname_actions %} + +You can also use cURL in your {% data variables.product.prodname_actions %} workflows. + +{% data variables.product.prodname_dotcom %} recommends that you use the built-in `GITHUB_TOKEN` instead of creating a token. If this is not possible, store your token as a secret and replace `GITHUB_TOKEN` in the example below with the name of your secret. For more information about `GITHUB_TOKEN`, see "[Automatic token authentication](/actions/security-guides/automatic-token-authentication)." 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 + +```yaml +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + permissions: + issues: read + steps: + - env: + GH_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +If you are authenticating with a {% data variables.product.prodname_github_app %}, you can create an installation access token within your workflow: + +1. Store your {% data variables.product.prodname_github_app %}'s ID as a secret. In the following example, replace `APP_ID` with the name of the secret. 您可以在应用的设置页面上或通过应用 API 找到应用 ID。 更多信息请参阅“[应用程序](/rest/apps/apps#get-an-app)”。 有关机密的更多信息,请参阅“[加密密码](/actions/security-guides/encrypted-secrets)”。 +1. 为应用生成私钥。 Store the contents of the resulting file as a secret. (存储文件的全部内容,包括 `-----BEGIN RSA PRIVATE KEY-----` 和 `-----END RSA PRIVATE KEY-----`)。 In the following example, replace `APP_PEM` with the name of the secret. 更多信息请参阅“[向 {% data variables.product.prodname_github_apps %} 验证](/developers/apps/building-github-apps/authenticating-with-github-apps#generating-a-private-key)”。 +1. Add a step to generate a token, and use that token instead of `GITHUB_TOKEN`. Note that this token will expire after 60 minutes. 例如: + +```yaml +{% data reusables.actions.actions-not-certified-by-github-comment %} + +on: + workflow_dispatch: +jobs: + use_api: + runs-on: ubuntu-latest + steps: + - name: Generate token + id: generate_token + uses: tibdex/github-app-token@36464acb844fc53b9b8b2401da68844f6b05ebb0 + with: + app_id: {% raw %}${{ secrets.APP_ID }}{% endraw %} + private_key: {% raw %}${{ secrets.APP_PEM }}{% endraw %} + + - name: Use API + env: + GH_TOKEN: {% raw %}${{ steps.generate_token.outputs.token }}{% endraw %} + run: | + curl --request GET \ + --url "https://api.github.com/repos/octocat/Spoon-Knife/issues" \ + --header "Accept: application/vnd.github.v3+json" \ + --header "Authorization: Bearer $GH_TOKEN" +``` + +{% endcurl %} + +## 后续步骤 + +For a more detailed guide, see "[Getting started with the REST API](/rest/guides/getting-started-with-the-rest-api)." diff --git a/translations/zh-CN/content/rest/teams/external-groups.md b/translations/zh-CN/content/rest/teams/external-groups.md index 0fa02a12f7..77405ae5f3 100644 --- a/translations/zh-CN/content/rest/teams/external-groups.md +++ b/translations/zh-CN/content/rest/teams/external-groups.md @@ -19,7 +19,7 @@ miniTocMaxHeadingLevel: 3 **注意:** -- 外部组 API 仅适用于属于使用 {% data variables.product.prodname_emus %} 的企业中的组织。 更多信息请参阅“[关于企业管理用户](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)”。 +- The external groups API is only available for organizations that are part of an enterprise using {% data variables.product.prodname_emus %}. 更多信息请参阅“[关于企业管理用户](/admin/authentication/managing-your-enterprise-users-with-your-identity-provider/about-enterprise-managed-users)”。 - 如果您的组织使用团队同步,则可以使用团队同步 API。 更多信息请参阅“[团队同步 API](#team-synchronization)”。 {% endnote %} diff --git a/translations/zh-CN/content/rest/users/index.md b/translations/zh-CN/content/rest/users/index.md index 48230c7a08..70097ff21a 100644 --- a/translations/zh-CN/content/rest/users/index.md +++ b/translations/zh-CN/content/rest/users/index.md @@ -19,5 +19,6 @@ children: - /followers - /gpg-keys - /keys + - /ssh-signing-keys --- diff --git a/translations/zh-CN/content/rest/users/ssh-signing-keys.md b/translations/zh-CN/content/rest/users/ssh-signing-keys.md new file mode 100644 index 0000000000..f3807f7513 --- /dev/null +++ b/translations/zh-CN/content/rest/users/ssh-signing-keys.md @@ -0,0 +1,16 @@ +--- +title: SSH signing keys +intro: '' +versions: + fpt: '*' + ghes: '>=3.7' + ghec: '*' +topics: + - API +miniTocMaxHeadingLevel: 3 +allowTitleToDifferFromFilename: true +--- + +## About the User SSH signing keys API + +{% data reusables.user-settings.user-api %} \ No newline at end of file diff --git a/translations/zh-CN/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md b/translations/zh-CN/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md index 6c68d34ef3..f663f69d1a 100644 --- a/translations/zh-CN/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md +++ b/translations/zh-CN/content/site-policy/github-terms/github-terms-for-additional-products-and-features.md @@ -21,9 +21,9 @@ topics: 通过使用附加产品和特性,您也同意下面列出的适用的 GitHub 条款。 违反 GitHub 关于附加产品和特性的条款便是违反协议。 在本文未定义的任何大写术语采用“协议”中的含义。 **对于企业用户** -- **GitHub Enterprise Cloud** 用户可以访问以下附加产品和特性:Actions、Advanced Security、Advisory Database、Codespaces、Dependabot Preview、GitHub Enterprise Importer、Learning Lab、Packages 和 Pages。 +- **GitHub Enterprise Cloud** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Codespaces, Dependabot Preview, GitHub Enterprise Importer, Packages, and Pages. -- **GitHub Enterprise Server** 用户可以访问以下附加产品和特性:Actions、Advanced Security、Advisory Database、Connect、Dependabot Preview、GitHub Enterprise Importer、Learning Lab、Packages、Pages 和 SQL Server Images。 +- **GitHub Enterprise Server** users may have access to the following Additional Products and Features: Actions, Advanced Security, Advisory Database, Connect, Dependabot Preview, GitHub Enterprise Importer, Packages, Pages, and SQL Server Images. - **GitHub AE** 用户可以访问以下附加产品和特性:Actions、Advanced Security、Advisory Database、Connect、Dependabot Preview、GitHub Enterprise Importer、Packages 和 Pages。 @@ -106,19 +106,6 @@ GitHub Copilot (i) 可能会根据您的首选遥测设置收集您的代码片 ## GitHub Enterprise Importer Importer 是一个从其他来源导出数据到 GitHub 平台的框架。 Importer“按原样”提供。 -## Learning Lab -GitHub Learning Lab 提供已编入GitHub 的免费交互式课程,并提供即时自动反馈和帮助。 - -*课程材料。*GitHub 拥有其提供的任何课程材料,并授予您全球、非独占、有限期、不可转让、免版税的许可,允许您出于与 Learning Lab 使用相关的内部业务目的而复制、维护、使用和运行这些材料。 - -开源许可证条款可能适用于课程材料中提供的源代码部分。 - -您创建的课程材料归您所有,但是您授予 GitHub 全球、非独占、永久、不可转让、免版税的许可,允许 GitHub 复制、维护、使用、托管以及在服务上运行这些课程材料。 - -您对 GitHub 课程材料的使用以及对自己课程材料的创建和存储并不构成对任一方各自知识产权的共同所有权。 - -个人数据的使用受 [GitHub 隐私声明](/github/site-policy/github-privacy-statement)管制。 - ## npm npm 是一种软件包托管服务,允许您私下或公开托管软件包,并将包用作项目中的依赖项。 npm 是 JavaScript 生态系统的记录注册表。 npm 公共注册表可以免费使用,但客户如果想要发布私有包或使用团队管理私有包,则需收取费用。 [npm 文档](https://docs.npmjs.com/) 包含帐户类型限制以及如何管理[私有包](https://docs.npmjs.com/about-private-packages)和[组织](https://docs.npmjs.com/organizations)的详细信息。 [开放源码条款](https://www.npmjs.com/policies/open-source-terms)概述了可接受的 npm 注册表的使用。 npm [solo](https://www.npmjs.com/policies/solo-plan) 和 [org](https://www.npmjs.com/policies/orgs-plan) 计划都有补充条款。 npm [使用条款](https://www.npmjs.com/policies/terms) 适用于您的 npm 使用。 diff --git a/translations/zh-CN/content/site-policy/privacy-policies/github-privacy-statement.md b/translations/zh-CN/content/site-policy/privacy-policies/github-privacy-statement.md index 03e6b165be..9316fd87a6 100644 --- a/translations/zh-CN/content/site-policy/privacy-policies/github-privacy-statement.md +++ b/translations/zh-CN/content/site-policy/privacy-policies/github-privacy-statement.md @@ -15,7 +15,7 @@ topics: - Legal --- -生效日期:2022 年 5 月 31 日 +Effective date: September 1, 2022 感谢您将源代码、项目和个人数据委托给 GitHub Inc. 或 GitHub B.V.(“GitHub”、“我们”或“我们的”)。 本隐私声明解释了我们在收集、使用和披露您的数据方面的做法,包括我们收集和处理的与我们的网站以及 GitHub 提供的任何应用程序、软件、产品和服务(包括任何 Beta 预览版)相关的任何个人数据(统称为“服务”)。 @@ -25,28 +25,28 @@ topics: ## 精简版 -我们按照本隐私声明所述来使用您的个人信息。 无论您身在何方、居于何处、是何国籍,我们为世界各地的所有用户提供同样的高标准隐私保护,不论其原籍国或所在地。 +我们按照本隐私声明所述来使用您的个人信息。 No matter where you are, where you live, or what your citizenship is, you have the same high standard of privacy protection when using GitHub's products as all our users around the world, regardless of their country of origin or location. 要查看我们给加利福尼亚州居民的隐私声明,请转到 [GitHub 关于加利福尼亚州消费者隐私法案的声明](#githubs-notice-to-california-residents)或向下滚动。 ## 摘要 -| 节 | 说明 | -| ------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -| [谁负责处理您的信息](#who-is-responsible-for-the-processing-of-your-information) | 除有限的例外情况外,GitHub 是负责处理与网站或服务相关的个人数据的控制者和实体。 | -| [GitHub 收集哪些信息](#what-information-github-collects) | GitHub 直接从您的注册、付款、交易和用户个人资料中收集信息。 我们还自动从您的使用信息、cookie 和设备信息中收集,但在必要时会征得您的同意。 GitHub 还可能从第三方收集个人数据。 我们只收集极少量的必要个人数据,除非您自己选择提供更多信息。 | -| [GitHub 如何使用您的信息](#how-github-uses-your-information) | 在本节中,我们将介绍我们使用您的信息的方式,包括为您提供服务、与您沟通、出于安全性和合规性目的,以及改进我们的网站或服务或开发我们网站或服务的新特性和功能。 我们还介绍了在法律要求的情况下处理个人信息的法律依据。 | -| [我们如何分享所收集的信息](#how-we-share-the-information-we-collect) | 在以下情况下,我们可能会与第三方分享您的信息:经您同意、与我们的服务提供商分享、出于安全目的、为履行我们的法律义务,或者公司实体或业务单位的控制权发生变更或出售。 我们不会出售您的个人信息,也不会在 GitHub 上发布广告。 | -| [您对我们处理您的个人数据的选择](#your-choices-regarding-our-processing-of-your-personal-data) | 我们为您提供访问、更改或删除个人信息的途径。 | -| [Cookie](#cookies) | 我们仅使用绝对必要的 cookie 来提供、保护和改进我们的网站或服务,或开发我们网站或服务的新特性和功能。 我们提供了一个非常透明地说明此技术的网页。 我们不会向第三方分析服务发送任何信息。 | -| [GitHub 如何保护您的信息](#how-github-secures-your-information) | 我们采取一切合理必要的措施来保护您在 GitHub 上个人数据的机密性、完整性和可用性,并保护我们服务器的弹性。 | -| [沟通偏好](#communication-preferences) | 我们通过电子邮件与您通信。 您可以在帐户设置中或通过联系我们来控制我们与您联系的方式。 | -| [解决投诉](#resolving-complaints) | 万一我们无法快速彻底地解决隐私问题,我们提供一条解决争议的途径。 | -| [隐私声明的变更](#changes-to-our-privacy-statement) | 如果本隐私声明发生重大变更,我们会在任何此类变更生效之前 30 天通知您。 您也可以在我们的站点政策仓库中跟踪变更。 | -| [许可](#license) | 本隐私声明的许可采用[知识共享零许可](https://creativecommons.org/publicdomain/zero/1.0/)原则。 | -| [联系 GitHub](#contacting-github) | 如果您对我们的隐私声明有疑问,请随时联系我们。 | -| [翻译](#translations) | 我们提供本隐私声明的一些翻译版本的链接。 | +| 节 | 说明 | +| ------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [谁负责处理您的信息](#who-is-responsible-for-the-processing-of-your-information) | Subject to limited exceptions, GitHub is the controller and entity responsible for the processing of your personal data in connection with the Website or Service if you are in North America. For individuals outside North America the data controller is GitHub B.V. | +| [GitHub 收集哪些信息](#what-information-github-collects) | GitHub 直接从您的注册、付款、交易和用户个人资料中收集信息。 我们还自动从您的使用信息、cookie 和设备信息中收集,但在必要时会征得您的同意。 GitHub 还可能从第三方收集个人数据。 我们只收集极少量的必要个人数据,除非您自己选择提供更多信息。 | +| [GitHub 如何使用您的信息](#how-github-uses-your-information) | 在本节中,我们将介绍我们使用您的信息的方式,包括为您提供服务、与您沟通、出于安全性和合规性目的,以及改进我们的网站或服务或开发我们网站或服务的新特性和功能。 我们还介绍了在法律要求的情况下处理个人信息的法律依据。 | +| [我们如何分享所收集的信息](#how-we-share-the-information-we-collect) | 在以下情况下,我们可能会与第三方分享您的信息:经您同意、与我们的服务提供商分享、出于安全目的、为履行我们的法律义务,或者公司实体或业务单位的控制权发生变更或出售。 我们不会出售您的个人信息,也不会在 GitHub 上发布广告。 | +| [您对我们处理您的个人数据的选择](#your-choices-regarding-our-processing-of-your-personal-data) | 我们为您提供访问、更改或删除个人信息的途径。 | +| [Cookie](#cookies) | Except for cookies used on our Enterprise Marketing Pages, we only use strictly necessary cookies to provide, secure, and improve our Website or Service or develop new features and functionality of our Website or Service.

As described below, we may use non-essential cookies on certain pages of our website to support our enterprise marketing efforts and market our products and services to enterprise customers, for example on resources.github.com (collectively “Enterprise Marketing Pages”).

We offer a [page](https://github.com/privacy/cookies) that makes all uses of cookies very transparent. | +| [GitHub 如何保护您的信息](#how-github-secures-your-information) | 我们采取一切合理必要的措施来保护您在 GitHub 上个人数据的机密性、完整性和可用性,并保护我们服务器的弹性。 | +| [沟通偏好](#communication-preferences) | 我们通过电子邮件与您通信。 您可以在帐户设置中或通过联系我们来控制我们与您联系的方式。 | +| [解决投诉](#resolving-complaints) | 万一我们无法快速彻底地解决隐私问题,我们提供一条解决争议的途径。 | +| [隐私声明的变更](#changes-to-our-privacy-statement) | 如果本隐私声明发生重大变更,我们会在任何此类变更生效之前 30 天通知您。 您也可以在我们的站点政策仓库中跟踪变更。 | +| [许可](#license) | 本隐私声明的许可采用[知识共享零许可](https://creativecommons.org/publicdomain/zero/1.0/)原则。 | +| [联系 GitHub](#contacting-github) | 如果您对我们的隐私声明有疑问,请随时联系我们。 | +| [翻译](#translations) | 我们提供本隐私声明的一些翻译版本的链接。 | ## GitHub 隐私声明 @@ -122,13 +122,14 @@ topics: - 通过了解您和您的偏好来个性化我们的服务,以增强您对我们服务的体验和享受。 - 提供客户支持并回答您的问题。 - 向您提供新服务、功能、优惠、促销以及有关服务的其他信息。 +- Personalize and measure the effectiveness of enterprise business ads, promotional communications or marketing you receive related to the Enterprise Marketing Pages. - 向您发送信息,包括确认、发票、技术通知、更新、安全警报、支持和管理消息。 出于这些目的,我们将从不同来源收集的数据结合起来,为您提供更加无缝、一致和个性化的体验。 ## 我们如何分享所收集的信息 -我们会在您同意的情况下或在必要时共享个人数据,以完成您的交易或提供您请求或授权的服务。 此外,出于以下商业目的,我们可能会与下述类型的第三方共享上述每个类别的个人数据: +We share personal data as described below, including with your consent or as necessary to complete your transactions or provide the services you have requested or authorized. In addition, we may share each of the categories of your personal data described above with the types of third parties described below for the following business purposes: ### 公开信息 您可以选择通过我们的服务提供的选项,以公开显示和共享您的姓名和/或用户名以及某些其他信息,例如您的个人资料、人口统计数据、内容和文件或地理位置数据。 例如,如果您希望自己的电子邮件地址保持私密,即使您正在评论公共存储库,[也可以在用户配置文件中将电子邮件地址的设置调整为为私密](https://github.com/settings/emails)。 您还可以[更新本地 Git 配置以使用您的私密电子邮件地址](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address)。 有关提交消息中电子邮件地址的更多信息,请参阅[此处](/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address)。 @@ -144,9 +145,9 @@ topics: 您可以通过在 GitHub 上的操作来表明您愿意分享自己的个人数据。 如果您与组织协作或成为组织成员,则其帐户所有者可能会收到您的个人数据。 当您接受组织邀请时,您将被告知所有者可以看到的信息类型(更多信息请参阅[关于组织成员](/github/setting-up-and-managing-your-github-user-account/about-organization-membership))。 请联系帐户所有者,详细了解他们在组织中如何处理您的个人数据,以及您访问、更新、更改或删除存储在该帐户中的个人数据的方式。 ### 服务提供商 -我们与代表我们处理信息的服务提供商共享您的个人数据,以提供或改进我们的服务。 例如,我们的服务提供商履行付款处理、客户支持事件单、网络数据传输、安全及其他类似服务。 虽然 GitHub 在美国处理所有个人数据,但我们的服务提供商可能在美国或欧盟外部处理数据。 服务提供商的此类处理将遵守适用法律,包括任何相关的传输机制。 +我们与代表我们处理信息的服务提供商共享您的个人数据,以提供或改进我们的服务。 For example, our service providers may perform payment processing, customer support ticketing, network data transmission, web analytics, marketing operations, security, and other similar services. 虽然 GitHub 在美国处理所有个人数据,但我们的服务提供商可能在美国或欧盟外部处理数据。 服务提供商的此类处理将遵守适用法律,包括任何相关的传输机制。 - ### 关联公司 我们允许跨子公司、关联公司和相关公司访问个人数据,例如,我们共享通用数据系统或需要访问权限来运营和提供服务。 + ### Affiliates We enable access to personal data across our subsidiaries, affiliates, and related companies, for example, where we share common data systems, when affiliates provide services on our behalf, or where access is needed to operate and provide the Service. ### 出于安全目的 如果我们认为是实现以下目的所必需,将公布个人数据: @@ -171,7 +172,7 @@ GitHub 可能会向执法部门或其他政府机构披露我们收集的有关 ## 您对我们处理您的个人数据的选择 我们提供有关我们收集的有关您的个人数据的选择。 您所做的选择将不适用于与您帐户下的组织相关的任何个人数据。 -访问、更正和删除。 如果您是 GitHub 用户,则可以通过[编辑用户个人资料](https://github.com/settings/profile)或联系 [GitHub 支持](https://support.github.com/contact)或 [GitHub 高级支持](https://enterprise.githubsupport.com/hc/en-us),访问、更新、更改或删除您的基本用户个人资料信息。 您可以在个人资料中限制信息、保持更新个人信息或者联系 [GitHub 支持](https://support.github.com/contact)或 [GitHub 高级支持](https://enterprise.githubsupport.com/hc/en-us),以控制我们收集的信息。 +访问、更正和删除。 如果您是 GitHub 用户,则可以通过[编辑用户个人资料](https://github.com/settings/profile)或联系 [GitHub 支持](https://support.github.com/contact)或 [GitHub 高级支持](https://enterprise.githubsupport.com/hc/en-us),访问、更新、更改或删除您的基本用户个人资料信息。 You can control the information we collect about you by limiting what information is in your profile, by keeping your information current, by changing your cookie preferences, or by contacting [GitHub Support](https://support.github.com/contact) or [GitHub Premium Support](https://enterprise.githubsupport.com/hc/en-us). 我们按照本隐私声明中所述保留和使用您的信息,但除非法律要求,否则我们将在您提出请求后的 90 天内删除您的完整个人资料。 删除帐户后,某些数据,例如对其他用户仓库的贡献和对其他议题的评论,仍然保留。 但是,我们通过将其与空用户相关联,从议题、拉取请求和评论的作者字段中删除或去识别化您的个人数据,包括您的用户名和电子邮件地址。 也就是说,您通过 Git 提交设置提供的电子邮件地址将始终与 Git 系统中的提交相关联。 如果您已选择将自己的电子邮件地址设为私密,则还应更新您的 Git 提交设置。 我们无法更改或删除 Git 提交历史记录中的数据 — 虽然 Git 软件设计用于维护记录,但我们让您来控制在该记录中放入哪些信息。 @@ -208,13 +209,65 @@ GitHub 可能会向执法部门或其他政府机构披露我们收集的有关 ### Cookie 和跟踪技术 -GitHub 使用 Cookie 来提供、保护和改进我们的服务,或开发我们服务的新特性和功能。 例如,我们使用它们来保持您的登录状态、记住您的偏好、出于安全目的识别您的设备、编译统计报告以及为 GitHub 的未来发展提供信息。 我们使用自己的 Cookie,在这种情况下不使用任何第三方服务提供商。 如果您禁止浏览器或设备接受这些 cookie,则将无法登录或使用我们的服务。 我们在 [GitHub 子处理器和 Cookie](/github/site-policy/github-subprocessors-and-cookies) 页面上提供有关 [GitHub 上 Cookie](/github/site-policy/github-subprocessors-and-cookies#cookies-on-github) 的更多信息,其中描述了我们设置的 Cookie、我们对这些 Cookie 的需求以及此类 Cookie 的过期时间。 +GitHub uses cookies to provide, secure and improve our Service or to develop new features and functionality of our Service. For example, we use them to (i) keep you logged in, (ii) remember your preferences, (iii) identify your device for security and fraud purposes, including as needed to maintain the integrity of our Service, (iv) compile statistical reports, and (v) provide information and insight for future development of GitHub. We provide more information about [cookies on GitHub](https://github.com/privacy/cookies) that describes the cookies we set, the needs we have for those cookies, and the expiration of such cookies. + +For Enterprise Marketing Pages, we may also use non-essential cookies to (i) gather information about enterprise users’ interests and online activities to personalize their experiences, including by making the ads, content, recommendations, and marketing seen or received more relevant and (ii) serve and measure the effectiveness of targeted advertising and other marketing efforts. If you disable the non-essential cookies on the Enterprise Marketing Pages, the ads, content, and marketing you see may be less relevant. 我们给用户的电子邮件可能包含一个像素标签,它是一个很小的清晰图像,可以告诉我们您是否打开了电子邮件以及您的 IP 地址是什么。 我们使用此像素标签使我们的电子邮件通信对您更有效,并确保我们不会发送您不需要的电子邮件。 -### DNT +The length of time a cookie will stay on your browser or device depends on whether it is a “persistent” or “session” cookie. Session cookies will only stay on your device until you stop browsing. Persistent cookies stay until they expire or are deleted. The expiration time or retention period applicable to persistent cookies depends on the purpose of the cookie collection and tool used. You may be able to delete cookie data as described here. + +#### What are cookies and similar technologies? + +We use cookies and similar technologies, such as web beacons, local storage, and mobile analytics, to operate and provide our Services. When visiting Enterprise Marketing Pages, like resources.github.com, these and additional cookies, like advertising IDs, may be used for sales and marketing purposes. + +Cookies are small text files stored by your browser on your device. A cookie can later be read when your browser connects to a web server in the same domain that placed the cookie. The text in a cookie contains a string of numbers and letters that may uniquely identify your device and can contain other information as well. This allows the web server to recognize your browser over time, each time it connects to that web server. + +Web beacons are electronic images (also called “single-pixel” or “clear GIFs”) that are contained within a website or email. When your browser opens a webpage or email that contains a web beacon, it automatically connects to the web server that hosts the image (typically operated by a third party). This allows that web server to log information about your device and to set and read its own cookies. In the same way, third-party content on our websites (such as embedded videos, plug-ins, or ads) results in your browser connecting to the third-party web server that hosts that content. + +Mobile identifiers for analytics can be accessed and used by apps on mobile devices in much the same way that websites access and use cookies. When visiting Enterprise Marketing pages, like resources.github.com, on a mobile device these may allow us and our third-party analytics and advertising partners to collect data for sales and marketing purposes. + +We may also use so-called “flash cookies” (also known as “Local Shared Objects” or “LSOs”) to collect and store information about your use of our Services. Flash cookies are commonly used for advertisements and videos. + +#### How do we and our partners use cookies and similar technologies? + +The GitHub Services use cookies and similar technologies for a variety of purposes, including to store your preferences and settings, enable you to sign-in, analyze how our Services perform, track your interaction with the Services, develop inferences, combat fraud, and fulfill other legitimate purposes. Some of these cookies and technologies may be provided by third parties, including service providers and advertising partners. For example, our analytics and advertising partners may use these technologies in our Services to collect personal information (such as the pages you visit, the links you click on, and similar usage information, identifiers, and device information) related to your online activities over time and across Services for various purposes, including targeted advertising. GitHub will place non-essential cookies on pages where we market products and services to enterprise customers, for example, on resources.github.com. + +We and/or our partners also share the information we collect or infer with third parties for these purposes. + +The table below provides additional information about how we use different types of cookies: + +| 目的 | 描述 | +|:---------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Required Cookies | GitHub uses required cookies to perform essential website functions and to provide the services. For example, cookies are used to log you in, save your language preferences, provide a shopping cart experience, improve performance, route traffic between web servers, detect the size of your screen, determine page load times, improve user experience, and for audience measurement. These cookies are necessary for our websites to work. | +| 分析 | We allow third parties to use analytics cookies to understand how you use our websites so we can make them better. For example, cookies are used to gather information about the pages you visit and how many clicks you need to accomplish a task. We also use some analytics cookies to provide personalized advertising. | +| Social Media | GitHub and third parties use social media cookies to show you ads and content based on your social media profiles and activity on GitHub’s websites. This ensures that the ads and content you see on our websites and on social media will better reflect your interests. This also enables third parties to develop and improve their products, which they may use on websites that are not owned or operated by GitHub. | +| Advertising | In addition, GitHub and third parties use advertising cookies to show you new ads based on ads you've already seen. Cookies also track which ads you click or purchases you make after clicking an ad. This is done both for payment purposes and to show you ads that are more relevant to you. For example, cookies are used to detect when you click an ad and to show you ads based on your social media interests and website browsing history. | + +#### What are your cookie choices and controls? + + You have several options to disable non-essential cookies: + + 1. **Specifically on GitHub Enterprise Marketing Pages** + + Any GitHub page that serves non-essential cookies will have a link in the page’s footer to cookie settings. You can express your preferences at any time by clicking on that linking and updating your settings. + + Some users will also be able to manage non-essential cookies via a cookie consent banner, including the options to accept, manage, and reject all non-essential cookies. + 2. **Generally for all websites** + + You can control the cookies you encounter on the web using a variety of widely-available tools. 例如: + - If your browser sends a [Do Not Track](https://en.wikipedia.org/wiki/Do_Not_Track) (DNT) signal, GitHub will not set non-essential cookies and will not load third party resources which set non-essential cookies. + - Many browsers provide cookie controls which may limit the types of cookies you encounter online. Check out the documentation for your browser to learn more. + - If you enable a browser extension designed to block tracking, such as [Privacy Badger](https://en.wikipedia.org/wiki/Privacy_Badger), non-essential cookies set by a website or third parties may be disabled. + - If you enable a browser extension designed to block unwanted content, such as [uBlock Origin](https://en.wikipedia.org/wiki/UBlock_Origin), non-essential cookies will be disabled to the extent that content that sets non-essential cookies will be blocked. + - Advertising controls. Our advertising partners may participate in associations that provide simple ways to opt out of ad targeting, which you can access at: + - United States: [NAI](http://optout.networkadvertising.org) and [DAA](http://optout.aboutads.info/) + - Canada: [Digital Advertising Alliance of Canada](https://youradchoices.ca/) + - Europe: [European Digital Advertising Alliance](http://www.youronlinechoices.com/) + + These choices are specific to the browser you are using. If you access our Services from other devices or browsers, take these actions from those systems to ensure your choices apply to the data collected when you use those systems. + -“[别跟踪](https://www.eff.org/issues/do-not-track)”(DNT) 是有一种隐私首选项,如果您不希望在线服务(特别是广告网络)通过第三方跟踪服务收集和分享有关您在线活动的某类信息,您可以在浏览器中设置该选项。 GitHub 响应浏览器的 DNT 信号,并遵循[关于响应 DNT 信号的 W3C 标准](https://www.w3.org/TR/tracking-dnt/)。 如果您要设置浏览器以传达不希望被跟踪的信号,请查看浏览器的文档以了解如何启用该信号。 还有一些很适合阻止在线跟踪的应用程序,例如 [Privacy Badger](https://privacybadger.org/)。 ## 个人数据的保留 只要有必要,我们就会保留个人数据,以提供服务并完成您请求的交易,遵守我们的法律义务,解决争议,执行我们的协议以及其他合法和合法的商业目的。 由于在不同服务环境中,不同数据类型的这些需求可能会有所不同,因此实际保留期可能会根据用户期望或同意、数据的敏感性、使用户能够删除数据的自动控制的可用性以及我们的法律或合同义务等标准而有很大差异。 例如,出于安全目的,我们可能会在必要时根据适用法律将您的个人数据保留更长时间。 @@ -238,15 +291,11 @@ GitHub 处理美国境内外的个人数据,并依靠标准合同条款等法 ### 解决投诉 如果您对 GitHub 处理您的个人数据的方式有疑问,请立即告诉我们。 我们乐于提供帮助。 您可以通过填写[隐私问题联系表](https://support.github.com/contact/privacy)联系我们。 您也可以直接通过 **(privacy [at] github [dot] com)** 给我们发送主题行为“隐私问题”的电子邮件。 我们将尽快回复 — 最迟不超过 45 天。 -您还可以直接联系我们的数据保护官。 +You may also contact our Data Protection Officer directly at at **github [at]dp-officer [dot] com** -| 我们的美国总部 | 我们的欧盟办事处 | -| --------------------------------- | --------------------------------- | -| GitHub 数据保护官 | GitHub BV | -| 88 Colin P. Kelly Jr. St. | Vijzelstraat 68-72 | -| San Francisco, CA 94107 | 1017 HL Amsterdam | -| 美国 | 荷兰 | -| **privacy [at] github [dot] com** | **privacy [at] github [dot] com** | +**If you are in North America:**
GitHub Data Protection Officer
88 Colin P. Kelly Jr. St.
San Francisco, CA 94107
United States
**privacy [at] github [dot] com**
+ +**If you are outside of North America:**
Github Data Protection Officer
c/o DP Dock DPO Services GmbH,
Attn: GitHub BV, Gut Projensdorf,
24161 Altenholz, Germany
github@dp-officer.com cc: **privacy [at] github [dot] com**
CC: GitHub BV, Vijzelstraat 68-72, 1017 HL Amsterdam, The Netherlands ### 争议解决流程 @@ -275,7 +324,7 @@ Cliquez ici pour obtenir la version française: [Déclaration de confidentialit 有关本声明翻译成其他语言的版本,请访问 [https://docs.github.com/](/),然后从“English(英文)”下的下拉菜单中选择语言。 ## GitHub 对加州居民的声明 -2018 年[加州消费者隐私法案](https://leginfo.legislature.ca.gov/faces/billCompareClient.xhtml?bill_id=201720180AB375)(加州 民事 法典第 1798.100 及其后各段,修正案,“CCPA”)赋予加州居民对其个人信息的权利和控制。 GitHub, Inc. ("GitHub"、“我们”)根据 CCPA 的要求向加州居民(“您”)提供本声明,概述如何收集和处理其个人信息。 这是 GitHub 专门向加州居民介绍的在 CCPA 下的消费者隐私权。 至于我们如何将 CCPA 关于控制个人信息的核心权利扩展到美国所有用户,请参阅我们的[隐私声明](/github/site-policy/github-privacy-statement)。 +2018 年[加州消费者隐私法案](https://leginfo.legislature.ca.gov/faces/billCompareClient.xhtml?bill_id=201720180AB375)(加州 民事 法典第 1798.100 及其后各段,修正案,“CCPA”)赋予加州居民对其个人信息的权利和控制。 GitHub, Inc. ("GitHub"、“我们”)根据 CCPA 的要求向加州居民(“您”)提供本声明,概述如何收集和处理其个人信息。 这是 GitHub 专门向加州居民介绍的在 CCPA 下的消费者隐私权。 For information about how we’ve extended the CCPA core rights to control personal information to all of our users in the United States, please see our [Privacy Statement](/github/site-policy/github-privacy-statement). ### 我们对个人信息的处理 虽然下表包含有关我们收集、处理和分享的个人信息类别的信息,但要了解更详细的信息还请参阅 [GitHub 隐私声明](/github/site-policy/github-privacy-statement)。 diff --git a/translations/zh-CN/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md b/translations/zh-CN/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md index ace6586271..0cb3c83774 100644 --- a/translations/zh-CN/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md +++ b/translations/zh-CN/content/site-policy/privacy-policies/github-subprocessors-and-cookies.md @@ -14,74 +14,23 @@ topics: - Legal --- -生效日期:**2021 年 4 月 2 日** +Effective date: **September 1, 2022** -{% note %} - -**Note:** Changes to the list of cookies on this page are currently pending. - -{% endnote %} GitHub 在如何使用您的数据、如何收集您的数据以及与谁分享您的数据方面提供很大的透明度。 为此,我们提供此页面,以详细介绍了我们的[子处理商](#github-subprocessors),以及我们如何使用 [cookie](#cookies-on-github)。 ## GitHub 子处理商 -我们与第三方子处理商(例如我们的供应商和服务提供商)分享您的信息时,我们仍对您的信息负责。 我们在引入新供应商时,会竭尽所能保持您的信任,并且要求所有供应商与我们签订数据保护协议,以约束他们对用户个人信息(定义见[隐私声明](/articles/github-privacy-statement/))的处理。 您可以在[此处](https://www.github.com/privacy/subprocessors)注册以接收子处理器列表更新。 +我们与第三方子处理商(例如我们的供应商和服务提供商)分享您的信息时,我们仍对您的信息负责。 我们在引入新供应商时,会竭尽所能保持您的信任,并且要求所有供应商与我们签订数据保护协议,以约束他们对用户个人信息(定义见[隐私声明](/articles/github-privacy-statement/))的处理。 -| 子处理商名称 | 处理说明 | 处理地点 | 公司地点 | -|:------------------------ |:----------------- |:---- |:---- | -| Automattic | 博客服务 | 美国 | 美国 | -| AWS Amazon | 数据托管 | 美国 | 美国 | -| Braintree (PayPal) | 订阅费用信用卡支付处理商 | 美国 | 美国 | -| Clearbit | 营销数据充实服务 | 美国 | 美国 | -| Discourse | 社区论坛软件提供商 | 美国 | 美国 | -| Eloqua | 营销活动自动化 | 美国 | 美国 | -| Google Apps | 公司内部基础设施 | 美国 | 美国 | -| MailChimp | 客户事件单邮件服务提供商 | 美国 | 美国 | -| Mailgun | 交易邮件服务提供商 | 美国 | 美国 | -| Microsoft | Microsoft 服务 | 美国 | 美国 | -| Nexmo | 短信通知提供商 | 美国 | 美国 | -| Salesforce.com | 客户关系管理 | 美国 | 美国 | -| Sentry.io | 应用程序监控提供商 | 美国 | 美国 | -| Stripe | 支付服务提供商 | 美国 | 美国 | -| Twilio & Twilio Sendgrid | 短信通知提供商和交易邮件服务提供商 | 美国 | 美国 | -| Zendesk | 客户支持事件单系统 | 美国 | 美国 | -| Zuora | 公司计费系统 | 美国 | 美国 | +When we bring on a new subprocessor who handles our Users' Personal Information, or remove a subprocessor, or we change how we use a subprocessor, we will update the list of subprocessors. You can view the current list of subprocessors, and sign up to receive subprocessor list updates, at [https://www.github.com/privacy/subprocessors](https://www.github.com/privacy/subprocessors). -在我们引入新的子处理商来处理用户个人信息、删除子处理商或更改使用子处理商的方式时,我们将更新本页面。 如果您对新的子处理商有疑问或疑虑,我们乐意提供帮助。 请通过 {% data variables.contact.contact_privacy %} 联系我们。 +如果您对新的子处理商有疑问或疑虑,我们乐意提供帮助。 请通过 {% data variables.contact.contact_privacy %} 联系我们。 ## GitHub 上的 Cookie GitHub 使用 Cookie 来提供和保护我们的网站,并分析我们网站的使用情况,以便为您提供出色的用户体验。 如果您想了解有关 Cookie 的更多信息,请查看我们的[隐私声明](/github/site-policy/github-privacy-statement#our-use-of-cookies-and-tracking),了解我们如何以及为什么使用它们。 -由于 Cookie 的数量和名称可能会发生变化,下表可能会不时更新。 - -| Cookie 名称 | 原因 | 描述 | 过期* | -|:--------- |:------------------------------------ |:------------------------------------------------------- |:------------------ | -| GitHub | `app_manifest_token` | 此 cookie 用于表明页面之间的临时应用程序和框架状态,例如用户在多步骤表单中处于哪一步。 | 5 分钟 | -| GitHub | `color_mode` | 此 cookie 用于指示用户选择的主题首选项。 | 会话 | -| GitHub | `_device_id` | 出于安全考虑,此 Cookie 用于跟踪已识别的设备。 | 1 年 | -| GitHub | `dotcom_user` | 此 cookie 用于向我们表明用户已登录。 | 1 年 | -| GitHub | `_gh_ent` | 此 cookie 用于表明页面之间的临时应用程序和框架状态,例如客户在多步骤表单中处于哪一步。 | 两周 | -| GitHub | `_gh_sess` | 此 cookie 用于表明页面之间的临时应用程序和框架状态,例如用户在多步骤表单中处于哪一步。 | 会话 | -| GitHub | `gist_oauth_csrf` | 此 cookie 由 Gist 设置,以确保启动 oauth 流的用户与完成它的用户是同一个用户。 | 验证 oauth 状态时删除 | -| GitHub | `gist_user_session` | 此 cookie 由 Gist 在单独主机上运行时使用。 | 两周 | -| GitHub | `has_recent_activity` | 此 Cookie 用于防止向最近访问过应用程序的用户显示安全插页。 | 1 小时 | -| GitHub | `__Host-gist_user_session_same_site` | 此 cookie 设置为确保支持 SameSite cookie 的浏览器可以检查请求是否来自 GitHub。 | 两周 | -| GitHub | `__Host-user_session_same_site` | 此 cookie 设置为确保支持 SameSite cookie 的浏览器可以检查请求是否来自 GitHub。 | 两周 | -| GitHub | `logged_in` | 此 cookie 用于向我们表明用户已登录。 | 1 年 | -| GitHub | `marketplace_repository_ids` | 此 cookie 用于您的登录。 | 1 小时 | -| GitHub | `marketplace_suggested_target_id` | 此 cookie 用于您的登录。 | 1 小时 | -| GitHub | `_octo` | 此 Cookie 用于会话管理,包括动态内容缓存、条件功能访问、支持请求元数据和第一方分析。 | 1 年 | -| GitHub | `org_transform_notice` | 此 Cookie 用于在组织转换期间提供通知。 | 1 小时 | -| GitHub | `github.com/personal` | 此 cookie 用于 Google Analytics。 | 两周 | -| GitHub | `saml_csrf_token` | 此 cookie 由 SAML 身份验证路径方法设置,以将令牌与客户端相关联。 | 直到用户关闭浏览器或完成身份验证请求 | -| GitHub | `saml_csrf_token_legacy` | 此 cookie 由 SAML 身份验证路径方法设置,以将令牌与客户端相关联。 | 直到用户关闭浏览器或完成身份验证请求 | -| GitHub | `saml_return_to` | 此 cookie 由 SAML 身份验证路径方法设置,以在 SAML 身份验证循环期间维持状态。 | 直到用户关闭浏览器或完成身份验证请求 | -| GitHub | `saml_return_to_legacy` | 此 cookie 由 SAML 身份验证路径方法设置,以在 SAML 身份验证循环期间维持状态。 | 直到用户关闭浏览器或完成身份验证请求 | -| GitHub | `tz` | 此 Cookie 允许我们根据您的时区自定义时间戳。 | 会话 | -| GitHub | `user_session` | 此 cookie 用于您的登录。 | 两周 | - -_*_ 下面列出的 Cookie 的**到期**日期通常以滚动方式适用。 +You can view the current list of cookies on GitHub, and sign up to receive cookie list updates, at [https://github.com/privacy/cookies](https://github.com/privacy/cookies). (!) 请注意,虽然我们将第三方 Cookie 的使用限制在呈现外部内容时提供外部功能的需要,但我们网站上的某些页面可能会设置其他第三方 Cookie。 例如,我们可能会嵌入来自其他网站的内容(例如视频),而该网站可能放置 cookie。 虽然我们尽可能减少这些第三方 cookie,但我们无法始终控制这些第三方内容放置哪些 cookie。 diff --git a/translations/zh-CN/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md b/translations/zh-CN/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md index 096e87b9cd..9dfa58adf6 100644 --- a/translations/zh-CN/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md +++ b/translations/zh-CN/content/sponsors/sponsoring-open-source-contributors/sponsoring-an-open-source-contributor.md @@ -25,7 +25,7 @@ shortTitle: 赞助贡献者 您可以代表您的个人帐户赞助一个帐户,以投资您个人受益的项目。 您可以代表您的组织赞助帐户,原因有很多。 - 维护组织工作所依赖的特定库 -- 投资于作为一个组织所依赖的生态系统(如区块链) +- Investing in the ecosystem you rely on as an organization (such as blockchain) - 作为重视开源的组织,培养品牌知名度 - 感谢开源开发者构建库来补充您的组织提供的产品 diff --git a/translations/zh-CN/data/features/actions-hosted-runners.yml b/translations/zh-CN/data/features/actions-hosted-runners.yml new file mode 100644 index 0000000000..fcc88d707d --- /dev/null +++ b/translations/zh-CN/data/features/actions-hosted-runners.yml @@ -0,0 +1,5 @@ +#Reference: #6458 +#Larger GitHub-hosted runners +versions: + fpt: '*' + ghec: '*' diff --git a/translations/zh-CN/data/features/actions-oidc-hardening-config.yml b/translations/zh-CN/data/features/actions-oidc-hardening-config.yml new file mode 100644 index 0000000000..f3048bac8b --- /dev/null +++ b/translations/zh-CN/data/features/actions-oidc-hardening-config.yml @@ -0,0 +1,6 @@ +#Reference: #7336 +#General versioning for oidc hardening options +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' diff --git a/translations/zh-CN/data/features/audit-log-sso-response-events.yml b/translations/zh-CN/data/features/audit-log-sso-response-events.yml new file mode 100644 index 0000000000..318ee46eab --- /dev/null +++ b/translations/zh-CN/data/features/audit-log-sso-response-events.yml @@ -0,0 +1,5 @@ +#Documentation for adding business.sso_response and org.sso_repsonse +versions: + ghec: '*' + ghes: '>=3.8' + ghae: 'issue-7939' diff --git a/translations/zh-CN/data/features/code-scanning-exclude-queries-from-analysis.yml b/translations/zh-CN/data/features/code-scanning-exclude-queries-from-analysis.yml new file mode 100644 index 0000000000..2157533a6d --- /dev/null +++ b/translations/zh-CN/data/features/code-scanning-exclude-queries-from-analysis.yml @@ -0,0 +1,7 @@ +#Issue 7617 +#Users can easily exclude CodeQL queries from code scanning analyses - [GA] +versions: + fpt: '*' + ghec: '*' + ghes: '>3.6' + ghae: 'issue-7617' diff --git a/translations/zh-CN/data/features/dependabot-alerts-vulnerable-calls.yml b/translations/zh-CN/data/features/dependabot-alerts-vulnerable-calls.yml index 84825c368b..a7f772a7c5 100644 --- a/translations/zh-CN/data/features/dependabot-alerts-vulnerable-calls.yml +++ b/translations/zh-CN/data/features/dependabot-alerts-vulnerable-calls.yml @@ -3,5 +3,4 @@ versions: fpt: '*' ghec: '*' - ghes: '>3.5' ghae: 'issue-6076' diff --git a/translations/zh-CN/data/features/dependency-review-action-ghes.yml b/translations/zh-CN/data/features/dependency-review-action-ghes.yml new file mode 100644 index 0000000000..2d8bca37f3 --- /dev/null +++ b/translations/zh-CN/data/features/dependency-review-action-ghes.yml @@ -0,0 +1,4 @@ +#Reference: Issue #7753 Dependency review action has shipped with GHES 3.6 and needs admin docs +versions: + ghes: '>3.5' + ghae: 'issue-7753' diff --git a/translations/zh-CN/data/features/enterprise-namespace-repo-setting.yml b/translations/zh-CN/data/features/enterprise-namespace-repo-setting.yml new file mode 100644 index 0000000000..e20549f3ea --- /dev/null +++ b/translations/zh-CN/data/features/enterprise-namespace-repo-setting.yml @@ -0,0 +1,6 @@ +#Reference: #7757 +#Setting to disable personal namespace repo creation for EMUs, GHES 3.7+ and GHAE 3.7+ users +versions: + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7757' diff --git a/translations/zh-CN/data/features/ip-allow-list-address-check.yml b/translations/zh-CN/data/features/ip-allow-list-address-check.yml new file mode 100644 index 0000000000..c4dda87a70 --- /dev/null +++ b/translations/zh-CN/data/features/ip-allow-list-address-check.yml @@ -0,0 +1,3 @@ +versions: + ghec: '*' + ghae: 'issue-7818' diff --git a/translations/zh-CN/data/features/multiple-accounts-one-workstation.yml b/translations/zh-CN/data/features/multiple-accounts-one-workstation.yml new file mode 100644 index 0000000000..9fce93b34e --- /dev/null +++ b/translations/zh-CN/data/features/multiple-accounts-one-workstation.yml @@ -0,0 +1,5 @@ +#Issue #7330 +#Documentation for managing multiple GitHub accounts on one workstation +versions: + fpt: '*' + ghec: '*' diff --git a/translations/zh-CN/data/features/packages-npm-v2.yml b/translations/zh-CN/data/features/packages-npm-v2.yml new file mode 100644 index 0000000000..572e412e4a --- /dev/null +++ b/translations/zh-CN/data/features/packages-npm-v2.yml @@ -0,0 +1,5 @@ +#Issue 7039 +#npm Package Registry Improvements (v2) GA +versions: + fpt: '*' + ghec: '*' diff --git a/translations/zh-CN/data/features/push-protection-custom-link-orgs-beta.yml b/translations/zh-CN/data/features/push-protection-custom-link-orgs-beta.yml new file mode 100644 index 0000000000..509caa9fb4 --- /dev/null +++ b/translations/zh-CN/data/features/push-protection-custom-link-orgs-beta.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links beta flags +#See "push-protection-custom-link-orgs" for the feature +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/zh-CN/data/features/push-protection-custom-link-orgs.yml b/translations/zh-CN/data/features/push-protection-custom-link-orgs.yml new file mode 100644 index 0000000000..fce23efa96 --- /dev/null +++ b/translations/zh-CN/data/features/push-protection-custom-link-orgs.yml @@ -0,0 +1,8 @@ +#Issue 7299 +#Push protection custom links +#See "push-protection-custom-link-orgs-beta" for the beta flags +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.7' + ghae: 'issue-7299' diff --git a/translations/zh-CN/data/features/ssh-commit-verification.yml b/translations/zh-CN/data/features/ssh-commit-verification.yml new file mode 100644 index 0000000000..7851b1c8b7 --- /dev/null +++ b/translations/zh-CN/data/features/ssh-commit-verification.yml @@ -0,0 +1,8 @@ +#Reference: github/docs-content#6709 +#Initial docs for showing SSH signed commits as verified and +#uploading SSH signing keys +versions: + fpt: '*' + ghec: '*' + ghes: '>= 3.7' + ghae: '*' diff --git a/translations/zh-CN/data/features/streaming-datadog.yml b/translations/zh-CN/data/features/streaming-datadog.yml new file mode 100644 index 0000000000..ab90546c8d --- /dev/null +++ b/translations/zh-CN/data/features/streaming-datadog.yml @@ -0,0 +1,4 @@ +#Reference #7495 +#Documentation for audit log streaming to a Datadog endpoint +versions: + ghec: '*' diff --git a/translations/zh-CN/data/learning-tracks/admin.yml b/translations/zh-CN/data/learning-tracks/admin.yml index a7aa266e92..23816673a1 100644 --- a/translations/zh-CN/data/learning-tracks/admin.yml +++ b/translations/zh-CN/data/learning-tracks/admin.yml @@ -120,6 +120,7 @@ configure_github_advanced_security: - /admin/advanced-security/about-licensing-for-github-advanced-security - /admin/advanced-security/enabling-github-advanced-security-for-your-enterprise - /admin/advanced-security/configuring-code-scanning-for-your-appliance + - /admin/code-security/managing-github-advanced-security-for-your-enterprise/configuring-dependency-review-for-your-appliance - /admin/advanced-security/configuring-secret-scanning-for-your-appliance - /admin/policies/enforcing-policies-for-advanced-security-in-your-enterprise diff --git a/translations/zh-CN/data/release-notes/enterprise-server/3-2/18.yml b/translations/zh-CN/data/release-notes/enterprise-server/3-2/18.yml new file mode 100644 index 0000000000..5d6d2bda6c --- /dev/null +++ b/translations/zh-CN/data/release-notes/enterprise-server/3-2/18.yml @@ -0,0 +1,16 @@ +date: '2022-08-30' +sections: + bugs: + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + known_issues: + - 在新建的没有任何用户的 {% data variables.product.prodname_ghe_server %} 实例上,攻击者可以创建第一个管理员用户。 + - 自定义防火墙规则在升级过程中被删除。 + - Git LFS 跟踪的文件[通过 Web 界面上传](https://github.com/blog/2105-upload-files-to-your-repositories) 被错误地直接添加到仓库。 + - 如果议题包含文件路径长于 255 个字符的同一仓库中 blob 的永久链接,则议题无法关闭。 + - 当“用户可以搜索 GitHub.com”与 {% data variables.product.prodname_github_connect %} 一起启用时,私有和内部存储库中的议题不会包含在 {% data variables.product.prodname_dotcom_the_website %} 搜索结果中。 + - '{% data variables.product.prodname_registry %} npm 注册表不再返回元数据响应的时间值。这样做是为了大幅改善性能。作为元数据响应的一部分,我们继续拥有返回时间值所需的所有数据,并将在我们解决现有性能问题后恢复返回这个值。' + - 特定于处理预接收挂钩的资源限制可能会导致某些预接收挂钩失败。 + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/zh-CN/data/release-notes/enterprise-server/3-3/13.yml b/translations/zh-CN/data/release-notes/enterprise-server/3-3/13.yml new file mode 100644 index 0000000000..7c6b30b2f6 --- /dev/null +++ b/translations/zh-CN/data/release-notes/enterprise-server/3-3/13.yml @@ -0,0 +1,23 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - 'The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + known_issues: + - 升级到 {% data variables.product.prodname_ghe_server %} 3.3 后,{% data variables.product.prodname_actions %} 可能无法自动启动。要解决此问题,请通过 SSH 连接到设备并运行“ghe-actions-start”命令。 + - 在新建的没有任何用户的 {% data variables.product.prodname_ghe_server %} 实例上,攻击者可以创建第一个管理员用户。 + - 自定义防火墙规则在升级过程中被删除。 + - Git LFS 跟踪的文件[通过 Web 界面上传](https://github.com/blog/2105-upload-files-to-your-repositories) 被错误地直接添加到仓库。 + - 如果议题包含文件路径长于 255 个字符的同一仓库中 blob 的永久链接,则议题无法关闭。 + - 当“用户可以搜索 GitHub.com”与 {% data variables.product.prodname_github_connect %} 一起启用时,私有和内部存储库中的议题不会包含在 {% data variables.product.prodname_dotcom_the_website %} 搜索结果中。 + - '{% data variables.product.prodname_registry %} npm 注册表不再返回元数据响应的时间值。这样做是为了大幅改善性能。作为元数据响应的一部分,我们继续拥有返回时间值所需的所有数据,并将在我们解决现有性能问题后恢复返回这个值。' + - 特定于处理预接收挂钩的资源限制可能会导致某些预接收挂钩失败。 + - '{% data variables.product.prodname_actions %} 存储设置在选择“Force Path Style(强制路径样式)”时无法验证和保存在 {% data variables.enterprise.management_console %} 中,而必须使用“ghe-actions-precheck”命令行实用程序进行配置。' + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/zh-CN/data/release-notes/enterprise-server/3-4/8.yml b/translations/zh-CN/data/release-notes/enterprise-server/3-4/8.yml new file mode 100644 index 0000000000..e346e96458 --- /dev/null +++ b/translations/zh-CN/data/release-notes/enterprise-server/3-4/8.yml @@ -0,0 +1,26 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - 'The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + known_issues: + - 在新建的没有任何用户的 {% data variables.product.prodname_ghe_server %} 实例上,攻击者可以创建第一个管理员用户。 + - 自定义防火墙规则在升级过程中被删除。 + - Git LFS 跟踪的文件[通过 Web 界面上传](https://github.com/blog/2105-upload-files-to-your-repositories) 被错误地直接添加到仓库。 + - 如果议题包含文件路径长于 255 个字符的同一仓库中 blob 的永久链接,则议题无法关闭。 + - 当“用户可以搜索 GitHub.com”与 {% data variables.product.prodname_github_connect %} 一起启用时,私有和内部存储库中的议题不会包含在 {% data variables.product.prodname_dotcom_the_website %} 搜索结果中。 + - '{% data variables.product.prodname_registry %} npm 注册表不再返回元数据响应的时间值。这样做是为了大幅改善性能。作为元数据响应的一部分,我们继续拥有返回时间值所需的所有数据,并将在我们解决现有性能问题后恢复返回这个值。' + - 特定于处理预接收挂钩的资源限制可能会导致某些预接收挂钩失败。 + - | + 在多个级别(例如,企业和组织)上使用“--ephemeral”参数注册自托管运行器后,运行器可能会陷入空闲状态并需要重新注册。[更新时间:2022 年 6 月 17 日] + - After upgrading to {% data variables.product.prodname_ghe_server %} 3.4, releases may appear to be missing from repositories. This can occur when the required Elasticsearch index migrations have not successfully completed. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/zh-CN/data/release-notes/enterprise-server/3-5/5.yml b/translations/zh-CN/data/release-notes/enterprise-server/3-5/5.yml new file mode 100644 index 0000000000..f33cdfe7be --- /dev/null +++ b/translations/zh-CN/data/release-notes/enterprise-server/3-5/5.yml @@ -0,0 +1,27 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - The site admin bar at the top of the web interface contained a broken link to the SHA for the currently running version of the application. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + - Alerts from secret scanning for GitHub Advanced Security customers were missing in the web UI and REST API if a site administrator did not upgrade directly to GitHub Enterprise Server 3.4. The alerts are now visible. + - When a user forked a repository into an organization, a long list of organizations would not render properly. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - 'The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + - In some cases, cache replicas could reject some Git operations on recently updated repositories. For more information about repository caching, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + known_issues: + - 在新建的没有任何用户的 {% data variables.product.prodname_ghe_server %} 实例上,攻击者可以创建第一个管理员用户。 + - 自定义防火墙规则在升级过程中被删除。 + - Git LFS 跟踪的文件[通过 Web 界面上传](https://github.com/blog/2105-upload-files-to-your-repositories) 被错误地直接添加到仓库。 + - 如果议题包含文件路径长于 255 个字符的同一仓库中 blob 的永久链接,则议题无法关闭。 + - 对 GitHub Connect 启用“用户可以搜索 GitHub.com”后,私有和内部仓库中的议题不包括在 GitHub.com 搜索结果中。 + - '{% data variables.product.prodname_registry %} npm 注册表不再返回元数据响应的时间值。这样做是为了大幅改善性能。作为元数据响应的一部分,我们继续拥有返回时间值所需的所有数据,并将在我们解决现有性能问题后恢复返回这个值。' + - 特定于处理预接收挂钩的资源限制可能会导致某些预接收挂钩失败。 + - Actions services need to be restarted after restoring an appliance from a backup taken on a different host. diff --git a/translations/zh-CN/data/release-notes/enterprise-server/3-6/0.yml b/translations/zh-CN/data/release-notes/enterprise-server/3-6/0.yml index 8f86df75a1..8bc4325430 100644 --- a/translations/zh-CN/data/release-notes/enterprise-server/3-6/0.yml +++ b/translations/zh-CN/data/release-notes/enterprise-server/3-6/0.yml @@ -25,7 +25,9 @@ sections: - "[Enforcing repository management policies in your enterprise](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#configuring-anonymous-git-read-access)" - "[Configuring host keys for your instance](/admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance)" - | - You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications)." + You can require TLS encryption for incoming SMTP connections to your instance. For more information, see "[Configuring email for notifications](/admin/configuration/configuring-your-enterprise/configuring-email-for-notifications#enforcing-tls-for-smtp-connections)." + + - **Note**: This feature is unavailable in GitHub Enterprise Server 3.6.0. The feature will be available in an upcoming release. [Updated: 2022-08-26] - heading: 审核日志 notes: @@ -211,3 +213,4 @@ sections: - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. - In some cases, users cannot convert existing issues to discussions. - Custom patterns for secret scanning have `.*` as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the `.*` delimiter. + - '{% data reusables.release-notes.ghas-3.4-secret-scanning-known-issue %}' diff --git a/translations/zh-CN/data/release-notes/enterprise-server/3-6/1.yml b/translations/zh-CN/data/release-notes/enterprise-server/3-6/1.yml new file mode 100644 index 0000000000..d9929d35b0 --- /dev/null +++ b/translations/zh-CN/data/release-notes/enterprise-server/3-6/1.yml @@ -0,0 +1,33 @@ +date: '2022-08-30' +sections: + bugs: + - After unlocking a repository for temporary access, a site administrator was unable to manage settings for security products in the repository. + - Duplicate administrative SSH keys could appear in both the Management Console and the `/home/admin/.ssh/authorized_keys` file. + - The site admin page for individual users at http(s)://HOSTNAME/stafftools/users/USERNAME/admin contained functionality not intended for GitHub Enterprise Server. + - In some cases, running `ghe-cluster-config-apply` could replicate an empty configuration to existing nodes in a cluster. + - In some cases, configuration runs started with `ghe-config-apply` did not complete, or returned a `Container count mismatch` error. + - After updating a self-signed TLS certificate on a GitHub Enterprise Server instance, UI elements on some pages in the web interface did not appear. + - In some cases, background tasks could stall due to a library that was used concurrently despite not being thread-safe. + - The site admin bar at the top of the web interface contained a broken link to the SHA for the currently running version of the application. + - Organization owners were unable to set the level of access required to create discussions. + - Discussions users were incorrectly directed to the community guidelines for GitHub.com. + - In some cases, users were incorrectly instructed to verify their email before creating a discussion. + - Alerts from secret scanning for GitHub Advanced Security customers were missing in the web UI and REST API if a site administrator did not upgrade directly to GitHub Enterprise Server 3.4. The alerts are now visible. + changes: + - Generation of support bundles is faster as a result of parallelized log sanitization. For more information about support bundles, see "[Providing data to GitHub Support](/support/contacting-github-support/providing-data-to-github-support)." + - APIs that contain the `organization` or `org` route now accept either the organization's slug or ID. Previously, the APIs only accepted slugs, which caused `Link` headers for GitHub Advanced Security endpoints to be inaccessible. For more information, see "[Organizations](https://docs.github.com/rest/orgs/orgs)" in the REST API documentation. + - 'The enterprise audit log now includes more user-generated events, such as `project.create`. The REST API also returns additional user-generated events, such as `repo.create`. For more information, see "[Accessing the audit log for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/accessing-the-audit-log-for-your-enterprise)" and "[Using the audit log API for your enterprise](/admin/monitoring-activity-in-your-enterprise/reviewing-audit-logs-for-your-enterprise/using-the-audit-log-api-for-your-enterprise#querying-the-audit-log-rest-api)."' + - In some cases, cache replicas could reject some Git operations on recently updated repositories. For more information about repository caching, see "[About repository caching](/admin/enterprise-management/caching-repositories/about-repository-caching)." + - 'You can now configure the global announcement banner to be dismissable using the REST API. For more information, see "[Customizing user messages for your enterprise](/admin/user-management/managing-users-in-your-enterprise/customizing-user-messages-for-your-enterprise#creating-a-global-announcement-banner)."' + known_issues: + - 在新建的没有任何用户的 {% data variables.product.prodname_ghe_server %} 实例上,攻击者可以创建第一个管理员用户。 + - 自定义防火墙规则在升级过程中被删除。 + - Git LFS 跟踪的文件[通过 Web 界面上传](https://github.com/blog/2105-upload-files-to-your-repositories) 被错误地直接添加到仓库。 + - 如果议题包含文件路径长于 255 个字符的同一仓库中 blob 的永久链接,则议题无法关闭。 + - 对 GitHub Connect 启用“用户可以搜索 GitHub.com”后,私有和内部仓库中的议题不包括在 GitHub.com 搜索结果中。 + - '{% data variables.product.prodname_registry %} npm 注册表不再返回元数据响应的时间值。这样做是为了大幅改善性能。作为元数据响应的一部分,我们继续拥有返回时间值所需的所有数据,并将在我们解决现有性能问题后恢复返回这个值。' + - 特定于处理预接收挂钩的资源限制可能会导致某些预接收挂钩失败。 + - Actions services need to be restarted after restoring an instance from a backup taken on a different host. + - In a repository's settings, enabling the option to allow users with read access to create discussions does not enable this functionality. + - In some cases, users cannot convert existing issues to discussions. + - Custom patterns for secret scanning have `.*` as an end delimiter, specifically in the "After secret" field. This delimiter causes inconsistencies in scans for secrets across repositories, and you may notice gaps in a repository's history where no scans completed. Incremental scans may also be impacted. To prevent issues with scans, modify the end of the pattern to remove the `.*` delimiter. diff --git a/translations/zh-CN/data/reusables/accounts/create-personal-access-tokens.md b/translations/zh-CN/data/reusables/accounts/create-personal-access-tokens.md new file mode 100644 index 0000000000..5278d0c246 --- /dev/null +++ b/translations/zh-CN/data/reusables/accounts/create-personal-access-tokens.md @@ -0,0 +1 @@ +1. For each of your accounts, create a dedicated PAT with `repo` scope. 更多信息请参阅“[创建个人访问令牌](/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)”。 \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/about-runner-groups.md b/translations/zh-CN/data/reusables/actions/about-runner-groups.md new file mode 100644 index 0000000000..c557d2b5d2 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/about-runner-groups.md @@ -0,0 +1,18 @@ +{% ifversion fpt %} +{% note %} + +**Note:** All organizations have a single default runner group. Only enterprise accounts and organizations owned by enterprise accounts can create and manage additional runner groups. + +{% endnote %} + +Runner groups are used to control access to runners. 组织管理员可以配置访问策略,用以控制组织中的哪些组织可以访问运行器组。 + +If you use {% data variables.product.prodname_ghe_cloud %}, you can create additional runner groups; enterprise admins can configure access policies that control which organizations in an enterprise have access to the runner group; and organization admins can assign additional granular repository access policies to the enterprise runner group. +{% endif -%} +{% ifversion ghec or ghes or ghae %} + +{% data reusables.actions.runner-group-enterprise-overview %} + +新运行器在创建时,将自动分配给默认组。 运行器每次只能在一个组中。 您可以将运行器从默认组移到另一组。 For more information, see "[Moving a runner to a group](#moving-a-runner-to-a-group)." + +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/actions-billing.md b/translations/zh-CN/data/reusables/actions/actions-billing.md index 18766c9e7c..5cabcccc6d 100644 --- a/translations/zh-CN/data/reusables/actions/actions-billing.md +++ b/translations/zh-CN/data/reusables/actions/actions-billing.md @@ -1 +1 @@ -公共仓库和自托管运行器免费使用 {% data variables.product.prodname_actions %}。 对于私有仓库,每个 {% data variables.product.prodname_dotcom %} 帐户可获得一定数量的免费记录和存储,具体取决于帐户所使用的产品。 超出包含金额的任何使用量都由支出限制控制。 +{% data variables.product.prodname_actions %} usage is free for standard {% data variables.product.prodname_dotcom %}-hosted runners in public repositories, and for self-hosted runners. For private repositories, each {% data variables.product.prodname_dotcom %} account receives a certain amount of free minutes and storage for use with {% data variables.product.prodname_dotcom %}-hosted runners, depending on the product used with the account. 超出包含金额的任何使用量都由支出限制控制。 diff --git a/translations/zh-CN/data/reusables/actions/add-hosted-runner-overview.md b/translations/zh-CN/data/reusables/actions/add-hosted-runner-overview.md new file mode 100644 index 0000000000..bdd66230ca --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/add-hosted-runner-overview.md @@ -0,0 +1,3 @@ +You can choose an operating system and a hardware configuration from the list of available options. When new instances of this runner are deployed through autoscaling, they'll use the same operating system and hardware configuration you've defined here. + +You can also define the labels that identify the runner, which is how your workflows will be able to send jobs to the runners for processing (using `runs-on`). New runners are automatically assigned to the default group, or you can choose which group the runners must join during the runner creation process. In addition, you can modify the runner's group membership after you've registered the runner. For more information, see "[Controlling access to {% data variables.actions.hosted_runner %}s](/actions/using-github-hosted-runners/controlling-access-to-larger-runners)." \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/add-hosted-runner.md b/translations/zh-CN/data/reusables/actions/add-hosted-runner.md new file mode 100644 index 0000000000..d533864a2e --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/add-hosted-runner.md @@ -0,0 +1,11 @@ +1. Click **New runner**, then click **{% octicon "mark-github" aria-label="New hosted runner" %} New Github-hosted runner**. +1. Complete the required details to configure your new runner: + + - **Name**: Enter a name for your new runner. For easier identification, this should indicate its hardware and operating configuration, such as `ubuntu-20.04-16core`. + - **Runner image**: Choose an operating system from the available options. Once you've selected an operating system, you will be able to choose a specific version. + - **Runner size**: Choose a hardware configuration from the drop-down list of available options. + - **Auto-scaling**: Choose the maximum number of runners that can be active at any time. + - **Runner group**: Choose the group that your runner will be a member of. This group will host multiple instances of your runner, as they scale up and down to suit demand. + - **Networking**: Only for {% data variables.product.prodname_ghe_cloud %}: Choose whether a static IP address range will be assigned to instances of the {% data variables.actions.hosted_runner %}. You can use up to 10 static IP addresses in total. + +1. Click **Create runner**. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/automatically-adding-a-runner-to-a-group.md b/translations/zh-CN/data/reusables/actions/automatically-adding-a-runner-to-a-group.md new file mode 100644 index 0000000000..d8e4763272 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/automatically-adding-a-runner-to-a-group.md @@ -0,0 +1,11 @@ +You can use the configuration script to automatically add a new runner to a group. For example, this command registers a new runner and uses the `--runnergroup` parameter to add it to a group named `rg-runnergroup`. + +```sh +./config.sh --url $org_or_enterprise_url --token $token --runnergroup rg-runnergroup +``` + +如果运行器组不存在,命令将失败: + +``` +找不到名为 "rg-runnergroup" 的任何自托管运行器组。 +``` \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md b/translations/zh-CN/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md new file mode 100644 index 0000000000..ce912df830 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/changing-the-access-policy-of-a-runner-group.md @@ -0,0 +1,38 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +对于企业中的运行器组,您可以更改企业中可以访问运行器组的组织{% ifversion restrict-groups-to-workflows %} 或限制运行器组可以运行的工作流程{% endif %}。 对于组织中的运行器组,您可以更改组织中可以访问运行器组的存储库{% ifversion restrict-groups-to-workflows %} 或限制运行器组可以运行的工作流程{% endif %}。 + +### 更改可以访问运行器组的组织或存储库 + +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. 对于企业中的运行器组,在 **Organization access(组织访问)**下,修改可以访问运行器组的组织。 对于组织中的运行器组,在 **Repository access(存储库访问)**下,修改可以访问运行器组的存储库。 + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group-access %} +{% endif %} + +{% ifversion restrict-groups-to-workflows %} +### 更改可以访问运行器组的工作流程 +You can configure a runner group to run either selected workflows or all workflows. For example, you might use this setting to protect secrets that are stored on runners or to standardize deployment workflows by restricting a runner group to run only a specific reusable workflow. 如果配置企业共享的组织的运行组,则不能覆盖此设置。 +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. 在 **Workflow access(工作流程访问)**下,选择下拉菜单,然后单击 **Selected workflows(选定的工作流程)**。 +1. 单击 {% octicon "gear" aria-label="the gear icon" %}。 +1. 输入以逗号分隔的可访问运行器组的工作流程列表。 使用完整路径,包括存储库名称和所有者。 将工作流程固定到分支、标记或完整 SHA。 例如:`octo-org/octo-repo/.github/workflows/build.yml@v2, octo-org/octo-repo/.github/workflows/deploy.yml@d6dc6c96df4f32fa27b039f2084f576ed2c5c2a5, monalisa/octo-test/.github/workflows/test.yml@main`。 + + 只有直接在所选工作流程中定义的作业才能访问运行器组。 + + 组织拥有的运行器组无法访问企业中其他组织的工作流程。相反,您必须创建企业拥有的运行器组。 + +1. 单击 **Save(保存)**。 + +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/changing-the-name-of-a-runner-group.md b/translations/zh-CN/data/reusables/actions/changing-the-name-of-a-runner-group.md new file mode 100644 index 0000000000..165e27a249 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/changing-the-name-of-a-runner-group.md @@ -0,0 +1,9 @@ +{% ifversion fpt or ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +{% data reusables.actions.settings-sidebar-actions-runner-groups-selection %} +1. 更改运行器组名称。 + +{% elsif ghae or ghes < 3.4 %} +{% data reusables.actions.configure-runner-group %} +1. 更改运行器组名称。 +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md b/translations/zh-CN/data/reusables/actions/configure-runner-group-access.md similarity index 84% rename from translations/zh-CN/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md rename to translations/zh-CN/data/reusables/actions/configure-runner-group-access.md index 7e2098986b..cc6b9d22ed 100644 --- a/translations/zh-CN/data/reusables/actions/self-hosted-runner-configure-runner-group-access.md +++ b/translations/zh-CN/data/reusables/actions/configure-runner-group-access.md @@ -1,4 +1,4 @@ -{% data reusables.actions.self-hosted-runner-configure-runner-group %} +{% data reusables.actions.configure-runner-group %} 1. 修改策略选项。 {% ifversion not ghae %} diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-configure-runner-group.md b/translations/zh-CN/data/reusables/actions/configure-runner-group.md similarity index 100% rename from translations/zh-CN/data/reusables/actions/self-hosted-runner-configure-runner-group.md rename to translations/zh-CN/data/reusables/actions/configure-runner-group.md diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-create-group.md b/translations/zh-CN/data/reusables/actions/create-runner-group.md similarity index 100% rename from translations/zh-CN/data/reusables/actions/self-hosted-runner-create-group.md rename to translations/zh-CN/data/reusables/actions/create-runner-group.md diff --git a/translations/zh-CN/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md b/translations/zh-CN/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md new file mode 100644 index 0000000000..2aa6c31582 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/creating-a-runner-group-for-an-enterprise.md @@ -0,0 +1,28 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +Enterprises can add their runners to groups for access management. Enterprises can create groups of runners that are accessible to specific organizations in the enterprise account{% ifversion restrict-groups-to-workflows %} or to specific workflows{% endif %}. 然后,组织所有者可以为企业运行器组分配更细致的存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 访问策略。 For information about how to create a runner group with the REST API, see the enterprise endpoints in the [{% data variables.product.prodname_actions %} REST API](/rest/reference/actions#self-hosted-runner-groups). + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. 您可以在注册过程中将运行器分配给特定组,也可以稍后将运行器从默认组移到自定义组。 + +创建组时,必须选择用于定义哪些组织有权访问运行器组的策略。 + +{% data reusables.actions.runner-groups-add-to-enterprise-first-steps %} +1. 要为组织访问选择策略,请选择 **Organization access(组织访问)**下拉列表,然后单击一个策略。 您可以将运行器组配置为可供特定组织列表或企业中的所有组织访问。{% ifversion ghes %} 默认情况下,只有私有存储库可以访问运行器组中的运行器,但您可以覆盖此操作。{% endif %} + + {%- ifversion ghec or ghes %} + + ![添加运行器组选项](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options.png) + {%- elsif ghae %} + + ![添加运行器组选项](/assets/images/help/settings/actions-enterprise-account-add-runner-group-options-ae.png) + {%- endif %} +{% data reusables.actions.runner-group-assign-policy-workflow %} +1. 单击 **Save group(保存组)**创建组并应用策略。 + diff --git a/translations/zh-CN/data/reusables/actions/creating-a-runner-group-for-an-organization.md b/translations/zh-CN/data/reusables/actions/creating-a-runner-group-for-an-organization.md new file mode 100644 index 0000000000..d76d4cf769 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/creating-a-runner-group-for-an-organization.md @@ -0,0 +1,38 @@ +{% comment %} + +Always include a security admonition above this procedure. This is either one of the following, depending on whether the context is self-hosted runners or larger runners. + +{% data reusables.actions.self-hosted-runner-security-admonition %} +{% data reusables.actions.hosted-runner-security-admonition %} + +{% endcomment %} + +All organizations have a single default runner group. Organizations within an enterprise account can create additional groups. 组织管理员可以允许单个仓库访问运行器组。 For information about how to create a runner group with the REST API, see "[Self-hosted runner groups](/rest/reference/actions#self-hosted-runner-groups)." + +Runners are automatically assigned to the default group when created, and can only be members of one group at a time. 您可以将运行器从默认组移到您创建的任何组。 + +创建组时,必须选择一个策略,用于定义哪些存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 有权访问运行器组。 + +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. 在“Runner groups(运行器组)”部分,单击 **New runner group(新运行器组)**。 +1. 为运行器组输入名称。 + {% data reusables.actions.runner-group-assign-policy-repo %} +{% data reusables.actions.runner-group-assign-policy-workflow %}{%- ifversion restrict-groups-to-workflows %} 组织拥有的运行器组无法访问企业中其他组织的工作流程;相反,您必须创建企业拥有的运行器组。{% endif %} +{% data reusables.actions.create-runner-group %} +{% elsif ghae or ghes < 3.4 %} +{% data reusables.organizations.navigate-to-org %} +{% data reusables.organizations.org_settings %} +{% data reusables.organizations.settings-sidebar-actions-runner-groups %} +1. 在 {% ifversion ghes or ghae %}“Runners(运行器)”{% endif %} 下,单击 **Add new(新增)**,然后单击 **New group(新建组)**。 + + ![添加运行器组](/assets/images/help/settings/actions-org-add-runner-group.png) +1. 输入运行程序组的名称,并分配仓库访问策略。 + + 您可以将运行器组配置为可供特定的存储库列表或组织中的所有存储库访问。{% ifversion ghec or ghes %} 默认情况下,只有私有存储库可以访问运行器组中的运行器,但您可以覆盖此操作。 如果配置企业共享的组织的运行组,则不能覆盖此设置。{% endif %} + + ![添加运行器组选项](/assets/images/help/settings/actions-org-add-runner-group-options.png) +1. 单击 **Save group(保存组)**创建组并应用策略。 +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/hosted-runner-security-admonition.md b/translations/zh-CN/data/reusables/actions/hosted-runner-security-admonition.md new file mode 100644 index 0000000000..8ac0a9a329 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/hosted-runner-security-admonition.md @@ -0,0 +1,5 @@ +{% warning %} + +**警告**:{% data reusables.actions.hosted-runner-security %} + +{% endwarning %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/hosted-runner-security.md b/translations/zh-CN/data/reusables/actions/hosted-runner-security.md new file mode 100644 index 0000000000..ed12d189db --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/hosted-runner-security.md @@ -0,0 +1,3 @@ +We recommend that you only use {% data variables.actions.hosted_runner %}s with private repositories: +- Forks of your repository can potentially run dangerous code on your {% data variables.actions.hosted_runner %} by creating a pull request that executes the code in a workflow. +- You could incur unexpected costs if you allow forked repositories to run jobs on your {% data variables.actions.hosted_runner %}s. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/jobs/section-running-jobs-in-a-container.md b/translations/zh-CN/data/reusables/actions/jobs/section-running-jobs-in-a-container.md index 854fb0881a..ae92017ede 100644 --- a/translations/zh-CN/data/reusables/actions/jobs/section-running-jobs-in-a-container.md +++ b/translations/zh-CN/data/reusables/actions/jobs/section-running-jobs-in-a-container.md @@ -2,6 +2,12 @@ 若不设置 `container`,所有步骤将直接在 `runs-on` 指定的主机上运行,除非步骤引用已配置为在容器中运行的操作。 +{% note %} + +**Note:** The default shell for `run` steps inside a container is `sh` instead of `bash`. This can be overridden with [`jobs..defaults.run`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_iddefaultsrun) or [`jobs..steps[*].shell`](/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell). + +{% endnote %} + ### 示例:在容器中运行作业 ```yaml{:copy} diff --git a/translations/zh-CN/data/reusables/actions/moving-a-runner-to-a-group.md b/translations/zh-CN/data/reusables/actions/moving-a-runner-to-a-group.md new file mode 100644 index 0000000000..ca8a007c1c --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/moving-a-runner-to-a-group.md @@ -0,0 +1,12 @@ +If you don't specify a runner group during the registration process, your new runners are automatically assigned to the default group, and can then be moved to another group. + +{% data reusables.actions.self-hosted-runner-navigate-to-org-enterprise %} +{% ifversion ghec or ghes > 3.3 or ghae-issue-5091 %} +1. 在“Runners(运行器)”列表中,单击您要配置的运行器。 +2. 选择 **Runner group(运行器组)**下拉列表。 +3. 在“Move runner to group(将运行器移动到组)”中,选择运行器的目的地组。 +{% elsif ghae or ghes < 3.4 %} +1. 在设置页面的 {% ifversion ghes or ghae %} Runner groups(运行器组){% endif %} 部分,找到要移动的运行器的当前组,并展开组成员列表。 ![查看运行器组成员](/assets/images/help/settings/actions-org-runner-group-members.png) +2. 选中自托管运行器旁边的复选框,然后单击 **Move to group(移动到组)**以查看可用的目的地。 ![运行器组成员移动](/assets/images/help/settings/actions-org-runner-group-member-move.png) +3. 要移动运行器,请单击目标组。 ![运行器组成员移动](/assets/images/help/settings/actions-org-runner-group-member-move-destination.png) +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/removing-a-runner-group.md b/translations/zh-CN/data/reusables/actions/removing-a-runner-group.md new file mode 100644 index 0000000000..063c236afc --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/removing-a-runner-group.md @@ -0,0 +1,9 @@ +Runners are automatically returned to the default group when their group is removed. + +{% ifversion ghes or ghae or ghec %} +{% data reusables.actions.runner-groups-navigate-to-repo-org-enterprise %} +1. 在组列表中,在要删除的组右侧,单击 {% octicon "kebab-horizontal" aria-label="The horizontal kebab icon" %}。 +2. 要删除组,请单击 **Remove group(删除组)**。 +3. 查看确认提示,然后单击 **Remove this runner group(删除此运行器组)**。 Any runners still in this group will be automatically moved to the default group, where they will inherit the access permissions assigned to that group. + +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/runner-group-enterprise-overview.md b/translations/zh-CN/data/reusables/actions/runner-group-enterprise-overview.md new file mode 100644 index 0000000000..09f88eb9b9 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/runner-group-enterprise-overview.md @@ -0,0 +1,3 @@ +Runner groups are used to control access to runners at the organization and enterprise level. Enterprise owners can configure access policies that control which organizations {% ifversion restrict-groups-to-workflows %}and workflows {% endif %}in an enterprise have access to the runner group. 组织所有者可以配置访问策略,以控制组织中哪些存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 可以访问运行器组。 + +When an enterprise owner grants access to a runner group, organization owners can see the runner group listed in the organization's runner settings. 然后,组织所有者可以为企业运行器组分配更细致的存储库{% ifversion restrict-groups-to-workflows %} 和工作流程{% endif %} 访问策略。 \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md b/translations/zh-CN/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md similarity index 100% rename from translations/zh-CN/data/reusables/actions/self-hosted-runner-groups-add-to-enterprise-first-steps.md rename to translations/zh-CN/data/reusables/actions/runner-groups-add-to-enterprise-first-steps.md diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md b/translations/zh-CN/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md similarity index 85% rename from translations/zh-CN/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md rename to translations/zh-CN/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md index c2aeec4eb0..49ee6879d0 100644 --- a/translations/zh-CN/data/reusables/actions/self-hosted-runner-groups-navigate-to-repo-org-enterprise.md +++ b/translations/zh-CN/data/reusables/actions/runner-groups-navigate-to-repo-org-enterprise.md @@ -1,9 +1,9 @@ {% ifversion fpt %} -1. 导航到自托管运行器组所在的存储库或组织的主页。 +1. Navigate to the main page of the repository or organization where your runner groups are located. 2. 单击 {% octicon "gear" aria-label="The Settings gear" %} **Settings(设置)**。 {% data reusables.organizations.settings-sidebar-actions-runner-groups %} {% elsif ghec or ghes or ghae %} -1. 导航到自托管运行器组所在的位置: +1. Navigate to where your runner groups are located: * **在组织中**,导航到主页并单击 {% octicon "gear" aria-label="The Settings gear" %} **Settings(设置)**。 * **如果使用企业级组**: diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-add-to-enterprise.md b/translations/zh-CN/data/reusables/actions/self-hosted-runner-add-to-enterprise.md index c6a99ef321..c212116f7b 100644 --- a/translations/zh-CN/data/reusables/actions/self-hosted-runner-add-to-enterprise.md +++ b/translations/zh-CN/data/reusables/actions/self-hosted-runner-add-to-enterprise.md @@ -3,7 +3,7 @@ {% data reusables.enterprise-accounts.policies-tab %} {% data reusables.enterprise-accounts.actions-tab %} {% data reusables.enterprise-accounts.actions-runners-tab %} -1. 单击 **New runner(新运行器)**。 +{% ifversion actions-hosted-runners %}1. Click **New runner**, then click **New self-hosted runner**.{% else %}1. Click **New runner**.{% endif %} {% data reusables.actions.self-hosted-runner-configure %} {%- elsif ghae or ghes < 3.4 %} 要将自托管的运行器添加到企业,您必须是组织所有者。 diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md b/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md index 8ba85c0190..225c08eea3 100644 --- a/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md +++ b/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-org-enterprise.md @@ -3,7 +3,7 @@ 2. 单击 {% octicon "gear" aria-label="The Settings gear" %} **Settings(设置)**。 {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. 导航到自托管运行器注册的位置: +1. Navigate to where your runner is registered: * **在组织中**,导航到主页并单击 {% octicon "gear" aria-label="The Settings gear" %} **Settings(设置)**。 * **如果使用企业级运行器**: diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md b/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md index 5dc6d36531..2b8cd78bd6 100644 --- a/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md +++ b/translations/zh-CN/data/reusables/actions/self-hosted-runner-navigate-to-repo-org-enterprise.md @@ -3,7 +3,7 @@ 2. 单击 {% octicon "gear" aria-label="The Settings gear" %} **Settings(设置)**。 {% data reusables.organizations.settings-sidebar-actions-runners %} {% elsif ghec or ghes or ghae %} -1. 导航到自托管运行器注册的位置: +1. Navigate to where your runner is registered: * **在组织或仓库中**,导航到主页并单击 {% octicon "gear" aria-label="The Settings gear" %} **Settings(设置)**。 * **如果使用企业级运行器**: diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-security-admonition.md b/translations/zh-CN/data/reusables/actions/self-hosted-runner-security-admonition.md new file mode 100644 index 0000000000..0811e2b67c --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/self-hosted-runner-security-admonition.md @@ -0,0 +1,7 @@ +{% warning %} + +**警告**:{% data reusables.actions.self-hosted-runner-security %} + +更多信息请参阅“[关于自托管运行器](/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories)”。 + +{% endwarning %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/self-hosted-runner-security.md b/translations/zh-CN/data/reusables/actions/self-hosted-runner-security.md index c0f3eeedff..bbce14b0a8 100644 --- a/translations/zh-CN/data/reusables/actions/self-hosted-runner-security.md +++ b/translations/zh-CN/data/reusables/actions/self-hosted-runner-security.md @@ -1 +1 @@ -建议仅将自托管运行器用于私有仓库。 这是因为,通过创建在工作流程中执行代码的拉取请求,仓库的复刻可能会在您的自托管运行器上运行危险代码。 +建议仅将自托管运行器用于私有仓库。 This is because forks of your public repository can potentially run dangerous code on your self-hosted runner machine by creating a pull request that executes the code in a workflow. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/actions/use-request-body-api.md b/translations/zh-CN/data/reusables/actions/use-request-body-api.md new file mode 100644 index 0000000000..1d37d0c4f0 --- /dev/null +++ b/translations/zh-CN/data/reusables/actions/use-request-body-api.md @@ -0,0 +1 @@ +To apply this configuration, submit a request to the API endpoint and include the required configuration in the request body. For more information, see "[Set the customization template for an OIDC subject claim for an organization](/rest/actions/oidc#set-the-customization-template-for-an-oidc-subject-claim-for-an-organization)". \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/advanced-security/custom-link-beta.md b/translations/zh-CN/data/reusables/advanced-security/custom-link-beta.md new file mode 100644 index 0000000000..a79fc22417 --- /dev/null +++ b/translations/zh-CN/data/reusables/advanced-security/custom-link-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**Note:** The ability to add resource links to blocked push messages is currently in public beta and subject to change. + +{% endnote %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md b/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md index 5a86f3e78c..ebddd40be1 100644 --- a/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md +++ b/translations/zh-CN/data/reusables/advanced-security/secret-scanning-push-protection-org.md @@ -1,2 +1,6 @@ 1. 在“{% data variables.product.prodname_secret_scanning_caps %}”下的“Push protection(推送保护)”下,单击 **Enable all(启用所有)**。 ![显示如何为组织启用 {% data variables.product.prodname_secret_scanning %} 推送保护的屏幕截图](/assets/images/help/organizations/secret-scanning-enable-push-protection.png) -1. (可选)单击“自动为添加到 {% data variables.product.prodname_secret_scanning %} 的私有仓库启用”。 +1. Optionally, click "Automatically enable for private repositories added to {% data variables.product.prodname_secret_scanning %}."{% ifversion push-protection-custom-link-orgs %} +1. Optionally, to include a custom link in the message that members will see when they attempt to push a secret, select **Add a resource link in the CLI and web UI when a commit is blocked**, then type a URL, and click **Save link**. + {% ifversion push-protection-custom-link-orgs-beta %}{% indented_data_reference reusables.advanced-security.custom-link-beta spaces=3 %}{% endif %} + + ![Screenshot showing checkbox and text field for enabling a custom link](/assets/images/help/organizations/secret-scanning-custom-link.png){% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/billing/billing-hosted-runners.md b/translations/zh-CN/data/reusables/billing/billing-hosted-runners.md new file mode 100644 index 0000000000..2881396884 --- /dev/null +++ b/translations/zh-CN/data/reusables/billing/billing-hosted-runners.md @@ -0,0 +1 @@ +| Linux | 4 | $0.016 | | Linux | 8 | $0.032 | | Linux | 16 | $0.064 | | Linux | 32 | $0.128 | | Linux | 64 | $0.256 | | Windows | 8 | $0.064 | | Windows | 16 | $0.128 | | Windows | 32 | $0.256 | | Windows | 64 | $0.512 | \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/billing/billing-standard-runners.md b/translations/zh-CN/data/reusables/billing/billing-standard-runners.md new file mode 100644 index 0000000000..1083150a90 --- /dev/null +++ b/translations/zh-CN/data/reusables/billing/billing-standard-runners.md @@ -0,0 +1,5 @@ +| 操作系统 | Cores | 每分钟费率(美元) | +| ------- | ----- | --------- | +| Linux | 2 | $0.008 | +| macOS | 3 | $0.08 | +| Windows | 2 | $0.016 | diff --git a/translations/zh-CN/data/reusables/code-scanning/example-configuration-files.md b/translations/zh-CN/data/reusables/code-scanning/example-configuration-files.md index cb72da50c7..a5debd8119 100644 --- a/translations/zh-CN/data/reusables/code-scanning/example-configuration-files.md +++ b/translations/zh-CN/data/reusables/code-scanning/example-configuration-files.md @@ -30,3 +30,22 @@ paths-ignore: - src/node_modules - '**/*.test.js' ``` + +{% ifversion code-scanning-exclude-queries-from-analysis %} + +The following configuration file only runs queries that generate alerts of severity error. The configuration first selects all the default queries, all queries in `./my-queries`, and the default suite in `codeql/java-queries`, then excludes all the queries that generate warnings or recommendations. + +``` yaml +queries: + - name: Use an in-repository QL pack (run queries in the my-queries directory) + uses: ./my-queries +packs: + - codeql/java-queries +query-filters: +- exclude: + problem.severity: + - warning + - recommendation +``` + +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/code-scanning/licensing-note.md b/translations/zh-CN/data/reusables/code-scanning/licensing-note.md index aada4a282a..78daff0333 100644 --- a/translations/zh-CN/data/reusables/code-scanning/licensing-note.md +++ b/translations/zh-CN/data/reusables/code-scanning/licensing-note.md @@ -1,8 +1,12 @@ {% note %} -**注意:** {% ifversion fpt %} - {% data variables.product.prodname_codeql_cli %} 可在公共存储库上免费使用。 {% data variables.product.prodname_codeql_cli %} 也可用于使用 {% data variables.product.prodname_ghe_cloud %} 并有 {% data variables.product.prodname_GH_advanced_security %} 许可证的组织拥有的私有存储库。 有关信息请参阅“[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} 条款和条件](https://securitylab.github.com/tools/codeql/license)”和“[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)”。 -{%- elsif ghec %} {% data variables.product.prodname_codeql_cli %} 可以免费用于在 {% data variables.product.prodname_dotcom_the_website %}上维护的公共存储库,并可用于具有 {% data variables.product.prodname_advanced_security %} 许可证的客户拥有的私有存储库。 有关信息请参阅“[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} 条款和条件](https://securitylab.github.com/tools/codeql/license)”和“[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)”。 -{%- elsif ghes or ghae %}{% data variables.product.prodname_codeql_cli %} 可用于拥有 {% data variables.product.prodname_advanced_security %} 许可证的客户。 +**Notes:** {% ifversion fpt %} +- The {% data variables.product.prodname_codeql_cli %} is free to use on public repositories. {% data variables.product.prodname_codeql_cli %} 也可用于使用 {% data variables.product.prodname_ghe_cloud %} 并有 {% data variables.product.prodname_GH_advanced_security %} 许可证的组织拥有的私有存储库。 有关信息请参阅“[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} 条款和条件](https://securitylab.github.com/tools/codeql/license)”和“[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)”。 +{%- elsif 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. 有关信息请参阅“[{% data variables.product.product_name %} {% data variables.product.prodname_codeql %} 条款和条件](https://securitylab.github.com/tools/codeql/license)”和“[{% data variables.product.prodname_codeql %} CLI](https://codeql.github.com/docs/codeql-cli/)”。 +{%- elsif ghes or ghae %} +- {% data variables.product.prodname_codeql_cli %} 可用于拥有 {% data variables.product.prodname_advanced_security %} 许可证的客户。 {% endif %} +- {% data reusables.code-scanning.non-glibc-linux-support %} + {% endnote %} diff --git a/translations/zh-CN/data/reusables/code-scanning/non-glibc-linux-support.md b/translations/zh-CN/data/reusables/code-scanning/non-glibc-linux-support.md new file mode 100644 index 0000000000..2a1c2a8e53 --- /dev/null +++ b/translations/zh-CN/data/reusables/code-scanning/non-glibc-linux-support.md @@ -0,0 +1 @@ +The {% data variables.product.prodname_codeql_cli %} is currently not compatible with non-glibc Linux distributions such as (musl-based) Alpine Linux. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/code-scanning/run-additional-queries.md b/translations/zh-CN/data/reusables/code-scanning/run-additional-queries.md index 3f25bd67d1..fddae57c62 100644 --- a/translations/zh-CN/data/reusables/code-scanning/run-additional-queries.md +++ b/translations/zh-CN/data/reusables/code-scanning/run-additional-queries.md @@ -1,5 +1,13 @@ When you use {% data variables.product.prodname_codeql %} to scan code, the {% data variables.product.prodname_codeql %} analysis engine generates a database from the code and runs queries on it. {% data variables.product.prodname_codeql %} analysis uses a default set of queries, but you can specify more queries to run, in addition to the default queries. +{% ifversion code-scanning-exclude-queries-from-analysis %} +{% tip %} + +You can also specify the queries you want to exclude from analysis, or include in the analysis. This requires the use of a custom configuration file. For more information, see "[Using a custom configuration file](#using-a-custom-configuration-file)" and "[Excluding specific queries from analysis](#excluding-specific-queries-from-analysis) " below. + +{% endtip %} +{% endif %} + {% ifversion codeql-packs %} You can run extra queries if they are part of a {% data variables.product.prodname_codeql %} pack (beta) published to the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} or a {% data variables.product.prodname_ql %} pack stored in a repository. For more 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#about-codeql-queries)." diff --git a/translations/zh-CN/data/reusables/codespaces/click-remote-explorer-icon-vscode.md b/translations/zh-CN/data/reusables/codespaces/click-remote-explorer-icon-vscode.md index 0eae7a1f6f..f4258a8c1b 100644 --- a/translations/zh-CN/data/reusables/codespaces/click-remote-explorer-icon-vscode.md +++ b/translations/zh-CN/data/reusables/codespaces/click-remote-explorer-icon-vscode.md @@ -1 +1,5 @@ -1. 在 {% data variables.product.prodname_vscode_shortname %} 中,从左侧边栏单击 Remote Explorer 图标。 ![{% data variables.product.prodname_vscode %} 中的 Remote Explorer 图标](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) +1. 在 {% data variables.product.prodname_vscode_shortname %} 中,从左侧边栏单击 Remote Explorer 图标。 + + ![{% data variables.product.prodname_vscode %} 中的 Remote Explorer 图标](/assets/images/help/codespaces/click-remote-explorer-icon-vscode.png) + +{% indented_data_reference reusables.codespaces.remote-explorer spaces=3 %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/codespaces/codespaces-disabling-org-billing.md b/translations/zh-CN/data/reusables/codespaces/codespaces-disabling-org-billing.md new file mode 100644 index 0000000000..a3d7ca0c7a --- /dev/null +++ b/translations/zh-CN/data/reusables/codespaces/codespaces-disabling-org-billing.md @@ -0,0 +1,5 @@ +{% note %} + +**Note**: If you disable billable codespaces use for your organization, anyone who can create codespaces as an individual user, and can clone a repository in your organization, will still be able to create a codespace for that repository. However, this will not incur any charge for your organization. For information about restricting access to a repository, see "[Managing teams and people with access to your repository](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/managing-teams-and-people-with-access-to-your-repository)." + +{% endnote %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/codespaces/codespaces-org-policies-note.md b/translations/zh-CN/data/reusables/codespaces/codespaces-org-policies-note.md new file mode 100644 index 0000000000..9060454948 --- /dev/null +++ b/translations/zh-CN/data/reusables/codespaces/codespaces-org-policies-note.md @@ -0,0 +1,5 @@ +{% note %} + +**Note**: Organization policies you define for {% data variables.product.prodname_codespaces %} only apply to codespaces for which your organization will be billed. If an individual user creates a codespace for a repository in your organization, and the organization is not billed, then the codespace will not be bound by these policies. For information on how to choose who can create codespaces that are billed to your organization, see "[Enabling {% data variables.product.prodname_github_codespaces %} for your organization](/codespaces/managing-codespaces-for-your-organization/enabling-github-codespaces-for-your-organization#choose-who-can-create-codespaces-that-are-billed-to-your-organization)." + +{% endnote %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/codespaces/codespaces-spending-limit-requirement.md b/translations/zh-CN/data/reusables/codespaces/codespaces-spending-limit-requirement.md index e0b45cbee3..2e4bd63ee8 100644 --- a/translations/zh-CN/data/reusables/codespaces/codespaces-spending-limit-requirement.md +++ b/translations/zh-CN/data/reusables/codespaces/codespaces-spending-limit-requirement.md @@ -1,9 +1,9 @@ {% note %} -**注意:**必须先设置支出限额,然后才能使用 {% data variables.product.prodname_codespaces %}。 +**Note:** You must set a non-zero spending limit before you can use {% data variables.product.prodname_codespaces %}. {% endnote %} -默认情况下,您的组织或企业的 {% data variables.product.prodname_github_codespaces %} 支出限制为 $0,这将阻止创建新代码空间或打开现有代码空间。 若要允许用户在组织中创建代码空间,请将限制设置为大于 $0 的值。 +By default, your organization or enterprise will have a {% data variables.product.prodname_github_codespaces %} spending limit of $0. This prevents new codespaces from being created, or existing codespaces from being opened, if this would incur a billable cost to your organization or enterprise. 若要允许用户在组织中创建代码空间,请将限制设置为大于 $0 的值。 {% data reusables.billing.overages-billed-monthly %} diff --git a/translations/zh-CN/data/reusables/codespaces/open-codespace-from-template-repo.md b/translations/zh-CN/data/reusables/codespaces/open-codespace-from-template-repo.md new file mode 100644 index 0000000000..d6507d6c06 --- /dev/null +++ b/translations/zh-CN/data/reusables/codespaces/open-codespace-from-template-repo.md @@ -0,0 +1,8 @@ +1. Select an owner for the new repository, enter a repository name, select your preferred privacy setting, and click **Create repository from template**. +1. On the main page of the newly created repository, click the **{% octicon "code" aria-label="The code icon" %} Code** button and select the **Codespaces** tab. + + ![新建代码空间按钮](/assets/images/help/codespaces/new-codespace-button.png) + + If you don’t see this tab, {% data variables.product.prodname_github_codespaces %} isn't available for you. For more information about access to {% data variables.product.prodname_github_codespaces %}, see "[Creating a codespace](/codespaces/developing-in-codespaces/creating-a-codespace#access-to-github-codespaces)." + +1. On the **Codespaces** tab, click **Create codespace on main**. diff --git a/translations/zh-CN/data/reusables/codespaces/rebuild-command.md b/translations/zh-CN/data/reusables/codespaces/rebuild-command.md index b7598729fd..22a3ae780c 100644 --- a/translations/zh-CN/data/reusables/codespaces/rebuild-command.md +++ b/translations/zh-CN/data/reusables/codespaces/rebuild-command.md @@ -1,5 +1,3 @@ -1. Access the {% data variables.product.prodname_vscode_command_palette %} (Shift + Command + P / Ctrl + Shift + P), then start typing "rebuild". 选择 **Codespaces: Rebuild Container(代码空间:重建容器)**。 +1. Access the {% data variables.product.prodname_vscode_command_palette_shortname %} (Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux)), then start typing "rebuild". 选择 **Codespaces: Rebuild Container(代码空间:重建容器)**。 ![重建容器选项](/assets/images/help/codespaces/codespaces-rebuild.png) - - diff --git a/translations/zh-CN/data/reusables/codespaces/remote-explorer.md b/translations/zh-CN/data/reusables/codespaces/remote-explorer.md new file mode 100644 index 0000000000..545bdcf0c9 --- /dev/null +++ b/translations/zh-CN/data/reusables/codespaces/remote-explorer.md @@ -0,0 +1,9 @@ +{% note %} + +**Note**: If the Remote Explorer is not displayed in the Activity Bar: + +1. Access the Command Palette. For example, by pressing Shift+Command+P (Mac) / Ctrl+Shift+P (Windows/Linux). +1. Type: `codespaces`. +1. Click **Codespaces: Details**. + +{% endnote %} diff --git a/translations/zh-CN/data/reusables/dependabot/dependabot-alerts-filters.md b/translations/zh-CN/data/reusables/dependabot/dependabot-alerts-filters.md index 0a2e0ad1ba..29684cdd92 100644 --- a/translations/zh-CN/data/reusables/dependabot/dependabot-alerts-filters.md +++ b/translations/zh-CN/data/reusables/dependabot/dependabot-alerts-filters.md @@ -2,7 +2,7 @@ You can sort and filter {% data variables.product.prodname_dependabot_alerts %} | 选项 | 描述 | 示例 | |:---------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `生态系统` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 %} +| `生态系统` | Displays alerts for the selected ecosystem | Use `ecosystem:npm` to show {% data variables.product.prodname_dependabot_alerts %} for npm |{% ifversion fpt or ghec or ghes > 3.5 or ghae-issue-7891 %} | `has` | Displays alerts meeting the selected filter criteria | Use `has:patch` to show alerts related to advisories that have a patch{% ifversion dependabot-alerts-vulnerable-calls %}
Use `has:vulnerable-calls` to show alerts relating to calls to vulnerable functions{% endif %} {% endif %} | `is` | Displays alerts based on their state | Use `is:open` to show open alerts | diff --git a/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-beta-note.md b/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-beta-note.md index 47fc2e3a3f..6c5922c01c 100644 --- a/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-beta-note.md +++ b/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-beta-note.md @@ -2,4 +2,4 @@ **注:**{% data variables.product.prodname_dependency_review_action %} 目前处于公测阶段,可能会更改。 -{% endnote %} +{% endnote %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-overview.md b/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-overview.md index fdfb2f6f8c..d3b89434d2 100644 --- a/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-overview.md +++ b/translations/zh-CN/data/reusables/dependency-review/dependency-review-action-overview.md @@ -1,3 +1,3 @@ The {% data variables.product.prodname_dependency_review_action %} scans your pull requests for dependency changes and raises an error if any new dependencies have known vulnerabilities. The action is supported by an API endpoint that compares the dependencies between two revisions and reports any differences. -For more information about the action and the API endpoint, see "[About dependency review](/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-reinforcement)," and "[Dependency review](/rest/dependency-graph/dependency-review)" in the API documentation, respectively. +For more information about the action and the API endpoint, see the [`dependency-review-action`](https://github.com/actions/dependency-review-action) documentation, and "[Dependency review](/rest/dependency-graph/dependency-review)" in the API documentation. diff --git a/translations/zh-CN/data/reusables/enterprise-accounts/repo-creation-policy.md b/translations/zh-CN/data/reusables/enterprise-accounts/repo-creation-policy.md index be5c8f8546..fa398e2027 100644 --- a/translations/zh-CN/data/reusables/enterprise-accounts/repo-creation-policy.md +++ b/translations/zh-CN/data/reusables/enterprise-accounts/repo-creation-policy.md @@ -1 +1,6 @@ -1. 在“Repository creation(仓库创建)”下,选择一个策略。 ![带有仓库创建策略选项的下拉菜单](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) +1. 在“Repository creation(仓库创建)”下,选择一个策略。 + {% ifversion enterprise-namespace-repo-setting %} + ![带有仓库创建策略选项的下拉菜单](/assets/images/help/business-accounts/restrict-personal-namespace-setting.png) + {% else %} + ![带有仓库创建策略选项的下拉菜单](/assets/images/help/business-accounts/repository-creation-policy-drop-down.png) + {% endif %} diff --git a/translations/zh-CN/data/reusables/enterprise-accounts/repository-visibility-policy.md b/translations/zh-CN/data/reusables/enterprise-accounts/repository-visibility-policy.md deleted file mode 100644 index 020b1d59e8..0000000000 --- a/translations/zh-CN/data/reusables/enterprise-accounts/repository-visibility-policy.md +++ /dev/null @@ -1 +0,0 @@ -1. 在“Repository visibility change(仓库可见性更改)”下,使用下拉菜单选择策略。 ![带有仓库可见性策略选项的下拉菜单](/assets/images/help/business-accounts/repository-visibility-policy-drop-down.png) diff --git a/translations/zh-CN/data/reusables/enterprise-accounts/security-tab.md b/translations/zh-CN/data/reusables/enterprise-accounts/security-tab.md index 361912ab4a..bb35e3750e 100644 --- a/translations/zh-CN/data/reusables/enterprise-accounts/security-tab.md +++ b/translations/zh-CN/data/reusables/enterprise-accounts/security-tab.md @@ -1,2 +1,7 @@ +{%- ifversion ghec or ghes > 3.4 or ghae-issue-7875 %} +1. In the left sidebar, click **Authentication security**. + {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-authentication-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-authentication-security-tab.png){% endif %} +{%- else %} 1. 在左侧边栏中,单击 **Security(安全)**。 {% ifversion ghae %}![Security tab in the enterprise account settings sidebar](/assets/images/enterprise/github-ae/enterprise-account-settings-security-tab.png){% else %}![Security tab in the enterprise account settings sidebar](/assets/images/help/business-accounts/enterprise-account-settings-security-tab.png){% endif %} +{%- endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md b/translations/zh-CN/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md index c5d6100063..d9e308eee9 100644 --- a/translations/zh-CN/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md +++ b/translations/zh-CN/data/reusables/enterprise_site_admin_settings/pgp-key-env-variable.md @@ -1,4 +1,4 @@ -1. Define the key as a environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. +1. Define the key as an environment variable for {% data variables.product.product_name %}, replacing `` with the GPG key ID. ```bash{:copy} ghe-config "secrets.gpgverify.web-signing-key" "$(gpg --export-secret-keys -a | awk '{printf "%s\\n", $0}')" diff --git a/translations/zh-CN/data/reusables/gated-features/hosted-runners.md b/translations/zh-CN/data/reusables/gated-features/hosted-runners.md new file mode 100644 index 0000000000..4f1e2137bb --- /dev/null +++ b/translations/zh-CN/data/reusables/gated-features/hosted-runners.md @@ -0,0 +1 @@ +The {% data variables.actions.hosted_runner %}s feature is currently in beta for organizations and enterprises using the {% data variables.product.prodname_team %} or {% data variables.product.prodname_ghe_cloud %} plans, and is subject to change. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/getting-started/bearer-vs-token.md b/translations/zh-CN/data/reusables/getting-started/bearer-vs-token.md new file mode 100644 index 0000000000..9dd0b62ada --- /dev/null +++ b/translations/zh-CN/data/reusables/getting-started/bearer-vs-token.md @@ -0,0 +1 @@ +In most cases, you can use `Authorization: Bearer` or `Authorization: token` to pass a token. However, if you are passing a JSON web token (JWT), you must use `Authorization: Bearer`. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/git/cache-on-repository-path.md b/translations/zh-CN/data/reusables/git/cache-on-repository-path.md new file mode 100644 index 0000000000..ced81ebbd9 --- /dev/null +++ b/translations/zh-CN/data/reusables/git/cache-on-repository-path.md @@ -0,0 +1,5 @@ +1. To configure Git to cache credentials for each local directory where you clone a repository, enter the following command. + + ```shell{:copy} + git config --global credential.useHttpPath true + ``` diff --git a/translations/zh-CN/data/reusables/git/clear-stored-gcm-credentials.md b/translations/zh-CN/data/reusables/git/clear-stored-gcm-credentials.md new file mode 100644 index 0000000000..04e3de748e --- /dev/null +++ b/translations/zh-CN/data/reusables/git/clear-stored-gcm-credentials.md @@ -0,0 +1,5 @@ +- If the output is `manager-core`, you're using Git Credential Manager. To clear the credentials, run the following command. + + ```shell{:copy} + git credential-manager reject https://github.com + ``` diff --git a/translations/zh-CN/data/reusables/git/clear-the-stored-credentials.md b/translations/zh-CN/data/reusables/git/clear-the-stored-credentials.md new file mode 100644 index 0000000000..f723d7ab97 --- /dev/null +++ b/translations/zh-CN/data/reusables/git/clear-the-stored-credentials.md @@ -0,0 +1 @@ +1. If the output confirms that you're using a credential manager, clear the stored credentials for the credential manager. diff --git a/translations/zh-CN/data/reusables/git/confirm-credential-manager.md b/translations/zh-CN/data/reusables/git/confirm-credential-manager.md new file mode 100644 index 0000000000..68c6e99397 --- /dev/null +++ b/translations/zh-CN/data/reusables/git/confirm-credential-manager.md @@ -0,0 +1,5 @@ +1. To confirm your use of a credential manager, enter the following command and note the output. + + ```shell{:copy} + git config --get credential.helper + ``` diff --git a/translations/zh-CN/data/reusables/git/no-credential-manager.md b/translations/zh-CN/data/reusables/git/no-credential-manager.md new file mode 100644 index 0000000000..fe79c2ff04 --- /dev/null +++ b/translations/zh-CN/data/reusables/git/no-credential-manager.md @@ -0,0 +1 @@ +- If the output doesn't include the name of a credential manager, there is no credential manager configured, and you can proceed to the next step. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/git/open-terminal.md b/translations/zh-CN/data/reusables/git/open-terminal.md new file mode 100644 index 0000000000..98b8f27c80 --- /dev/null +++ b/translations/zh-CN/data/reusables/git/open-terminal.md @@ -0,0 +1 @@ +1. 打开终端。 diff --git a/translations/zh-CN/data/reusables/git/provide-credentials.md b/translations/zh-CN/data/reusables/git/provide-credentials.md new file mode 100644 index 0000000000..351a1e87d1 --- /dev/null +++ b/translations/zh-CN/data/reusables/git/provide-credentials.md @@ -0,0 +1,3 @@ +1. The first time that you use Git to clone a repository or access data in a repository that you've already cloned, Git will request credentials. Provide the PAT for the account with access to the repository. + + Git will cache the PAT for the directory you're in, and you'll be able to access and write repository data on {% data variables.product.product_location %} using the correct account. diff --git a/translations/zh-CN/data/reusables/gpg/configure-ssh-signing.md b/translations/zh-CN/data/reusables/gpg/configure-ssh-signing.md new file mode 100644 index 0000000000..f0f489a73a --- /dev/null +++ b/translations/zh-CN/data/reusables/gpg/configure-ssh-signing.md @@ -0,0 +1,4 @@ +1. Configure Git to use SSH to sign commits and tags: + ```bash + $ git config --global gpg.format ssh + ``` \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/gpg/copy-gpg-key-id.md b/translations/zh-CN/data/reusables/gpg/copy-gpg-key-id.md index f5de6e1efb..51cdb3d2e3 100644 --- a/translations/zh-CN/data/reusables/gpg/copy-gpg-key-id.md +++ b/translations/zh-CN/data/reusables/gpg/copy-gpg-key-id.md @@ -1,9 +1,9 @@ 1. 从 GPG 密钥列表中复制您想要使用的 GPG 密钥 ID 的长形式。 在此例中,GPG 密钥 ID 是 `3AA5C34371567BD2`: - ```shell + ```shell{:copy} $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot ssb 4096R/42B317FD4BA89E7A 2016-03-10 - ``` + ``` diff --git a/translations/zh-CN/data/reusables/gpg/copy-ssh-public-key.md b/translations/zh-CN/data/reusables/gpg/copy-ssh-public-key.md new file mode 100644 index 0000000000..3c9ff53640 --- /dev/null +++ b/translations/zh-CN/data/reusables/gpg/copy-ssh-public-key.md @@ -0,0 +1,43 @@ +1. 将 SSH 公钥复制到剪贴板。 + + 如果您的 SSH 公钥文件与示例代码不同,请修改文件名以匹配您当前的设置。 在复制密钥时,请勿添加任何新行或空格。 +{% mac %} + + ```shell + $ pbcopy < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard + ``` + + {% tip %} + + **提示:**如果 `pbcopy` 不可用,可找到隐藏的 `.ssh` 文件夹,在常用的文本编辑器中打开该文件,并将其复制到剪贴板。 + + {% endtip %} +{% endmac %} +{% windows %} + + ```shell + $ clip < ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Copies the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file to your clipboard + ``` + + {% tip %} + + **提示:**如果 `clip` 不可用,可找到隐藏的 `.ssh` 文件夹,在常用的文本编辑器中打开该文件,并将其复制到剪贴板。 + + {% endtip %} +{% endwindows %} +{% linux %} + + ```shell + $ cat ~/.ssh/id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub + # Then select and copy the contents of the id_{% ifversion ghae %}rsa{% else %}ed25519{% endif %}.pub file + # displayed in the terminal to your clipboard + ``` + + {% tip %} + + **提示:**或者,您也可以找到隐藏的 `.ssh` 文件夹,在常用的文本编辑器中打开该文件,并将其复制到剪贴板。 + + {% endtip %} +{% endlinux %} diff --git a/translations/zh-CN/data/reusables/gpg/list-keys-with-note.md b/translations/zh-CN/data/reusables/gpg/list-keys-with-note.md index 38cea23d74..3ad866aa38 100644 --- a/translations/zh-CN/data/reusables/gpg/list-keys-with-note.md +++ b/translations/zh-CN/data/reusables/gpg/list-keys-with-note.md @@ -1,10 +1,11 @@ - 1. 使用 `gpg --list-secret-keys --keyid-format=long` 命令列出您拥有其公钥和私钥的长形式 GPG 密钥。 签名提交或标记需要私钥。 - ```shell - $ gpg --list-secret-keys --keyid-format=long -``` - {% note %} - **注:**Linux上的一些 GPG 安装可能需要使用 `gpg2 --list-keyid-form LONG` 查看您现有密钥的列表。 在这种情况下,您还需要运行 `git config --global gpg.program gpg2` 来配置 Git 使用 `git gpg2`。 + ```shell{:copy} + $ gpg --list-secret-keys --keyid-format=long + ``` - {% endnote %} + {% note %} + + **注:**Linux上的一些 GPG 安装可能需要使用 `gpg2 --list-keyid-form LONG` 查看您现有密钥的列表。 在这种情况下,您还需要运行 `git config --global gpg.program gpg2` 来配置 Git 使用 `git gpg2`。 + + {% endnote %} diff --git a/translations/zh-CN/data/reusables/gpg/paste-ssh-public-key.md b/translations/zh-CN/data/reusables/gpg/paste-ssh-public-key.md new file mode 100644 index 0000000000..1274a0acb5 --- /dev/null +++ b/translations/zh-CN/data/reusables/gpg/paste-ssh-public-key.md @@ -0,0 +1,4 @@ +1. To set your SSH signing key in Git, paste the text below, substituting the contents of your clipboard for the key you'd like to use. Since the key contains spaces, you must wrap it in quotes: + ```bash + $ git config --global user.signingkey 'ssh-ed25519 AAAAC3(...) user@example.com' + ``` \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/gpg/ssh-git-version.md b/translations/zh-CN/data/reusables/gpg/ssh-git-version.md new file mode 100644 index 0000000000..d75ab5df71 --- /dev/null +++ b/translations/zh-CN/data/reusables/gpg/ssh-git-version.md @@ -0,0 +1,6 @@ + +{% note %} + +**Note:** SSH signature verification is available in Git 2.34 or later. 要更新 Git 版本,请参阅 [Git](https://git-scm.com/downloads) 网站。 + +{% endnote %} diff --git a/translations/zh-CN/data/reusables/gpg/x-509-key.md b/translations/zh-CN/data/reusables/gpg/x-509-key.md index b8ad4b392f..11c88ba0e0 100644 --- a/translations/zh-CN/data/reusables/gpg/x-509-key.md +++ b/translations/zh-CN/data/reusables/gpg/x-509-key.md @@ -1,5 +1,5 @@ -### 将您的 X.509 密钥告知 Git +## 将您的 X.509 密钥告知 Git 您可以使用 [smimesign](https://github.com/github/smimesign) 以 S/MIME 代替 GPG 对提交和标记签名。 diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md b/translations/zh-CN/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md new file mode 100644 index 0000000000..772581f87a --- /dev/null +++ b/translations/zh-CN/data/reusables/identity-and-permissions/about-adding-ip-allow-list-entries.md @@ -0,0 +1,3 @@ +You can create an IP allow list by adding entries that each contain an IP address or address range.{% ifversion ip-allow-list-address-check %} After you finish adding entries, you can check whether a particular IP address would be allowed by any of the enabled entries in your list.{% endif %} + +Before the list restricts access to {% ifversion ghae %}your enterprise{% else %}private assets owned by organizations in your enterprise{% endif %}, you must also enable allowed IP addresses. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/about-checking-ip-address.md b/translations/zh-CN/data/reusables/identity-and-permissions/about-checking-ip-address.md new file mode 100644 index 0000000000..dfdc758f91 --- /dev/null +++ b/translations/zh-CN/data/reusables/identity-and-permissions/about-checking-ip-address.md @@ -0,0 +1 @@ +You can check whether a particular IP address would be allowed by any of the enabled entries in your IP allow list, even if the list is not currently enabled. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md b/translations/zh-CN/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md new file mode 100644 index 0000000000..d646e02ec5 --- /dev/null +++ b/translations/zh-CN/data/reusables/identity-and-permissions/about-editing-ip-allow-list-entries.md @@ -0,0 +1,5 @@ +You can edit an entry in your IP allow list. If you edit an enabled entry, changes are enforced immediately. + +{% ifversion ip-allow-list-address-check %} +After you finish editing entries, you can check whether a particular IP address would be allowed by any of the enabled entries in your list. +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md b/translations/zh-CN/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md new file mode 100644 index 0000000000..f886df0690 --- /dev/null +++ b/translations/zh-CN/data/reusables/identity-and-permissions/about-enabling-allowed-ip-addresses.md @@ -0,0 +1,5 @@ +After you create an IP allow list, you can enable allowed IP addresses. When you enable allowed IP addresses, {% data variables.product.company_short %} immediately enforces any enabled entries in your IP allow list. + +{% ifversion ip-allow-list-address-check %} +Before you enable allowed IP addresses, you can check whether a particular IP address would be allowed by any of the enabled entries in your list. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/check-ip-address-step.md b/translations/zh-CN/data/reusables/identity-and-permissions/check-ip-address-step.md new file mode 100644 index 0000000000..5e73fdddcd --- /dev/null +++ b/translations/zh-CN/data/reusables/identity-and-permissions/check-ip-address-step.md @@ -0,0 +1 @@ +1. Under "Check your IP address", enter an IP address. ![Screenshot of the "Check IP address" text field](/assets/images/help/security/check-ip-address.png) \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/check-ip-address.md b/translations/zh-CN/data/reusables/identity-and-permissions/check-ip-address.md new file mode 100644 index 0000000000..9a187752d6 --- /dev/null +++ b/translations/zh-CN/data/reusables/identity-and-permissions/check-ip-address.md @@ -0,0 +1,3 @@ +{%- ifversion ip-allow-list-address-check %} +1. Optionally, check if a particular IP address would be allowed by any of the enabled entries in your list. For more information, see "[Checking if an IP address is permitted](#checking-if-an-ip-address-is-permitted)." +{%- endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/ip-allow-lists-enable.md b/translations/zh-CN/data/reusables/identity-and-permissions/ip-allow-lists-enable.md index be86d46b13..9e538b2c26 100644 --- a/translations/zh-CN/data/reusables/identity-and-permissions/ip-allow-lists-enable.md +++ b/translations/zh-CN/data/reusables/identity-and-permissions/ip-allow-lists-enable.md @@ -1 +1,3 @@ -要执行 IP 允许列表,必须先将 IP 地址添加到列表,然后启用 IP 允许列表。 您必须先添加当前 IP 地址或匹配范围,然后才能启用 IP 允许列表。 +To enforce the IP allow list, you must first add IP addresses to the list, then enable the IP allow list.{% ifversion ip-allow-list-address-check %} After you complete your list, you can check whether a particular IP address would be allowed by any of the enabled entries in the list.{% endif %} + +您必须先添加当前 IP 地址或匹配范围,然后才能启用 IP 允许列表。 diff --git a/translations/zh-CN/data/reusables/identity-and-permissions/ipv6-allow-lists.md b/translations/zh-CN/data/reusables/identity-and-permissions/ipv6-allow-lists.md new file mode 100644 index 0000000000..3c26491fe2 --- /dev/null +++ b/translations/zh-CN/data/reusables/identity-and-permissions/ipv6-allow-lists.md @@ -0,0 +1,7 @@ +{% ifversion fpt or ghec %} +{% note %} + +**Note:** {% data variables.product.company_short %} is gradually rolling out support for IPv6. As {% data variables.product.prodname_dotcom %} services continue to add IPv6 support, we will start recognizing IPv6 addresses of {% data variables.product.prodname_dotcom %} users. To prevent possible access interruptions, please ensure you have added any necessary IPv6 addresses to your IP allow list. + +{% endnote %} +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/organizations/about-following-organizations.md b/translations/zh-CN/data/reusables/organizations/about-following-organizations.md new file mode 100644 index 0000000000..52e52467fb --- /dev/null +++ b/translations/zh-CN/data/reusables/organizations/about-following-organizations.md @@ -0,0 +1 @@ +When you follow organizations on {% data variables.product.product_name %}, you'll see their {% ifversion fpt or ghec %}public{% endif %} activity on your personal dashboard. This activity includes new discussions, sponsorships, and repositories. \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/organizations/follow-organizations-beta.md b/translations/zh-CN/data/reusables/organizations/follow-organizations-beta.md new file mode 100644 index 0000000000..27d068eb46 --- /dev/null +++ b/translations/zh-CN/data/reusables/organizations/follow-organizations-beta.md @@ -0,0 +1,5 @@ +{% note %} + +**注意:** 关注组织的功能目前处于公开测试阶段,可能会发生变化。 + +{% endnote %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/package_registry/authenticate-packages.md b/translations/zh-CN/data/reusables/package_registry/authenticate-packages.md index a766f6e96d..5ca4e91584 100644 --- a/translations/zh-CN/data/reusables/package_registry/authenticate-packages.md +++ b/translations/zh-CN/data/reusables/package_registry/authenticate-packages.md @@ -4,4 +4,4 @@ You can use a personal access token (PAT) to authenticate to {% data variables.p 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. -- a PAT to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). +- a PAT with at least `packages:read` scope to install packages associated with other private repositories (which `GITHUB_TOKEN` can't access). diff --git a/translations/zh-CN/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md b/translations/zh-CN/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md deleted file mode 100644 index a54f9a0844..0000000000 --- a/translations/zh-CN/data/reusables/package_registry/authenticate_with_pat_for_container_registry.md +++ /dev/null @@ -1,11 +0,0 @@ -{% ifversion fpt or ghec or ghes > 3.4 %} - -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 `{% data reusables.package_registry.container-registry-hostname %}`, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. - -{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to `{% data reusables.package_registry.container-registry-hostname %}` with a personal access token, see "[Upgrading a workflow that accesses `ghcr.io`](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-ghcrio)."{% endif %} - -For more information about the `GITHUB_TOKEN`, see "[Authentication in a workflow](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)." - -If you're using the {% data variables.product.prodname_container_registry %} in actions, follow our security best practices at "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." - -{% endif %} diff --git a/translations/zh-CN/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md b/translations/zh-CN/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md new file mode 100644 index 0000000000..9eb44525c7 --- /dev/null +++ b/translations/zh-CN/data/reusables/package_registry/authenticate_with_pat_for_v2_registry.md @@ -0,0 +1,7 @@ +If your workflow is using a personal access token (PAT) to authenticate to a registry, then we highly recommend you update your workflow to use the `GITHUB_TOKEN`. + +{% ifversion fpt or ghec %}For guidance on updating your workflows that authenticate to a registry with a personal access token, see "[Upgrading a workflow that accesses a registry using a PAT](/packages/managing-github-packages-using-github-actions-workflows/publishing-and-installing-a-package-with-github-actions#upgrading-a-workflow-that-accesses-a-registry-using-a-pat)."{% endif %} + +有关 `GITHUB_TOKEN` 的更多信息,请参阅“[工作流程中的身份验证](/actions/reference/authentication-in-a-workflow#using-the-github_token-in-a-workflow)”。 + +For more information about the best practises when using a registry in actions, see "[Security hardening for GitHub Actions](/actions/getting-started-with-github-actions/security-hardening-for-github-actions#considering-cross-repository-access)." diff --git a/translations/zh-CN/data/reusables/package_registry/no-graphql-to-delete-packages.md b/translations/zh-CN/data/reusables/package_registry/no-graphql-to-delete-packages.md new file mode 100644 index 0000000000..cbab609f2b --- /dev/null +++ b/translations/zh-CN/data/reusables/package_registry/no-graphql-to-delete-packages.md @@ -0,0 +1 @@ +{% 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`, or npm images that use the package namespace `https://npm.pkg.github.com/OWNER/PACKAGE-NAME`.{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md b/translations/zh-CN/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md index 313d4af669..0e349b01cb 100644 --- a/translations/zh-CN/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md +++ b/translations/zh-CN/data/reusables/release-notes/ghas-3.4-secret-scanning-known-issue.md @@ -1,16 +1,16 @@ -{% ifversion ghes > 3.1 or ghes < 3.5 %} +{% ifversion ghes < 3.5 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix for 3.5 and later will be available in an upcoming patch release. +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server 3.5 or later may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 when you upgrade from an earlier release to 3.5 or later. A fix is available in the [3.5.5](/enterprise-server@3.5/admin/release-notes#3.5.5) and [3.6.1](/enterprise-server@3.6/admin/release-notes#3.6.1) patch releases. -To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-08-16] +To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). [Updated: 2022-09-01] -{% elsif ghes > 3.4 or ghes < 3.7 %} +{% elsif ghes = 3.5 or ghes = 3.6 %} -In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ currentVersion }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). +In some cases, GitHub Advanced Security customers who upgrade to GitHub Enterprise Server {{ allVersions[currentVersion].currentRelease }} may notice that alerts from secret scanning are missing in the web UI and REST API. To ensure the alerts remain visible, do not skip 3.4 as you upgrade to the latest release. To plan an upgrade through 3.4, see the [Upgrade assistant](https://support.github.com/enterprise/server-upgrade). - To display the missing alerts for all repositories owned by an organization, organization owners can navigate to the organization's **Code security and analysis** settings, then click **Enable all** for secret scanning. 更多信息请参阅“[管理组织的安全和分析设置](/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#enabling-or-disabling-a-feature-for-all-existing-repositories)”。 - To display the missing alerts for an individual repository, people with admin access to the repository can disable then enable secret scanning for the repository. 更多信息请参阅“[管理仓库的安全和分析设置](/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-security-and-analysis-settings-for-your-repository)”。 -A fix will be available in an upcoming patch release. [Updated: 2022-08-16] +A fix is available in the {% ifversion ghes = 3.5 %}[3.5.5](/admin/release-notes#3.5.5){% elsif ghes = 3.6 %}[3.6.1](/admin/release-notes#3.6.1){% endif %} patch release. [Updated: 2022-09-01] {% endif %} diff --git a/translations/zh-CN/data/reusables/secret-scanning/push-protection-web-ui-choice.md b/translations/zh-CN/data/reusables/secret-scanning/push-protection-web-ui-choice.md index 250e5c68e6..933b576cd0 100644 --- a/translations/zh-CN/data/reusables/secret-scanning/push-protection-web-ui-choice.md +++ b/translations/zh-CN/data/reusables/secret-scanning/push-protection-web-ui-choice.md @@ -2,5 +2,12 @@ 您将在页面顶部看到一个横幅,其中包含有关密钥位置的信息,并且密钥也将在文件中加下划线,以便您可以轻松找到它。 +{% ifversion push-protection-custom-link-orgs %} + + ![显示由于机密扫描推送保护而在 Web UI 中阻止提交的屏幕截图](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner-with-link.png) + +{% else %} + ![显示由于机密扫描推送保护而在 Web UI 中阻止提交的屏幕截图](/assets/images/help/repository/secret-scanning-push-protection-web-ui-commit-blocked-banner.png) - \ No newline at end of file + +{% endif %} \ No newline at end of file diff --git a/translations/zh-CN/data/variables/actions.yml b/translations/zh-CN/data/variables/actions.yml index 7561884164..0cf3893443 100644 --- a/translations/zh-CN/data/variables/actions.yml +++ b/translations/zh-CN/data/variables/actions.yml @@ -1,2 +1,3 @@ --- azure_portal: 'Azure Portal' +hosted_runner: 'larger runner' diff --git a/translations/zh-CN/data/variables/product.yml b/translations/zh-CN/data/variables/product.yml index 5d09c47040..7e67ff4653 100644 --- a/translations/zh-CN/data/variables/product.yml +++ b/translations/zh-CN/data/variables/product.yml @@ -112,6 +112,10 @@ prodname_registry: 'GitHub Packages' prodname_container_registry: 'Container registry' prodname_docker_registry_namespace: '{% ifversion fpt or ghec %}`docker.pkg.github.com`{% elsif ghes or ghae %}docker.HOSTNAME{% endif %}' prodname_container_registry_namespace: '{% ifversion fpt or ghec %}`ghcr.io`{% elsif ghes or ghae %}containers.HOSTNAME{% endif %}' +prodname_npm_registry: 'npm 注册表' +prodname_ghcr_and_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_or_npm_registry: '{% data variables.product.prodname_container_registry %}{% ifversion packages-npm-v2 %} or {% data variables.product.prodname_npm_registry %}{% endif %}' +prodname_ghcr_and_npm_registry_full: '{% data variables.product.prodname_container_registry %} (`ghcr.io`){% ifversion packages-npm-v2 %} and {% data variables.product.prodname_npm_registry %} (`npm.pkg.github.com`){% endif %}' #GitHub Insights prodname_insights: 'GitHub Insights' #GitHub Sponsors