Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/sync-openapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ jobs:
# If nothing to commit, exit now. It's fine. No orphans.
changes=$(git diff --name-only | wc -l)
if [[ $changes -eq 0 ]]; then
echo "There are no changes to commit after running `npm run sync-rest` Exiting..."
echo "There are no changes to commit after running 'npm run sync-rest'. Exiting..."
exit 0
fi

Expand Down
48 changes: 48 additions & 0 deletions .github/workflows/validate-openapi-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Validate OpenAPI Check Docker

# **What it does**: Tests building and running the OpenAPI check Docker container
# **Why we have it**: To ensure the Dockerfile and openapi-check script work correctly
# **Who does it impact**: Docs engineering.

on:
workflow_dispatch:
pull_request:
paths:
- 'Dockerfile.openapi_decorator'
- 'src/rest/scripts/openapi-check.ts'
- 'src/rest/scripts/utils/get-operations.ts'
- 'src/rest/scripts/utils/operation.ts'
# In case dependencies change
- 'package.json'
- 'package-lock.json'
- 'tsconfig.json'
# Self-test
- '.github/workflows/validate-openapi-check.yml'

permissions:
contents: read

jobs:
validate-openapi-check:
runs-on: ubuntu-latest
if: github.repository == 'github/docs-internal'
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1

- name: Build Docker image
run: |
docker build -f Dockerfile.openapi_decorator -t openapi-decorator:test .

- name: Test Docker image with sample OpenAPI file
run: |
docker run --rm openapi-decorator:test -f "src/rest/data/fpt-2022-11-28/schema.json"

- name: Test Docker image with multiple OpenAPI files
run: |
docker run --rm openapi-decorator:test \
-f "src/rest/data/fpt-2022-11-28/schema.json" \
"src/rest/data/ghec-2022-11-28/schema.json"
7 changes: 3 additions & 4 deletions Dockerfile.openapi_decorator
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
FROM node:18.15-alpine

RUN apk add --no-cache git python make g++
FROM node:24-alpine

WORKDIR /openapi-check

Expand All @@ -10,10 +8,11 @@ USER node

COPY --chown=node:node package.json /openapi-check
COPY --chown=node:node package-lock.json /openapi-check
COPY --chown=node:node tsconfig.json /openapi-check
ADD --chown=node:node src /openapi-check/src
ADD --chown=node:node content /openapi-check/content
ADD --chown=node:node data /openapi-check/data

RUN npm ci -D

ENTRYPOINT ["node", "/openapi-check/src/rest/scripts/openapi-check.ts"]
ENTRYPOINT ["npx", "tsx", "/openapi-check/src/rest/scripts/openapi-check.ts"]
78 changes: 0 additions & 78 deletions content/billing/reference/actions-minute-multipliers.md

This file was deleted.

80 changes: 80 additions & 0 deletions content/billing/reference/actions-runner-pricing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
title: Actions runner pricing
shortTitle: Actions runner pricing
intro: Reference information for calculating the cost of using different {% data variables.product.github %}-hosted runners.
versions:
fpt: "*"
ghec: "*"
ghes: "*"
topics:
- Billing
- Actions
contentType: reference
redirect_from:
- /billing/reference/actions-minute-multipliers
---

{% data variables.product.github %} rounds the minutes and partial minutes each job uses up to the nearest whole minute.

## Standard runners

| Operating system | Per-minute rate (USD) |
| ------------------------------------ | --------------------- |
| Linux 1-core | $0.002 |
| Linux 2-core | $0.008 |
| Windows 2-core | $0.016 |
| macOS 3-core or 4-core (M1 or Intel) | $0.08 |

## x64-powered {% data variables.actions.hosted_runners %}

| Operating system | Per-minute rate (USD) |
| --------------------- | --------------------- |
| Linux Advanced 2-core | $0.008 |
| Linux 4-core | $0.016 |
| Linux 8-core | $0.032 |
| Linux 16-core | $0.064 |
| Linux 32-core | $0.128 |
| Linux 64-core | $0.256 |
| Linux 96-core | $0.384 |
| Windows 4-core | $0.032 |
| Windows 8-core | $0.064 |
| Windows 16-core | $0.128 |
| Windows 32-core | $0.256 |
| Windows 64-core | $0.512 |
| Windows 96-core | $0.768 |
| macOS 12-core | $0.12 |

