Repo sync (#36395)
Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Kevin Heis <heiskr@users.noreply.github.com> Co-authored-by: Sunbrye Ly <56200261+sunbrye@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jules <19994093+jules-p@users.noreply.github.com> Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com> Co-authored-by: Carlin Cherry <61124041+carlincherry@users.noreply.github.com> Co-authored-by: Rachael Sewell <rachmari@github.com> Co-authored-by: Felicity Chapman <felicitymay@github.com>
This commit is contained in:
@@ -16,9 +16,7 @@ type: how_to
|
|||||||
|
|
||||||
To create an experience on {% data variables.product.github %} that fits your needs, you can customize the user interface. Accessibility settings can be essential for people with disabilities, but can be useful to anyone. For example, customization of keyboard shortcuts is essential to people who navigate using voice control, but can be useful to anyone when a keyboard shortcut for {% data variables.product.github %} clashes with another application shortcut.
|
To create an experience on {% data variables.product.github %} that fits your needs, you can customize the user interface. Accessibility settings can be essential for people with disabilities, but can be useful to anyone. For example, customization of keyboard shortcuts is essential to people who navigate using voice control, but can be useful to anyone when a keyboard shortcut for {% data variables.product.github %} clashes with another application shortcut.
|
||||||
|
|
||||||
You can decide whether you want to use some or all keyboard shortcuts, and control the display of animated images{% ifversion link-underlines %} and how links are displayed{% endif %}.
|
You can decide whether you want to use some or all keyboard shortcuts, and control the display of animated images and how links are displayed.
|
||||||
|
|
||||||
{% ifversion link-underlines %}
|
|
||||||
|
|
||||||
## Managing the appearance of links
|
## Managing the appearance of links
|
||||||
|
|
||||||
@@ -32,8 +30,6 @@ You can control whether links in text blocks are underlined and therefore more d
|
|||||||
* To disable underlines on links in text blocks, under "Link underlines", select **Hide link underlines**.
|
* To disable underlines on links in text blocks, under "Link underlines", select **Hide link underlines**.
|
||||||
* To disable hovercards for previewing link content, deselect **Hovercards**.
|
* To disable hovercards for previewing link content, deselect **Hovercards**.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Managing keyboard shortcuts
|
## Managing keyboard shortcuts
|
||||||
|
|
||||||
You can perform actions across the {% data variables.product.github %} website by using your keyboard alone. Keyboard shortcuts can be useful to save time, but can be activated accidentally or interfere with assistive technology.
|
You can perform actions across the {% data variables.product.github %} website by using your keyboard alone. Keyboard shortcuts can be useful to save time, but can be activated accidentally or interfere with assistive technology.
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ Third-party systems can be observability systems, change management systems, cod
|
|||||||
|
|
||||||
Use required reviewers to require a specific person or team to approve workflow jobs that reference the environment. You can list up to six users or teams as reviewers. The reviewers must have at least read access to the repository. Only one of the required reviewers needs to approve the job for it to proceed.
|
Use required reviewers to require a specific person or team to approve workflow jobs that reference the environment. You can list up to six users or teams as reviewers. The reviewers must have at least read access to the repository. Only one of the required reviewers needs to approve the job for it to proceed.
|
||||||
|
|
||||||
{% ifversion deployments-prevent-self-approval %}You also have the option to prevent self-reviews for deployments to protected environments. If you enable this setting, users who initiate a deployment cannot approve the deployment job, even if they are a required reviewer. This ensures that deployments to protected environments are always reviewed by more than one person.{% endif %}
|
You also have the option to prevent self-reviews for deployments to protected environments. If you enable this setting, users who initiate a deployment cannot approve the deployment job, even if they are a required reviewer. This ensures that deployments to protected environments are always reviewed by more than one person.
|
||||||
|
|
||||||
For more information on reviewing jobs that reference an environment with required reviewers, see [AUTOTITLE](/actions/managing-workflow-runs/reviewing-deployments).
|
For more information on reviewing jobs that reference an environment with required reviewers, see [AUTOTITLE](/actions/managing-workflow-runs/reviewing-deployments).
|
||||||
|
|
||||||
@@ -82,12 +82,11 @@ Use deployment branches{% ifversion deployment-protections-tag-patterns %} and t
|
|||||||
{%- else %}
|
{%- else %}
|
||||||
* **All branches:** All branches in the repository can deploy to the environment.
|
* **All branches:** All branches in the repository can deploy to the environment.
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
* **Protected branches{% ifversion deployment-protections-tag-patterns %} only{% endif %}:** Only branches with branch protection rules enabled can deploy to the environment. If no branch protection rules are defined for any branch in the repository, then all branches can deploy. For more information about branch protection rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).{% ifversion actions-protected-branches-restrictions %}
|
* **Protected branches{% ifversion deployment-protections-tag-patterns %} only{% endif %}:** Only branches with branch protection rules enabled can deploy to the environment. If no branch protection rules are defined for any branch in the repository, then all branches can deploy. For more information about branch protection rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> Deployment workflow runs triggered by tags with the same name as a protected branch and forks with branches that match the protected branch name cannot deploy to the environment.
|
> Deployment workflow runs triggered by tags with the same name as a protected branch and forks with branches that match the protected branch name cannot deploy to the environment.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
* **Selected branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %}:** Only branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %} that match your specified name patterns can deploy to the environment.
|
* **Selected branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %}:** Only branches{% ifversion deployment-protections-tag-patterns %} and tags{% endif %} that match your specified name patterns can deploy to the environment.
|
||||||
|
|
||||||
If you specify `releases/*` as a deployment branch{% ifversion deployment-protections-tag-patterns %} or tag{% endif %} rule, only a branch{% ifversion deployment-protections-tag-patterns %} or tag{% endif %} whose name begins with `releases/` can deploy to the environment. (Wildcard characters will not match `/`. To match branches{% ifversion deployment-protections-tag-patterns %} or tags{% endif %} that begin with `release/` and contain an additional single slash, use `release/*/*`.) If you add `main` as a branch rule, a branch named `main` can also deploy to the environment. For more information about syntax options for deployment branches, see the [Ruby `File.fnmatch` documentation](https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch).
|
If you specify `releases/*` as a deployment branch{% ifversion deployment-protections-tag-patterns %} or tag{% endif %} rule, only a branch{% ifversion deployment-protections-tag-patterns %} or tag{% endif %} whose name begins with `releases/` can deploy to the environment. (Wildcard characters will not match `/`. To match branches{% ifversion deployment-protections-tag-patterns %} or tags{% endif %} that begin with `release/` and contain an additional single slash, use `release/*/*`.) If you add `main` as a branch rule, a branch named `main` can also deploy to the environment. For more information about syntax options for deployment branches, see the [Ruby `File.fnmatch` documentation](https://ruby-doc.org/core-2.5.1/File.html#method-c-fnmatch).
|
||||||
@@ -180,7 +179,7 @@ Variables stored in an environment are only available to workflow jobs that refe
|
|||||||
1. Optionally, specify people or teams that must approve workflow jobs that use this environment. For more information, see [Required reviewers](#required-reviewers).
|
1. Optionally, specify people or teams that must approve workflow jobs that use this environment. For more information, see [Required reviewers](#required-reviewers).
|
||||||
1. Select **Required reviewers**.
|
1. Select **Required reviewers**.
|
||||||
1. Enter up to 6 people or teams. Only one of the required reviewers needs to approve the job for it to proceed.
|
1. Enter up to 6 people or teams. Only one of the required reviewers needs to approve the job for it to proceed.
|
||||||
{% ifversion deployments-prevent-self-approval %}1. Optionally, to prevent users from approving workflows runs that they triggered, select **Prevent self-review**.{% endif %}
|
1. Optionally, to prevent users from approving workflows runs that they triggered, select **Prevent self-review**.
|
||||||
1. Click **Save protection rules**.
|
1. Click **Save protection rules**.
|
||||||
1. Optionally, specify the amount of time to wait before allowing workflow jobs that use this environment to proceed. For more information, see [Wait timer](#wait-timer).
|
1. Optionally, specify the amount of time to wait before allowing workflow jobs that use this environment to proceed. For more information, see [Wait timer](#wait-timer).
|
||||||
1. Select **Wait timer**.
|
1. Select **Wait timer**.
|
||||||
|
|||||||
@@ -27,13 +27,9 @@ For more information about environments and required approvals, see [AUTOTITLE](
|
|||||||
* To approve the job, click **Approve and deploy**. Once a job is approved (and any other deployment protection rules have passed), the job will proceed. At this point, the job can access any secrets stored in the environment.
|
* To approve the job, click **Approve and deploy**. Once a job is approved (and any other deployment protection rules have passed), the job will proceed. At this point, the job can access any secrets stored in the environment.
|
||||||
* To reject the job, click **Reject**. If a job is rejected, the workflow will fail.
|
* To reject the job, click **Reject**. If a job is rejected, the workflow will fail.
|
||||||
|
|
||||||
{% ifversion deployments-prevent-self-approval %}
|
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> If the targeted environment is configured to prevent self-approvals for deployments, you will not be able to approve a deployment from a workflow run you initiated. For more information, see [AUTOTITLE](/actions/deployment/targeting-different-environments/managing-environments-for-deployment#required-reviewers).
|
> If the targeted environment is configured to prevent self-approvals for deployments, you will not be able to approve a deployment from a workflow run you initiated. For more information, see [AUTOTITLE](/actions/deployment/targeting-different-environments/managing-environments-for-deployment#required-reviewers).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Bypassing deployment protection rules
|
## Bypassing deployment protection rules
|
||||||
|
|
||||||
If you have configured deployment protection rules that control whether software can be deployed to an environment, you can bypass these rules and force all pending jobs referencing the environment to proceed.
|
If you have configured deployment protection rules that control whether software can be deployed to an environment, you can bypass these rules and force all pending jobs referencing the environment to proceed.
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ redirect_from:
|
|||||||
- /actions/deployment/viewing-deployment-history
|
- /actions/deployment/viewing-deployment-history
|
||||||
- /actions/deployment/managing-your-deployments/viewing-deployment-history
|
- /actions/deployment/managing-your-deployments/viewing-deployment-history
|
||||||
---
|
---
|
||||||
{% ifversion actions-deployment-history-beta %}
|
|
||||||
|
|
||||||
## About deployment history
|
## About deployment history
|
||||||
|
|
||||||
@@ -49,17 +48,3 @@ By default, the deployments page shows currently active deployments from select
|
|||||||
1. Depending on the qualifier you chose, fill out information in the "Operator" and "Value" columns.
|
1. Depending on the qualifier you chose, fill out information in the "Operator" and "Value" columns.
|
||||||
1. Optionally, click **{% octicon "plus" aria-hidden="true" %} Add a filter** to add another filter.
|
1. Optionally, click **{% octicon "plus" aria-hidden="true" %} Add a filter** to add another filter.
|
||||||
1. Click **Apply**.{% endif %}
|
1. Click **Apply**.{% endif %}
|
||||||
|
|
||||||
{% else %}
|
|
||||||
|
|
||||||
{% data reusables.actions.about-deployment-with-github-actions %}
|
|
||||||
|
|
||||||
To view current and past deployments, click **Environments** in the sidebar of the home page of your repository.
|
|
||||||
|
|
||||||
The deployments page displays the last active deployment of each environment for your repository. If the deployment includes an environment URL, a **View deployment** button that links to the URL is shown next to the deployment.
|
|
||||||
|
|
||||||
The activity log shows the deployment history for your environments. By default, only the most recent deployment for an environment has an `Active` status; all previously active deployments have an `Inactive` status. For more information on automatic inactivation of deployments, see [AUTOTITLE](/rest/deployments#inactive-deployments).
|
|
||||||
|
|
||||||
You can also use the REST API to get information about deployments. For more information, see [AUTOTITLE](/rest/repos#deployments).
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ Once you complete this project, you should understand how to build your own Java
|
|||||||
|
|
||||||
Before you begin, you'll need to download Node.js and create a public {% data variables.product.prodname_dotcom %} repository.
|
Before you begin, you'll need to download Node.js and create a public {% data variables.product.prodname_dotcom %} repository.
|
||||||
|
|
||||||
1. Download and install Node.js {% ifversion actions-node20-support %}20.x{% else %}16.x{% endif %}, which includes npm.
|
1. Download and install Node.js 20.x, which includes npm.
|
||||||
|
|
||||||
https://nodejs.org/en/download/
|
https://nodejs.org/en/download/
|
||||||
1. Create a new public repository on {% data variables.product.github %} and call it "hello-world-javascript-action". For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-new-repository).
|
1. Create a new public repository on {% data variables.product.github %} and call it "hello-world-javascript-action". For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-new-repository).
|
||||||
@@ -71,7 +71,7 @@ outputs:
|
|||||||
time: # id of output
|
time: # id of output
|
||||||
description: 'The time we greeted you'
|
description: 'The time we greeted you'
|
||||||
runs:
|
runs:
|
||||||
using: {% ifversion actions-node20-support %}'node20'{% else %}'node16'{% endif %}
|
using: 'node20'
|
||||||
main: 'index.js'
|
main: 'index.js'
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -150,11 +150,11 @@ For more information on how to use context syntax, see [AUTOTITLE](/actions/lear
|
|||||||
|
|
||||||
**Required** Configures the path to the action's code and the runtime used to execute the code.
|
**Required** Configures the path to the action's code and the runtime used to execute the code.
|
||||||
|
|
||||||
### Example: Using Node.js {% ifversion actions-node20-support %}v20{% else %}v16{% endif %}
|
### Example: Using Node.js v20
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: {% ifversion actions-node20-support %}'node20'{% else %}'node16'{% endif %}
|
using: 'node20'
|
||||||
main: 'main.js'
|
main: 'main.js'
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@ runs:
|
|||||||
|
|
||||||
**Required** The runtime used to execute the code specified in [`main`](#runsmain).
|
**Required** The runtime used to execute the code specified in [`main`](#runsmain).
|
||||||
|
|
||||||
* Use {% ifversion actions-node20-support %}`node20` for Node.js v20{% else %}`node16` for Node.js v16{% endif %}.
|
* Use `node20` for Node.js v20.
|
||||||
|
|
||||||
### `runs.main`
|
### `runs.main`
|
||||||
|
|
||||||
@@ -176,7 +176,7 @@ In this example, the `pre:` action runs a script called `setup.js`:
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: {% ifversion actions-node20-support %}'node20'{% else %}'node16'{% endif %}
|
using: 'node20'
|
||||||
pre: 'setup.js'
|
pre: 'setup.js'
|
||||||
main: 'index.js'
|
main: 'index.js'
|
||||||
post: 'cleanup.js'
|
post: 'cleanup.js'
|
||||||
@@ -203,7 +203,7 @@ In this example, the `post:` action runs a script called `cleanup.js`:
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
runs:
|
runs:
|
||||||
using: {% ifversion actions-node20-support %}'node20'{% else %}'node16'{% endif %}
|
using: 'node20'
|
||||||
main: 'index.js'
|
main: 'index.js'
|
||||||
post: 'cleanup.js'
|
post: 'cleanup.js'
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -137,7 +137,7 @@ jobs:
|
|||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: {% data reusables.actions.action-setup-node %}
|
uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'18.x'{% endif %}
|
node-version: '20.x'
|
||||||
- run: npm ci
|
- run: npm ci
|
||||||
- run: npm run build --if-present
|
- run: npm run build --if-present
|
||||||
- run: npm test
|
- run: npm test
|
||||||
@@ -162,7 +162,7 @@ steps:
|
|||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: {% data reusables.actions.action-setup-node %}
|
uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'18.x'{% endif %}
|
node-version: '20.x'
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: npm ci
|
run: npm ci
|
||||||
```
|
```
|
||||||
@@ -175,7 +175,7 @@ steps:
|
|||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: {% data reusables.actions.action-setup-node %}
|
uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'18.x'{% endif %}
|
node-version: '20.x'
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: npm install
|
run: npm install
|
||||||
```
|
```
|
||||||
@@ -190,7 +190,7 @@ steps:
|
|||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: {% data reusables.actions.action-setup-node %}
|
uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'18.x'{% endif %}
|
node-version: '20.x'
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: yarn --frozen-lockfile
|
run: yarn --frozen-lockfile
|
||||||
```
|
```
|
||||||
@@ -203,7 +203,7 @@ steps:
|
|||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: {% data reusables.actions.action-setup-node %}
|
uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'18.x'{% endif %}
|
node-version: '20.x'
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: yarn
|
run: yarn
|
||||||
```
|
```
|
||||||
@@ -225,7 +225,7 @@ steps:
|
|||||||
uses: {% data reusables.actions.action-setup-node %}
|
uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
always-auth: true
|
always-auth: true
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'18.x'{% endif %}
|
node-version: '20.x'
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
scope: '@octocat'
|
scope: '@octocat'
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
@@ -253,7 +253,7 @@ steps:
|
|||||||
- uses: {% data reusables.actions.action-checkout %}
|
- uses: {% data reusables.actions.action-checkout %}
|
||||||
- uses: {% data reusables.actions.action-setup-node %}
|
- uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20'{% else %}'18'{% endif %}
|
node-version: '20'
|
||||||
cache: 'npm'
|
cache: 'npm'
|
||||||
- run: npm install
|
- run: npm install
|
||||||
- run: npm test
|
- run: npm test
|
||||||
@@ -266,7 +266,7 @@ steps:
|
|||||||
- uses: {% data reusables.actions.action-checkout %}
|
- uses: {% data reusables.actions.action-checkout %}
|
||||||
- uses: {% data reusables.actions.action-setup-node %}
|
- uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20'{% else %}'18'{% endif %}
|
node-version: '20'
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
- run: yarn
|
- run: yarn
|
||||||
- run: yarn test
|
- run: yarn test
|
||||||
@@ -286,7 +286,7 @@ steps:
|
|||||||
version: 6.10.0
|
version: 6.10.0
|
||||||
- uses: {% data reusables.actions.action-setup-node %}
|
- uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20'{% else %}'18'{% endif %}
|
node-version: '20'
|
||||||
cache: 'pnpm'
|
cache: 'pnpm'
|
||||||
- run: pnpm install
|
- run: pnpm install
|
||||||
- run: pnpm test
|
- run: pnpm test
|
||||||
@@ -304,7 +304,7 @@ steps:
|
|||||||
- name: Use Node.js
|
- name: Use Node.js
|
||||||
uses: {% data reusables.actions.action-setup-node %}
|
uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'18.x'{% endif %}
|
node-version: '20.x'
|
||||||
- run: npm install
|
- run: npm install
|
||||||
- run: npm run build --if-present
|
- run: npm run build --if-present
|
||||||
- run: npm test
|
- run: npm test
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ jobs:
|
|||||||
# Setup .npmrc file to publish to npm
|
# Setup .npmrc file to publish to npm
|
||||||
- uses: {% data reusables.actions.action-setup-node %}
|
- uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'16.x'{% endif %}
|
node-version: '20.x'
|
||||||
registry-url: 'https://registry.npmjs.org'
|
registry-url: 'https://registry.npmjs.org'
|
||||||
- run: npm ci
|
- run: npm ci
|
||||||
- run: npm publish {% ifversion artifact-attestations %}--provenance --access public{% endif %}
|
- run: npm publish {% ifversion artifact-attestations %}--provenance --access public{% endif %}
|
||||||
@@ -141,7 +141,7 @@ jobs:
|
|||||||
# Setup .npmrc file to publish to GitHub Packages
|
# Setup .npmrc file to publish to GitHub Packages
|
||||||
- uses: {% data reusables.actions.action-setup-node %}
|
- uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'16.x'{% endif %}
|
node-version: '20.x'
|
||||||
registry-url: 'https://npm.pkg.github.com'
|
registry-url: 'https://npm.pkg.github.com'
|
||||||
# Defaults to the user or organization that owns the workflow file
|
# Defaults to the user or organization that owns the workflow file
|
||||||
scope: '@octocat'
|
scope: '@octocat'
|
||||||
@@ -176,7 +176,7 @@ jobs:
|
|||||||
# Setup .npmrc file to publish to npm
|
# Setup .npmrc file to publish to npm
|
||||||
- uses: {% data reusables.actions.action-setup-node %}
|
- uses: {% data reusables.actions.action-setup-node %}
|
||||||
with:
|
with:
|
||||||
node-version: {% ifversion actions-node20-support %}'20.x'{% else %}'16.x'{% endif %}
|
node-version: '20.x'
|
||||||
registry-url: 'https://registry.npmjs.org'
|
registry-url: 'https://registry.npmjs.org'
|
||||||
# Defaults to the user or organization that owns the workflow file
|
# Defaults to the user or organization that owns the workflow file
|
||||||
scope: '@octocat'
|
scope: '@octocat'
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ shortTitle: Concurrency
|
|||||||
intro: Run a single job at a time.
|
intro: Run a single job at a time.
|
||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghes: '> 3.1'
|
ghes: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
redirect_from:
|
redirect_from:
|
||||||
- /actions/using-jobs/using-concurrency
|
- /actions/using-jobs/using-concurrency
|
||||||
|
|||||||
@@ -4,14 +4,12 @@ shortTitle: Permissions for `GITHUB_TOKEN`
|
|||||||
intro: Modify the default permissions granted to `GITHUB_TOKEN`.
|
intro: Modify the default permissions granted to `GITHUB_TOKEN`.
|
||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghes: '> 3.1'
|
ghes: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
redirect_from:
|
redirect_from:
|
||||||
- /actions/using-jobs/assigning-permissions-to-jobs
|
- /actions/using-jobs/assigning-permissions-to-jobs
|
||||||
- >-
|
- /actions/writing-workflows/choosing-what-your-workflow-does/assigning-permissions-to-jobs
|
||||||
/actions/writing-workflows/choosing-what-your-workflow-does/assigning-permissions-to-jobs
|
- /actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github-token
|
||||||
- >-
|
|
||||||
/actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github-token
|
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.actions.enterprise-github-hosted-runners %}
|
{% data reusables.actions.enterprise-github-hosted-runners %}
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ shortTitle: Environments
|
|||||||
intro: Specify a deployment environment in your workflow.
|
intro: Specify a deployment environment in your workflow.
|
||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghes: '> 3.0'
|
ghes: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
redirect_from:
|
redirect_from:
|
||||||
- /actions/using-jobs/using-environments-for-jobs
|
- /actions/using-jobs/using-environments-for-jobs
|
||||||
|
|||||||
@@ -649,13 +649,9 @@ You can make an environment variable available to any subsequent steps in a work
|
|||||||
|
|
||||||
{% data reusables.actions.environment-variables-are-fixed %} For more information about the default environment variables, see [AUTOTITLE](/actions/learn-github-actions/environment-variables#default-environment-variables).
|
{% data reusables.actions.environment-variables-are-fixed %} For more information about the default environment variables, see [AUTOTITLE](/actions/learn-github-actions/environment-variables#default-environment-variables).
|
||||||
|
|
||||||
{% ifversion github-env-node-options %}
|
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> Due to security restrictions, `GITHUB_ENV` cannot be used to set the `NODE_OPTIONS` environment variable.
|
> Due to security restrictions, `GITHUB_ENV` cannot be used to set the `NODE_OPTIONS` environment variable.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
### Example of writing an environment variable to `GITHUB_ENV`
|
### Example of writing an environment variable to `GITHUB_ENV`
|
||||||
|
|
||||||
{% bash %}
|
{% bash %}
|
||||||
|
|||||||
@@ -543,7 +543,6 @@ This utility returns webhook delivery logs for administrators to review and iden
|
|||||||
ghe-webhook-logs
|
ghe-webhook-logs
|
||||||
```
|
```
|
||||||
|
|
||||||
{% ifversion ghes > 3.10 %}
|
|
||||||
To show all hook deliveries filtered by a given event:
|
To show all hook deliveries filtered by a given event:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
@@ -554,7 +553,6 @@ To show all hook deliveries filtered by a given event and action:
|
|||||||
|
|
||||||
```shell
|
```shell
|
||||||
ghe-webhook-logs --event issues.opened
|
ghe-webhook-logs --event issues.opened
|
||||||
{% endif %}
|
|
||||||
To show all failed hook deliveries in the past day:
|
To show all failed hook deliveries in the past day:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
|
|||||||
@@ -2,12 +2,12 @@
|
|||||||
title: Configuring host keys for your instance
|
title: Configuring host keys for your instance
|
||||||
shortTitle: Configure host keys
|
shortTitle: Configure host keys
|
||||||
intro: 'You can increase the security of {% data variables.location.product_location %} by configuring the algorithms that your instance uses to generate and advertise host keys for incoming SSH connections.'
|
intro: 'You can increase the security of {% data variables.location.product_location %} by configuring the algorithms that your instance uses to generate and advertise host keys for incoming SSH connections.'
|
||||||
permissions: 'Site administrators'
|
permissions: Site administrators
|
||||||
redirect_from:
|
redirect_from:
|
||||||
- /admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance
|
- /admin/configuration/configuring-your-enterprise/configuring-host-keys-for-your-instance
|
||||||
- /admin/configuration/hardening-security-for-your-enterprise/configuring-host-keys-for-your-instance
|
- /admin/configuration/hardening-security-for-your-enterprise/configuring-host-keys-for-your-instance
|
||||||
versions:
|
versions:
|
||||||
ghes: '>= 3.6'
|
ghes: '*'
|
||||||
type: how_to
|
type: how_to
|
||||||
topics:
|
topics:
|
||||||
- Authentication
|
- Authentication
|
||||||
|
|||||||
@@ -2,12 +2,12 @@
|
|||||||
title: Configuring SSH connections to your instance
|
title: Configuring SSH connections to your instance
|
||||||
shortTitle: Configure SSH connections
|
shortTitle: Configure SSH connections
|
||||||
intro: 'You can increase the security of {% data variables.location.product_location %} by configuring the SSH algorithms that clients can use to establish a connection.'
|
intro: 'You can increase the security of {% data variables.location.product_location %} by configuring the SSH algorithms that clients can use to establish a connection.'
|
||||||
permissions: 'Site administrators'
|
permissions: Site administrators
|
||||||
redirect_from:
|
redirect_from:
|
||||||
- /admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance
|
- /admin/configuration/configuring-your-enterprise/configuring-ssh-connections-to-your-instance
|
||||||
- /admin/configuration/hardening-security-for-your-enterprise/configuring-ssh-connections-to-your-instance
|
- /admin/configuration/hardening-security-for-your-enterprise/configuring-ssh-connections-to-your-instance
|
||||||
versions:
|
versions:
|
||||||
ghes: '>= 3.6'
|
ghes: '*'
|
||||||
type: how_to
|
type: how_to
|
||||||
topics:
|
topics:
|
||||||
- Authentication
|
- Authentication
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ redirect_from:
|
|||||||
- /admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates
|
- /admin/github-actions/enabling-github-actions-for-github-enterprise-server/managing-self-hosted-runners-for-dependabot-updates
|
||||||
allowTitleToDifferFromFilename: true
|
allowTitleToDifferFromFilename: true
|
||||||
versions:
|
versions:
|
||||||
ghes: '> 3.2'
|
ghes: '*'
|
||||||
topics:
|
topics:
|
||||||
- Enterprise
|
- Enterprise
|
||||||
- Security
|
- Security
|
||||||
|
|||||||
@@ -2,9 +2,9 @@
|
|||||||
title: Enabling encrypted assertions
|
title: Enabling encrypted assertions
|
||||||
shortTitle: Enable encrypted assertions
|
shortTitle: Enable encrypted assertions
|
||||||
intro: 'You can improve {% data variables.location.product_location %}''s security with SAML single sign-on (SSO) by encrypting the messages that your SAML identity provider (IdP) sends.'
|
intro: 'You can improve {% data variables.location.product_location %}''s security with SAML single sign-on (SSO) by encrypting the messages that your SAML identity provider (IdP) sends.'
|
||||||
permissions: 'Site administrators'
|
permissions: Site administrators
|
||||||
versions:
|
versions:
|
||||||
ghes: '> 3.3'
|
ghes: '*'
|
||||||
type: how_to
|
type: how_to
|
||||||
topics:
|
topics:
|
||||||
- Accounts
|
- Accounts
|
||||||
|
|||||||
@@ -46,8 +46,6 @@ If you're interested in creating an app for {% data variables.product.prodname_m
|
|||||||
|
|
||||||
### {% data variables.product.prodname_copilot_extensions %}
|
### {% data variables.product.prodname_copilot_extensions %}
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.copilot-extensions-intro %}
|
{% data reusables.copilot.copilot-extensions.copilot-extensions-intro %}
|
||||||
|
|
||||||
To learn more about {% data variables.product.prodname_copilot_extensions_short %}, see [AUTOTITLE](/copilot/github-copilot-chat/github-copilot-extensions/using-github-copilot-extensions).
|
To learn more about {% data variables.product.prodname_copilot_extensions_short %}, see [AUTOTITLE](/copilot/github-copilot-chat/github-copilot-extensions/using-github-copilot-extensions).
|
||||||
|
|||||||
@@ -337,14 +337,10 @@ On Linux and macOS, the `autobuild` step reviews the files present in the reposi
|
|||||||
|
|
||||||
#### Runner requirements for C/C++
|
#### Runner requirements for C/C++
|
||||||
|
|
||||||
{% ifversion codeql-cpp-autoinstall-dependencies %}
|
|
||||||
On Ubuntu Linux runners, `autobuild` may try to automatically install dependencies required by the detected configuration and build steps. By default, this behavior is enabled on {% data variables.product.prodname_dotcom %}-hosted runners and disabled on self-hosted runners. You can enable or disable this feature explicitly by setting `CODEQL_EXTRACTOR_CPP_AUTOINSTALL_DEPENDENCIES` to `true` or `false` in the environment. For more information about defining environment variables, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-environment-variables-for-a-single-workflow).
|
On Ubuntu Linux runners, `autobuild` may try to automatically install dependencies required by the detected configuration and build steps. By default, this behavior is enabled on {% data variables.product.prodname_dotcom %}-hosted runners and disabled on self-hosted runners. You can enable or disable this feature explicitly by setting `CODEQL_EXTRACTOR_CPP_AUTOINSTALL_DEPENDENCIES` to `true` or `false` in the environment. For more information about defining environment variables, see [AUTOTITLE](/actions/learn-github-actions/variables#defining-environment-variables-for-a-single-workflow).
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
For self-hosted runners{% ifversion codeql-cpp-autoinstall-dependencies %}, unless automatic installation of dependencies is enabled{% endif %}, you will likely need to install the `gcc` compiler, and specific projects may also require access to `clang` or `msvc` executables. You will also need to install the build system (for example `msbuild`, `make`, `cmake`, `bazel`) and utilities (such as `python`, `perl`, `lex`, and `yacc`) that your projects depend on.
|
For self-hosted runners, unless automatic installation of dependencies is enabled, you will likely need to install the `gcc` compiler, and specific projects may also require access to `clang` or `msvc` executables. You will also need to install the build system (for example `msbuild`, `make`, `cmake`, `bazel`) and utilities (such as `python`, `perl`, `lex`, and `yacc`) that your projects depend on.
|
||||||
{%- ifversion codeql-cpp-autoinstall-dependencies %}
|
|
||||||
If you enable automatic installation of dependencies, you must ensure that the runner is using Ubuntu and that it can run `sudo apt-get` without requiring a password.
|
If you enable automatic installation of dependencies, you must ensure that the runner is using Ubuntu and that it can run `sudo apt-get` without requiring a password.
|
||||||
{%- endif %}
|
|
||||||
|
|
||||||
Windows runners require `powershell.exe` to be on the `PATH`.
|
Windows runners require `powershell.exe` to be on the `PATH`.
|
||||||
|
|
||||||
|
|||||||
@@ -249,8 +249,6 @@ The `category` value will appear as the `<run>.automationDetails.id` property in
|
|||||||
|
|
||||||
Your specified category will not overwrite the details of the `runAutomationDetails` object in the SARIF file, if included.
|
Your specified category will not overwrite the details of the `runAutomationDetails` object in the SARIF file, if included.
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
## Extending {% data variables.product.prodname_codeql %} coverage with {% data variables.product.prodname_codeql %} model packs
|
## Extending {% data variables.product.prodname_codeql %} coverage with {% data variables.product.prodname_codeql %} model packs
|
||||||
|
|
||||||
If your codebase depends on a library or framework that is not recognized by the standard queries in {% data variables.product.prodname_codeql %}, you can extend the {% data variables.product.prodname_codeql %} coverage in your {% data variables.product.prodname_code_scanning %} workflow by specifying published {% data variables.product.prodname_codeql %} model packs. For more information about creating your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-model-pack).
|
If your codebase depends on a library or framework that is not recognized by the standard queries in {% data variables.product.prodname_codeql %}, you can extend the {% data variables.product.prodname_codeql %} coverage in your {% data variables.product.prodname_code_scanning %} workflow by specifying published {% data variables.product.prodname_codeql %} model packs. For more information about creating your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-model-pack).
|
||||||
@@ -275,8 +273,6 @@ To add one or more published {% data variables.product.prodname_codeql %} model
|
|||||||
|
|
||||||
In this example, the default queries will be run for Java, as well as the queries from a version greater than or equal to `7.8.9` and less than `7.9.0` of the query pack `my-company/my-java-queries`. The dependencies modeled in the latest version of the model pack `my-repo/my-java-model-pack` will be available to both the default queries and those in `my-company/my-java-queries`.
|
In this example, the default queries will be run for Java, as well as the queries from a version greater than or equal to `7.8.9` and less than `7.9.0` of the query pack `my-company/my-java-queries`. The dependencies modeled in the latest version of the model pack `my-repo/my-java-model-pack` will be available to both the default queries and those in `my-company/my-java-queries`.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Running additional queries
|
## Running additional queries
|
||||||
|
|
||||||
{% data reusables.code-scanning.run-additional-queries %}
|
{% data reusables.code-scanning.run-additional-queries %}
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ With default setup for {% data variables.product.prodname_code_scanning %}, you
|
|||||||
You can enable {% data variables.product.prodname_code_scanning %} for all repositories in your organization that are eligible for default setup. After enabling default setup, the code written in {% data variables.product.prodname_codeql %}-supported languages in repositories in the organization will be scanned:
|
You can enable {% data variables.product.prodname_code_scanning %} for all repositories in your organization that are eligible for default setup. After enabling default setup, the code written in {% data variables.product.prodname_codeql %}-supported languages in repositories in the organization will be scanned:
|
||||||
|
|
||||||
* On each push to the repository's default branch, or any protected branch. For more information on protected branches, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
* On each push to the repository's default branch, or any protected branch. For more information on protected branches, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
||||||
* When creating or committing to a pull request based against the repository's default branch, or any protected branch, excluding pull requests from forks.{% ifversion default-setup-scan-on-schedule %}
|
* When creating or committing to a pull request based against the repository's default branch, or any protected branch, excluding pull requests from forks.
|
||||||
* On a weekly schedule.{% endif %}
|
* On a weekly schedule.
|
||||||
|
|
||||||
For more information, see [Configuring default setup for all eligible repositories in an organization](#configuring-default-setup-for-all-eligible-repositories-in-an-organization).
|
For more information, see [Configuring default setup for all eligible repositories in an organization](#configuring-default-setup-for-all-eligible-repositories-in-an-organization).
|
||||||
|
|
||||||
@@ -42,8 +42,6 @@ For repositories that are not eligible for default setup, you can configure adva
|
|||||||
|
|
||||||
### Eligible repositories for {% data variables.product.prodname_codeql %} default setup at scale
|
### Eligible repositories for {% data variables.product.prodname_codeql %} default setup at scale
|
||||||
|
|
||||||
{% data reusables.code-scanning.beta-org-enable-all %}
|
|
||||||
|
|
||||||
A repository must meet all the following criteria to be eligible for default setup, otherwise you need to use advanced setup.
|
A repository must meet all the following criteria to be eligible for default setup, otherwise you need to use advanced setup.
|
||||||
|
|
||||||
* {% ifversion fpt %}{% data variables.product.prodname_code_scanning_caps %}{% else %}Advanced setup for {% data variables.product.prodname_code_scanning %}{% endif %} is not already enabled.
|
* {% ifversion fpt %}{% data variables.product.prodname_code_scanning_caps %}{% else %}Advanced setup for {% data variables.product.prodname_code_scanning %}{% endif %} is not already enabled.
|
||||||
@@ -63,14 +61,10 @@ A repository must meet all the following criteria to be eligible for default set
|
|||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% ifversion code-scanning-default-setup-automatic-311 %}
|
|
||||||
|
|
||||||
### About adding languages to an existing default setup configuration
|
### About adding languages to an existing default setup configuration
|
||||||
|
|
||||||
If the code in a repository changes to include {% ifversion code-scanning-default-setup-recommended-languages %}Go, JavaScript/TypeScript, Python, or Ruby,{% else %}a {% data variables.product.prodname_codeql %}-supported language,{% endif %} {% data variables.product.prodname_dotcom %} will automatically update the {% data variables.product.prodname_code_scanning %} configuration to include the new language. If {% data variables.product.prodname_code_scanning %} fails with the new configuration, {% data variables.product.prodname_dotcom %} will resume the previous configuration automatically so the repository does not lose {% data variables.product.prodname_code_scanning %} coverage.
|
If the code in a repository changes to include {% ifversion code-scanning-default-setup-recommended-languages %}Go, JavaScript/TypeScript, Python, or Ruby,{% else %}a {% data variables.product.prodname_codeql %}-supported language,{% endif %} {% data variables.product.prodname_dotcom %} will automatically update the {% data variables.product.prodname_code_scanning %} configuration to include the new language. If {% data variables.product.prodname_code_scanning %} fails with the new configuration, {% data variables.product.prodname_dotcom %} will resume the previous configuration automatically so the repository does not lose {% data variables.product.prodname_code_scanning %} coverage.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% ifversion org-private-registry %}
|
{% ifversion org-private-registry %}
|
||||||
|
|
||||||
### Providing default setup access to private registries
|
### Providing default setup access to private registries
|
||||||
@@ -85,8 +79,6 @@ When a repository uses code stored in a private registry, default setup needs ac
|
|||||||
{% else %}
|
{% else %}
|
||||||
Through the "Code security and analysis" page of your organization's settings, you can enable default setup for all eligible repositories in your organization. For more information on repository eligibility, see [Eligible repositories for {% data variables.product.prodname_codeql %} default setup at scale](#eligible-repositories-default-setup).
|
Through the "Code security and analysis" page of your organization's settings, you can enable default setup for all eligible repositories in your organization. For more information on repository eligibility, see [Eligible repositories for {% data variables.product.prodname_codeql %} default setup at scale](#eligible-repositories-default-setup).
|
||||||
|
|
||||||
{% data reusables.code-scanning.beta-org-enable-all %}
|
|
||||||
|
|
||||||
{% data reusables.profile.access_org %}
|
{% data reusables.profile.access_org %}
|
||||||
{% data reusables.profile.org_settings %}
|
{% data reusables.profile.org_settings %}
|
||||||
{% data reusables.organizations.security-and-analysis %}
|
{% data reusables.organizations.security-and-analysis %}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ With {% data variables.product.prodname_codeql %} {% data variables.product.prod
|
|||||||
* `default` query suite.
|
* `default` query suite.
|
||||||
* `security-extended` query suite. This suite is referred to as the "Extended" query suite on {% data variables.product.prodname_dotcom %}.
|
* `security-extended` query suite. This suite is referred to as the "Extended" query suite on {% data variables.product.prodname_dotcom %}.
|
||||||
|
|
||||||
Currently, both the `default` query suite and the `security-extended` query suite are available for default setup for {% data variables.product.prodname_code_scanning %}. {% ifversion bulk-code-scanning-query-suite %}Additionally, organization owners and security managers can recommend a query suite for use with default setup throughout their organization. For more information on configuring default setup for individual repositories, see [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning). For more information on configuring default setup at scale and recommending a query suite, see [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning-at-scale).{% else %}For more information on default setup, see [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning) and [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning-at-scale).{% endif %}
|
Currently, both the `default` query suite and the `security-extended` query suite are available for default setup for {% data variables.product.prodname_code_scanning %}. Additionally, organization owners and security managers can recommend a query suite for use with default setup throughout their organization. For more information on configuring default setup for individual repositories, see [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning). For more information on configuring default setup at scale and recommending a query suite, see [AUTOTITLE](/code-security/code-scanning/enabling-code-scanning/configuring-default-setup-for-code-scanning-at-scale).
|
||||||
|
|
||||||
To use a custom query suite, you must configure advanced setup for {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %}. For more information on advanced setups and creating a query suite, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-advanced-setup-for-code-scanning-with-codeql) and [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-codeql-query-suites).
|
To use a custom query suite, you must configure advanced setup for {% data variables.product.prodname_codeql %} {% data variables.product.prodname_code_scanning %}. For more information on advanced setups and creating a query suite, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning#configuring-advanced-setup-for-code-scanning-with-codeql) and [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-codeql-query-suites).
|
||||||
|
|
||||||
|
|||||||
@@ -21,12 +21,8 @@ After running an initial analysis of your code with default setup, you may need
|
|||||||
* The threat models ({% data variables.release-phases.public_preview %}) to use for analysis. Your choice of threat model determines which sources of tainted data are treated as a risk to your application. During the {% data variables.release-phases.public_preview %}, threat models are supported only for analysis of {% data variables.code-scanning.code_scanning_threat_model_support %}. For more information about threat models, see [Including local sources of tainted data in default setup](#including-local-sources-of-tainted-data-in-default-setup).
|
* The threat models ({% data variables.release-phases.public_preview %}) to use for analysis. Your choice of threat model determines which sources of tainted data are treated as a risk to your application. During the {% data variables.release-phases.public_preview %}, threat models are supported only for analysis of {% data variables.code-scanning.code_scanning_threat_model_support %}. For more information about threat models, see [Including local sources of tainted data in default setup](#including-local-sources-of-tainted-data-in-default-setup).
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
If your codebase depends on a library or framework that is not recognized by the standard libraries included with {% data variables.product.prodname_codeql %}, you can also extend the {% data variables.product.prodname_codeql %} coverage in default setup using {% data variables.product.prodname_codeql %} model packs. For more information, see [Extending CodeQL coverage with CodeQL model packs in default setup](#extending-codeql-coverage-with-codeql-model-packs-in-default-setup).
|
If your codebase depends on a library or framework that is not recognized by the standard libraries included with {% data variables.product.prodname_codeql %}, you can also extend the {% data variables.product.prodname_codeql %} coverage in default setup using {% data variables.product.prodname_codeql %} model packs. For more information, see [Extending CodeQL coverage with CodeQL model packs in default setup](#extending-codeql-coverage-with-codeql-model-packs-in-default-setup).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
If you need to change any other aspects of your {% data variables.product.prodname_code_scanning %} configuration, consider configuring advanced setup. For more information, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning).
|
If you need to change any other aspects of your {% data variables.product.prodname_code_scanning %} configuration, consider configuring advanced setup. For more information, see [AUTOTITLE](/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/configuring-advanced-setup-for-code-scanning).
|
||||||
|
|
||||||
## Customizing your existing configuration of default setup
|
## Customizing your existing configuration of default setup
|
||||||
@@ -83,8 +79,6 @@ You can edit the threat model used in a default setup configuration. For more in
|
|||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
## Extending {% data variables.product.prodname_codeql %} coverage with {% data variables.product.prodname_codeql %} model packs in default setup
|
## Extending {% data variables.product.prodname_codeql %} coverage with {% data variables.product.prodname_codeql %} model packs in default setup
|
||||||
|
|
||||||
{% data reusables.code-scanning.beta-model-packs %}
|
{% data reusables.code-scanning.beta-model-packs %}
|
||||||
@@ -124,4 +118,3 @@ For more information about {% data variables.product.prodname_codeql %} model pa
|
|||||||
1. The model packs will be automatically detected and used when {% data variables.product.prodname_code_scanning %} runs on any repository in the organization with default setup enabled.
|
1. The model packs will be automatically detected and used when {% data variables.product.prodname_code_scanning %} runs on any repository in the organization with default setup enabled.
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
|
||||||
|
|||||||
@@ -22,16 +22,14 @@ redirect_from:
|
|||||||
|
|
||||||
{% data variables.product.prodname_codeql %} packs are used to create, share, depend on, and run {% data variables.product.prodname_codeql %} queries and libraries. {% data variables.product.prodname_codeql %} packs contain queries, library files, query suites, and metadata. You can customize your {% data variables.product.prodname_codeql %} analysis by downloading packs created by others and running them on your codebase.
|
{% data variables.product.prodname_codeql %} packs are used to create, share, depend on, and run {% data variables.product.prodname_codeql %} queries and libraries. {% data variables.product.prodname_codeql %} packs contain queries, library files, query suites, and metadata. You can customize your {% data variables.product.prodname_codeql %} analysis by downloading packs created by others and running them on your codebase.
|
||||||
|
|
||||||
There are{% ifversion codeql-model-packs %} three{% else %} two{% endif %} types of {% data variables.product.prodname_codeql %} packs: {% ifversion codeql-model-packs %}query packs, library packs, and model packs{% else %} query packs and library packs{% endif %}.
|
There are three types of {% data variables.product.prodname_codeql %} packs: query packs, library packs, and model packs.
|
||||||
|
|
||||||
* Query packs contain a set of pre-compiled queries that can be evaluated on a {% data variables.product.prodname_codeql %} database. Query packs are designed to be run. When a query pack is published, the bundle includes all the transitive dependencies and pre-compiled representations of each query, in addition to the query sources. This ensures consistent and efficient execution of the queries in the pack.
|
* Query packs contain a set of pre-compiled queries that can be evaluated on a {% data variables.product.prodname_codeql %} database. Query packs are designed to be run. When a query pack is published, the bundle includes all the transitive dependencies and pre-compiled representations of each query, in addition to the query sources. This ensures consistent and efficient execution of the queries in the pack.
|
||||||
|
|
||||||
* Library packs are designed to be used by query packs (or other library packs) and do not contain queries themselves. The libraries are not compiled separately.{% ifversion codeql-model-packs %}
|
* Library packs are designed to be used by query packs (or other library packs) and do not contain queries themselves. The libraries are not compiled separately.
|
||||||
|
|
||||||
* Model packs can be used to expand {% data variables.product.prodname_code_scanning %} analysis to recognize libraries and frameworks that are not supported by default. Model packs are currently in {% data variables.release-phases.public_preview %} and subject to change. During the {% data variables.release-phases.public_preview %}, model packs are available for {% data variables.code-scanning.codeql_model_packs_support %} analysis. For more information about creating your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-codeql-model-pack).
|
* Model packs can be used to expand {% data variables.product.prodname_code_scanning %} analysis to recognize libraries and frameworks that are not supported by default. Model packs are currently in {% data variables.release-phases.public_preview %} and subject to change. During the {% data variables.release-phases.public_preview %}, model packs are available for {% data variables.code-scanning.codeql_model_packs_support %} analysis. For more information about creating your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-codeql-model-pack).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
The standard {% data variables.product.prodname_codeql %} packs for all supported languages are published in the [{% data variables.product.prodname_container_registry %}](https://github.com/orgs/codeql/packages). If you installed the {% data variables.product.prodname_codeql_cli %} in the standard way, using the {% data variables.product.prodname_codeql_cli %} bundle, the core query packs are already downloaded and available to you. They are:
|
The standard {% data variables.product.prodname_codeql %} packs for all supported languages are published in the [{% data variables.product.prodname_container_registry %}](https://github.com/orgs/codeql/packages). If you installed the {% data variables.product.prodname_codeql_cli %} in the standard way, using the {% data variables.product.prodname_codeql_cli %} bundle, the core query packs are already downloaded and available to you. They are:
|
||||||
|
|
||||||
* `codeql/cpp-queries`
|
* `codeql/cpp-queries`
|
||||||
@@ -49,7 +47,7 @@ You can publish {% data variables.product.prodname_codeql %} packs that you have
|
|||||||
|
|
||||||
## Downloading and using {% data variables.product.prodname_codeql %} query packs
|
## Downloading and using {% data variables.product.prodname_codeql %} query packs
|
||||||
|
|
||||||
The {% data variables.product.prodname_codeql_cli %} bundle includes queries that are maintained by {% data variables.product.company_short %} experts, security researchers, and community contributors. If you want to run queries developed by other organizations, {% data variables.product.prodname_codeql %} query packs provide an efficient and reliable way to download and run queries{% ifversion codeql-model-packs %}, while model packs ({% data variables.release-phases.public_preview %}) can be used to expand {% data variables.product.prodname_code_scanning %} analysis to recognize libraries and frameworks that are not supported by default{% endif %}. For more information about query packs, see [AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql#about-codeql-queries). {% ifversion codeql-model-packs %} For information about writing your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-model-pack).{% endif %}
|
The {% data variables.product.prodname_codeql_cli %} bundle includes queries that are maintained by {% data variables.product.company_short %} experts, security researchers, and community contributors. If you want to run queries developed by other organizations, {% data variables.product.prodname_codeql %} query packs provide an efficient and reliable way to download and run queries, while model packs ({% data variables.release-phases.public_preview %}) can be used to expand {% data variables.product.prodname_code_scanning %} analysis to recognize libraries and frameworks that are not supported by default. For more information about query packs, see [AUTOTITLE](/code-security/code-scanning/introduction-to-code-scanning/about-code-scanning-with-codeql#about-codeql-queries). For information about writing your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-model-pack).
|
||||||
|
|
||||||
Before you can use a {% data variables.product.prodname_codeql %} query pack to analyze a database, you must download any packages you require from the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %}. This can be done either by using the `--download` flag as part of the `codeql database analyze` command, or running `codeql pack download`. If a package is not publicly available, you will need to use a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} to authenticate. For more information and an example, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github#uploading-results-to-github).
|
Before you can use a {% data variables.product.prodname_codeql %} query pack to analyze a database, you must download any packages you require from the {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %}. This can be done either by using the `--download` flag as part of the `codeql database analyze` command, or running `codeql pack download`. If a package is not publicly available, you will need to use a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_generic %} to authenticate. For more information and an example, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/uploading-codeql-analysis-results-to-github#uploading-results-to-github).
|
||||||
|
|
||||||
@@ -154,8 +152,6 @@ pack.
|
|||||||
>
|
>
|
||||||
> You can see the sources for these query suites in the [{% data variables.product.prodname_codeql %} repository](https://github.com/github/codeql/tree/main/cpp/ql/src/codeql-suites). Query suites for other languages are similar.
|
> You can see the sources for these query suites in the [{% data variables.product.prodname_codeql %} repository](https://github.com/github/codeql/tree/main/cpp/ql/src/codeql-suites). Query suites for other languages are similar.
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
## Using model packs to analyze calls to custom dependencies
|
## Using model packs to analyze calls to custom dependencies
|
||||||
|
|
||||||
You can include published model packs in a {% data variables.product.prodname_code_scanning %} analysis with the `--model-packs` option. For example:
|
You can include published model packs in a {% data variables.product.prodname_code_scanning %} analysis with the `--model-packs` option. For example:
|
||||||
@@ -172,8 +168,6 @@ You can specify multiple published model packs in an analysis.
|
|||||||
|
|
||||||
For more information about writing your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-model-pack).
|
For more information about writing your own model packs, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-and-working-with-codeql-packs#creating-a-model-pack).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
### About published packs
|
### About published packs
|
||||||
|
|
||||||
When a pack is published for use in analyses, the `codeql pack create` or `codeql pack publish` command verifies that the content is complete and also adds some additional pieces of content to it:
|
When a pack is published for use in analyses, the `codeql pack create` or `codeql pack publish` command verifies that the content is complete and also adds some additional pieces of content to it:
|
||||||
|
|||||||
@@ -21,13 +21,13 @@ redirect_from:
|
|||||||
|
|
||||||
{% data variables.product.prodname_codeql %} packs are used to create, share, depend on, and run {% data variables.product.prodname_codeql %} queries and libraries. {% data variables.product.prodname_codeql %} packs contain queries, library files, query suites, and metadata. With {% data variables.product.prodname_codeql %} packs and the package management commands in the {% data variables.product.prodname_codeql_cli %}, you can publish your custom queries and integrate them into your codebase analysis.
|
{% data variables.product.prodname_codeql %} packs are used to create, share, depend on, and run {% data variables.product.prodname_codeql %} queries and libraries. {% data variables.product.prodname_codeql %} packs contain queries, library files, query suites, and metadata. With {% data variables.product.prodname_codeql %} packs and the package management commands in the {% data variables.product.prodname_codeql_cli %}, you can publish your custom queries and integrate them into your codebase analysis.
|
||||||
|
|
||||||
There are{% ifversion codeql-model-packs %} three{% else %} two{% endif %} types of {% data variables.product.prodname_codeql %} packs: {% ifversion codeql-model-packs %}query packs, library packs, and model packs{% else %} query packs and library packs{% endif %}.
|
There are three types of {% data variables.product.prodname_codeql %} packs: query packs, library packs, and model packs.
|
||||||
|
|
||||||
* Query packs are designed to be run. When a query pack is published, the bundle includes all the transitive dependencies and pre-compiled representations of each query, in addition to the query sources. This ensures consistent and efficient execution of the queries in the pack.
|
* Query packs are designed to be run. When a query pack is published, the bundle includes all the transitive dependencies and pre-compiled representations of each query, in addition to the query sources. This ensures consistent and efficient execution of the queries in the pack.
|
||||||
|
|
||||||
* Library packs are designed to be used by query packs (or other library packs) and do not contain queries themselves. The libraries are not compiled separately.{% ifversion codeql-model-packs %}
|
* Library packs are designed to be used by query packs (or other library packs) and do not contain queries themselves. The libraries are not compiled separately.
|
||||||
|
|
||||||
* Model packs can be used to expand {% data variables.product.prodname_code_scanning %} analysis to include dependencies that are not supported by default. Model packs are currently in {% data variables.release-phases.public_preview %} and subject to change. During the {% data variables.release-phases.public_preview %}, model packs are available for {% data variables.code-scanning.codeql_model_packs_support %} analysis. For more information about creating your own model packs, see [Creating a {% data variables.product.prodname_codeql %} model pack](#creating-a-codeql-model-pack).{% endif %}
|
* Model packs can be used to expand {% data variables.product.prodname_code_scanning %} analysis to include dependencies that are not supported by default. Model packs are currently in {% data variables.release-phases.public_preview %} and subject to change. During the {% data variables.release-phases.public_preview %}, model packs are available for {% data variables.code-scanning.codeql_model_packs_support %} analysis. For more information about creating your own model packs, see [Creating a {% data variables.product.prodname_codeql %} model pack](#creating-a-codeql-model-pack).
|
||||||
|
|
||||||
You can use the `pack` command in the {% data variables.product.prodname_codeql_cli %} to create {% data variables.product.prodname_codeql %} packs, add dependencies to packs, and install or update dependencies. You can also publish and download {% data variables.product.prodname_codeql %} packs using the `pack` command. For more information, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs).
|
You can use the `pack` command in the {% data variables.product.prodname_codeql_cli %} to create {% data variables.product.prodname_codeql %} packs, add dependencies to packs, and install or update dependencies. You can also publish and download {% data variables.product.prodname_codeql %} packs using the `pack` command. For more information, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs).
|
||||||
|
|
||||||
@@ -70,8 +70,6 @@ You must specify:
|
|||||||
|
|
||||||
The `codeql pack init` command creates the directory structure and configuration files for a {% data variables.product.prodname_codeql %} pack. By default, the command creates a query pack. If you want to create a library pack, you must edit the `qlpack.yml` file to explicitly declare the file as a library pack by including the `library:true` property.
|
The `codeql pack init` command creates the directory structure and configuration files for a {% data variables.product.prodname_codeql %} pack. By default, the command creates a query pack. If you want to create a library pack, you must edit the `qlpack.yml` file to explicitly declare the file as a library pack by including the `library:true` property.
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
## Creating a {% data variables.product.prodname_codeql %} model pack
|
## Creating a {% data variables.product.prodname_codeql %} model pack
|
||||||
|
|
||||||
{% data reusables.code-scanning.beta-model-packs %}
|
{% data reusables.code-scanning.beta-model-packs %}
|
||||||
@@ -101,8 +99,6 @@ In this example, the model pack will inject all the data extensions in `models/*
|
|||||||
|
|
||||||
Once you've created a model pack, you can publish it in the same way as other {% data variables.product.prodname_codeql %} packs. For more information, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs). You can then use published model packs in a {% data variables.product.prodname_code_scanning %} analysis with the `--model-packs` option. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/customizing-analysis-with-codeql-packs#using-model-packs-to-analyze-calls-to-custom-dependencies).
|
Once you've created a model pack, you can publish it in the same way as other {% data variables.product.prodname_codeql %} packs. For more information, see [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/publishing-and-using-codeql-packs). You can then use published model packs in a {% data variables.product.prodname_code_scanning %} analysis with the `--model-packs` option. For more information, see [AUTOTITLE](/code-security/codeql-cli/getting-started-with-the-codeql-cli/customizing-analysis-with-codeql-packs#using-model-packs-to-analyze-calls-to-custom-dependencies).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Adding and installing dependencies on a {% data variables.product.prodname_codeql %} pack
|
## Adding and installing dependencies on a {% data variables.product.prodname_codeql %} pack
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
|
|||||||
@@ -227,17 +227,14 @@ The following properties are supported in `qlpack.yml` files.
|
|||||||
version: 0.0.0
|
version: 0.0.0
|
||||||
```
|
```
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
#### `dataExtensions`
|
#### `dataExtensions`
|
||||||
|
|
||||||
* Required by model packs.
|
* Required by model packs.
|
||||||
* Takes a list of glob patterns that specify where data extension files are located relative to the root of the query pack or library pack.
|
* Takes a list of glob patterns that specify where data extension files are located relative to the root of the query pack or library pack.
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
#### `dependencies`
|
#### `dependencies`
|
||||||
|
|
||||||
* Required by query and library packs that define {% data variables.product.prodname_codeql %} package dependencies on other packs. {% ifversion codeql-model-packs %}Model packs cannot define any dependencies and use `extensionTargets` instead.{% endif %}
|
* Required by query and library packs that define {% data variables.product.prodname_codeql %} package dependencies on other packs. Model packs cannot define any dependencies and use `extensionTargets` instead.
|
||||||
* Defines a map from pack references to the semantic version range that is compatible with this pack. Supported for {% data variables.product.prodname_codeql_cli %} versions v2.6.0 and later. For example:
|
* Defines a map from pack references to the semantic version range that is compatible with this pack. Supported for {% data variables.product.prodname_codeql_cli %} versions v2.6.0 and later. For example:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -270,13 +267,10 @@ The following properties are supported in `qlpack.yml` files.
|
|||||||
precision: medium
|
precision: medium
|
||||||
```
|
```
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
#### `extensionTargets`
|
#### `extensionTargets`
|
||||||
|
|
||||||
* Required by model packs.
|
* Required by model packs.
|
||||||
* Declares which query packs the extensions in the model pack apply to. The extension pack will inject its data extensions into each pack that is named in the `extensionTargets` dictionary, if the pack falls within the specified version range and it is used in the evaluation.
|
* Declares which query packs the extensions in the model pack apply to. The extension pack will inject its data extensions into each pack that is named in the `extensionTargets` dictionary, if the pack falls within the specified version range and it is used in the evaluation.
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
#### `groups`
|
#### `groups`
|
||||||
|
|
||||||
|
|||||||
@@ -59,12 +59,8 @@ To learn how to work with {% data variables.product.prodname_codeql %} databases
|
|||||||
|
|
||||||
If you have already found, downloaded, or created a {% data variables.product.prodname_codeql %} database, you can learn how to use the extension to run queries on {% data variables.product.prodname_codeql %} databases and view the results. For more information, see [AUTOTITLE](/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries).
|
If you have already found, downloaded, or created a {% data variables.product.prodname_codeql %} database, you can learn how to use the extension to run queries on {% data variables.product.prodname_codeql %} databases and view the results. For more information, see [AUTOTITLE](/code-security/codeql-for-vs-code/getting-started-with-codeql-for-vs-code/running-codeql-queries).
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
To learn how to model additional dependencies of a codebase and improve your {% data variables.product.prodname_code_scanning %} results, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor).
|
To learn how to model additional dependencies of a codebase and improve your {% data variables.product.prodname_code_scanning %} results, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
To learn how to configure access to a different version of the {% data variables.product.prodname_codeql_cli %} than the one installed with the extension, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/configuring-access-to-the-codeql-cli).
|
To learn how to configure access to a different version of the {% data variables.product.prodname_codeql_cli %} than the one installed with the extension, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/configuring-access-to-the-codeql-cli).
|
||||||
|
|
||||||
To learn how to set up a {% data variables.product.prodname_codeql %} workspace, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/setting-up-a-codeql-workspace).
|
To learn how to set up a {% data variables.product.prodname_codeql %} workspace, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/setting-up-a-codeql-workspace).
|
||||||
|
|||||||
@@ -56,12 +56,8 @@ For more information about creating and editing {% data variables.product.prodna
|
|||||||
|
|
||||||
* Otherwise, you will see the definition stored in your package cache, where downloaded dependencies are saved. The package cache is a shared location that is stored in your home directory by default.
|
* Otherwise, you will see the definition stored in your package cache, where downloaded dependencies are saved. The package cache is a shared location that is stored in your home directory by default.
|
||||||
|
|
||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
## Working with {% data variables.product.prodname_codeql %} model packs
|
## Working with {% data variables.product.prodname_codeql %} model packs
|
||||||
|
|
||||||
{% data reusables.code-scanning.beta-model-packs %}
|
{% data reusables.code-scanning.beta-model-packs %}
|
||||||
|
|
||||||
{% data variables.product.prodname_codeql %} model packs can be used to expand {% data variables.product.prodname_code_scanning %} analysis to include dependencies that are not supported by default. The {% data variables.product.prodname_codeql %} extension for {% data variables.product.prodname_vscode %} includes a dedicated editor for creating and editing model packs. For information on using the model editor, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor).
|
{% data variables.product.prodname_codeql %} model packs can be used to expand {% data variables.product.prodname_code_scanning %} analysis to include dependencies that are not supported by default. The {% data variables.product.prodname_codeql %} extension for {% data variables.product.prodname_vscode %} includes a dedicated editor for creating and editing model packs. For information on using the model editor, see [AUTOTITLE](/code-security/codeql-for-vs-code/using-the-advanced-functionality-of-the-codeql-for-vs-code-extension/using-the-codeql-model-editor).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ For information about access requirements for actions related to {% data variabl
|
|||||||
|
|
||||||
When {% data variables.product.github %} identifies a vulnerable dependency, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the **Security** tab for the repository and in the repository's dependency graph. The alert includes a link to the affected file in the project, and information about a fixed version.
|
When {% data variables.product.github %} identifies a vulnerable dependency, we generate a {% data variables.product.prodname_dependabot %} alert and display it on the **Security** tab for the repository and in the repository's dependency graph. The alert includes a link to the affected file in the project, and information about a fixed version.
|
||||||
|
|
||||||
{% data variables.product.github %} may also notify the maintainers of affected repositories about new alerts according to their notification preferences.{% ifversion dependabot-suppressed-notifications %} When {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.github %} does not send notifications for all vulnerable dependencies found in your repository, only for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled.{% endif %} For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts).
|
{% data variables.product.github %} may also notify the maintainers of affected repositories about new alerts according to their notification preferences. When {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.github %} does not send notifications for all vulnerable dependencies found in your repository, only for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled. For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-alerts/configuring-notifications-for-dependabot-alerts).
|
||||||
|
|
||||||
{% data reusables.dependabot.dependabot-alert-create-PR %}
|
{% data reusables.dependabot.dependabot-alert-create-PR %}
|
||||||
|
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ When {% data variables.product.prodname_dependabot %} detects vulnerable depende
|
|||||||
|
|
||||||
{% data reusables.dependabot.no-dependabot-alerts-for-malware %}
|
{% data reusables.dependabot.no-dependabot-alerts-for-malware %}
|
||||||
|
|
||||||
{% ifversion dependabot-suppressed-notifications %}Regardless of your notification preferences, when {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.github %} does not send notifications for all vulnerable dependencies found in your repository. Instead, you will receive notifications for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled, if your notification preferences allow it.{% endif %}
|
Regardless of your notification preferences, when {% data variables.product.prodname_dependabot %} is first enabled, {% data variables.product.github %} does not send notifications for all vulnerable dependencies found in your repository. Instead, you will receive notifications for new vulnerable dependencies identified after {% data variables.product.prodname_dependabot %} is enabled, if your notification preferences allow it.
|
||||||
|
|
||||||
{% ifversion fpt or ghec %}If you're an organization owner, you can enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories in your organization with one click. You can also set whether {% data variables.product.prodname_dependabot_alerts %} will be enabled or disabled for newly-created repositories. For more information, see [AUTOTITLE](/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-new-repositories-when-they-are-added).
|
{% ifversion fpt or ghec %}If you're an organization owner, you can enable or disable {% data variables.product.prodname_dependabot_alerts %} for all repositories in your organization with one click. You can also set whether {% data variables.product.prodname_dependabot_alerts %} will be enabled or disabled for newly-created repositories. For more information, see [AUTOTITLE](/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-new-repositories-when-they-are-added).
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
ghes: '> 3.2'
|
ghes: '*'
|
||||||
type: overview
|
type: overview
|
||||||
topics:
|
topics:
|
||||||
- Dependabot
|
- Dependabot
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
ghes: '> 3.2'
|
ghes: '*'
|
||||||
type: overview
|
type: overview
|
||||||
topics:
|
topics:
|
||||||
- Dependabot
|
- Dependabot
|
||||||
@@ -52,7 +52,7 @@ If you enable _security updates_, {% data variables.product.prodname_dependabot
|
|||||||
|
|
||||||
You specify how often to check each ecosystem for new versions in the configuration file: daily, weekly, or monthly.
|
You specify how often to check each ecosystem for new versions in the configuration file: daily, weekly, or monthly.
|
||||||
|
|
||||||
{% data reusables.dependabot.initial-updates %} {% ifversion dependabot-version-updates-groups %}For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).{% endif %}
|
{% data reusables.dependabot.initial-updates %} For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).
|
||||||
|
|
||||||
If you've enabled security updates, you'll sometimes see extra pull requests for security updates. These are triggered by a {% data variables.product.prodname_dependabot %} alert for a dependency on your default branch. {% data variables.product.prodname_dependabot %} automatically raises a pull request to update the vulnerable dependency.
|
If you've enabled security updates, you'll sometimes see extra pull requests for security updates. These are triggered by a {% data variables.product.prodname_dependabot %} alert for a dependency on your default branch. {% data variables.product.prodname_dependabot %} automatically raises a pull request to update the vulnerable dependency.
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
ghes: '> 3.2'
|
ghes: '*'
|
||||||
type: how_to
|
type: how_to
|
||||||
topics:
|
topics:
|
||||||
- Dependabot
|
- Dependabot
|
||||||
@@ -27,7 +27,7 @@ shortTitle: Configure version updates
|
|||||||
|
|
||||||
You enable {% data variables.product.prodname_dependabot_version_updates %} by checking a `dependabot.yml` configuration file in to your repository's `.github` directory. {% data variables.product.prodname_dependabot %} then raises pull requests to keep the dependencies you configure up-to-date. For each package manager's dependencies that you want to update, you must specify the location of the package manifest files and how often to check for updates to the dependencies listed in those files. For information about enabling security updates, see [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates).
|
You enable {% data variables.product.prodname_dependabot_version_updates %} by checking a `dependabot.yml` configuration file in to your repository's `.github` directory. {% data variables.product.prodname_dependabot %} then raises pull requests to keep the dependencies you configure up-to-date. For each package manager's dependencies that you want to update, you must specify the location of the package manifest files and how often to check for updates to the dependencies listed in those files. For information about enabling security updates, see [AUTOTITLE](/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates).
|
||||||
|
|
||||||
{% data reusables.dependabot.initial-updates %} {% ifversion dependabot-version-updates-groups %}For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).{% endif %}
|
{% data reusables.dependabot.initial-updates %} For more information, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).
|
||||||
|
|
||||||
{% data reusables.dependabot.version-updates-skip-scheduled-runs %}
|
{% data reusables.dependabot.version-updates-skip-scheduled-runs %}
|
||||||
|
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ Here are some examples showing how `ignore` can be used to customize which depen
|
|||||||
|
|
||||||
If you want to un-ignore a dependency or ignore condition, you can delete the ignore conditions from the `dependabot.yml` file or reopen the pull request.
|
If you want to un-ignore a dependency or ignore condition, you can delete the ignore conditions from the `dependabot.yml` file or reopen the pull request.
|
||||||
|
|
||||||
{% ifversion dependabot-version-updates-groups %}For pull requests for grouped {% ifversion dependabot-grouped-security-updates-config %}{% else %}version {% endif %}updates, you can also use `@dependabot unignore` comment commands. The `@dependabot unignore` comment commands enable you to do the following by commenting on a {% data variables.product.prodname_dependabot %} pull request:
|
For pull requests for grouped {% ifversion dependabot-grouped-security-updates-config %}{% else %}version {% endif %}updates, you can also use `@dependabot unignore` comment commands. The `@dependabot unignore` comment commands enable you to do the following by commenting on a {% data variables.product.prodname_dependabot %} pull request:
|
||||||
|
|
||||||
* Un-ignore a specific ignore condition
|
* Un-ignore a specific ignore condition
|
||||||
* Un-ignore a specific dependency
|
* Un-ignore a specific dependency
|
||||||
@@ -135,7 +135,7 @@ If you want to un-ignore a dependency or ignore condition, you can delete the ig
|
|||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/managing-pull-requests-for-dependency-updates#managing-dependabot-pull-requests-for-grouped-{% ifversion dependabot-grouped-security-updates-config %}{% else %}version-{% endif %}updates-with-comment-commands).{% endif %}
|
For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dependabot/managing-pull-requests-for-dependency-updates#managing-dependabot-pull-requests-for-grouped-{% ifversion dependabot-grouped-security-updates-config %}{% else %}version-{% endif %}updates-with-comment-commands).
|
||||||
|
|
||||||
## Allowing specific dependencies to be updated
|
## Allowing specific dependencies to be updated
|
||||||
|
|
||||||
|
|||||||
@@ -169,8 +169,6 @@ To allow {% data variables.product.prodname_dependabot %} to update the dependen
|
|||||||
|
|
||||||
**Version updates only.** {% data reusables.dependabot.private-dependencies-note %} Additionally, {% data variables.product.prodname_dependabot %} doesn't support private {% data variables.product.prodname_dotcom %} dependencies for all package managers. For more information, see [AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories).
|
**Version updates only.** {% data reusables.dependabot.private-dependencies-note %} Additionally, {% data variables.product.prodname_dependabot %} doesn't support private {% data variables.product.prodname_dotcom %} dependencies for all package managers. For more information, see [AUTOTITLE](/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories).
|
||||||
|
|
||||||
{% ifversion dependabot-version-updates-groups %}
|
|
||||||
|
|
||||||
### {% data variables.product.prodname_dependabot %} fails to group a set of dependencies into a single pull request for {% data variables.product.prodname_dependabot_version_updates %}
|
### {% data variables.product.prodname_dependabot %} fails to group a set of dependencies into a single pull request for {% data variables.product.prodname_dependabot_version_updates %}
|
||||||
|
|
||||||
{% ifversion dependabot-grouped-security-updates-config %}The [`groups`](/code-security/dependabot/working-with-dependabot/dependabot-options-reference#groups) configuration settings in the `dependabot.yml` file can apply to version updates and security updates. Use the `applies-to` key to specify where (version updates or security updates) a set of grouping rules is applied.
|
{% ifversion dependabot-grouped-security-updates-config %}The [`groups`](/code-security/dependabot/working-with-dependabot/dependabot-options-reference#groups) configuration settings in the `dependabot.yml` file can apply to version updates and security updates. Use the `applies-to` key to specify where (version updates or security updates) a set of grouping rules is applied.
|
||||||
@@ -252,8 +250,6 @@ If the dependency still fails to update, there may be a problem with the depende
|
|||||||
|
|
||||||
If you continue to see CI failures, you should remove the group configuration so that {% data variables.product.prodname_dependabot %} reverts to raising individual pull requests for each dependency. Then, you should check and confirm that the update works correctly for each individual pull request.
|
If you continue to see CI failures, you should remove the group configuration so that {% data variables.product.prodname_dependabot %} reverts to raising individual pull requests for each dependency. Then, you should check and confirm that the update works correctly for each individual pull request.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Triggering a {% data variables.product.prodname_dependabot %} pull request manually
|
## Triggering a {% data variables.product.prodname_dependabot %} pull request manually
|
||||||
|
|
||||||
If you unblock {% data variables.product.prodname_dependabot %}, you can manually trigger a fresh attempt to create a pull request.
|
If you unblock {% data variables.product.prodname_dependabot %}, you can manually trigger a fresh attempt to create a pull request.
|
||||||
|
|||||||
@@ -145,13 +145,9 @@ When `commit-message` is defined:
|
|||||||
| `prefix-development` | On supported systems, defines a different prefix to use for commits that update dependencies in the Development dependency group. |
|
| `prefix-development` | On supported systems, defines a different prefix to use for commits that update dependencies in the Development dependency group. |
|
||||||
| `include` | Follow the commit message prefix with additional information. |
|
| `include` | Follow the commit message prefix with additional information. |
|
||||||
|
|
||||||
{% ifversion dependabot-version-updates-groups %}
|
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
> When pull requests are raised for grouped updates, the branch name and pull request title are defined by the group `IDENTIFIER`, see {% ifversion dependabot-grouped-security-updates-config %}[`groups`](#groups--){% else %}[`groups`](#groups-){% endif %}.
|
> When pull requests are raised for grouped updates, the branch name and pull request title are defined by the group `IDENTIFIER`, see {% ifversion dependabot-grouped-security-updates-config %}[`groups`](#groups--){% else %}[`groups`](#groups-){% endif %}.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
### `prefix`
|
### `prefix`
|
||||||
|
|
||||||
* Used for all commit messages unless `prefix-development` is also defined.
|
* Used for all commit messages unless `prefix-development` is also defined.
|
||||||
@@ -195,8 +191,6 @@ If you need to use more than one block in the configuration file to define updat
|
|||||||
|
|
||||||
Not currently in use.
|
Not currently in use.
|
||||||
|
|
||||||
{% ifversion dependabot-version-updates-groups %}
|
|
||||||
|
|
||||||
## `groups` {% ifversion dependabot-grouped-security-updates-config %}{% octicon "versions" aria-label="Version updates" height="24" %} {% octicon "shield-check" aria-label="Security updates" height="24" %}{% else %}{% octicon "versions" aria-label="Version updates only" height="24" %}{% endif %}
|
## `groups` {% ifversion dependabot-grouped-security-updates-config %}{% octicon "versions" aria-label="Version updates" height="24" %} {% octicon "shield-check" aria-label="Security updates" height="24" %}{% else %}{% octicon "versions" aria-label="Version updates only" height="24" %}{% endif %}
|
||||||
|
|
||||||
Define rules to create one or more sets of dependencies managed by a package manager, to group updates into fewer, targeted pull requests. For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).
|
Define rules to create one or more sets of dependencies managed by a package manager, to group updates into fewer, targeted pull requests. For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).
|
||||||
@@ -245,8 +239,6 @@ By default, a group will include updates for all semantic versions (SemVer). Sem
|
|||||||
|
|
||||||
For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#specifying-the-semantic-versioning-level-to-ignore).
|
For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#specifying-the-semantic-versioning-level-to-ignore).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## `ignore` {% octicon "versions" aria-label="Version updates" height="24" %} {% octicon "shield-check" aria-label="Security updates" height="24" %}
|
## `ignore` {% octicon "versions" aria-label="Version updates" height="24" %} {% octicon "shield-check" aria-label="Security updates" height="24" %}
|
||||||
|
|
||||||
Use with the [`allow`](#allow--) option to define exactly which dependencies to maintain for a package ecosystem. {% data variables.product.prodname_dependabot %} checks for all allowed dependencies and then filters out any ignored dependencies or versions. So a dependency that is matched by both an allow and an ignore will be ignored. For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#ignoring-specific-dependencies).
|
Use with the [`allow`](#allow--) option to define exactly which dependencies to maintain for a package ecosystem. {% data variables.product.prodname_dependabot %} checks for all allowed dependencies and then filters out any ignored dependencies or versions. So a dependency that is matched by both an allow and an ignore will be ignored. For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#ignoring-specific-dependencies).
|
||||||
@@ -400,9 +392,9 @@ Package manager | YAML value | Supported versions |
|
|||||||
| pnpm | `npm` | v7, v8 <br>v9 (version updates only) |
|
| pnpm | `npm` | v7, v8 <br>v9 (version updates only) |
|
||||||
| poetry | `pip` | v1 |
|
| poetry | `pip` | v1 |
|
||||||
| pub | `pub` | v2 |
|
| pub | `pub` | v2 |
|
||||||
| {% ifversion dependabot-updates-swift-support %} |
|
| |
|
||||||
| Swift | `swift` | v5 |
|
| Swift | `swift` | v5 |
|
||||||
| {% endif %} |
|
| |
|
||||||
| Terraform | `terraform` | >= 0.13, <= 1.8.x |
|
| Terraform | `terraform` | >= 0.13, <= 1.8.x |
|
||||||
| yarn | `npm` | v1, v2, v3 |
|
| yarn | `npm` | v1, v2, v3 |
|
||||||
|
|
||||||
@@ -476,7 +468,7 @@ Reviewers must have at least read access to the repository.
|
|||||||
|
|
||||||
## `schedule` {% octicon "versions" aria-label="Version updates only" height="24" %}
|
## `schedule` {% octicon "versions" aria-label="Version updates only" height="24" %}
|
||||||
|
|
||||||
**Required option.** Define how often to check for new versions for each package manager you configure using the `interval` parameter. Optionally, for daily and weekly intervals, you can customize when {% data variables.product.prodname_dependabot %} checks for updates. {% ifversion dependabot-version-updates-groups %}For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).{% endif %}
|
**Required option.** Define how often to check for new versions for each package manager you configure using the `interval` parameter. Optionally, for daily and weekly intervals, you can customize when {% data variables.product.prodname_dependabot %} checks for updates. For examples, see [AUTOTITLE](/code-security/dependabot/dependabot-version-updates/optimizing-pr-creation-version-updates).
|
||||||
|
|
||||||
| Parameters | Purpose |
|
| Parameters | Purpose |
|
||||||
|------------|---------|
|
|------------|---------|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
ghes: '> 3.2'
|
ghes: '*'
|
||||||
type: how_to
|
type: how_to
|
||||||
topics:
|
topics:
|
||||||
- Repositories
|
- Repositories
|
||||||
|
|||||||
@@ -97,12 +97,8 @@ You can also proactively secure IP and maintain compliance for your organization
|
|||||||
|
|
||||||
To ensure that all code is properly reviewed prior to being merged into the default branch, you can enable branch protection. By setting branch protection rules, you can enforce certain workflows or requirements before a contributor can push changes. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
To ensure that all code is properly reviewed prior to being merged into the default branch, you can enable branch protection. By setting branch protection rules, you can enforce certain workflows or requirements before a contributor can push changes. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
||||||
|
|
||||||
{% ifversion repo-rules %}
|
|
||||||
|
|
||||||
{% data reusables.repositories.rulesets-alternative %}
|
{% data reusables.repositories.rulesets-alternative %}
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Mitigate data leaks
|
## Mitigate data leaks
|
||||||
|
|
||||||
If a user pushes sensitive data, ask them to remove it by using the `git filter-repo` tool. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository). Also, if the sensitive data has not been pushed yet, you can just undo those changes locally; for more information, see [{% data variables.product.prodname_blog %}](https://github.blog/2015-06-08-how-to-undo-almost-anything-with-git/) (but note that `git revert` is not a valid way to undo the addition of sensitive data as it leaves the original sensitive commit in Git history).
|
If a user pushes sensitive data, ask them to remove it by using the `git filter-repo` tool. For more information, see [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository). Also, if the sensitive data has not been pushed yet, you can just undo those changes locally; for more information, see [{% data variables.product.prodname_blog %}](https://github.blog/2015-06-08-how-to-undo-almost-anything-with-git/) (but note that `git revert` is not a valid way to undo the addition of sensitive data as it leaves the original sensitive commit in Git history).
|
||||||
|
|||||||
@@ -37,8 +37,7 @@ You can access any advisory in the {% data variables.product.prodname_advisory_d
|
|||||||
|
|
||||||
The database is also accessible using the GraphQL API. By default, queries will return {% data variables.product.company_short %}-reviewed advisories for security vulnerabilities unless you specify `type:malware`. For more information, see the [AUTOTITLE](/webhooks-and-events/webhooks/webhook-events-and-payloads#security_advisory).
|
The database is also accessible using the GraphQL API. By default, queries will return {% data variables.product.company_short %}-reviewed advisories for security vulnerabilities unless you specify `type:malware`. For more information, see the [AUTOTITLE](/webhooks-and-events/webhooks/webhook-events-and-payloads#security_advisory).
|
||||||
|
|
||||||
{% ifversion security-advisories-rest-api %}
|
Additionally, you can access the {% data variables.product.prodname_advisory_database %} using the REST API. For more information, see [AUTOTITLE](/rest/security-advisories/global-advisories).
|
||||||
Additionally, you can access the {% data variables.product.prodname_advisory_database %} using the REST API. For more information, see [AUTOTITLE](/rest/security-advisories/global-advisories).{% endif %}
|
|
||||||
|
|
||||||
## Editing an advisory in the {% data variables.product.prodname_advisory_database %}
|
## Editing an advisory in the {% data variables.product.prodname_advisory_database %}
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ versions:
|
|||||||
ghec: '*'
|
ghec: '*'
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.security-overview.beta-org-risk-coverage %}
|
|
||||||
|
|
||||||
## About adoption of code security features
|
## About adoption of code security features
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ redirect_from:
|
|||||||
- /code-security/security-overview/viewing-the-security-overview
|
- /code-security/security-overview/viewing-the-security-overview
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.security-overview.beta-org-risk-coverage %}
|
|
||||||
|
|
||||||
## Exploring the security risks in your code
|
## Exploring the security risks in your code
|
||||||
|
|
||||||
|
|||||||
@@ -116,8 +116,6 @@ In the "Risk" and "Coverage" views, you can show data only for repositories wher
|
|||||||
|
|
||||||
### Extra filters for the "Coverage" view
|
### Extra filters for the "Coverage" view
|
||||||
|
|
||||||
{% data reusables.security-overview.beta-org-risk-coverage %}
|
|
||||||
|
|
||||||
| Qualifier | Description |
|
| Qualifier | Description |
|
||||||
| -------- | -------- |
|
| -------- | -------- |
|
||||||
| `advanced-security` | Display data for repositories where {% data variables.product.prodname_GH_advanced_security %} is enabled or not enabled. |
|
| `advanced-security` | Display data for repositories where {% data variables.product.prodname_GH_advanced_security %} is enabled or not enabled. |
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ product: '{% data reusables.gated-features.dependency-review %}'
|
|||||||
shortTitle: Dependency review
|
shortTitle: Dependency review
|
||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghes: '>= 3.2'
|
ghes: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
type: overview
|
type: overview
|
||||||
topics:
|
topics:
|
||||||
@@ -58,16 +58,12 @@ The action is available for all {% ifversion fpt or ghec %}public repositories,
|
|||||||
|
|
||||||
{% data reusables.dependency-review.action-enterprise %}
|
{% data reusables.dependency-review.action-enterprise %}
|
||||||
|
|
||||||
The action uses the dependency review REST API to get the diff of dependency changes between the base commit and head commit. You can use the dependency review API to get the diff of dependency changes, including vulnerability data, between any two commits on a repository. For more information, see [AUTOTITLE](/rest/dependency-graph/dependency-review).{% ifversion dependency-review-submission-api %} The action also considers dependencies submitted via the {% data variables.dependency-submission-api.name %}. For more information about the {% data variables.dependency-submission-api.name %}, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api).
|
The action uses the dependency review REST API to get the diff of dependency changes between the base commit and head commit. You can use the dependency review API to get the diff of dependency changes, including vulnerability data, between any two commits on a repository. For more information, see [AUTOTITLE](/rest/dependency-graph/dependency-review). The action also considers dependencies submitted via the {% data variables.dependency-submission-api.name %}. For more information about the {% data variables.dependency-submission-api.name %}, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api).
|
||||||
|
|
||||||
{% data reusables.dependency-review.works-with-submission-api-beta %}
|
{% data reusables.dependency-review.works-with-submission-api-beta %}
|
||||||
|
|
||||||
You can configure the {% data variables.dependency-review.action_name %} to better suit your needs. For example, you can specify the severity level that will make the action fail{% ifversion dependency-review-action-licenses %}, or set an allow or deny list for licenses to scan{% endif %}. For more information, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-review-action).
|
You can configure the {% data variables.dependency-review.action_name %} to better suit your needs. For example, you can specify the severity level that will make the action fail{% ifversion dependency-review-action-licenses %}, or set an allow or deny list for licenses to scan{% endif %}. For more information, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-review-action).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% ifversion dependency-review-submission-api %}
|
|
||||||
|
|
||||||
## Best practices for using the dependency review API and the {% data variables.dependency-submission-api.name %} together
|
## Best practices for using the dependency review API and the {% data variables.dependency-submission-api.name %} together
|
||||||
|
|
||||||
The dependency review API and the {% data variables.dependency-review.action_name %} both work by comparing dependency changes in a pull request with the state of your dependencies in the head commit of your target branch.
|
The dependency review API and the {% data variables.dependency-review.action_name %} both work by comparing dependency changes in a pull request with the state of your dependencies in the head commit of your target branch.
|
||||||
@@ -94,7 +90,6 @@ If you don’t use {% data variables.product.prodname_actions %}, and your code
|
|||||||
* When there are snapshots missing for either side of the comparison, you will see an explanation for that in the `x-github-dependency-graph-snapshot-warnings` header (as a base64-encoded string). Therefore, if the header is non-empty, you should consider retrying.
|
* When there are snapshots missing for either side of the comparison, you will see an explanation for that in the `x-github-dependency-graph-snapshot-warnings` header (as a base64-encoded string). Therefore, if the header is non-empty, you should consider retrying.
|
||||||
* Implement a retry logic with exponential backoff retries.
|
* Implement a retry logic with exponential backoff retries.
|
||||||
* Implement a reasonable number of retries to account for the typical runtime of your dependency submission code.
|
* Implement a reasonable number of retries to account for the typical runtime of your dependency submission code.
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Further reading
|
## Further reading
|
||||||
|
|
||||||
|
|||||||
@@ -144,5 +144,5 @@ When customizing your dependency review configuration, there are some best pract
|
|||||||
|
|
||||||
## Further reading
|
## Further reading
|
||||||
|
|
||||||
* [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-review-action){% ifversion repo-rules %}
|
* [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/configuring-the-dependency-review-action)
|
||||||
* [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/enforcing-dependency-review-across-an-organization){% endif %}
|
* [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/enforcing-dependency-review-across-an-organization)
|
||||||
|
|||||||
@@ -24,17 +24,15 @@ shortTitle: Explore dependencies
|
|||||||
|
|
||||||
## Viewing the dependency graph
|
## Viewing the dependency graph
|
||||||
|
|
||||||
The dependency graph shows the dependencies{% ifversion fpt or ghec %} and dependents{% endif %} of your repository. {% ifversion dependency-graph-repository-view-update %} {% data reusables.dependency-graph.repository-view-update %}{% endif %} For information about the detection of dependencies and which ecosystems are supported, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/dependency-graph-supported-package-ecosystems).
|
The dependency graph shows the dependencies{% ifversion fpt or ghec %} and dependents{% endif %} of your repository. {% data reusables.dependency-graph.repository-view-update %} For information about the detection of dependencies and which ecosystems are supported, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/dependency-graph-supported-package-ecosystems).
|
||||||
|
|
||||||
{% data reusables.repositories.navigate-to-repo %}
|
{% data reusables.repositories.navigate-to-repo %}
|
||||||
{% data reusables.repositories.accessing-repository-graphs %}
|
{% data reusables.repositories.accessing-repository-graphs %}
|
||||||
{% data reusables.repositories.click-dependency-graph %}{% ifversion dependency-graph-repository-view-update %}
|
{% data reusables.repositories.click-dependency-graph %}
|
||||||
1. Optionally, use the search bar to find a specific dependency or set of dependencies.
|
1. Optionally, use the search bar to find a specific dependency or set of dependencies.
|
||||||
|
|
||||||
>[!NOTE] The search bar only searches based on the package name.
|
>[!NOTE] The search bar only searches based on the package name.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% ifversion fpt or ghec %}
|
{% ifversion fpt or ghec %}
|
||||||
|
|
||||||
1. Optionally, to view the repositories and packages that depend on your repository, under "Dependency graph", click **Dependents**.
|
1. Optionally, to view the repositories and packages that depend on your repository, under "Dependency graph", click **Dependents**.
|
||||||
@@ -59,8 +57,7 @@ For each dependency, you can see its ecosystem, the manifest file in which it wa
|
|||||||
Any direct and indirect dependencies that are specified in the repository's manifest or lock files are listed{% ifversion ghes %}.{% else %}, grouped by ecosystem.{% endif %}
|
Any direct and indirect dependencies that are specified in the repository's manifest or lock files are listed{% ifversion ghes %}.{% else %}, grouped by ecosystem.{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% ifversion dependency-graph-repository-view-update %}
|
Dependencies submitted to a project using the {% data variables.dependency-submission-api.name %} will show which detector was used for their submission and when they were submitted. For more information on using the {% data variables.dependency-submission-api.name %}, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api).
|
||||||
Dependencies submitted to a project using the {% data variables.dependency-submission-api.name %} will show which detector was used for their submission and when they were submitted.{% elsif ghes %}Dependencies submitted to a project using the {% data variables.dependency-submission-api.name %}, although also grouped by ecosystem, are shown separately from dependencies identified through manifest or lock files in the repository. These submitted dependencies appear in the dependency graph as "Snapshot dependencies" because they are submitted as a snapshot, or set, of dependencies.{% else %}{% endif %} For more information on using the {% data variables.dependency-submission-api.name %}, see [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api).
|
|
||||||
|
|
||||||
If vulnerabilities have been detected in the repository, these are shown at the top of the view for users with access to {% data variables.product.prodname_dependabot_alerts %}.
|
If vulnerabilities have been detected in the repository, these are shown at the top of the view for users with access to {% data variables.product.prodname_dependabot_alerts %}.
|
||||||
|
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ However, you can use the {% data variables.dependency-submission-api.name %} to
|
|||||||
|
|
||||||
## Are there limits which affect the dependency graph data?
|
## Are there limits which affect the dependency graph data?
|
||||||
|
|
||||||
Yes, the dependency graph has {% ifversion dependency-graph-repository-view-update %}one category{% else %}two categories{% endif %} of limits:
|
Yes, the dependency graph has one category of limits:
|
||||||
|
|
||||||
1. **Processing limits**
|
1. **Processing limits**
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
ghes: '> 3.8'
|
ghes: '*'
|
||||||
topics:
|
topics:
|
||||||
- Community
|
- Community
|
||||||
---
|
---
|
||||||
@@ -38,8 +38,8 @@ For example, the following form definition includes four form elements: a text a
|
|||||||
multiple: false
|
multiple: false
|
||||||
options:
|
options:
|
||||||
- 1.0.2 (Default)
|
- 1.0.2 (Default)
|
||||||
- 1.0.3 (Edge){% ifversion issue-form-dropdown-defaults %}
|
- 1.0.3 (Edge)
|
||||||
default: 0{% endif %}
|
default: 0
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: checkboxes
|
- type: checkboxes
|
||||||
@@ -222,8 +222,8 @@ body:
|
|||||||
- Built from source
|
- Built from source
|
||||||
- Homebrew
|
- Homebrew
|
||||||
- MacPorts
|
- MacPorts
|
||||||
- apt-get{% ifversion issue-form-dropdown-defaults %}
|
- apt-get
|
||||||
default: 0{% endif %}
|
default: 0
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -52,9 +52,9 @@ You can set the following top-level keys for each issue form.
|
|||||||
| {% ifversion issue-types %} |
|
| {% ifversion issue-types %} |
|
||||||
| `type` | The issue type that will be automatically added to issues created with this template. Issue types are defined at the organization level and can be used to create a shared syntax across repos. | Optional | String |
|
| `type` | The issue type that will be automatically added to issues created with this template. Issue types are defined at the organization level and can be used to create a shared syntax across repos. | Optional | String |
|
||||||
| {% endif %} |
|
| {% endif %} |
|
||||||
| {% ifversion projects-in-issue-forms %} |
|
| |
|
||||||
| `projects` | Projects that any issues created with this template will automatically be added to. The format of this key is `PROJECT-OWNER/PROJECT-NUMBER`. > [!NOTE] The person opening the issue must have write permissions for the specified projects. If you don't expect people using this template to have write access, consider enabling your project's auto-add workflow. For more information, see [Adding items automatically](/issues/planning-and-tracking-with-projects/automating-your-project/adding-items-automatically). | Optional | Array or comma-delimited string |
|
| `projects` | Projects that any issues created with this template will automatically be added to. The format of this key is `PROJECT-OWNER/PROJECT-NUMBER`. > [!NOTE] The person opening the issue must have write permissions for the specified projects. If you don't expect people using this template to have write access, consider enabling your project's auto-add workflow. For more information, see [Adding items automatically](/issues/planning-and-tracking-with-projects/automating-your-project/adding-items-automatically). | Optional | Array or comma-delimited string |
|
||||||
| {% endif %} |
|
| |
|
||||||
|
|
||||||
For the available `body` input types and their syntaxes, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema).
|
For the available `body` input types and their syntaxes, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema).
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
---
|
---
|
||||||
title: About building Copilot Extensions
|
title: About building Copilot Extensions
|
||||||
intro: 'Learn about the development process for {% data variables.product.prodname_copilot_extensions_short %}.'
|
intro: 'Learn about the development process for {% data variables.product.prodname_copilot_extensions_short %}.'
|
||||||
|
product: '{% data reusables.gated-features.copilot-extensions %}'
|
||||||
versions:
|
versions:
|
||||||
feature: copilot-extensions
|
feature: copilot-extensions
|
||||||
topics:
|
topics:
|
||||||
@@ -43,6 +44,18 @@ type: overview
|
|||||||
* Integrate their tool into the developer workflow on {% data variables.product.company_short %} and the IDE
|
* Integrate their tool into the developer workflow on {% data variables.product.company_short %} and the IDE
|
||||||
* Leverage the {% data variables.product.company_short %} ecosystem to raise awareness for their product
|
* Leverage the {% data variables.product.company_short %} ecosystem to raise awareness for their product
|
||||||
|
|
||||||
|
### About {% data variables.product.prodname_copilot_extensions %} permissions
|
||||||
|
|
||||||
|
{% data reusables.copilot.copilot-extensions.about-extensions-permissions %}
|
||||||
|
|
||||||
|
#### Granting permissions to access organization resources
|
||||||
|
|
||||||
|
Only organization admins can grant permissions for {% data variables.product.prodname_copilot_extensions_short %} to access organization resources.
|
||||||
|
To grant organization members access:
|
||||||
|
* The organization admin must install the extension.
|
||||||
|
* The organization admin must grant the extension permission to access specific repositories.
|
||||||
|
* The organization admin must authorize access for all, or specific repositories.
|
||||||
|
|
||||||
### About skillsets and agents
|
### About skillsets and agents
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.differences-between-agents-and-skillsets-1 %}
|
{% data reusables.copilot.copilot-extensions.differences-between-agents-and-skillsets-1 %}
|
||||||
@@ -66,7 +79,13 @@ Context passing respects content exclusions, which refers to any files listed in
|
|||||||
|
|
||||||
For more information about context passing, see [AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/context-passing-for-your-agent).
|
For more information about context passing, see [AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/context-passing-for-your-agent).
|
||||||
|
|
||||||
### Resources for building {% data variables.product.prodname_copilot_extensions %}
|
### Using APIs in {% data variables.product.prodname_copilot_extensions %}
|
||||||
|
|
||||||
|
Building {% data variables.product.prodname_copilot_extensions %} requires using the {% data variables.product.github %} API. Optionally, the {% data variables.product.prodname_copilot_short %} API can be used for additional capabilities. For details on request and response formatting, see the [OpenAI API documentation](https://platform.openai.com/docs/api-reference/chat).
|
||||||
|
|
||||||
|
> [!NOTE] The {% data variables.product.prodname_copilot_short %} API is available for {% data variables.product.prodname_copilot_extension_short %} builders, but only {% data variables.product.prodname_github_apps %} and {% data variables.product.prodname_vscode_shortname %} Chat extensions can be used to access these endpoints.
|
||||||
|
|
||||||
|
## Resources for building {% data variables.product.prodname_copilot_extensions %}
|
||||||
|
|
||||||
{% data variables.product.company_short %} provides a comprehensive toolkit for extension builders, with code samples, a CLI debugging tool, quickstart SDKs, and a user feedback repository. For more information, see the [copilot-extensions](https://github.com/orgs/copilot-extensions/) organization on {% data variables.product.company_short %}.
|
{% data variables.product.company_short %} provides a comprehensive toolkit for extension builders, with code samples, a CLI debugging tool, quickstart SDKs, and a user feedback repository. For more information, see the [copilot-extensions](https://github.com/orgs/copilot-extensions/) organization on {% data variables.product.company_short %}.
|
||||||
|
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ shortTitle: About Copilot agents
|
|||||||
type: overview
|
type: overview
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
{% data variables.product.prodname_copilot_agents_short %} are custom tools embedded in {% data variables.product.prodname_copilot_extensions_short %}. They integrate with {% data variables.product.prodname_copilot_chat_short %} to provide additional functionalities tailored to specific needs. {% data variables.product.prodname_copilot_agents_short %} can perform various tasks such as querying documentation, retrieving data, executing specific actions, or providing AI-assisted coding suggestions. They enhance the capabilities of {% data variables.product.prodname_copilot %} by allowing developers to build and integrate custom features directly into the {% data variables.product.prodname_copilot_chat_short %} interface.
|
{% data variables.product.prodname_copilot_agents_short %} are custom tools embedded in {% data variables.product.prodname_copilot_extensions_short %}. They integrate with {% data variables.product.prodname_copilot_chat_short %} to provide additional functionalities tailored to specific needs. {% data variables.product.prodname_copilot_agents_short %} can perform various tasks such as querying documentation, retrieving data, executing specific actions, or providing AI-assisted coding suggestions. They enhance the capabilities of {% data variables.product.prodname_copilot %} by allowing developers to build and integrate custom features directly into the {% data variables.product.prodname_copilot_chat_short %} interface.
|
||||||
|
|
||||||
To use a {% data variables.product.prodname_copilot_agent_short %} in {% data variables.product.prodname_copilot_chat_short %}, it must be associated with a {% data variables.product.prodname_github_app %}. This combination of a {% data variables.product.prodname_github_app %} and a {% data variables.product.prodname_copilot_agent_short %} is what we refer to as a {% data variables.product.prodname_copilot_extension %}. For more information on {% data variables.product.prodname_copilot_extensions_short %}, see [AUTOTITLE](/copilot/building-copilot-extensions/about-building-copilot-extensions).
|
To use a {% data variables.product.prodname_copilot_agent_short %} in {% data variables.product.prodname_copilot_chat_short %}, it must be associated with a {% data variables.product.prodname_github_app %}. This combination of a {% data variables.product.prodname_github_app %} and a {% data variables.product.prodname_copilot_agent_short %} is what we refer to as a {% data variables.product.prodname_copilot_extension %}. For more information on {% data variables.product.prodname_copilot_extensions_short %}, see [AUTOTITLE](/copilot/building-copilot-extensions/about-building-copilot-extensions).
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ shortTitle: Communicate with GitHub
|
|||||||
type: reference
|
type: reference
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.agents-copilot-platform-prerequisites %}
|
{% data reusables.copilot.copilot-extensions.agents-copilot-platform-prerequisites %}
|
||||||
|
|||||||
@@ -10,8 +10,6 @@ type: reference
|
|||||||
layout: inline
|
layout: inline
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
{% data variables.product.prodname_copilot_agents_short %} communicate with the {% data variables.product.prodname_copilot_short %} platform in the form of server-sent events (SSEs). Rather than waiting for the {% data variables.product.prodname_copilot_short %} platform to request an update from your agent, or vice versa, you can use SSEs to send and receive updates to and from the platform in real time.
|
{% data variables.product.prodname_copilot_agents_short %} communicate with the {% data variables.product.prodname_copilot_short %} platform in the form of server-sent events (SSEs). Rather than waiting for the {% data variables.product.prodname_copilot_short %} platform to request an update from your agent, or vice versa, you can use SSEs to send and receive updates to and from the platform in real time.
|
||||||
|
|
||||||
To learn more about SSEs, see [Server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events) in the mdn documentation.
|
To learn more about SSEs, see [Server-sent events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events) in the mdn documentation.
|
||||||
|
|||||||
@@ -10,8 +10,6 @@ type: reference
|
|||||||
allowTitleToDifferFromFilename: true
|
allowTitleToDifferFromFilename: true
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
## About {% data variables.product.prodname_copilot_short %}'s Language Learning Model (LLM)
|
## About {% data variables.product.prodname_copilot_short %}'s Language Learning Model (LLM)
|
||||||
|
|
||||||
{% data variables.product.prodname_copilot_short %}'s Language Learning Model (LLM) is a powerful, large-scale language model that is trained on a diverse range of data sources, including code, documentation, and other text. {% data variables.product.prodname_copilot_short %}'s LLM underpins the functionality for {% data variables.product.prodname_copilot %}, and is used to power all of {% data variables.product.prodname_copilot_short %}'s features, including code generation, documentation generation, and code completion.
|
{% data variables.product.prodname_copilot_short %}'s Language Learning Model (LLM) is a powerful, large-scale language model that is trained on a diverse range of data sources, including code, documentation, and other text. {% data variables.product.prodname_copilot_short %}'s LLM underpins the functionality for {% data variables.product.prodname_copilot %}, and is used to power all of {% data variables.product.prodname_copilot_short %}'s features, including code generation, documentation generation, and code completion.
|
||||||
@@ -22,7 +20,7 @@ You have the option to use {% data variables.product.prodname_copilot_short %}'s
|
|||||||
|
|
||||||
## Using {% data variables.product.prodname_copilot_short %}'s LLM for your agent
|
## Using {% data variables.product.prodname_copilot_short %}'s LLM for your agent
|
||||||
|
|
||||||
You can call {% data variables.product.prodname_copilot_short %}'s LLM deployment at `{% data variables.copilot.chat_completions_api %}` with a POST request. The request and responses should be in the same format as the OpenAI API.
|
You can call {% data variables.product.prodname_copilot_short %}'s LLM deployment at `{% data variables.copilot.chat_completions_api %}` with a POST request. Requests and responses should follow the format as the [OpenAI API](https://platform.openai.com/docs/api-reference/chat/create).
|
||||||
|
|
||||||
To authenticate, use the same `X-Github-Token` header sent to your agent. For more information, see [AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github#fetching-resources-from-the-github-api).
|
To authenticate, use the same `X-Github-Token` header sent to your agent. For more information, see [AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-agent-for-your-copilot-extension/configuring-your-copilot-agent-to-communicate-with-github#fetching-resources-from-the-github-api).
|
||||||
|
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ shortTitle: About {% data variables.product.prodname_copilot_skillsets_short %}
|
|||||||
type: overview
|
type: overview
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
A skill within {% data variables.product.prodname_copilot %} is a tool that the model calls to perform a specific task in response to a user query. A skillset is a collection of these skills (up to five per skillset). {% data variables.product.prodname_copilot_skillsets %} provide a streamlined way to extend {% data variables.product.prodname_copilot_short %}’s functionality, allowing builders to integrate external services or custom API endpoints into their {% data variables.product.prodname_copilot_short %} workflow. With skillsets, builders can enable {% data variables.product.prodname_copilot_short %} to perform tasks—such as retrieving data or executing actions in third-party services—without needing to manage complex workflows or architecture.
|
A skill within {% data variables.product.prodname_copilot %} is a tool that the model calls to perform a specific task in response to a user query. A skillset is a collection of these skills (up to five per skillset). {% data variables.product.prodname_copilot_skillsets %} provide a streamlined way to extend {% data variables.product.prodname_copilot_short %}’s functionality, allowing builders to integrate external services or custom API endpoints into their {% data variables.product.prodname_copilot_short %} workflow. With skillsets, builders can enable {% data variables.product.prodname_copilot_short %} to perform tasks—such as retrieving data or executing actions in third-party services—without needing to manage complex workflows or architecture.
|
||||||
|
|
||||||
For a quickstart example of a skillset, see the [skillset-example](https://github.com/copilot-extensions/skillset-example) repository. For information on building a skillset, see [AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-skillset-for-your-copilot-extension/building-copilot-skillsets).
|
For a quickstart example of a skillset, see the [skillset-example](https://github.com/copilot-extensions/skillset-example) repository. For information on building a skillset, see [AUTOTITLE](/copilot/building-copilot-extensions/building-a-copilot-skillset-for-your-copilot-extension/building-copilot-skillsets).
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ shortTitle: Build {% data variables.product.prodname_copilot_skillsets_short %}
|
|||||||
type: how_to
|
type: how_to
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
{% data variables.product.prodname_copilot_skillsets %} are a streamlined way to extend {% data variables.product.prodname_copilot %}'s functionality by defining API endpoints that {% data variables.product.prodname_copilot_short %} can call. When you create a skillset, {% data variables.product.prodname_copilot_short %} handles all the AI interactions while your endpoints provide the data or functionality. This guide walks you through configuring and deploying a skillset within your {% data variables.product.prodname_github_app %}.
|
{% data variables.product.prodname_copilot_skillsets %} are a streamlined way to extend {% data variables.product.prodname_copilot %}'s functionality by defining API endpoints that {% data variables.product.prodname_copilot_short %} can call. When you create a skillset, {% data variables.product.prodname_copilot_short %} handles all the AI interactions while your endpoints provide the data or functionality. This guide walks you through configuring and deploying a skillset within your {% data variables.product.prodname_github_app %}.
|
||||||
|
|||||||
@@ -0,0 +1,89 @@
|
|||||||
|
---
|
||||||
|
title: Copilot Extensions FAQ
|
||||||
|
intro: 'Find answers to common questions about {% data variables.product.prodname_copilot_extensions %}.'
|
||||||
|
versions:
|
||||||
|
feature: copilot-extensions
|
||||||
|
topics:
|
||||||
|
- Copilot
|
||||||
|
shortTitle: Extensions FAQ
|
||||||
|
type: reference
|
||||||
|
---
|
||||||
|
|
||||||
|
## General
|
||||||
|
|
||||||
|
This section answers common questions about {% data variables.product.prodname_copilot_extension %}.
|
||||||
|
|
||||||
|
* [What is the difference between a {% data variables.product.prodname_copilot_extension %} and a {% data variables.product.prodname_vscode %} chat participant?](#what-is-the-difference-between-a-github-copilot-extension-and-a-visual-studio-code-chat-participant)
|
||||||
|
* [Is indemnity provided for {% data variables.product.prodname_copilot_extensions_short %}?](#is-indemnity-provided-for-copilot-extensions)
|
||||||
|
|
||||||
|
### What is the difference between a {% data variables.product.prodname_copilot_extension %} and a {% data variables.product.prodname_vscode %} chat participant?
|
||||||
|
|
||||||
|
{% data variables.product.prodname_copilot_extensions %} and {% data variables.product.prodname_vscode %} chat participants use the same backend platform to route requests to extensions. Both provide similar end-user experiences, integrate with {% data variables.product.prodname_copilot_chat_short %}, and can leverage the {% data variables.product.prodname_copilot_short %} API or other LLMs.
|
||||||
|
|
||||||
|
While they share similarities, below are several key differences:
|
||||||
|
* {% data variables.product.prodname_copilot_extensions %} and {% data variables.product.prodname_vscode %} chat participants are accessed through different marketplaces.
|
||||||
|
* {% data variables.product.prodname_copilot_extensions %} are server-side extensions, requiring server infrastructure to build. These extensions provide a built-in connection to your {% data variables.product.github %} workspaces, as set by your organization admin.
|
||||||
|
* {% data variables.product.prodname_vscode %} chat participants are client-side extensions that have read and write access to your local files. They do not require server infrastructure.
|
||||||
|
* {% data variables.product.prodname_copilot_extensions %} can be used in any editor where extensions are supported, while {% data variables.product.prodname_vscode %} Chat Participants are only available in {% data variables.product.prodname_vscode %}.
|
||||||
|
|
||||||
|
For more information, see [AUTOTITLE](/copilot/building-copilot-extensions/about-building-copilot-extensions).
|
||||||
|
|
||||||
|
### Is indemnity provided for {% data variables.product.prodname_copilot_extensions_short %}?
|
||||||
|
|
||||||
|
No, {% data variables.product.prodname_copilot_extensions_short %} are not covered by {% data variables.product.prodname_copilot %}’s indemnity policy. However, this exclusion applies only to issues that arise within extension chat threads.
|
||||||
|
|
||||||
|
Installing and using extensions does not affect indemnity coverage for any issues that occur while using other {% data variables.product.prodname_copilot_short %} features such as code completions and chat.
|
||||||
|
|
||||||
|
## Data and Permissions
|
||||||
|
|
||||||
|
This section explains what data is collected and shared when using {% data variables.product.prodname_copilot_extensions_short %}.
|
||||||
|
|
||||||
|
* [What data is being collected and shared with {% data variables.product.prodname_copilot_extensions_short %}?](#what-data-is-being-collected-and-shared-with-copilot-extensions)
|
||||||
|
* [What permissions are required for {% data variables.product.prodname_copilot_extensions_short %}?](#what-permissions-are-required-for-copilot-extensions)
|
||||||
|
* [Who can provide permissions for {% data variables.product.prodname_copilot_extensions_short %} to access organization resources?](#who-can-provide-permissions-for-copilot-extensions-to-access-organization-resources)
|
||||||
|
* [Can a user use a {% data variables.product.prodname_copilot_extensions_short %} that the organization has not provided permissions for?](#can-a-user-use-a-copilot-extensions-that-the-organization-has-not-provided-permissions-for)
|
||||||
|
|
||||||
|
### What data is being collected and shared with {% data variables.product.prodname_copilot_extensions_short %}?
|
||||||
|
|
||||||
|
The following data is shared when interacting with {% data variables.product.prodname_copilot_extensions_short %}:
|
||||||
|
* Data attached to your account and {% data variables.product.prodname_copilot_chat_short %} usage, such as {% data variables.product.github %} user ID, and timestamps of messages.
|
||||||
|
* Past messages within the chat thread where you are invoking an extension. Only one extension can be used per thread, preventing data sharing across extensions. The data retention period for thread context is 30 days.
|
||||||
|
* Any additional organization and repository data that is authorized for the extension by your organization admin. Admins installing extensions must approve access to the required permissions prior to completing installation.
|
||||||
|
* For {% data variables.product.prodname_copilot_chat_dotcom_short %}, if your admin has approved the extension to access repository or organization metadata , that data will be shared as well.
|
||||||
|
|
||||||
|
### What permissions are required for {% data variables.product.prodname_copilot_extensions_short %}?
|
||||||
|
|
||||||
|
{% data reusables.copilot.copilot-extensions.about-extensions-permissions %}
|
||||||
|
|
||||||
|
### Who can provide permissions for {% data variables.product.prodname_copilot_extensions_short %} to access organization resources?
|
||||||
|
|
||||||
|
Only organization admins can grant permissions for {% data variables.product.prodname_copilot_extensions_short %} to access organization resources.
|
||||||
|
Organization members may encounter cases where an extension cannot access a repository or query context. This typically happens because the organization admin has not yet provided permissions or authorized the extension. See [Granting permissions to access organization resources](/copilot/building-copilot-extensions/about-building-copilot-extensions#granting-permissions-to-access-organization-resources).
|
||||||
|
|
||||||
|
### Can a user use a {% data variables.product.prodname_copilot_extensions_short %} that the organization has not provided permissions for?
|
||||||
|
|
||||||
|
Yes, any user can install and use a {% data variables.product.prodname_copilot_extensions_short %}. However, to query organization resources and repositories, the extension must be installed and authorized by an organization admin. See [Granting permissions to access organization resources](/copilot/building-copilot-extensions/about-building-copilot-extensions#granting-permissions-to-access-organization-resources)
|
||||||
|
|
||||||
|
Users should contact their organization admin to request installation and authorization. Company context cannot be accessed without admin permissions.
|
||||||
|
|
||||||
|
## Policies
|
||||||
|
|
||||||
|
This section covers administrative policies for {% data variables.product.prodname_copilot_extensions_short %}
|
||||||
|
|
||||||
|
* [How do I control which {% data variables.product.prodname_copilot_extensions_short %} can be used in my enterprise?](#how-do-i-control-which-copilot-extensions-can-be-used-in-my-enterprise)
|
||||||
|
* [Is there an allowlist/blocklist at the enterprise level?](#is-there-an-allowlistblocklist-at-the-enterprise-level)
|
||||||
|
* [As a member of an organization, how can I get access to {% data variables.product.prodname_copilot_extensions_short %}?](#as-a-member-of-an-organization-how-can-i-get-access-to-copilot-extensions)
|
||||||
|
|
||||||
|
### How do I control which {% data variables.product.prodname_copilot_extensions_short %} can be used in my enterprise?
|
||||||
|
|
||||||
|
Enterprise admins can disable {% data variables.product.prodname_copilot_extensions_short %} across their enterprise by setting the **{% data variables.product.prodname_copilot_extensions_short %}** policy to "Disabled" or "No Policy".
|
||||||
|
|
||||||
|
### Is there an allowlist/blocklist at the enterprise level?
|
||||||
|
|
||||||
|
No, there is no allowlist or blocklist at the enterprise level.
|
||||||
|
|
||||||
|
### As a member of an organization, how can I get access to {% data variables.product.prodname_copilot_extensions_short %}?
|
||||||
|
|
||||||
|
To access {% data variables.product.prodname_copilot_extensions_short %} as a member of an organization, the organization that assigned you a {% data variables.product.github %} seat must enable the {% data variables.product.prodname_copilot_extensions_short %} policy. Additionally, the same organization must install and authorize the extension to access any organization owned repositories.
|
||||||
|
|
||||||
|
For example, if you are a member of multiple organizations and Organization A has assigned you a {% data variables.product.github %} seat, you will only have access to extensions if Organization A has enabled the policy. If Organization B has enabled extensions but you do not have access, it is because Organization A has disabled the {% data variables.product.prodname_copilot_extensions_short %} policy.
|
||||||
@@ -9,13 +9,11 @@ shortTitle: Extensions Glossary
|
|||||||
type: reference
|
type: reference
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
The following terms are used in the context of {% data variables.product.prodname_copilot_extensions_short %}, and are defined here for clarity.
|
The following terms are used in the context of {% data variables.product.prodname_copilot_extensions_short %}, and are defined here for clarity.
|
||||||
|
|
||||||
#### Agent
|
#### Agent
|
||||||
|
|
||||||
A concrete implementation of an AI assistant that can receive user queries and return a stream of response tokens. The combination of an agent + {% data variables.product.prodname_github_app %} is what we refer to as a {% data variables.product.prodname_copilot_extension_short %}.
|
A type of {% data variables.product.prodname_copilot_extension_short %} implementation that gives developers full control over handling user queries and response generation. This approach is ideal for builders who want complete customization and management of AI interactions.
|
||||||
|
|
||||||
#### Context Passing
|
#### Context Passing
|
||||||
|
|
||||||
@@ -51,7 +49,7 @@ An extension that appears on the {% data variables.product.prodname_marketplace
|
|||||||
|
|
||||||
#### Private Extension
|
#### Private Extension
|
||||||
|
|
||||||
An extension that is only visible and usable by the organization or individual user that created it.
|
An extension that is only visible and usable by the enterprise, organization, or individual user that created it. Enterprise-created extensions can be installed by organizations that are within the enterprise.
|
||||||
|
|
||||||
#### Public Extension
|
#### Public Extension
|
||||||
|
|
||||||
@@ -63,7 +61,7 @@ A piece of code that retrieves context or executes an action in response to a us
|
|||||||
|
|
||||||
#### Skillset
|
#### Skillset
|
||||||
|
|
||||||
A collection of skills in the form of an implementation in {% data variables.product.prodname_copilot_extensions %} that allows developers to connect external services or custom API endpoints to Copilot with minimal complexity. The {% data variables.product.prodname_copilot_extensibility_platform_short %} handles prompt crafting, function evaluation, and response generation. The developer handles only the API call.
|
A type of {% data variables.product.prodname_copilot_extension_short %} implementation that gives developers the ability to connect external services and custom API endpoints to {% data variables.product.prodname_copilot_short %} with minimal complexity. The {% data variables.product.prodname_copilot_extensibility_platform_short %} handles prompt crafting, function evaluation, and response generation. The builder only needs to handle API skill definitions. This approach is ideal for builders who want minimal complexity.
|
||||||
|
|
||||||
#### Tool/Function Calling
|
#### Tool/Function Calling
|
||||||
|
|
||||||
|
|||||||
@@ -12,8 +12,6 @@ redirect_from:
|
|||||||
- /copilot/building-copilot-extensions/creating-a-copilot-extension/configuring-your-github-app-for-your-copilot-agent
|
- /copilot/building-copilot-extensions/creating-a-copilot-extension/configuring-your-github-app-for-your-copilot-agent
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
Once you have configured your server and created your {% data variables.product.prodname_github_app %}, you need to configure your {% data variables.product.prodname_github_app %} for use with your {% data variables.product.prodname_copilot_short %} extension.
|
Once you have configured your server and created your {% data variables.product.prodname_github_app %}, you need to configure your {% data variables.product.prodname_github_app %} for use with your {% data variables.product.prodname_copilot_short %} extension.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
@@ -46,7 +44,7 @@ Once you have configured your server and created your {% data variables.product.
|
|||||||
> [!NOTE] If you are using an ephemeral domain in ngrok, you will need to update this URL every time you restart your ngrok server.
|
> [!NOTE] If you are using an ephemeral domain in ngrok, you will need to update this URL every time you restart your ngrok server.
|
||||||
|
|
||||||
1. Under "Inference description", type a brief description of your agent, then click **Save**. This will be the description users see when they hover over your extension's slug in the chat window.
|
1. Under "Inference description", type a brief description of your agent, then click **Save**. This will be the description users see when they hover over your extension's slug in the chat window.
|
||||||
1. Your pre-authorization URL is a link on your website that starts the authorization process for your extension. Users will be redirected to this URL when they decide to authorize your extension. If you are using a pre-authorization URL, under "Pre-authorization URL," enter the URL, then click **Save changes**.
|
1. Your pre-authorization URL is a link on your website that starts the authorization process for your extension. Users will be redirected to this URL when they decide to authorize your extension. If you are using a pre-authorization URL, under "Pre-authorization URL," enter the URL, then click **Save**.
|
||||||
1. In your {% data variables.product.prodname_github_app %} settings, in the left sidebar, click **Install App**, then, next to the account you want to install your app on, click **Install**.
|
1. In your {% data variables.product.prodname_github_app %} settings, in the left sidebar, click **Install App**, then, next to the account you want to install your app on, click **Install**.
|
||||||
{% data reusables.copilot.go-to-copilot-page %}
|
{% data reusables.copilot.go-to-copilot-page %}
|
||||||
1. Invoke your extension by typing `@EXTENSION-NAME`, replacing any spaces in the extension name with `-`, then press `Enter`.
|
1. Invoke your extension by typing `@EXTENSION-NAME`, replacing any spaces in the extension name with `-`, then press `Enter`.
|
||||||
@@ -73,7 +71,7 @@ Once you have configured your server and created your {% data variables.product.
|
|||||||
1. Read the {% data variables.product.prodname_marketplace %} Developer Agreement and the {% data variables.product.github %} Pre-release License Terms, then accept the terms for creating a {% data variables.product.prodname_copilot_extension_short %}.
|
1. Read the {% data variables.product.prodname_marketplace %} Developer Agreement and the {% data variables.product.github %} Pre-release License Terms, then accept the terms for creating a {% data variables.product.prodname_copilot_extension_short %}.
|
||||||
|
|
||||||
1. In the "App type" section, select the dropdown menu, then click **Skillset**.
|
1. In the "App type" section, select the dropdown menu, then click **Skillset**.
|
||||||
1. Your pre-authorization URL is a link on your website that starts the authorization process for your extension. Users will be redirected to this URL when they decide to authorize your extension. If you are using a pre-authorization URL, under "Pre-authorization URL," enter the URL, then click **Save changes**.
|
1. Your pre-authorization URL is a link on your website that starts the authorization process for your extension. Users will be redirected to this URL when they decide to authorize your extension. If you are using a pre-authorization URL, under "Pre-authorization URL," enter the URL, then click **Save**.
|
||||||
{% data reusables.copilot.copilot-extensions.skillsets-configuration-steps %}
|
{% data reusables.copilot.copilot-extensions.skillsets-configuration-steps %}
|
||||||
1. In your {% data variables.product.prodname_github_app %} settings, in the left sidebar, click **Install App**, then, next to the account you want to install your app on, click **Install**.
|
1. In your {% data variables.product.prodname_github_app %} settings, in the left sidebar, click **Install App**, then, next to the account you want to install your app on, click **Install**.
|
||||||
{% data reusables.copilot.go-to-copilot-page %}
|
{% data reusables.copilot.go-to-copilot-page %}
|
||||||
|
|||||||
@@ -12,8 +12,6 @@ shortTitle: Host your extension
|
|||||||
type: how_to
|
type: how_to
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
Your {% data variables.product.prodname_copilot_extension_short %} must be hosted on a server that is accessible to the internet. In this guide, we will use [ngrok](https://ngrok.com/) to create a tunnel to your local server, but you could also use a service like [localtunnel](https://localtunnel.github.io/www/).
|
Your {% data variables.product.prodname_copilot_extension_short %} must be hosted on a server that is accessible to the internet. In this guide, we will use [ngrok](https://ngrok.com/) to create a tunnel to your local server, but you could also use a service like [localtunnel](https://localtunnel.github.io/www/).
|
||||||
|
|
||||||
Alternatively, if you are a {% data variables.product.prodname_codespaces %} user, you can use the built-in {% data variables.product.prodname_codespaces %} port forwarding. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/forwarding-ports-in-your-codespace).
|
Alternatively, if you are a {% data variables.product.prodname_codespaces %} user, you can use the built-in {% data variables.product.prodname_codespaces %} port forwarding. For more information, see [AUTOTITLE](/codespaces/developing-in-a-codespace/forwarding-ports-in-your-codespace).
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ shortTitle: Create GitHub App
|
|||||||
type: how_to
|
type: how_to
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
A {% data variables.product.prodname_copilot_extension_short %} is a {% data variables.product.prodname_github_app %} that is associated with a {% data variables.product.prodname_copilot_agent_short %}. The {% data variables.product.prodname_github_app %} you associate your {% data variables.product.prodname_copilot_agent_short %} with is used to authenticate the {% data variables.product.prodname_copilot_agent_short %} with {% data variables.product.prodname_dotcom %} and to authorize the {% data variables.product.prodname_copilot_agent_short %} to access the {% data variables.product.prodname_copilot_chat_short %} API. Each {% data variables.product.prodname_copilot_agent_short %} must be associated with a unique {% data variables.product.prodname_github_app %}.
|
A {% data variables.product.prodname_copilot_extension_short %} is a {% data variables.product.prodname_github_app %} that is associated with a {% data variables.product.prodname_copilot_agent_short %}. The {% data variables.product.prodname_github_app %} you associate your {% data variables.product.prodname_copilot_agent_short %} with is used to authenticate the {% data variables.product.prodname_copilot_agent_short %} with {% data variables.product.prodname_dotcom %} and to authorize the {% data variables.product.prodname_copilot_agent_short %} to access the {% data variables.product.prodname_copilot_chat_short %} API. Each {% data variables.product.prodname_copilot_agent_short %} must be associated with a unique {% data variables.product.prodname_github_app %}.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|||||||
@@ -8,8 +8,6 @@ topics:
|
|||||||
shortTitle: Debug Copilot Extension
|
shortTitle: Debug Copilot Extension
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
With the debug tool for {% data variables.product.prodname_copilot_extensions_short %}, you can chat with your {% data variables.product.prodname_copilot_agent_short %} from the command line, then view detailed logs as your agent generates a response. You can pass several flags to the tool, with the most important flags being:
|
With the debug tool for {% data variables.product.prodname_copilot_extensions_short %}, you can chat with your {% data variables.product.prodname_copilot_agent_short %} from the command line, then view detailed logs as your agent generates a response. You can pass several flags to the tool, with the most important flags being:
|
||||||
* The `url` flag, which contains the URL to access your {% data variables.product.prodname_copilot_agent_short %}. This is the only required flag to start the tool.
|
* The `url` flag, which contains the URL to access your {% data variables.product.prodname_copilot_agent_short %}. This is the only required flag to start the tool.
|
||||||
* The `log-level` flag, which determines the level of visibility you have into your {% data variables.product.prodname_copilot_agent_short %}'s process for generating a response. The available log levels are `DEBUG`, `NONE`, and `TRACE`, and the tool uses `DEBUG` by default.
|
* The `log-level` flag, which determines the level of visibility you have into your {% data variables.product.prodname_copilot_agent_short %}'s process for generating a response. The available log levels are `DEBUG`, `NONE`, and `TRACE`, and the tool uses `DEBUG` by default.
|
||||||
|
|||||||
@@ -10,11 +10,12 @@ children:
|
|||||||
- /about-building-copilot-extensions
|
- /about-building-copilot-extensions
|
||||||
- /quickstart-for-github-copilot-extensions-using-agents
|
- /quickstart-for-github-copilot-extensions-using-agents
|
||||||
- /setting-up-copilot-extensions
|
- /setting-up-copilot-extensions
|
||||||
|
- /creating-a-copilot-extension
|
||||||
- /building-a-copilot-agent-for-your-copilot-extension
|
- /building-a-copilot-agent-for-your-copilot-extension
|
||||||
- /building-a-copilot-skillset-for-your-copilot-extension
|
- /building-a-copilot-skillset-for-your-copilot-extension
|
||||||
- /creating-a-copilot-extension
|
|
||||||
- /using-oidc-with-github-copilot-extensions
|
- /using-oidc-with-github-copilot-extensions
|
||||||
- /debugging-your-github-copilot-extension
|
- /debugging-your-github-copilot-extension
|
||||||
- /managing-the-availability-of-your-copilot-extension
|
- /managing-the-availability-of-your-copilot-extension
|
||||||
|
- /copilot-extensions-faq
|
||||||
- /copilot-extensions-glossary
|
- /copilot-extensions-glossary
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -9,12 +9,10 @@ shortTitle: Manage Extension availability
|
|||||||
type: how_to
|
type: how_to
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
When you build a {% data variables.product.prodname_copilot_extension_short %}, you have two options for the visibility of your {% data variables.product.prodname_github_app %}:
|
When you build a {% data variables.product.prodname_copilot_extension_short %}, you have two options for the visibility of your {% data variables.product.prodname_github_app %}:
|
||||||
|
|
||||||
* **Public:** Any user or organization account with the link to your app's installation page can install it. Making your app public automatically creates a public installation page, but does not list the app on the {% data variables.product.prodname_marketplace %}.
|
* **Public:** Any user or organization account with the link to your app's installation page can install it. Making your app public automatically creates a public installation page, but does not list the app on the {% data variables.product.prodname_marketplace %}.
|
||||||
* **Private:** Only the user or organization account that created the app can install it.
|
* **Private:** Any user, organization, or enterprise can create an extension. Any user or organization, and any organization in an enterprise can install an enterprise-created extension. Private extensions are not available to all users outside your organization or enterprise based on the level at which it was created.
|
||||||
|
|
||||||
If you make your app public, you can choose to publish it on the {% data variables.product.prodname_marketplace %}.
|
If you make your app public, you can choose to publish it on the {% data variables.product.prodname_marketplace %}.
|
||||||
|
|
||||||
@@ -25,10 +23,12 @@ If you make your app public, you can choose to publish it on the {% data variabl
|
|||||||
1. At the bottom of the sidebar, select **{% octicon "code" aria-hidden="true" %} Developer settings**, then click **{% data variables.product.prodname_github_apps %}**.
|
1. At the bottom of the sidebar, select **{% octicon "code" aria-hidden="true" %} Developer settings**, then click **{% data variables.product.prodname_github_apps %}**.
|
||||||
1. In the "{% data variables.product.prodname_github_apps %}" section, next to the name of your {% data variables.product.prodname_copilot_extension_short %}, click **Edit**.
|
1. In the "{% data variables.product.prodname_github_apps %}" section, next to the name of your {% data variables.product.prodname_copilot_extension_short %}, click **Edit**.
|
||||||
1. In the sidebar, click **Advanced**. At the bottom of the "Danger Zone" section, you will see one of two options:
|
1. In the sidebar, click **Advanced**. At the bottom of the "Danger Zone" section, you will see one of two options:
|
||||||
* **Make public:** If you see the **Make public** option, your {% data variables.product.prodname_github_app %} is currently private, and can only be installed by the organization or user that created the app. You can click **Make public** to allow any other account with the link to your app's installation page to install your {% data variables.product.prodname_copilot_extension_short %}, or leave your settings as they are to keep your app private.
|
* **Make public:** If you see the **Make public** option, your {% data variables.product.prodname_github_app %} is currently private, and can only be installed by the organization or user that created the app. You can click **Make public** to allow any other account with the link to your app's installation page to install your {% data variables.product.prodname_copilot_short %} extension. Leave the settings unchanged to keep your app private.
|
||||||
* **Make private:** If you see the **Make private** option, your {% data variables.product.prodname_github_app %} is currently public, and can be installed by any account with the link to your app's installation page. You can click **Make private** to only allow the organization or user that created the app to install it, or leave your settings as they are to keep your app public.
|
* **Make private:** If you see the **Make private** option, your {% data variables.product.prodname_github_app %} is currently public, and can be installed by any account with the link to your app's installation page. You can click **Make private** to only allow installations by the organization or user that created the app, or organizations that are part of the enterprise that created the extension. Leave the settings unchanged to keep your app public.
|
||||||
1. Optionally, if your {% data variables.product.prodname_github_app %} is public, you can share the link to the installation page for your {% data variables.product.prodname_copilot_extension_short %}. In the sidebar, click **Public page** in the sidebar, then copy the link for your listing.
|
1. Optionally, if your {% data variables.product.prodname_github_app %} is public, you can share the link to the installation page for your {% data variables.product.prodname_copilot_extension_short %}. In the sidebar, click **Public page** in the sidebar, then copy the link for your listing.
|
||||||
|
|
||||||
|
> [!NOTE] You can set a published marketplace extension to private, and it will remain accessible on the {% data variables.product.prodname_marketplace %}. However, it won't be accessible from the direct installation page.
|
||||||
|
|
||||||
## Listing your {% data variables.product.prodname_copilot_extension_short %} on the {% data variables.product.prodname_marketplace %}
|
## Listing your {% data variables.product.prodname_copilot_extension_short %} on the {% data variables.product.prodname_marketplace %}
|
||||||
|
|
||||||
To list your {% data variables.product.prodname_copilot_extension_short %} on the {% data variables.product.prodname_marketplace %}, you must meet the following requirements:
|
To list your {% data variables.product.prodname_copilot_extension_short %} on the {% data variables.product.prodname_marketplace %}, you must meet the following requirements:
|
||||||
|
|||||||
@@ -12,8 +12,6 @@ topics:
|
|||||||
shortTitle: Extensions quickstart
|
shortTitle: Extensions quickstart
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
The [Blackbeard extension](https://github.com/copilot-extensions/blackbeard-extension) is a {% data variables.product.prodname_copilot_extension %} built with a simple agent that responds to requests like a pirate using {% data variables.product.prodname_copilot_short %}'s large language model (LLM) API and special system prompts. This guide uses a simple agent implementation, but the process is similar for skillsets.
|
The [Blackbeard extension](https://github.com/copilot-extensions/blackbeard-extension) is a {% data variables.product.prodname_copilot_extension %} built with a simple agent that responds to requests like a pirate using {% data variables.product.prodname_copilot_short %}'s large language model (LLM) API and special system prompts. This guide uses a simple agent implementation, but the process is similar for skillsets.
|
||||||
|
|
||||||
This quickstart is designed to help you build and chat with the Blackbeard extension as quickly as possible, so you can develop and test your extension without deploying infrastructure. For production, you'll need to host the application for your agent or skillset's endpoints on a publicly accessible server. To instead learn how to create a new {% data variables.product.prodname_copilot_extension %}, see [AUTOTITLE](/copilot/building-copilot-extensions/setting-up-copilot-extensions).
|
This quickstart is designed to help you build and chat with the Blackbeard extension as quickly as possible, so you can develop and test your extension without deploying infrastructure. For production, you'll need to host the application for your agent or skillset's endpoints on a publicly accessible server. To instead learn how to create a new {% data variables.product.prodname_copilot_extension %}, see [AUTOTITLE](/copilot/building-copilot-extensions/setting-up-copilot-extensions).
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ topics:
|
|||||||
shortTitle: Set up Copilot Extensions
|
shortTitle: Set up Copilot Extensions
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
This article is designed to help you build an entirely new {% data variables.product.prodname_copilot_extension %}. To instead learn how to quickly build and test a demo {% data variables.product.prodname_copilot_extension_short %} created by {% data variables.product.github %}, see [AUTOTITLE](/copilot/building-copilot-extensions/quickstart-for-github-copilot-extensions).
|
This article is designed to help you build an entirely new {% data variables.product.prodname_copilot_extension %}. To instead learn how to quickly build and test a demo {% data variables.product.prodname_copilot_extension_short %} created by {% data variables.product.github %}, see [AUTOTITLE](/copilot/building-copilot-extensions/quickstart-for-github-copilot-extensions).
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.differences-between-agents-and-skillsets-1 %}
|
{% data reusables.copilot.copilot-extensions.differences-between-agents-and-skillsets-1 %}
|
||||||
|
|||||||
@@ -16,8 +16,6 @@ redirect_from:
|
|||||||
- /copilot/managing-copilot/managing-github-copilot-in-your-organization/enhancing-copilot-for-your-organization/installing-github-copilot-extensions-for-your-organization
|
- /copilot/managing-copilot/managing-github-copilot-in-your-organization/enhancing-copilot-for-your-organization/installing-github-copilot-extensions-for-your-organization
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
## About {% data variables.product.prodname_copilot_extensions %} for your organization
|
## About {% data variables.product.prodname_copilot_extensions %} for your organization
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.copilot-extensions-on-marketplace %}
|
{% data reusables.copilot.copilot-extensions.copilot-extensions-on-marketplace %}
|
||||||
|
|||||||
@@ -13,9 +13,9 @@ featuredLinks:
|
|||||||
startHere:
|
startHere:
|
||||||
- /copilot/about-github-copilot/what-is-github-copilot
|
- /copilot/about-github-copilot/what-is-github-copilot
|
||||||
- /copilot/quickstart
|
- /copilot/quickstart
|
||||||
|
- /copilot/building-copilot-extensions/quickstart-for-github-copilot-extensions-using-agents
|
||||||
popular:
|
popular:
|
||||||
- /copilot/using-github-copilot/best-practices-for-using-github-copilot
|
- /copilot/using-github-copilot/best-practices-for-using-github-copilot
|
||||||
- /copilot/using-github-copilot/copilot-chat/prompt-engineering-for-copilot-chat
|
|
||||||
- /copilot/copilot-chat-cookbook
|
- /copilot/copilot-chat-cookbook
|
||||||
- /copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot
|
- /copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot
|
||||||
- /copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide
|
- /copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide
|
||||||
|
|||||||
@@ -12,8 +12,6 @@ redirect_from:
|
|||||||
- /copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/installing-github-copilot-extensions-for-your-personal-account
|
- /copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/installing-github-copilot-extensions-for-your-personal-account
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
## About {% data variables.product.prodname_copilot_extensions %} for your personal account
|
## About {% data variables.product.prodname_copilot_extensions %} for your personal account
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.copilot-extensions-on-marketplace %}
|
{% data reusables.copilot.copilot-extensions.copilot-extensions-on-marketplace %}
|
||||||
|
|||||||
@@ -65,8 +65,6 @@ Some features of {% data variables.product.prodname_copilot_short %} are availab
|
|||||||
|
|
||||||
### {% data variables.product.prodname_copilot_extensions %}
|
### {% data variables.product.prodname_copilot_extensions %}
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
{% data variables.product.prodname_copilot_extensions %} integrate external tools with {% data variables.product.prodname_copilot_chat %}, helping members of your enterprise reduce context switching, interact with tools using natural language, and customize their {% data variables.product.prodname_copilot_chat_short %} experience.
|
{% data variables.product.prodname_copilot_extensions %} integrate external tools with {% data variables.product.prodname_copilot_chat %}, helping members of your enterprise reduce context switching, interact with tools using natural language, and customize their {% data variables.product.prodname_copilot_chat_short %} experience.
|
||||||
|
|
||||||
### Suggestions matching public code
|
### Suggestions matching public code
|
||||||
|
|||||||
@@ -68,8 +68,6 @@ If an organization member is assigned a seat by multiple organizations with diff
|
|||||||
|
|
||||||
## Setting a policy for {% data variables.product.prodname_copilot_extensions %} in your organization
|
## Setting a policy for {% data variables.product.prodname_copilot_extensions %} in your organization
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
{% data variables.product.prodname_copilot_extensions %} integrate external tools with {% data variables.product.prodname_copilot_chat %}. See [AUTOTITLE](/copilot/using-github-copilot/using-extensions-to-integrate-external-tools-with-copilot-chat).
|
{% data variables.product.prodname_copilot_extensions %} integrate external tools with {% data variables.product.prodname_copilot_chat %}. See [AUTOTITLE](/copilot/using-github-copilot/using-extensions-to-integrate-external-tools-with-copilot-chat).
|
||||||
|
|
||||||
Before you install {% data variables.product.prodname_copilot_extensions_short %} in your organization, you should set a usage policy for your organization. Setting a usage policy allows you to enable or disable {% data variables.product.prodname_copilot_extensions_short %} for all members of your organization, limiting your security risk.
|
Before you install {% data variables.product.prodname_copilot_extensions_short %} in your organization, you should set a usage policy for your organization. Setting a usage policy allows you to enable or disable {% data variables.product.prodname_copilot_extensions_short %} for all members of your organization, limiting your security risk.
|
||||||
|
|||||||
@@ -64,8 +64,6 @@ For a list of available chat participants, type `@` in the chat prompt box. See
|
|||||||
|
|
||||||
You can also install {% data variables.product.prodname_copilot_extensions_short %} that provide chat participants. You can install these extensions from [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace?type=apps&copilot_app=true) and from [{% data variables.product.prodname_vscode_marketplace %}](https://marketplace.visualstudio.com/search?target=VSCode&category=Chat&sortBy=Installs). For information about extensions from {% data variables.product.prodname_marketplace %} that provide chat participants, see [AUTOTITLE](/copilot/github-copilot-chat/github-copilot-extensions/about-github-copilot-extensions).
|
You can also install {% data variables.product.prodname_copilot_extensions_short %} that provide chat participants. You can install these extensions from [{% data variables.product.prodname_marketplace %}](https://github.com/marketplace?type=apps&copilot_app=true) and from [{% data variables.product.prodname_vscode_marketplace %}](https://marketplace.visualstudio.com/search?target=VSCode&category=Chat&sortBy=Installs). For information about extensions from {% data variables.product.prodname_marketplace %} that provide chat participants, see [AUTOTITLE](/copilot/github-copilot-chat/github-copilot-extensions/about-github-copilot-extensions).
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
### Slash commands
|
### Slash commands
|
||||||
|
|
||||||
Use slash commands to avoid writing complex prompts for common scenarios. To use a slash command, type `/` in the chat prompt box, followed by a command.
|
Use slash commands to avoid writing complex prompts for common scenarios. To use a slash command, type `/` in the chat prompt box, followed by a command.
|
||||||
|
|||||||
@@ -14,8 +14,6 @@ redirect_from:
|
|||||||
- /copilot/github-copilot-chat/github-copilot-extensions
|
- /copilot/github-copilot-chat/github-copilot-extensions
|
||||||
---
|
---
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.public-preview-note %}
|
|
||||||
|
|
||||||
## About {% data variables.product.prodname_copilot_extensions %}
|
## About {% data variables.product.prodname_copilot_extensions %}
|
||||||
|
|
||||||
{% data reusables.copilot.copilot-extensions.copilot-extensions-intro %}
|
{% data reusables.copilot.copilot-extensions.copilot-extensions-intro %}
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ childGroups:
|
|||||||
- copilot/using-github-copilot/copilot-chat/prompt-engineering-for-copilot-chat
|
- copilot/using-github-copilot/copilot-chat/prompt-engineering-for-copilot-chat
|
||||||
- copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-github
|
- copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-github
|
||||||
- copilot/copilot-chat-cookbook
|
- copilot/copilot-chat-cookbook
|
||||||
- copilot/using-github-copilot/guides-on-using-github-copilot/refactoring-code-with-github-copilot
|
- copilot/building-copilot-extensions/quickstart-for-github-copilot-extensions-using-agents
|
||||||
- name: CI/CD and DevOps
|
- name: CI/CD and DevOps
|
||||||
octicon: GearIcon
|
octicon: GearIcon
|
||||||
children:
|
children:
|
||||||
|
|||||||
@@ -48,14 +48,10 @@ You can choose the density of items on your roadmap. You can zoom in to show one
|
|||||||
|
|
||||||
1. Select either **Month**, **Quarter**, or **Year**.
|
1. Select either **Month**, **Quarter**, or **Year**.
|
||||||
|
|
||||||
{% ifversion projects-v2-slice-panel %}
|
|
||||||
|
|
||||||
## Slicing by field values
|
## Slicing by field values
|
||||||
|
|
||||||
{% data reusables.projects.customize.slice-panel %}
|
{% data reusables.projects.customize.slice-panel %}
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Sorting by field values
|
## Sorting by field values
|
||||||
|
|
||||||
You can sort items by a field value.
|
You can sort items by a field value.
|
||||||
|
|||||||
@@ -17,13 +17,11 @@ allowTitleToDifferFromFilename: true
|
|||||||
|
|
||||||
## About templates
|
## About templates
|
||||||
|
|
||||||
You can {% ifversion projects-v2-org-templates-improvements %}create a template, or {% endif %}set a project as a template{% ifversion projects-v2-org-templates-improvements %},{% endif %} to share a pre-configured project with other people in your organization which they can then use as the base for their projects.
|
You can create a template, or set a project as a template, to share a pre-configured project with other people in your organization which they can then use as the base for their projects.
|
||||||
|
|
||||||
The projects you mark as templates are shown in the "Create a project" dialog when anyone creates a project in your organization. {% ifversion projects-v2-org-templates-GA-updates %}You can also configure up to six templates to recommend to your organization's members.{% endif %}
|
The projects you mark as templates are shown in the "Create a project" dialog when anyone creates a project in your organization. {% ifversion projects-v2-org-templates-GA-updates %}You can also configure up to six templates to recommend to your organization's members.{% endif %}
|
||||||
|
|
||||||
When someone creates a project from a template, the {% data reusables.projects.what-gets-copied %} are copied from the template to the new project. {% ifversion projects-v2-org-templates-improvements %}You can find the template that a project used from the project's settings page, under the "Templates" section.{% endif %}
|
When someone creates a project from a template, the {% data reusables.projects.what-gets-copied %} are copied from the template to the new project. You can find the template that a project used from the project's settings page, under the "Templates" section.
|
||||||
|
|
||||||
{% ifversion projects-v2-org-templates-improvements %}
|
|
||||||
|
|
||||||
## Creating a new template
|
## Creating a new template
|
||||||
|
|
||||||
@@ -33,8 +31,6 @@ When someone creates a project from a template, the {% data reusables.projects.w
|
|||||||
{% data reusables.projects.templates-tab %}
|
{% data reusables.projects.templates-tab %}
|
||||||
1. Click **New template**.
|
1. Click **New template**.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Setting a project as a template
|
## Setting a project as a template
|
||||||
|
|
||||||
If you have admin permissions for a project in your organization, you can set the project as a template and make it available for others in your organization to use.
|
If you have admin permissions for a project in your organization, you can set the project as a template and make it available for others in your organization to use.
|
||||||
@@ -44,8 +40,6 @@ If you have admin permissions for a project in your organization, you can set th
|
|||||||
|
|
||||||
## Finding templates in your organization
|
## Finding templates in your organization
|
||||||
|
|
||||||
{% ifversion projects-v2-org-templates-improvements %}
|
|
||||||
|
|
||||||
You can find all the templates in your organization on the "Templates" page.
|
You can find all the templates in your organization on the "Templates" page.
|
||||||
|
|
||||||
{% data reusables.profile.access_org %}
|
{% data reusables.profile.access_org %}
|
||||||
@@ -55,19 +49,6 @@ You can find all the templates in your organization on the "Templates" page.
|
|||||||
|
|
||||||
You can also add templates to teams and repositories, to make them accessible and more visible from the team or repository's "Templates" page. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/adding-your-project-to-a-team) and [AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/adding-your-project-to-a-repository).
|
You can also add templates to teams and repositories, to make them accessible and more visible from the team or repository's "Templates" page. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/adding-your-project-to-a-team) and [AUTOTITLE](/issues/planning-and-tracking-with-projects/managing-your-project/adding-your-project-to-a-repository).
|
||||||
|
|
||||||
{% else %}
|
|
||||||
|
|
||||||
You can filter the list of projects in your organization to only show projects set as templates.
|
|
||||||
|
|
||||||
{% data reusables.profile.access_org %}
|
|
||||||
{% data reusables.user-settings.access_org %}
|
|
||||||
{% data reusables.projects.projects-tab %}
|
|
||||||
1. In the text box above the list of projects, type `is:template`, and press **Enter**.
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Copying a project as a template
|
## Copying a project as a template
|
||||||
|
|
||||||
If you have write or admin permissions for a project in your organization, you can choose to copy the project as a template. This will make a duplicate of the current project—copying the {% data reusables.projects.what-gets-copied %} —and set that copied project as a template for your organization.
|
If you have write or admin permissions for a project in your organization, you can choose to copy the project as a template. This will make a duplicate of the current project—copying the {% data reusables.projects.what-gets-copied %} —and set that copied project as a template for your organization.
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ If you're running Bitbucket Data Center in cluster mode with multiple notes, you
|
|||||||
|
|
||||||
### `Repository rule violations found` error
|
### `Repository rule violations found` error
|
||||||
|
|
||||||
If you receive a `Repository rule violations found` error, such as `GH013: Repository rule violations found for refs/heads/main`, data in the origin repository conflicts with rulesets configured on the destination organization. For more information, see [AUTOTITLE]({% ifversion repo-rules %}{% else %}/enterprise-cloud@latest{% endif %}/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets).
|
If you receive a `Repository rule violations found` error, such as `GH013: Repository rule violations found for refs/heads/main`, data in the origin repository conflicts with rulesets configured on the destination organization. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets).
|
||||||
|
|
||||||
You can temporarily disable your rulesets during your migration, or you can use bypass mode or the bypass list to exempt your migration from configured rules. For more information, see [AUTOTITLE]({% ifversion repo-rules-enterprise %}{% else %}/enterprise-cloud@latest{% endif %}/organizations/managing-organization-settings/managing-rulesets-for-repositories-in-your-organization).
|
You can temporarily disable your rulesets during your migration, or you can use bypass mode or the bypass list to exempt your migration from configured rules. For more information, see [AUTOTITLE]({% ifversion repo-rules-enterprise %}{% else %}/enterprise-cloud@latest{% endif %}/organizations/managing-organization-settings/managing-rulesets-for-repositories-in-your-organization).
|
||||||
|
|
||||||
|
|||||||
@@ -38,9 +38,7 @@ Deleting your organization account removes all repositories, forks of private re
|
|||||||
|
|
||||||
{% data reusables.package_registry.delete-account-namespace-retirement %}
|
{% data reusables.package_registry.delete-account-namespace-retirement %}
|
||||||
|
|
||||||
{% ifversion archive-organizations %}
|
|
||||||
You can also archive an organization, instead of deleting it. Archiving an organization will make it read-only. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/archiving-an-organization).
|
You can also archive an organization, instead of deleting it. Archiving an organization will make it read-only. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/archiving-an-organization).
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Backing up your organization content
|
## Backing up your organization content
|
||||||
|
|
||||||
|
|||||||
@@ -116,11 +116,11 @@ Some of the features listed below are limited to organizations using {% data var
|
|||||||
| {% ifversion copilot %} |
|
| {% ifversion copilot %} |
|
||||||
| View [content exclusion settings](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/about-content-exclusions-for-github-copilot) for {% data variables.product.prodname_copilot %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
| View [content exclusion settings](/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-github-copilot-features-in-your-organization/about-content-exclusions-for-github-copilot) for {% data variables.product.prodname_copilot %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
||||||
| {% endif %} |
|
| {% endif %} |
|
||||||
| Manage [branch protection rules](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule){% ifversion repo-rules %} and [repository rulesets](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets){% endif %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} |
|
| Manage [branch protection rules](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule) and [repository rulesets](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets) | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} |
|
||||||
| {% ifversion repo-rules %} |
|
| |
|
||||||
| View [rulesets for a repository](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets) | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
| View [rulesets for a repository](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets) | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
||||||
| {% endif %} |
|
| |
|
||||||
| [Push to protected branches](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches)</br>{% ifversion repo-rules %}Doesn't apply to rulesets as these have a different bypass model. See [Granting bypass permissions for your branch or tag ruleset](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#granting-bypass-permissions-for-your-branch-or-tag-ruleset).{% endif %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
| [Push to protected branches](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches)</br>Doesn't apply to rulesets as these have a different bypass model. See [Granting bypass permissions for your branch or tag ruleset](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/creating-rulesets-for-a-repository#granting-bypass-permissions-for-your-branch-or-tag-ruleset). | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
||||||
| Merge pull requests on protected branches, even if there are no approving reviews | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} |
|
| Merge pull requests on protected branches, even if there are no approving reviews | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} |
|
||||||
| {% ifversion ghes < 3.16 %} |
|
| {% ifversion ghes < 3.16 %} |
|
||||||
| Create tags that match a [tag protection rule](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules) | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
| Create tags that match a [tag protection rule](/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/configuring-tag-protection-rules) | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "x" aria-label="No" %} | {% octicon "check" aria-label="Yes" %} | {% octicon "check" aria-label="Yes" %} |
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ redirect_from:
|
|||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
ghes: '>= 3.5'
|
ghes: '*'
|
||||||
shortTitle: Container registry
|
shortTitle: Container registry
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -3,11 +3,11 @@ title: Using custom workflows with GitHub Pages
|
|||||||
intro: 'You can take advantage of using {% data variables.product.prodname_actions %} and {% data variables.product.prodname_pages %} by creating a workflow file or choosing from the predefined workflows.'
|
intro: 'You can take advantage of using {% data variables.product.prodname_actions %} and {% data variables.product.prodname_pages %} by creating a workflow file or choosing from the predefined workflows.'
|
||||||
product: '{% data reusables.gated-features.pages %}'
|
product: '{% data reusables.gated-features.pages %}'
|
||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghes: '>= 3.7'
|
ghes: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
topics:
|
topics:
|
||||||
- Pages
|
- Pages
|
||||||
shortTitle: Use custom workflows
|
shortTitle: Use custom workflows
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -30,8 +30,6 @@ You can define individuals or teams that you consider responsible for code or fi
|
|||||||
|
|
||||||
You can use protected branches to prevent pull requests from being merged into important branches, such as `main`, until certain conditions are met. For example, you can require an approving review, or require that all status checks are passing. See [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
You can use protected branches to prevent pull requests from being merged into important branches, such as `main`, until certain conditions are met. For example, you can require an approving review, or require that all status checks are passing. See [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
||||||
|
|
||||||
{% ifversion repo-rules %}
|
|
||||||
|
|
||||||
## Using rulesets
|
## Using rulesets
|
||||||
|
|
||||||
Working alongside protected branches, rulesets let you enforce policies across your repository, such as requiring status checks or workflows to pass before a pull request can be merged.
|
Working alongside protected branches, rulesets let you enforce policies across your repository, such as requiring status checks or workflows to pass before a pull request can be merged.
|
||||||
@@ -40,7 +38,7 @@ Rulesets are especially useful for maintaining repository security when combined
|
|||||||
* You can use rulesets to enforce the dependency review action, a workflow that blocks pull requests that are introducing vulnerable dependencies into your codebase. See [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/enforcing-dependency-review-across-an-organization). {% ifversion code-scanning-merge-protection-rulesets %}
|
* You can use rulesets to enforce the dependency review action, a workflow that blocks pull requests that are introducing vulnerable dependencies into your codebase. See [AUTOTITLE](/code-security/supply-chain-security/understanding-your-software-supply-chain/enforcing-dependency-review-across-an-organization). {% ifversion code-scanning-merge-protection-rulesets %}
|
||||||
* If your repository is configured with {% data variables.product.prodname_code_scanning %}, you can use rulesets to set {% data variables.product.prodname_code_scanning %} merge protection, which prevents pull requests from being merged if there is a {% data variables.product.prodname_code_scanning %} alert of a certain severity, or if a {% data variables.product.prodname_code_scanning %} analysis is still in progress. See [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/set-code-scanning-merge-protection).{% endif %}
|
* If your repository is configured with {% data variables.product.prodname_code_scanning %}, you can use rulesets to set {% data variables.product.prodname_code_scanning %} merge protection, which prevents pull requests from being merged if there is a {% data variables.product.prodname_code_scanning %} alert of a certain severity, or if a {% data variables.product.prodname_code_scanning %} analysis is still in progress. See [AUTOTITLE](/code-security/code-scanning/managing-your-code-scanning-configuration/set-code-scanning-merge-protection).{% endif %}
|
||||||
|
|
||||||
{% endif %}{% ifversion push-rulesets %}
|
{% ifversion push-rulesets %}
|
||||||
|
|
||||||
## Using push rulesets
|
## Using push rulesets
|
||||||
|
|
||||||
|
|||||||
@@ -17,12 +17,8 @@ topics:
|
|||||||
|
|
||||||
In a pull request, you propose that changes you've made on a head branch should be merged into a base branch. By default, any pull request can be merged at any time, unless the head branch is in conflict with the base branch. However, there may be restrictions on when you can merge a pull request into a specific branch. For example, you may only be able to merge a pull request into the default branch if required status checks are passing. Repository administrators can add constraints like this to branches using branch protection rules. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
In a pull request, you propose that changes you've made on a head branch should be merged into a base branch. By default, any pull request can be merged at any time, unless the head branch is in conflict with the base branch. However, there may be restrictions on when you can merge a pull request into a specific branch. For example, you may only be able to merge a pull request into the default branch if required status checks are passing. Repository administrators can add constraints like this to branches using branch protection rules. For more information, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
||||||
|
|
||||||
{% ifversion repo-rules %}
|
|
||||||
|
|
||||||
{% data reusables.repositories.rulesets-alternative %}
|
{% data reusables.repositories.rulesets-alternative %}
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% data reusables.pull_requests.you-can-auto-merge %}
|
{% data reusables.pull_requests.you-can-auto-merge %}
|
||||||
|
|
||||||
If the pull request has merge conflicts, or if you'd like to test the changes before merging, you can [check out the pull request locally](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally) and merge it using the command line.
|
If the pull request has merge conflicts, or if you'd like to test the changes before merging, you can [check out the pull request locally](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally) and merge it using the command line.
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ intro: 'If a pull request contains changes to dependencies, you can view a summa
|
|||||||
product: '{% data reusables.gated-features.dependency-review %}'
|
product: '{% data reusables.gated-features.dependency-review %}'
|
||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghes: '>= 3.2'
|
ghes: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
type: how_to
|
type: how_to
|
||||||
topics:
|
topics:
|
||||||
|
|||||||
@@ -40,9 +40,7 @@ When a repository is archived, its issues, pull requests, code, labels, mileston
|
|||||||
|
|
||||||
You can search for archived repositories. For more information, see [AUTOTITLE](/search-github/searching-on-github/searching-for-repositories#search-based-on-whether-a-repository-is-archived). You can also search for issues and pull requests within archived repositories. For more information, see [AUTOTITLE](/search-github/searching-on-github/searching-issues-and-pull-requests#search-based-on-whether-a-repository-is-archived).
|
You can search for archived repositories. For more information, see [AUTOTITLE](/search-github/searching-on-github/searching-for-repositories#search-based-on-whether-a-repository-is-archived). You can also search for issues and pull requests within archived repositories. For more information, see [AUTOTITLE](/search-github/searching-on-github/searching-issues-and-pull-requests#search-based-on-whether-a-repository-is-archived).
|
||||||
|
|
||||||
{% ifversion archive-organizations %}
|
|
||||||
To archive all repositories in an organization at once, you can archive the entire organization. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/archiving-an-organization).
|
To archive all repositories in an organization at once, you can archive the entire organization. For more information, see [AUTOTITLE](/organizations/managing-organization-settings/archiving-an-organization).
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Archiving a repository
|
## Archiving a repository
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ title: Managing suggestions to update pull request branches
|
|||||||
intro: You can give users the ability to always update a pull request branch when it is not up to date with the base branch.
|
intro: You can give users the ability to always update a pull request branch when it is not up to date with the base branch.
|
||||||
versions:
|
versions:
|
||||||
fpt: '*'
|
fpt: '*'
|
||||||
ghes: '> 3.4'
|
ghes: '*'
|
||||||
ghec: '*'
|
ghec: '*'
|
||||||
topics:
|
topics:
|
||||||
- Repositories
|
- Repositories
|
||||||
|
|||||||
@@ -27,5 +27,4 @@ shortTitle: View branches
|
|||||||
|
|
||||||
* [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)
|
* [AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)
|
||||||
* [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request)
|
* [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request)
|
||||||
{%- ifversion repository-activity-view %}
|
* [AUTOTITLE](/repositories/viewing-activity-and-data-for-your-repository/using-the-activity-view-to-see-changes-to-a-repository).
|
||||||
* [AUTOTITLE](/repositories/viewing-activity-and-data-for-your-repository/using-the-activity-view-to-see-changes-to-a-repository).{% endif %}
|
|
||||||
|
|||||||
@@ -37,13 +37,9 @@ By default, the restrictions of a branch protection rule don't apply to people w
|
|||||||
|
|
||||||
{% data reusables.pull_requests.you-can-auto-merge %}
|
{% data reusables.pull_requests.you-can-auto-merge %}
|
||||||
|
|
||||||
{% ifversion repo-rules %}
|
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> Only a single branch protection rule can apply at a time, which means it can be difficult to know which rule will apply when multiple versions of a rule target the same branch. {% ifversion repo-rules-enterprise %}Additionally, you may want to create a single set of rules that applies to multiple repositories in an organization. {% endif %}For information about an alternative to branch protection rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets).
|
> Only a single branch protection rule can apply at a time, which means it can be difficult to know which rule will apply when multiple versions of a rule target the same branch. {% ifversion repo-rules-enterprise %}Additionally, you may want to create a single set of rules that applies to multiple repositories in an organization. {% endif %}For information about an alternative to branch protection rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## About branch protection settings
|
## About branch protection settings
|
||||||
|
|
||||||
For each branch protection rule, you can choose to enable or disable the following settings.
|
For each branch protection rule, you can choose to enable or disable the following settings.
|
||||||
|
|||||||
@@ -42,13 +42,9 @@ To create an exception to an existing branch rule, you can create a new branch p
|
|||||||
|
|
||||||
For more information about each of the available branch protection settings, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
For more information about each of the available branch protection settings, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).
|
||||||
|
|
||||||
{% ifversion repo-rules %}
|
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> Only a single branch protection rule can apply at a time, which means it can be difficult to know how which rule will apply when multiple versions of a rule target the same branch. {% ifversion repo-rules-enterprise %}Additionally, you may want to create a single set of rules that applies to multiple repositories in an organization. {% endif %}For information about an alternative to branch protection rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets).
|
> Only a single branch protection rule can apply at a time, which means it can be difficult to know how which rule will apply when multiple versions of a rule target the same branch. {% ifversion repo-rules-enterprise %}Additionally, you may want to create a single set of rules that applies to multiple repositories in an organization. {% endif %}For information about an alternative to branch protection rules, see [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets).
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Creating a branch protection rule
|
## Creating a branch protection rule
|
||||||
|
|
||||||
When you create a branch rule, the branch you specify doesn't have to exist yet in the repository.
|
When you create a branch rule, the branch you specify doesn't have to exist yet in the repository.
|
||||||
|
|||||||
@@ -25,12 +25,8 @@ topics:
|
|||||||
> [!TIP]
|
> [!TIP]
|
||||||
> You can also create a repository using the {% data variables.product.prodname_cli %}. For more information, see [`gh repo create`](https://cli.github.com/manual/gh_repo_create) in the {% data variables.product.prodname_cli %} documentation.
|
> You can also create a repository using the {% data variables.product.prodname_cli %}. For more information, see [`gh repo create`](https://cli.github.com/manual/gh_repo_create) in the {% data variables.product.prodname_cli %} documentation.
|
||||||
|
|
||||||
{% ifversion create-new-repos-with-query-params %}
|
|
||||||
|
|
||||||
## Creating a new repository from the web UI
|
## Creating a new repository from the web UI
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% data reusables.repositories.create_new %}
|
{% data reusables.repositories.create_new %}
|
||||||
1. Optionally, to create a repository with the directory structure and files of an existing repository, select the **Choose a template** dropdown menu and click a template repository. You'll see template repositories that are owned by you and organizations you're a member of or that you've used before. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template).
|
1. Optionally, to create a repository with the directory structure and files of an existing repository, select the **Choose a template** dropdown menu and click a template repository. You'll see template repositories that are owned by you and organizations you're a member of or that you've used before. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template).
|
||||||
1. Optionally, if you chose to use a template, to include the directory structure and files from all branches in the template, and not just the default branch, select **Include all branches**.
|
1. Optionally, if you chose to use a template, to include the directory structure and files from all branches in the template, and not just the default branch, select **Include all branches**.
|
||||||
@@ -49,8 +45,6 @@ topics:
|
|||||||
1. At the bottom of the resulting Quick Setup page, under "Import code from an old repository", you can choose to import a project to your new repository. To do so, click **Import code**.
|
1. At the bottom of the resulting Quick Setup page, under "Import code from an old repository", you can choose to import a project to your new repository. To do so, click **Import code**.
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% ifversion create-new-repos-with-query-params %}
|
|
||||||
|
|
||||||
## Creating a new repository from a URL query
|
## Creating a new repository from a URL query
|
||||||
|
|
||||||
You can use query parameters to pre-fill form fields when creating a new repository. Query parameters are optional parts of a URL you can customize to share a specific web page view, such as search filter results or an issue template on {% data variables.product.prodname_dotcom %}. To specify values for the predefined query parameters, you must match the key and value pair.
|
You can use query parameters to pre-fill form fields when creating a new repository. Query parameters are optional parts of a URL you can customize to share a specific web page view, such as search filter results or an issue template on {% data variables.product.prodname_dotcom %}. To specify values for the predefined query parameters, you must match the key and value pair.
|
||||||
@@ -69,8 +63,6 @@ If you create an invalid URL using query parameters, or if you don’t have the
|
|||||||
| `owner` | `https://{% data variables.product.product_url %}/new?owner=avocado-corp&visibility=public` creates a public repository owned by the "avocado-corp" organization. | Any valid organization name or username. Alternatively, while signed in use `@me` to specify your user account as the owner. |
|
| `owner` | `https://{% data variables.product.product_url %}/new?owner=avocado-corp&visibility=public` creates a public repository owned by the "avocado-corp" organization. | Any valid organization name or username. Alternatively, while signed in use `@me` to specify your user account as the owner. |
|
||||||
| `template_owner` and `template_name` | `https://{% data variables.product.product_url %}/new?owner=avocado-corp&template_owner=avocado-corp&template_name=octo-repo` creates a repository owned by the "avocado-corp" using the avocado-corp's template "octo-repo". | The username of the template owner and the name of the repository template. |
|
| `template_owner` and `template_name` | `https://{% data variables.product.product_url %}/new?owner=avocado-corp&template_owner=avocado-corp&template_name=octo-repo` creates a repository owned by the "avocado-corp" using the avocado-corp's template "octo-repo". | The username of the template owner and the name of the repository template. |
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Further reading
|
## Further reading
|
||||||
|
|
||||||
* [AUTOTITLE](/code-security/getting-started/quickstart-for-securing-your-repository)
|
* [AUTOTITLE](/code-security/getting-started/quickstart-for-securing-your-repository)
|
||||||
|
|||||||
@@ -160,12 +160,8 @@ Repository owners can update branch protection rules to ensure that changed code
|
|||||||
|
|
||||||
To protect a repository fully against unauthorized changes, you also need to define an owner for the CODEOWNERS file itself. The most secure method is to define a CODEOWNERS file in the `.github` directory of the repository and define the repository owner as the owner of either the CODEOWNERS file (``/.github/CODEOWNERS @owner_username``) or the whole directory (``/.github/ @owner_username``).
|
To protect a repository fully against unauthorized changes, you also need to define an owner for the CODEOWNERS file itself. The most secure method is to define a CODEOWNERS file in the `.github` directory of the repository and define the repository owner as the owner of either the CODEOWNERS file (``/.github/CODEOWNERS @owner_username``) or the whole directory (``/.github/ @owner_username``).
|
||||||
|
|
||||||
{% ifversion repo-rules %}
|
|
||||||
|
|
||||||
{% data reusables.repositories.rulesets-alternative %}
|
{% data reusables.repositories.rulesets-alternative %}
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Further reading
|
## Further reading
|
||||||
|
|
||||||
* [AUTOTITLE](/repositories/working-with-files/managing-files/creating-new-files)
|
* [AUTOTITLE](/repositories/working-with-files/managing-files/creating-new-files)
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ Until you add an image, repository links expand to show basic information about
|
|||||||
|
|
||||||
## Adding an image to customize the social media preview of your repository
|
## Adding an image to customize the social media preview of your repository
|
||||||
|
|
||||||
{% ifversion repo-rules %}You can upload an image to a public repository, or to a private repository to which you have previously uploaded an image. Your image can only be shared from a public repository.{% else %}You can upload an image to a private repository, but your image can only be shared from a public repository.{% endif %}
|
You can upload an image to a public repository, or to a private repository to which you have previously uploaded an image. Your image can only be shared from a public repository.
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
> Your image should be a PNG, JPG, or GIF file under 1 MB in size. For the best quality rendering, we recommend a size of at least 640 by 320 pixels (1280 by 640 pixels for best display).
|
> Your image should be a PNG, JPG, or GIF file under 1 MB in size. For the best quality rendering, we recommend a size of at least 640 by 320 pixels (1280 by 640 pixels for best display).
|
||||||
|
|||||||
@@ -51,7 +51,5 @@ The code frequency graph displays the content additions and deletions for each w
|
|||||||
{% data reusables.repositories.repositories-insights-graphs-download-steps %}
|
{% data reusables.repositories.repositories-insights-graphs-download-steps %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% ifversion repository-activity-view %}
|
|
||||||
{% data reusables.repositories.activity-view %}
|
{% data reusables.repositories.activity-view %}
|
||||||
For more information, see [AUTOTITLE](/repositories/viewing-activity-and-data-for-your-repository/using-the-activity-view-to-see-changes-to-a-repository).
|
For more information, see [AUTOTITLE](/repositories/viewing-activity-and-data-for-your-repository/using-the-activity-view-to-see-changes-to-a-repository).
|
||||||
{% endif %}
|
|
||||||
|
|||||||
@@ -22,10 +22,8 @@ You can view an overview of a repository's activity through Pulse. Pulse include
|
|||||||
|
|
||||||
Commit co-authors are included in the commit activity summary if their commits were merged into the repository's default branch and they're in the top 15 users who have contributed the most commits.
|
Commit co-authors are included in the commit activity summary if their commits were merged into the repository's default branch and they're in the top 15 users who have contributed the most commits.
|
||||||
|
|
||||||
{% ifversion repository-activity-view %}
|
|
||||||
{% data reusables.repositories.activity-view %}
|
{% data reusables.repositories.activity-view %}
|
||||||
For more information, see [AUTOTITLE](/repositories/viewing-activity-and-data-for-your-repository/using-the-activity-view-to-see-changes-to-a-repository).
|
For more information, see [AUTOTITLE](/repositories/viewing-activity-and-data-for-your-repository/using-the-activity-view-to-see-changes-to-a-repository).
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Accessing Pulse
|
## Accessing Pulse
|
||||||
|
|
||||||
|
|||||||
@@ -99,8 +99,6 @@ You can check the status of the REST API at [githubstatus.com](https://www.githu
|
|||||||
|
|
||||||
If you are using a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_v2 %} and you receive a "Resource not accessible by integration" or "Resource not accessible by {% data variables.product.pat_generic %}" error, then your token has insufficient permissions. For more information about the required permissions, see the documentation for the endpoint.
|
If you are using a {% data variables.product.prodname_github_app %} or {% data variables.product.pat_v2 %} and you receive a "Resource not accessible by integration" or "Resource not accessible by {% data variables.product.pat_generic %}" error, then your token has insufficient permissions. For more information about the required permissions, see the documentation for the endpoint.
|
||||||
|
|
||||||
{% ifversion rest-permissions-header %}
|
|
||||||
|
|
||||||
You can use the `X-Accepted-GitHub-Permissions` header to identify the permissions that are required to access the REST API endpoint.
|
You can use the `X-Accepted-GitHub-Permissions` header to identify the permissions that are required to access the REST API endpoint.
|
||||||
|
|
||||||
The value of the `X-Accepted-GitHub-Permissions` header is a comma separated list of the permissions that are required to use the endpoint. Occasionally, you can choose from multiple permission sets. In these cases, multiple comma-separated lists will be separated by a semicolon.
|
The value of the `X-Accepted-GitHub-Permissions` header is a comma separated list of the permissions that are required to use the endpoint. Occasionally, you can choose from multiple permission sets. In these cases, multiple comma-separated lists will be separated by a semicolon.
|
||||||
@@ -111,8 +109,6 @@ For example:
|
|||||||
* `X-Accepted-GitHub-Permissions: pull_requests=write,contents=read` means that your {% data variables.product.prodname_github_app %} or {% data variables.product.pat_v2 %} needs write access to the pull request permission and read access to the contents permission.
|
* `X-Accepted-GitHub-Permissions: pull_requests=write,contents=read` means that your {% data variables.product.prodname_github_app %} or {% data variables.product.pat_v2 %} needs write access to the pull request permission and read access to the contents permission.
|
||||||
* `X-Accepted-GitHub-Permissions: pull_requests=read,contents=read; issues=read,contents=read` means that your {% data variables.product.prodname_github_app %} or {% data variables.product.pat_v2 %} needs either read access to the pull request permission and read access to the contents permission, or read access to the issues permission and read access to the contents permission.
|
* `X-Accepted-GitHub-Permissions: pull_requests=read,contents=read; issues=read,contents=read` means that your {% data variables.product.prodname_github_app %} or {% data variables.product.pat_v2 %} needs either read access to the pull request permission and read access to the contents permission, or read access to the issues permission and read access to the contents permission.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
## Problems parsing JSON
|
## Problems parsing JSON
|
||||||
|
|
||||||
If you send invalid JSON in the request body, you may receive a `400 Bad Request` response and a "Problems parsing JSON" error message. You can use a linter or JSON validator to help you identify errors in your JSON.
|
If you send invalid JSON in the request body, you may receive a `400 Bad Request` response and a "Problems parsing JSON" error message. You can use a linter or JSON validator to help you identify errors in your JSON.
|
||||||
|
|||||||
6
data/features/dependabot-alerts-epss-score.yml
Normal file
6
data/features/dependabot-alerts-epss-score.yml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
# References:
|
||||||
|
# Issue #15659 - EPSS Scores for Dependabot Alerts [GA]
|
||||||
|
versions:
|
||||||
|
fpt: '*'
|
||||||
|
ghec: '*'
|
||||||
|
ghes: '>3.16'
|
||||||
@@ -30,7 +30,7 @@ matrix:
|
|||||||
- macos-latest
|
- macos-latest
|
||||||
node:
|
node:
|
||||||
- version: 14
|
- version: 14
|
||||||
- version: {% ifversion actions-node20-support %}20{% else %}16{% endif %}
|
- version: 20
|
||||||
env: NODE_OPTIONS=--openssl-legacy-provider
|
env: NODE_OPTIONS=--openssl-legacy-provider
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -40,11 +40,11 @@ This matrix produces 4 jobs with corresponding contexts.
|
|||||||
- matrix.os: ubuntu-latest
|
- matrix.os: ubuntu-latest
|
||||||
matrix.node.version: 14
|
matrix.node.version: 14
|
||||||
- matrix.os: ubuntu-latest
|
- matrix.os: ubuntu-latest
|
||||||
matrix.node.version: {% ifversion actions-node20-support %}20{% else %}16{% endif %}
|
matrix.node.version: 20
|
||||||
matrix.node.env: NODE_OPTIONS=--openssl-legacy-provider
|
matrix.node.env: NODE_OPTIONS=--openssl-legacy-provider
|
||||||
- matrix.os: macos-latest
|
- matrix.os: macos-latest
|
||||||
matrix.node.version: 14
|
matrix.node.version: 14
|
||||||
- matrix.os: macos-latest
|
- matrix.os: macos-latest
|
||||||
matrix.node.version: {% ifversion actions-node20-support %}20{% else %}16{% endif %}
|
matrix.node.version: 20
|
||||||
matrix.node.env: NODE_OPTIONS=--openssl-legacy-provider
|
matrix.node.env: NODE_OPTIONS=--openssl-legacy-provider
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -1,8 +1,5 @@
|
|||||||
{% ifversion codeql-model-packs %}
|
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> {% data variables.product.prodname_codeql %} model packs are currently in {% data variables.release-phases.public_preview %} and subject to change. Model packs are supported for {% data variables.code-scanning.codeql_model_packs_support %} analysis.
|
> {% data variables.product.prodname_codeql %} model packs are currently in {% data variables.release-phases.public_preview %} and subject to change. Model packs are supported for {% data variables.code-scanning.codeql_model_packs_support %} analysis.
|
||||||
>
|
>
|
||||||
> The {% data variables.product.prodname_codeql %} model editor in the {% data variables.product.prodname_codeql %} extension for {% data variables.product.prodname_vscode %} supports modeling dependencies for {% data variables.code-scanning.codeql_model_editor_support %}.
|
> The {% data variables.product.prodname_codeql %} model editor in the {% data variables.product.prodname_codeql %} extension for {% data variables.product.prodname_vscode %} supports modeling dependencies for {% data variables.code-scanning.codeql_model_editor_support %}.
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
{% ifversion ghes = 3.10 %}
|
|
||||||
|
|
||||||
> [!NOTE]
|
|
||||||
> The ability to enable and disable default setup for {% data variables.product.prodname_code_scanning %} for eligible repositories in an organization is currently in {% data variables.release-phases.public_preview %} and subject to change.
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
name: Bug Report
|
name: Bug Report
|
||||||
description: File a bug report.
|
description: File a bug report.
|
||||||
title: "[Bug]: "
|
title: "[Bug]: "
|
||||||
labels: ["bug", "triage"]{% ifversion projects-in-issue-forms %}
|
labels: ["bug", "triage"]
|
||||||
projects: ["octo-org/1", "octo-org/44"]{% endif %}
|
projects: ["octo-org/1", "octo-org/44"]
|
||||||
assignees:
|
assignees:
|
||||||
- octocat
|
- octocat
|
||||||
body:
|
body:
|
||||||
@@ -35,8 +35,8 @@ body:
|
|||||||
description: What version of our software are you running?
|
description: What version of our software are you running?
|
||||||
options:
|
options:
|
||||||
- 1.0.2 (Default)
|
- 1.0.2 (Default)
|
||||||
- 1.0.3 (Edge){% ifversion issue-form-dropdown-defaults %}
|
- 1.0.3 (Edge)
|
||||||
default: 0{% endif %}
|
default: 0
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: dropdown
|
- type: dropdown
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
Permissions vary by extension, depending on the level of authorization that the extension requires in order to respond to your query. You can view the required permissions on the extension’s installation page, located after the billing information step and before the install and authorize step.
|
||||||
|
|
||||||
|
**For developers**: At a minimum, the **{% data variables.product.prodname_copilot_chat_short %}** permissions must be set to "Read-only". Additional permissions may include executing write actions on other surfaces and authorizing read access to repository and organization level data in {% data variables.product.github %}.
|
||||||
|
|
||||||
|
**For builders**: In addition to the above, you may also request local context from a user’s editor to further tailor responses. To do so, the **{% data variables.product.prodname_copilot_short %} Editor Context** permissions must be set to "Read-only". Users will be notified to provide the required authorization.
|
||||||
|
|
||||||
|
For more information on {% data variables.product.prodname_github_app %} permissions, see [AUTOTITLE](/apps/creating-github-apps/registering-a-github-app/choosing-permissions-for-a-github-app)
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user