## arm64-powered {% data variables.actions.hosted_runners %}

| Operating system | Per-minute rate (USD) |
| ----------------- | --------------------- |
| Linux 2-core | $0.005 |
| Linux 4-core | $0.01 |
| Linux 8-core | $0.02 |
| Linux 16-core | $0.04 |
| Linux 32-core | $0.08 |
| Linux 64-core | $0.16 |
| Windows 2-core | $0.01 |
| Windows 4-core | $0.02 |
| Windows 8-core | $0.04 |
| Windows 16-core | $0.08 |
| Windows 32-core | $0.16 |
| Windows 64-core | $0.32 |
| macOS 6-core (M1) | $0.16 |

## GPU-powered {% data variables.actions.hosted_runners %}

| Operating system | Per-minute rate (USD) |
| ---------------- | --------------------- |
| Linux 4-core | $0.07 |
| Windows 4-core | $0.14 |

## Points to note about rates for runners

* The number of jobs you can run concurrently across all repositories in your user or organization account depends on your {% data variables.product.github %} plan. For more information, see [AUTOTITLE](/actions/learn-github-actions/usage-limits-billing-and-administration) for {% data variables.product.github %}-hosted runners and [AUTOTITLE](/actions/hosting-your-own-runners/managing-self-hosted-runners/usage-limits-for-self-hosted-runners) for self-hosted runner usage limits.
* {% data reusables.actions.larger-runner-permissions %}
* {% data reusables.actions.about-larger-runners-billing %}
* For {% data variables.actions.hosted_runner %}s, there is no additional cost for configurations that assign public static IP addresses to a {% data variables.actions.hosted_runner %}. For more information on {% data variables.actions.hosted_runner %}s, see [AUTOTITLE](/actions/using-github-hosted-runners/using-larger-runners/about-larger-runners).
* Included minutes cannot be used for {% data variables.actions.hosted_runner %}s.
* The {% data variables.actions.hosted_runner %}s are not free for public repositories.
* Custom images can only be used with larger runners and are billed at the same per-minute rates as those runners.
8 changes: 4 additions & 4 deletions content/billing/reference/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@ title: Reference for billing
shortTitle: Reference
intro: Find information to support your use of billing.
versions:
fpt: '*'
ghec: '*'
ghes: '*'
fpt: "*"
ghec: "*"
ghes: "*"
topics:
- Billing
children:
- /product-usage-included
- /actions-minute-multipliers
- /actions-runner-pricing
- /billing-reports
- /supported-payment-methods
- /azure-billing
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,6 @@ Users can include hidden messages in issues assigned to {% data variables.produc
### Limitations in Copilot's compatibility with other features

* **{% data variables.product.prodname_copilot_short %} does not sign its commits**. If you have the "Require signed commits" rule or branch protection enabled, you must rewrite the commit history in order to merge {% data variables.product.prodname_copilot_short %}'s pull requests. See [AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#require-signed-commits).
* **{% data variables.product.prodname_copilot_short %} does not work with self-hosted {% data variables.product.prodname_actions %} runners**. {% data variables.product.prodname_copilot_short %} has access to its own development environment, running in {% data variables.product.prodname_actions %}, and must use {% data variables.product.prodname_dotcom %}-hosted runners. See [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent#upgrading-to-larger-github-hosted-github-actions-runners).
* **{% data variables.copilot.copilot_coding_agent %} does not work in personal repositories owned by {% data variables.enterprise.prodname_managed_users %}**. This is because {% data variables.copilot.copilot_coding_agent %} requires {% data variables.product.company_short %}-hosted runners, which are not available to repositories owned by {% data variables.enterprise.prodname_managed_users %}. See [AUTOTITLE](/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners).
* **{% data variables.copilot.copilot_coding_agent %} doesn't account for content exclusions**. Content exclusions allow administrators to configure {% data variables.product.prodname_copilot_short %} to ignore certain files. When using {% data variables.copilot.copilot_coding_agent %}, {% data variables.product.prodname_copilot_short %} will not ignore these files, and will be able to see and update them. See [AUTOTITLE](/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot).
* **{% data variables.copilot.copilot_coding_agent %} only works with repositories hosted on {% data variables.product.github %}**. If your repository is stored using a different code hosting platform, {% data variables.product.prodname_copilot_short %} won't be able to work on it.
Expand Down
Loading